Professional Documents
Culture Documents
AutoLisp - Vezbe 2
AutoLisp - Vezbe 2
(defun c:godine()
(setq godRodj (getint "\nUnesite godinu rodjenja: "))
(write-line (strcat "\nImate " (rtos (- 2017 godRodj) 2 0) " godina!"))
)
Zadavanje komandi u AutoLispu
;crtanje kruznog luka (3 point)
(command "arc" "25,7" "30,4" "35,7")
;crtanje pravougaonika
(command "rectang" "25,17" "30,14")
;crtanje kvadrata
(command "rectang" "2,20" "7,15")
1
;upisan krug u kvadrat
(command "circle" "4.5,17.5" "4.5,20")
(print x)
(print x1)
(print y)
(print (type x1))
(print (type pt2))
(print pt2)
2
(command "circle" "7,6" "8,6")
Kreirati komandu koncentricni krugovi koja neće prihvatati parametre a koja će prilikom
poziva zahtevati od korisnika da unese:
Centar krugova,
koliko (broj) koncentričnih krugova želi da nacrta,
poluprečnik početnog (NAJMANJEG) kruga i
međusobno rastojanje krugova (rastojanje između kružnica).
(defun c:koncKrugovi()
(setq ptCentar (getpoint "\nUnesite centar krugova"))
(setq n (getint "\nUnesite koliko (broj) koncetricnih krugova zelite da nacrtate"))
(setq r (getint "\nUnesite POLUPRECNIK pocetnog (najmanjeg) kruga"))
(setq rastojanje (getint "\nUnesite medjusobno rastojanje krugova"))
(setq i 0)
(while (< i n)
3
Kreirati komandu koncentricni krugovi koja neće prihvatati parametre a koja će prilikom
poziva zahtevati od korisnika da unese:
Centar krugova,
TAČKU na kružnici kruga koji želi da nacrta,
Nakon iscrtavanja prvog kruga pitati korisnika da li želi da nacrta sledeći krug (ponuditi opcije
Da/Ne), iscrtavati koncentrične krugove sve dok ne odabere opciju Ne.
(defun c:koncKrugovi()
(setq ptCentar (getpoint "\nUnesite centar krugova"))
(setq x1 (car pt1))
(setq y1 (cadr pt1))
(setq i 0)
(while (= i 0)
(setq ptPoluprecnik (getpoint "\nUnesite tacku na kruznici"))