Kolize a potíže
Jak změnit kvadrant
- Podrobnosti
- Kategorie: Manipulace a úpravy
- Vytvořeno 19. leden 2012
- Napsal Petr Sýkora
Následující příklad ukazuje, jak je možné pomocí složeného příkazu - pověšeného na funkční klávese - provést i poměrně komplikovanou akci.
Uživatelé při práci s mapou občas narazí na problém, jak v mapě snadno a rychle přejít z "obyčejné" mapy nebo do mapy v JTSK. Problém je v tom, že podle standardu JTSK by se měla mapa nacházet ve III. a nikoliv I. kvadrantu, tedy souřadnice (x,y) by se měly přetransformovat do souřadnic (-y,-x), Tuto operaci můžeme provést pomocí nástroje Zrcadlit. Pokud bychom chtěli z I. do III. kvadrantu "odsunout a pootočit" všechny prvky ve výkresu (naprosto všechny nezamknuté prvky, nezávislé na to, zda jsou v pohledu vidět), použijeme tuto sekvenci příkazů, kterou zadáme na vyhlédnutou funkční klávesu.
CHOOSE ALL - - - vybere všechny prvky ve výkresu
MIRROR ORIGINAL LINE - - - spustí nástroj Zrcadlit prvek , s vypnutým přepínačem Kopírovat a s metodou zrcadlení: podle libovolné úsečky.
XY = 1, -1 - - - "příkazové" zadání prvního datového bodu určujícího osu zrcadlení - úsečku , podle které se bude zrcadlení provádět.
XY = -1, 1 - - - druhý datový bod určující osu zrcadlení.
CHOOSE NONE - - - odebere všechny prvky z výběrové množiny.
Těchto 5 příkazů je možné "zřetězit" na funkční klávese (nebo v příkazovém řádku) do jednoho složeného příkazu pomocí středníků. Sekvence na funkční klávese tedy bude vypadat takto:
CHOOSE ALL;MIRROR ORIGINAL LINE;XY=1,-1;XY=-1,1;CHOOSE NONE
Přesunutí všech prvků z I. do III. kvadrantu pak způsobí jeden stisk této funkční klávesy, není třeba nic vybírat, určovat, zadávat, potvrzovat...
Poznámky:
- Tatáž sekvence příkazů zajistí i případný převod prvků (všech) z III. do I. kvadrantu.
- Číselné hodnoty v obou příkazech XY nemusí být přímo takovéto. Stejnou službu by zajistily i datové body (-2,2) a (2,-2) - důležité pro průběh akce nejsou tyto body, ale směrnice úsečky, která je těmito body určena.
- Pokud byste překlápěli jiný kvadrant do jiného, pak stačí vhodně zadat souřadnice obou datových bodů v příkazech XY.
- Akce zrcadlení proběhne s prvky ve výběrové množině, proto nezapomínejte, že výběrová množina může být naplněna jen některými prvky z modelu, podle potřeby uživatele.
- Po patřičné úpravě příkazů je možné takto zpracovat i obsah ohrady.
- Tato úloha by byla řešitelná i pomocí BASIC makra, avšak to bychom museli umět trochu programovat. Pokud je problém vyřešitelný prostou sekvencí příkazů, pak nám postačí znalost těchto příkazů, jejich zřetězení a pověšení na funkční klávesu.
Komentáře
- Žádné komentáře