Döngüler
AutoLisp'te döngünün 2 çeşiti vardır. Bunlar (repeat) ve (while) diye isimlendirilir.
(repeat)
(Repeat) basit bir döngü yapısıdır. İstenilen kez dögü çalışır. Burada temel bir örnek vardır.
(defun c:loop ( )
(setq pt (getpoint ("\nDönme Merkezi")))
(setq n (getint "\nKademe Sayısı : "))
(repeat n
(command "Rotate" "L" "" pt "20")
)
(princ)
)
(while)
(while) bir koşula bağlı olarak döngü devam eder. Koşul nill değer olınca döngüden çıkar.
Örnek 1:
(defun c:loop1 ()
(while
(setq pt (getpoint "\nBir nokta seç : "))
(command "point" pt)
)
(princ)
)
Örnek 2:
(defun c:loop2 ()
(setq ptlist nil)
(while
(setq pt (getpoint "\nBir nokta işaretle veya ENTER tuşuna bas: "))
(setq ptlist (append ptlist (list pt)))
)
(princ)
)
Örnek 3:
(defun c:loop3 ()
(setq count 0)
(while (< count 10)
(princ count)
(setq count (1+ count))
)
(princ)
)