Błąd w Interpreterze Lispa???


2P
 Share

Recommended Posts

Spróbujcie załadować taki "kawałek" programu w Lispie:

(defun C:test1 ()

(command "_area" "e" "l")

)

(defun C:test2 ( / area)

(command "_area" "e" "l")

)

Na pierwszy rzut oka oba nowe Polecenia (test1 i test2) powinny wykonać to samo, czyli podać powierzchnię ostatniego narysowanego elementu (np. polilini) Niestety tak dzieje się tylko dla test1. W drugim przypadku polecenie area nie umożliwia podania opcji!!! i kończy swoje działanie przed czasem.

Dzieje się tylko tak, jeśli w definicji funkcji podamy jako zmienną lokalną zmienną o nazwie area.... Trochę mnie to czasu dziś i nerwów kosztowało....

Powyższe dotyczy ZwCAD2007 i 2008 - może ktoś przetestuje na AutoCADzie? Będę wdzięczny....

Pzdr

Link to comment
Share on other sites

na AutoCADzie chodza obie wersje.

Command: test1
_area
Specify first corner point or [Object/Add/Subtract]: e
Select objects: l
Area = 55616.5209, Perimeter = 979.1300
Command: nil
Command: test2
_area
Specify first corner point or [Object/Add/Subtract]: e
Select objects: l
Area = 55616.5209, Perimeter = 979.1300
Command: nil

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share