Page 9 - AutoLISP и Visual LISP в среде AutoCAD
P. 9
2.2. ВЫЗОВ ФУНКЦИЙ AUTOLISP
В AutoLisp нет различия между текстом программы и данными. Любой
список по умолчанию является программой, и AutoLisp будет пытаться ее
выполнить. Если список не программа, а данные, то возникает
необходимость явно отключить его выполнение.
Вызов функций AutoLisp записывается как список вида:
(имя_функции a a a … a ),
3
2
1
n
где a a a … a – аргументы функции.
2
n
1
3
Функция setq ( set buy quote – "присвоить по ссылке") позволяет
присваивать переменным значения. Функция возвращает значение
последнего присвоения.
Присваивая значение переменной, AutoLisp автоматически назначает ей
тип. При каждом обращении к переменной используется то значение,
которое было установлено последним. Имя переменной может состоять из
любых печатных символов (в том числе цифр), однако не должно включать в
себя зарезервированные в AutoLisp символы, представленные ниже.
Зарезервированные символы
. ' " ; ( )
точка кавычка двойная точка с открывающаяся закрывающаяся └─┘
кавычка запятой скобка скобка пробел
Нельзя также использовать в качестве имен переменных имена функций
AutoLisp.
При записи вещественных чисел, у которых отсутствует целая часть, не
допускается опускать 0.
Пример:
(setq x 0.5) ; Переменной x присвоено значение 0.5
; (возвращаемое значение 0.5)
(setq a 2.5 b 12) ; Переменной a присвоено значение 2.5,
; Переменной b - 12 (возвращаемое значение 12)
Изменение значения переменной на nil освобождает выделенную для нее
динамическую память.
8