Računalna podpora za postavljanje mjestnog
položajnog sustava na poprečni presjek
;Izradio Dane
;BOG I HRVATI
;ZA DOM SPREMNI
(defun c:ks ()
(command "osnap" "non")
(command "UCS" "New"
"View")
(command "osnap"
"Endpoint")
(setq izhodiste (getpoint "\nUbodi na
mjesto gdje zelis izhodiste:"))
(command "osnap" "non")
(command "UCS" "New"
izhodiste)
(setq yos (getreal "\nUpisi udaljenost
izhodista od osi:"))
(setq visina (getreal "\nUpisi visinu
izhodista:"))
(setq visina (* visina (- 0 1)))
(command "UCS" "Move"
(list yos visina 0))
(princ "\nUmjesto
>>Unnamed<< u odtvorenom prozoru upisi >>ime<<")
(setq ime (getstring "\nUpisi
ime:"))
(command "UCSMAN"
"Rename" "U" "ime" ime)
(command "View" "ucs"
"Yes")
(command "View" "s" ime)
(command "View" "Window"
ime)
)
Naputak za uporabu ove podpore
- odi na Tools->Load
Application...->odaberi podporu ,,UCS1-napredni.lsp''->pritisni
,,Load''->Ubodi mišem na ,,Close''
- upiši u naredbeni prostor ,,ks''
- ,,Ubodi mjesto gdje zelis izhodiste'' -
kano što i naputak kaže, pikni točku s obzirom na koju će biti određen
položajni sustav
- ,,Upisi udaljenost izhodista od osi'' -
t. j. koliko će položajni sustav biti pomaknut u vodoravnom smislu, u našem
slučaju je najčešće 0
- ,,Upisi visinu izhodista'' - kano što i
sam naputak kaže
- ,,Upisi ime'' - tu se upiše ime od
poprečnog presjeka
- nakon toga odtvori se prozor gdje treba
umjesto ,,Unnamed'' napisati rieč ,,ime'', zatim to staviti pod ,,Set
Current'', ter zatim ,,OK''
- nakon toga zaokruži prostor u kojem
želiš da ti bude pogled povezan s mjestnim položajnim sustavom
- podpora je gotova
-nakon toga odi na view->Named
Views...->tu odaberi određeni pogled ter izkušaj mjestni položajni sustav
Razčlanba podpore red po red:
1) ;Izradio Dane
Sve što dolazi poslije znaka ,,;'' u AutoLISP-u prilikom
izvršenja podpore ne ima nikakvu ulogu. To služi tek kano podsjetnik za
izraditelja podpore ili kano naputak proučavatelju podpore.
2) ;BOG I HRVATI
Isto kano i u prvom redku
3) ;ZA DOM SPREMNI
Isto kano i u prvom redku
4) (defun c:ks ()
Ovaj red zadaje podpodporu ,,pm'' pomoću naredbe
,,defun''. Znak ,,c:'' koji stoji prije ,,pm'' omogućuje da u naredbenom
prostoru od AutoCAD-a upišemo samo ,,pm'' kad želimo pozivati ovu podporu.
5) (command "osnap" "non")
Ovom naredbom izključujemo naredbu ,,osnap'' (točkousmjerivač) iz službe.
6) (command "UCS" "New" "View")
Ovime omogućujemo početak izrade novog mjestnog sustava, t. j. UCS-a.
7) (command "osnap" "Endpoint")
Ovime uključujemo točkousmjerivač koji pokazivač miša usmjeruje na krajeve
crta.
8) (setq izhodiste (getpoint "\nUbodi na mjesto gdje
zelis izhodiste:"))
U računalnoj podpori AutoLISP, naredbe se izvršavaju od
unutarnje prema vanjskim zagradama.
Naredba ,,getpoint'' traži od koristnika podpore da ubode
s mišem točku na određeno mjesto prozora od AutoCAD-a, ter preuzima položajne
vriednosti y i x s mjesta koje je ubodeno. Proslov unutar navodnika
"..." je običan naputak koji govori koristniku gdje i što treba
ubosti s pokazivačem miša. Znak ,,\n'' koji se nalazi izpried proslova baca taj
proslov u novi red.
Naredba ,,setq'' obćenito pridružuje bilo koji niz, broj,
znaknoiz i t. d. promienljivoj vriednosti. U ovom slučaju će ubodenu točku
pridružiti promienljivoj vriednosti ,,izhodiste''.
9) (command "osnap" "non")
Isto kano i u redku broj 5.
10) (command "UCS" "New" izhodiste)
Ovom naredbom se središte novog mjestnog položajnog
sustava postavlja u predhodno ubodenu točku, koja se kano niz nalazi spremljena
u promienljivoj vriednosti ,,izhodiste''.
11) (setq yos (getreal "\nUpisi udaljenost izhodista od
osi:"))
Naredba ,,getreal'' traži da u naredbeni prostor od
AutoCAD-a upišemo neki stvarni broj, ter ga ona od tamo preuzima. Proslov
unutar navodnika služi tek kano naputak što zapravo upisujemo.
Naredba ,,setq'' kano i u redku broj 8. (tamo nije broj
već niz) pridružuje upisani broj promienljivoj vriednosti yos.
12) (setq visina (getreal "\nUpisi visinu izhodista:"))
Isto kano i u redku broj 11.
13) (setq visina (* visina (- 0 1)))
U računalnoj podpori AutoLISP, naredbe se izvršavaju od
unutarnje prema vanjskim zagradama. tako će se prvo izvršiti naredba ,,(- 0
1)''. To je zapravo naredba za oduzimanje dva broja ,,0 - 1'', koja u
AutoLISP-u imaju ovakav poseban način. Ista stvar je s množenjem. Nkon što
oduzme ova dva broja, on ga množi s promienljivom vriednošću ,,visina''.
Naredba ,setq'' to sve opet pridružuje promienljivoj
vriedonosti visina.
14) (command "UCS" "Move" (list yos visina 0))
Ovo je naredba za pomicanje mjestnog položajnog sustava na točku s
položajem ,,yos, visina, 0''.
15) (princ "\nUmjesto >>Unnamed<< upisi
>>ime<<")
Naredba ,,princ'' služi za izpis poruke (stavljene u
navodnike) u naredbenom prostoru od AutoCAD-a. Naredba ,,\n'' stavlja poruku u
novi red u odnosu na prijašnju naredbu ili izpis.
16) (setq ime (getstring "\nUpisi ime:"))
Naredba ,,getstring'' traži od koristnika da u naredbeni
prostor od AutoCAD-a upiše znakoniz (string), ter ga od tamo i preuzima.
Proslov pod navodnicima je tek naputak, a izraz ,,\n'' stavlja proslov u novi
red.
Naredba ,,setq'' pridružuje preuzeti znakoniz
promienljivoj vriednosti ,,ime''.
17) (command "View" "ucs" "Yes")
Ovime se povezuje pogled s mjestnim položajnim sustavom.
18) (command "View" "s" ime)
Sprema ime pogleda pod nazivom ,,ime'', koje smo prije
upisali. U našem slučaju to će biti naziv poprečnog presjeka, t. j. udaljenost
poprečnog presjeka po uzdužnoj osi (stacionaža).
19) (command "View" "Window" ime)
Ovom naredbom zaokružujemo prostor koji će zauzimati naš pogled pridružen
mjestnom položajnom sustavu.
20) )
Ova zatvorena zagrada je završetak naredbe ,,defun'', ter ujedno označava
kraj podpodpore ,,ks''.