CVIČENIE 8: Vytvorenie dialógových panelov
v rámci tvorby nadstavby AutoCADu
AutoCAD patrí k softvérovým produktom, ktorý umožňuje konštruktérovi – projektantovi prispôsobenie počítačového grafického prostredia podľa danej oblasti riešenia (nadstavba AutoCADu), vytváranie nových programov, spracovanie dát podľa požadovaných technologických postupov a pod.
Vo Visual LISP editore (obr. 1.2 a obr. 8.4) budeme vytvárať dialógové (DCL) panely (obr. 8.5), ktoré použijeme na spracovanie dát, pričom si vytvoríme program v jazyku AutoLISP. Ďalší súbor typu DCL vytvoríme pomocou jazyka DCL (Dialog Control Language – dialógový riadiaci jazyk). Vytvorenie DCL panelov si popíšeme na jednoduchom príklade výpočtu súradníc meraných bodov (BodM), kde poznáme súradnice stanoviska merania (BodS) a orientačného bodu (Bod0), [15]. Schéma výpočtu polárnej metódy určovania súradníc bodov a metódy trigonometrického určovania nadmorských výšok je na obr. 8.1.
![]() |
Obr. 8.1. Výpočet súradníc a výšok bodov
Vo výpočtoch budeme uvažovať súradnicový systém S-JTSK, prípadne miestny geodetický systém a výškový systém Bpv, kde využijeme vzťahy:
Poloha:
![]()
![]()
Výška:
![]()
Vzorce sú uvedené za účelom ukážky spracovania matematických vzťahov v AutoLISPe. Nakoľko sa nachádzajú v matematických vzťahoch goniometrické funkcie a uhly, je potrebný ich prevod na radiány a z radiánov na požadovaný typ uhlov (grády, stupne). Hlavnou nosnou časťou kap.8 je vytváranie DCL panelov a spracovanie dát.
8. 1. Príprava snímok typu SLD
![]() |
Obr. 8.2. Výkres na vytvorenie snímky typu SLD
Výkres sa ukladá v tvare DWG a vytvorená snímka SLD, napríklad s názvom SCH1.SLD. Nakoľko snímku SCH1.SLD nie je možné upravovať, ale len vytvoriť novú, uložíme si aj výkres SCH1.DWG. V prípade nutnosti editujeme výkres a vytvoríme novú snímku (VSnímek) [MSlide].
Snímku SCH1.SLD sme vytvorili za účelom vloženia schémy výpočtu (obrázka) priamo do dialógového panela pomocou DCL súboru a AutoLISPu (obr. 8.4 a obr. 8.7).
Postup vytvorenia snímky (VSnímek) [MSlide]:
a) Nakreslíme výkres podľa obr. 8.2.
b) Uložíme výkres DWG: Súbor [File], Ulož ako [Save as]
Meno: Sch1 - vytvorenie SCH1.DWG
c) Vytvoríme snímku SLD: VSnímek [MSlide]
Meno: Sch1 - vytvorenie SCH1.SLD
d) Postup opakujeme, až kým nie je snímka správne nakreslená.
8. 2. Vstupný dátový súbor
V ľubovoľnom textovom editore vytvoríme dátový súbor UDAJE.DAT. Meno vstupného dátového súboru je pevne dané. V prípade voľby ľubovoľného mena súboru musíme program v AutoLISPe dopracovať. Merané údaje musíme nahrať a upraviť do súboru UDAJE.DAT podľa štruktúry obr. 8.3.

Obr. 8.3. Vstupné merané údaje
UDAJE.DAT
8. 3. Vytvorenie prázdnych DCL panelov
![]() |
Obr. 8.4. Definícia DCL panelov – Visual LISP editor
Dialógový panel obsahuje nasledovnú programovú štruktúru:
Definícia nového DCL panela UDAJE (Dialog Control Language):
![]() |
Dialógový DCL panel obsahuje nadpis [Label], napríklad s názvom “Výpočet súradníc meraných bodov“ a bude zložený z riadkov [Row] a stĺpcov [Column], ktoré začínajú a končia znakmi “{“ “ }“.
Do riadkov a stĺpcov usporiadame editovacie okná [Edit_Box] podľa obr. 8.5 a programu UDAJE.DCL.
![]() |
![]() |
![]() |
Štruktúra príkazu zoznam položiek [Popup_list] na rolovanie textov, alebo položiek usporiadaných do zoznamu [List]:
![]() |
label = "Etapa merania:";
key = "Etapa";
list = "0.etapa \n1.etapa \n2.etapa \n3.etapa \n4.etapa \n5.etapa“;
fixed_width = true;
edit_width = 10;
}
Pred prezeraním DCL panelov v “Preview DCL in Editor“ si vytvoríme program UDAJE.DCL na prezeranie dát a program UDAJE.LSP na výpočet geodetických údajov vo Visual LISP editore. Dialógový panel si odskúšajte postupne vložením jednotlivých častí.
Štruktúra programu UDAJE.DCL:




![]() |
Obr. 8.5. Funkčný dialógový panel UDAJE z programu UDAJE.DCL
8. 4. Zobrazenie údajov v DCL paneloch
Číselné hodnoty jednotlivých premenných a snímka SCH1.SLD môžu byť načítané do jednotlivých políčok DCL panela (obr. 8.5) vytvoreným programom UDAJE.LSP v AutoLISPe. Jednotlivé hodnoty zistíme z dátového súboru UDAJE.DAT (obr. 8.3), v našom prípade sú načítané súradnice a nadmorské výšky stanoviska merania (5010), orientačného bodu (5011) a meraných údajov v teréne (číslo bodu, vodorovný uhol, prevýšenie, výška cieľa). Načítané hodnoty sa zobrazia v políčkach DCL panela (obr. 8.7) a súradnice budú vypočítané položkou “Výpočet súradníc“. Výsledné údaje (ČB, Y, X, H) budú uložené vo výstupnom dátovom súbore BODY.DAT (obr. 8.6).
Spustenie programu: Príkaz: (load “UDAJE“) → udaje
a) Vyberte položku z DCL panela (obr. 8.7) “Výpočet súradníc“
b) >>>>>>>>>>>>>>>>>>>>>>>>>>>>>OK. - výpočet jednotlivých bodov
c) Výpočet a uloženie súradníc do BODY.DAT.
d) KONIEC PROGRAMU - VÝPOČET SÚRADNÍC BODOV (obr. 8.6).
Zdrojový text programu UDAJE.LSP je uvedený v Prílohe č. 9.6.
Obr. 8.6. Výsledný dátový súbor BODY.DAT –
súradnice bodov a výšky
Štruktúra vzniknutého výsledného súboru BODY.DAT (obr. 8.6) korešponduje so štruktúrou vstupného súboru z príkladu Pr. 7.4 (obr. 7.8). Referenčným bodom lokality, t.j. redukované súradnice P0 [Ymax, Xmax], sú v tomto prípade zvolené ako súradnice stanoviska merania (bod 5010).
Vytvorený program BODY.LSP (Pr. 7.4) vykreslí vypočítané body zo súboru BODY.DAT do výkresu AutoCADu (obr. 8.8). Pred vykreslením bodov sa doporučuje vytvoriť prototypový výkres s pripravenými hladinami (Hladina) [Layer], ako sú BODY, CBODOV, VYSKY, ZNACKY, OMERKY, POLOHOPIS, POPIS a pod.
![]() |
Obr. 8.7. Zobrazený dialógový panel UDAJE v AutoCADe
Na záver je potrebné editovať výkres v AutoCADe do finálnej podoby. V našom prípade do hladiny POLOHOPIS dokreslíme objekty (budovy, cesty), značky, omerné miery, a pod. Do hladiny POPIS popíšeme potrebné textové náležitosti. Výsledný výkres AutoCADu po editácií je znázornený na obr. 8.8.
![]() |
8. 5. Zabudovanie programov AutoLISPu priamo
do menu v AutoCADe
Prvoradou úlohou je premenovanie menu AutoCADu, t.j. súbor ACAD.MNU, napríklad na STAVBA.MNU (podrobný postup je uvedený v “CAD I. Návody na cvičenia. AutoCAD“ [21]), ktorý môžeme uložiť na pracovný adresár AutoCADu.
![]() |
Obr. 8.9. Vlastné roletové menu “CAD II.“ v súbore STAVBA.MNU
![]() |
Obr. 8.10. Nová vytvorená roleta “CAD II.“ v menu AutoCADu
8. 6. Ďalšie ukážkové príklady dialógových panelov
Na ďalšiu inšpiráciu prezentujeme niektoré dialógové panely z oblasti zberu a spracovania meraných údajov objektov.
Prvá ukážka prezentuje vytvorený informačný systém na stavebné účely v železničnom staviteľstve (obr. 8.11), pričom hlavnou úlohou je úprava alebo udržiavanie výhybiek, križovatiek a ďalších železničných prvkov koľajového zhlavia v projektovanom alebo optimalizovanom stave [25].
![]() |
![]() |
Obr. 8.12. Informácie o horizontálnych a vertikálnych posunoch bodov
Praktické príklady s kompletnou štruktúrou vytvorených programov, príkazov, funkcií a práca s dátovými súbormi umožňujú získať skúsenosti práce s grafickým prostredím AutoCADu, programovacím jazykom AutoLISP, Visual LISP editorom, vrátane vytvorenia dialógových panelov a vlastného roletového menu.
V súčasnom období konštruktéri – projektanti môžu využívať vzdialený port “AUTODESK POINT A“ [33], kde sa môžu oboznámiť prostredníctvom Internetu s novinkami AutoCADu, nájsť ďalšie stránky, odkazy a zdroje, databázy, značky, symboly a pod. Projektanti si môžu prezerať prostredníctvom POINT A výkresy, ak sú mimo svojej kancelárie. POINT A zabezpečuje hostiteľský servis pre konštruktérov – projektantov. Konštruktér už nemusí nainštalovať AutoCAD mimo projekčnej kancelárie. S výkresom môže pracovať pomocou Internetového pripojenia na POINT A centrum.
AutoCAD od verzií 2000i a 2002 [33] zvyšuje produktivitu navrhovania a zdieľania dát v reálnom čase vo vnútri projektových tímov. Do technológie AutoCADu sa začleňujú nové pojmy, ako Point A, Advanced Publish to Web, i-drop, DWF, Super DWG Support, AutoCAD Today, Meet Now, eTransmit, CAD Standards, DesignXML, FLEXIm, SAM Reports Lite, Enhanced Attribute Extraction, Volo View Express, AutoCAD Design Center, dbConnect, databázy, a pod. Uvedené názvy nových prvkov sa začleňujú do práce konštruktérov, projektantov využívajúcich produkt AutoCAD.
AutoCAD 2002 zabezpečuje plnú kompatibilitu Visual LISPu s verziami 2000 a 2000i pri využívaní programov vytvorených v AutoLISPe. Visual LISP je nástrojom na zvyšovanie funkčnosti AutoCADu za účelom jednoduchšieho a rýchlejšieho vytvárania projektovej dokumentácie.
Programovanie vo Visual LISPe v AutoCADe, v rámci všetkých jeho možností, zvyšuje produktivitu a efektívnosť práce. Uvedené príklady, ako aj celé učebné texty “CAD II.“ sú spracované tak, že jednotlivé časti budú využívané aj v novších verziách AutoCADu.