Коротко об AutoLISP и Visual LISP
 
 
 

В результате совершенствования AutoLISP появилась интегрированная среда разработки Visual LISP (VLISP), которая включает в себя компилятор, отладчик и ряд других средств, повышающих производительность. В языке появились новые возможности, которые позволяют взаимодействовать с объектами с использованием интерфейса ActiveX. Кроме того, на VLISP с помощью реакторов объектов можно обрабатывать различные события.

В отличие от ObjectARX или VBA, в Visual LISP для каждого чертежа, открытого в многодокументной среде AutoCAD, имеется свое пространство имен и собственная среда. Пространство имен каждого чертежа является изолированным, что позволяет избегать конфликтов имен переменных, процедур AutoLISP среди одновременно открытых чертежей. Например, следующее выражение по-разному устанавливает значение переменной а для различных документов.

(setq a (getvar "DWGNAME")) 

В Visual LISP имеется механизм загрузки символов и переменных из одного пространства имен в другое. Для получения более подробной информации о пространствах имен см. раздел справки "Руководство разработчика по AutoLISP". Для отображения справки по разработке приложений выберите пункт меню"Справка""Дополнительные ресурсы""Документация для разработчиков".

Приложения и процедуры AutoLISP могут взаимодействовать с AutoCAD различными способами. Они могут запрашивать необходимую информацию у пользователя, непосредственно обращаться к встроенным командам AutoCAD, создавать и изменять объекты в базе данных чертежа. В AutoCAD с помощью процедур AutoLISP можно создавать новые команды для решения конкретных задач. Некоторые из стандартных команд AutoCAD написаны на языке AutoLISP.

Приложения Visual LISP могут загружаться из файлов трех форматов:

ПримечаниеЕсли существует несколько приложений AutoLISP с одинаковыми именами, загружается то из них, которое имеет наиболее позднюю дату изменения. То же самое происходит при загрузке файлов с расширениями LSP, FAS или VLX, если не указано полное имя файла, включая его расширение.

Поскольку AutoCAD может выполнять код AutoLISP непосредственно, его компиляция не требуется. Несмотря на то, что в Visual LISP имеется интегрированная среда разработки, для ознакомления с AutoLISP можно использовать командную строку: вводя в ней выражения, можно сразу же видеть результаты их выполнения. Это делает AutoLISP удобным языком для экспериментирования как для новичков, так и для опытных программистов.

Пользователи, не имеющие намерений писать собственные приложения на AutoLISP, тем не менее, могут найти много полезных процедур, входящих в комплект поставки AutoCAD. Имеется также большое число условно-бесплатных процедур и приложений, поставляемых сторонними разработчиками. Умение загружать и использовать такие приложения позволяет значительно повысить производительность работы.

ПримечаниеЕсли вызов команды производится с помощью функции command языка AutoLISP, подразумевается, что системные переменные PICKADD и PICKAUTO имеют значения 1 и 0, соответственно. Это обеспечивает совместимость с предыдущими версиями AutoCAD и упрощает настройку, так как пропадает необходимость проверки параметров этих переменных.

О программировании средствами AutoLISP см. раздел справки "Руководство разработчика по AutoLISP"; о функциях AutoLISP и Visual LISP см. раздел справки "AutoLISP: Справочник". Для отображения справки по разработке приложений выберите пункт меню"Справка""Дополнительные ресурсы""Документация для разработчиков". В программах на AutoLISP можно использовать диалоговые окна. Документация о программируемых диалоговых окнах содержится только в документации Руководство разработчика AutoLISP.