Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Grafikus tervezőrendszerek programozása 9. előadás.

Hasonló előadás


Az előadások a következő témára: "Grafikus tervezőrendszerek programozása 9. előadás."— Előadás másolata:

1 Grafikus tervezőrendszerek programozása 9. előadás

2 AutoLISP hibák KifejezésHiba (/ 5 0) error: divide by zero (setg var 4.75) error: null function (+ 5.0 8.0 "twelve") error: bad argument type (sqrt -9) error: function undefined for argument Escape error: Function cancelled

3 Error függvény Saját hibakezelő függvény definiálható (defun myerror (str) (if (/= str "Function cancelled") (princ (strcat "\n***ERROR***" str ”***"))) (setq *error* olderr) ) (defun c:prg1 () (setq olderr *error* *error* myerror)..... program..... (setq *error* olderr) )

4 Automatikus indítás acad2004.lsp – Csak az AutoCAD megnyitásánál töltődik be acad2004doc.lsp – Minden AutoCAD rajz megnyitásánál töltődik be Ezekben a file-okban elhelyezett függvények betöltődnek

5 Menük

6 Menü típusok SzegmensnévMenüterület / eszköz ***BUTTONS1 Egér vagy tablet egér nyomógomb menü... ***BUTTONS4 ***POP0 Kurzormenü ***POP1 Legördülő menü... ***POP16 ***IMAGE Ábra menü ***SCREEN Képernyőmenü ***TABLET1 Tabletmenü... ***TABLET4

7 Menü file felépítése A menü file szakaszokra oszlik. A menü szakaszok almenüket foglalhatnak magukba Egy menü elem kiválasztása egy menü makrót futtat le A menü makró lehet makró nyelvi (DIESEL) vagy AutoLisp parancs

8 Menü példa ***MENUGROUP=teszt ***POP1 P1_1[Teszt menu] P1_2[Line] P1_3[Copy] P1_4[Move] P1_5[Zoom]

9 Menü felépítés ***MENUGROUP=teszt Definiálja a részleges menü nevét ***POP1 Definiálja a menü típusát, legördülő menü P1_1 Egy azonosítót definiál [Teszt menu] A típus utáni első sor adja meg a menü cimkéjét, ami a menü sorban megjelenik

10 Menü betöltése Menü betöltése: menuload

11 Menü beillesztése

12 Menü példa Menü tevékenység definiálása ***MENUGROUP=teszt ***POP1 [Teszt menu] [Line]_line [Copy]_copy [Move]_move [Zoom]_zoom

13 Menü karakterek 1. A név [ ] zárójelek között szerepel A név utáni részt hajtja végre, mintha a parancs után egy SPACE karaktert is lenyomtunk volna Például: _line Néha több szóköz vagy ENTER kell. Ebben az esetben a pontosvessző ( ; ) használható ami a szóköz vagy ENTER karaktert jelenti.

14 Menü karakterek 2. Speciális karakterek KarakterLeírás *** Szakaszcímke ** Almenü címke [] Közrezár egy címszót ; ENTER vagy SPACE ^M ENTER vagy SPACE \ Szünetet iktat be az adatbevitelbe + A parancs folytatódik a következő sorban ^C Törli a parancsot, Control-C $ Speciális, pl. Menü betöltése

15 Menü karakterek példa [Cím] _text \1 0 A vállalat címe;;;+ 1011 Bp.;;;Fontos utca 2.; Elindítja a szöveg kirajzoló parancsot Bekér egy pontot Megadja a méreteket, a szöget és kiírja az első sort Az első ; lezárja a szöveget, a második ; megismétli a _text parancsot, a harmadik ; elfogadja az alapértelmezés beállításokat

16 Menü parancsok megszakítása [Vonal] ^C^C_line [Kor ] ^C^C_circle Bármely előző parancsot meg kell szakítani, hogy az új parancsot végre lehessen hajtani Bár egyetlen Control-C megszakítja a legtöbb parancsot, de néha kettő kell, így a biztonság kedvéért mindig két Control-C –t érdemes megadni

17 Bonyolult példa Négyzet rajzoló menü pont: [Doboz](setq a (getpoint “Első pont”));\+ (setq b (getcorner a “Második pont”));\+ _pline !a (list (car a) (cadr b)) + !b (list (car b) (cadr a)) c

18 Kép menü Kép menü slide-okból hozható létre Slide file vagy gyűjtemény is használható

19 Kép menü definiálása ***IMAGE **Ajtok [Sajat ajtok] [ajtok(door1,ajto1)] _text \1 0 Ajto1; [ajtok(door2,ajto2)] _text \1 0 Ajto2; [ajtok(door3,ajto3)] _text \1 0 Ajto3; [ajtok(door4,ajto4)] _text \1 0 Ajto4; Értelmezés: ajtok( : slide gyűjtemény neve door1 : slide neve a gyűjteményben ajto1) : a menüben megjelenő címke

20 Kép menü aktiválása ***MENUGROUP=teszt ***POP1 [Teszt menu] [Ajtok]^C^C$I=teszt.Ajtok $I=* Értelmezés: $I=teszt.Ajtok : “Ajtok” menü a “teszt” menü része, menü betöltése $I=* : A menü megjelenítése

21 Almenü ***MENUGROUP=teszt ***POP1 [Teszteles] [Vonal ] _line [->Cimek ] [Vállalat ] _text \1 0 A vállalat címe; [~Üres ] [<-Otthon ] _text \1 0 Otthoni címe; [Kor ] _circle

22 Részleges menü betöltés (setvar ”filedia” 0) (command ”_menuload” ”teszt.mnu”) (menucmd ”P6=+teszt.pop1”) A hatodik pozícióba helyezi a menüt

23 Menü azonosító Státusz sorban segéd üzenet is megjelenik ***MENUGROUP=teszt ***POP1 P1_1 [Teszt menu] P1_2 [Line]_line P1_3 [Copy]_copy ***HELPSTRINGS P1_2 [Vonal húzás] P1_3 [Objektum másolás]

24

25 Menü file típusok.mnu : Minta menü file.mnc,.mnx : Lefordított menü file (bináris).mnr : Menü forrásfile, menü által használt bittérképek.mns : Forrás menü file.mnl : Menü LISP file


Letölteni ppt "Grafikus tervezőrendszerek programozása 9. előadás."

Hasonló előadás


Google Hirdetések