Ю. И. Тарасов. Введение в язык АвтоЛИСП
ЛЕКЦИЯ 1
ВВЕДЕНИЕ В ЯЗЫК АВТОЛИСП
1. 1. Назначение и возможности языка Автолисп
Графический язык программирования Автолисп (AutoLisp) является расширением языка программирования Лисп (LISP). Лисп - это язык высокого уровня, ориентированный на обработку списков, который выбран в качестве базового потому, что графические примитивы (начиная с точки), блоки, наборы примитивов и блоков представляются в Автокаде в виде списков.
В составе системы Автокад поставляется интерпретатор языка Автолисп. Он загружается в оперативную память вместе с загрузкой Автокада и доступен в течение всего сеанса редактирования. Таким образом, графический редактор Автокада и интерпретатор Автолиспа представляют собой единую систему. Любая функция Автолиспа может быть вызвана из графического редактора и любая команда редактора может быть использована в программе на Автолиспе.
Наиболее характерные классы применений Автолиспа:
1) Программирование чертежей типовых деталей с параметризацией. Создается программа, позволяющая при каждом обращении к ней формировать новый чертеж, отличающийся от чертежей, построенных этой же программой, размерами, а также, возможно, и топологией. Время получения чертежа с помощью такой программы может быть в десятки раз меньше времени, необходимого для его создания с помощью Автокад вручную. При этом экономится память.
2) Создание и ведение графических баз данных из приложений, написанных на Автолиспе. Программы на Автолиспе, в сочетании с пользовательскими меню, могут организовывать просмотр, поиск, выбор и вставку необходимых чертежей.
3) Анализ и (или) автоматическое преобразование графической базы данных (БД) Автокада.
Программа на Автолиспе может решать такие задачи как:
обнаружение пересечений электрических и других магистралей в производстве;
подсчет суммарной длины трасс;
расчет площадей сложных областей, центра масс и моментов инерции и другие.
Программа также может быстро осуществить преобразование чертежа, на которое при работе "врукопашную" пришлось бы затратить значительное время, например:
заменить блоки чертежа на другие,
перенести выделенные объекты со слоя на слой;
отобрать объекты определенного типа и модифицировать их.
4) Расширение системы команд графического редактора Автокад и построение на базе Автокад специализированных САПР. Автокад является открытой и развивающейся системой.
В языке Автолисп определены более 150 различных операций, которые называются встроенными функциями.
По назначению их можно разделить на функции:
для работы с числовыми данными и переменными, реализующие арифметические, логические, а также наиболее часто используемые математические функции;
для проверки выполнения различных условий и организации ветвлений программ;
для работы со строками текстов: формирование, сцепление, сравнение строк, выделение подстрок и т. п. ;
для ввода с клавиатуры устройств указания, и вывода на экран и принтер;
для работы с текстовыми файлами на МД;
для работы с примитивами, блоками, системными переменными, таблицами в БД.
1. 2.