Kolize a potíže

Jak změnit kvadrant

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

alt

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.

alt

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.

alt

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.
Prosím zaregistrujte se pro psaní komentářů
  • Žádné komentáře