Zobrazit plnou verzi příspěvku: Programek v AutoLispu 2

Petrš
22.04.2009, 16:17
Dobrý den.   Nasel sem jeden programek a neni mi jasne jak pracuje
prvni cast programu. Predem dekuji za vysvetleni.
 
(defun C:rovina ()
(setq x (getstring "Zadejte velikost strany [a] nebo myší [M]:"))
(if (= x "")(EXIT))
(if (= (strcase x) "M")(setq a (getdist '(0 0 0) "Určete vzdálenost od počátku: "))(setq a (atof x))        
)
(setq p1 '(0 0 0))(setq p2 (list a 0 0))(setq p3 (list a 0 a))(setq p4 (list 0 0 a))(setq p5 (list 0 a 0))(setq p6 (list a a 0))(setq p7 (list a a a))(setq p8 (list 0 a a))(setq p9 (list (/ a 3) 0 0))(setq p10 (list (/ a 3) a a))(setq x1 (- a (/ a 3)))(setq p11 (list  x1 0 0))(setq p12 (list x1 0 a))(setq p13 (list  0 x1 a))(setq p14 (list  0 x1 0))
(command "_line" p1 p2 p3 p4 p1"")(command "_line" p5 p6 p7 p8 p5"")(command "_line" p1 p5"")(command "_line" p2 p6"")(command "_line" p3 p7"")(command "_line" p4 p8"")(command "_line" p1 p6"")(command "_line" p11 p12 p13 p14 p11"")
(command "_zoom" "m")                             )
 

alfred
22.04.2009, 16:28
V první části si vyberete zda budete zadávat velikost strany číslem, nebo myší.V druhé zadáte požadovaným způsobem vzdálenost. Pak už se nastavují jen nějaké hodnoty bodů a nakonec to spojí úsečkami. V první části to není řešeno zrovna nejobratněji, ale možná to funguje... (nezkoušel jsem).