Zobrazit plnou verzi příspěvku: Křivka obalující výkres

pradl
21.10.2012, 17:09
Potřeboval bych poradit postup jakým jde obtáhnout výkres co nejmenší křivkou která by vedla po obvodu a obalovala všechny entity. Je na to nějaká funkce?


Seiner
21.10.2012, 20:42
Zvláštní požadavek. K čemu je to dobré?
Ještě tak bych si uměl představit lisp, který by vytvářel obdélník kolem entit, ale dělat by se mi s tím nechtělo.
   Váš požadavek, jak je formulován,  je ale podle mého složitější. Nejdřív byste si musel ujasnit, co je to nejmenší křivka (plocha nebo obvod) a jak má být tvořena ( má být vytvořena konvexní oblast?). podle mého dost složitá optimalizační úloha.
   Obdélník kolem entit jsem dělal při utilitce pro automatické nastavování mezí. Omezil jsem se ale na bloky ze seznamu a předpokládal, že jsou vytvořeny úsečkami nebo křivkou.

pradl
22.10.2012, 08:51
Díky, to je škoda že to nejde. Potřeboval bych to na mapy.


Vladimír Michl
22.10.2012, 08:54
To je celkem často používaná funkce. V profesních verzích AutoCADu je k dispozici standardně (viz Shrinkwrap). Pokud máte jen holý AutoCAD, můžete použít naši utilitu Wrapper (viz Download).

Seiner
22.10.2012, 09:04
OOPS. Musím lépe vážit slova. Snad mi bude prominuto - budiž mi polehčující okolností, že fórum považuji za diskuzi, takže holt každý názor nemusí být správný.

Seiner
24.10.2012, 07:11
Ozkoušel jsem Wrapper a myslím, že neplní zadání, tak, jak mu rozumím. Podle původního dotazu jsem to chápal tak, že má být vytvořena obalující křivka JAKEHOKOLIV výkresu - tedy nesouvisejících, nespojených entit. Proto jsem psal, že definice takové křivky je nejasná a její vytvoření by určitě nebylo jednoduché.
   Wrapper mi udělá křivku po obvodu a pokud vyberu vícenásobnou oblast, tak jen jedné uzavřené oblasti - ostatní ignoruje. To je pěkná funkce. Z nouze by asi šla nahradit prací se šrafováním.  

pradl
24.10.2012, 08:55
Pro moje výkresy to funguje dobře. Entity na sebe navazují a tvoří vždycky jen jeden shluk. Díky.


Seiner
24.10.2012, 08:58
OK - to je hlavní, že Vám to funguje. Chyba je na mém přijímači - z dotazu jsem nepochopil záměr.