- CadSupport
- Сумма длин линий и площадей в Автокаде
- 1. Как создать свой тип линий в Автокаде?
- 2. Как получить сумму длин линий
- 3. Создадим небольшую ведомость с суммами длин в виде таблицы по типу линий
- LISP Программы.
- Как использовать программы.
- Загрузка LISP файлов в Автокад.
- Загрузка файлов с помощью окна «Загрузка / Выгрузка приложений».
- Загрузка файлов с помощью Редактора Visual LISP.
- Запуск новых команд.
- Список LISP программ.
- 38 комментарии на “ LISP Программы. ”
- Файл vlx в автокаде как запустить
- Конструкция
- Примеры программ на ЛИСПе (lisp) для Автокада
- Как загрузить вспомогательную часть в ПО
- Команды LISP-программы для Автокада (Autocad)
- Список функций лисп (LISP) – языка программирования для Autocad
- Загрузка растра с файлом привязки в AutoCAD. Установка
- Установка приложения для подгрузки растра с файлом привязки в Автокад. Видеоурок
- Как установить файл *.lsp в Автокад?
- Как запустить команду приложения lisp?
- Как подгрузить lisp в Автокад LT?
Видео:Площадь в Автокаде как посчитать, измерить площадь фигур и штриховокСкачать
CadSupport
Все о BIM, CAD, ERP
Видео:Внедрение Lisp-приложений в интерфейс AutoCADСкачать
Сумма длин линий и площадей в Автокаде
Итак, представим себе тривиальную задачу — надо посчитать длину к примеру трубопроводов, или электрических кабелей, или дорожной разметки, в общем любых линейных объектов на плане.
Можно взять отдельные элементы на плане и, заглядывая в их свойства, последовательно сложить длины. Но согласитесь это утомительно, однообразно, и как-то неэффективно.
Можно воспользоваться стандартным инструментом _dataextraction, хотя он настолько универсален, что для решения такой простой задачи пусть и подходит, но результат вы получите не намного быстрее чем складывая вручную. Проще потратить пару минут, и раз и навсегда установить GeomProps.
В целом же, для решения подобных задач я использую прием суммирования длин линий по типу линий. Работает это следующим образом:
- Создать типы линийдля каждого типа линейных объектов, с которыми будем работать. Это позволяет, во-первых, контролировать параметры отображения линии на плане, и быстро изменять его при необходимости, переписывая файл с линиями. Во вторых позволяет отфильтровать одни объекты от других, без использования слоёв. После чего с помощью SelSim мы сможем в один клик выбирать все аналогичные объекты на плане.
- Посчитаем сумму длин линий линейных объектов в AutoCAD, обратимся за помощью к GeomProps.
- И наконец, добавим небольшую ведомость с суммами длин в виде таблицы по типу линий с помощью небольшой лисп утилиты от Mac Lee — LenCal.
Сумма длин линий и площадей объектов Автокад с помощью GeomProps
Теперь разберемся с каждым пунктом немного подробнее:
Видео:[Урок AutoCAD] Подсчет площадей в Автокад.Скачать
1. Как создать свой тип линий в Автокаде?
Это необязательно, но знать полезно.
Типы линий в автокаде создаются с помощью простого текстового файла с расширением .lin, синтаксис которого весьма незамысловат. В простейшем случае:
Где в первой строке, после звездочки идет название типа линии и через запятую его текстовое превью, оно должно подсказать пользователю как примерно будет выглядеть тип линии. Вторая строка начинается с буквы A, её смысл в описании синтаксиса заключается в том, что она обозначает тип генерации линии. В Автокаде, он всего один (хотя может быть что-то и поменялось в последних версиях?). А – сообщает автокаду о том что линия должна начинаться и заканчиваться сплошной линией. Т.е. на концы любого линейного объекта у вас всегда будут заштрихованны, а параметры штриховки будут игнорироваться на концах и началах линий. Потом через запятую идёт собственно описание штриховки, 1 – сплошная линия длинной в одну условную единицу чертежа, -1 – пропуск в ту же единицу. В описании могут использоваться так же буквы и символы в формате .shx
Видео:[AutoCAD] Марка помещения. Автоматические экспликации и площади в AutoCADСкачать
2. Как получить сумму длин линий
Скачиваем GeomProps, распаковываем, добавляем в автокад с помощью команды _appload, выбрав подходящую версию плагина. Делается это один раз, после чего GeomProps загружается автокадом автоматически. Теперь в стандартных свойствах автокада (ctrl+1) у вас появится новая группа для всех линейных объектов:
Geometrical properties:
Area (total) — сумма площадей выбраных объектов.
Volume (total) — сумма объемов выбраных объектов
Length (total) — сумма длинн выбраных объектов
И еще одно свойство — Linear scale Factor — множитель для всех трёх свойств выше. Т.е. можно домножить например на 0.001 чтобы получить длину в метрах если вы работаете на чертеже в масштабе 1:1.
Видео:Секреты и приемы AutoCAD | № 5 | Как подсчитать площадьСкачать
3. Создадим небольшую ведомость с суммами длин в виде таблицы по типу линий
В этом нам поможет небольшая LISP утилита от Lee-Mac — LenCal калькулятор сумм длин линий.
Загружаем утилиту, с помощью команды _appload добавляем её в автокад. Теперь нам доступна новая команда — LenCal, запускаем её, выбираем в меню типы линий, из которых нам хотелось бы получить ведомость. И добавляем в чертёж таблицу в которой в одной колонке будут названия типов линий (именно поэтому имеет смысл создать линии с нормальным названием) а в другой их общая длинна на чертеже.
Видео:Как посчитать площадь в АвтокадеСкачать
LISP Программы.
На этой странице будут выкладываться примеры LISP программ. По многим из них есть уроки с подробным описанием кода.
Если Вы знаете как запускать LISP программы в AutoCAD, то можете сразу перейти к списку программ .
Видео:Автоматизация построения моделей в AutoCAD. Язык LISP для студентов и инженеров.Скачать
Как использовать программы.
Все программы написаны для использования их в полной версии программы AutoCAD. Они не будут работать в AutoCAD LT.
Если Вам понравилась какая-либо программа на этом сайте и Вы хотите ее установить на свой компьютер. Для этого Вам нужно сделать следующее:
1. Скачать программу на свой компьютер;
2. Все программы заархивированы. Поэтому после того, как вы скачали архив, его нужно разархивировать. Разархивировав архив, Вы получите файлы программы, которые можете хранить в любом месте на вашем компьютере (Я для этого использую папку D:MyLisp);
3. Файлы программы нужно загрузить в AutoCAD;
4. Запускаем новые команды, которые хранятся в загруженных файлах.
Я думаю, что с первыми двумя пунктами справятся все. Поэтому сразу поговорим о загрузке LISP файлов в Автокад.
Видео:Пример простой программы на LISPСкачать
Загрузка LISP файлов в Автокад.
Загрузить в Автокад LISP программу можно несколькими способами. Опишу некоторые из них.
Видео:простановка площадей и длин замкнутых полилинийСкачать
Загрузка файлов с помощью окна «Загрузка / Выгрузка приложений».
Откройте Автокад. На ленте перейдите на вкладку « Управление » и щелкните по кнопке « Приложение ». См. Рис. 1.
Рис. 1 Кнопка «Приложение»
Если вы работаете в режиме Классический AutoCAD:
В главном меню выберите « Сервис », далее щелкните по строчке « Приложения… ». См. Рис. 2.
Рис. 2. Строка «Приложение
Откроется окно «Загрузка / Выгрузка приложений».
Найти папку , в которой лежит файл, выделите его и нажмите на кнопку « Загрузить ». См. Рис. 3.
Рис. 3. «Загрузка / Выгрузка приложений»
Внизу окна появится сообщение о том, что выбранный файл загружен. Обратите внимания, что данным способом можно загружать не только LISP файлы (*.lsp), но и другие приложения поддерживаемые программой AutoCAD ( *.arx; *.crx; *.dvd; *.dbx; *.vlx; *.fas ).
Таким способом загружают программы для их временного использования. После того, как Вы закроете Автокад, а потом откроете его снова, их не будет в Автокаде, и для их использования их нужно загрузить снова.
Для того, чтобы нужные Вам LISP файлы загружались в Автокад автоматически, их нужно добавить в список автоматической загрузки. Для этого щелкаем на портфельчик « Автозагрузка » (или на кнопку « Приложения » под ним). Откроется окно «Автозагрузка», в котором нажимаем на кнопку « Добавить ». См. Рис. 4.
Рис. 4. Автозагрузка
Откроется окно «Добавление файла в список автоматической автозагрузки». Находим нужную папку , выделяем файл и нажимаем на кнопку « Открыть ». См. Рис. 5.
Рис. 5. Добавление файла в список автоматической автозагрузки
В окне «Автозагрузка» появится строка с файлом , который будет автоматически загружаться при каждом запуске Автокад.
После того, как Вы добавите все необходимые файлы, нажмите на кнопку « Закрыть ». Затем на кнопку « Закрыть » в окне «Загрузка / Выгрузка приложений». См. Рис. 6.
Рис. 6. Файл добавлен
Имейте в виду, что файлы загрузятся автоматически, только при следующем запуске Автокад. Если Вы хотите использовать их в текущей сессии, их нужно загрузить способом, описанным выше (либо каким другим способом).
Видео:[Уроки Автокад] Площади в Автокад, Экспликация помещений, настраиваемые поляСкачать
Загрузка файлов с помощью Редактора Visual LISP.
Откройте Редактор Visual LISP:
Наберите в командной строке VLIDE (или VLISP) и нажмите .
Или на ленте перейдите на вкладку « Управление » и нажмите на кнопку « Редактор Visual LISP ». См. Рис. 7.
Рис. 7. Редактор Visual LISP
Откроется Редактор Visual LISP. Нажмите на кнопку « Открыть файл ». Появится окно «Открытие файла для редактирования / просмотра».
Найдите нужную папку ;
Выделите файл и нажмите на кнопку « Открыть ». См. Рис. 8.
Рис. 9. Открытие файла в Редакторе Visual LISP
Файл загрузится в активное окно редактора. Чтобы загрузить его в Автокад, нужно нажать на кнопку « Загрузить активное окно редактора ».
Такой способ имеет свои плюсы, связанные с тем, что Вы видите программный код файла:
1. Вы можете посмотреть, сколько команд в этом LISP файле (их может быть несколько).
2. Найти имена этих команд: находим строку с функцией defun; Имя команды стоит сразу после с: (в нашем случаи это: 3d_tro и roY );
3. Кроме всего прочего Вы имеете возможность отредактировать код программы.
Рис. 9. Имена новых команд.
Чтобы определить границы команды в программном коде, поставьте курсор мыши перед открывающейся скобкой функции defun и дважды щелкните левой кнопкой мыши. Функция defun, которая описывает одну команду – выделиться. См. Рис. 10.
Рис. 10. Программный код одной команды
Видео:Подгрузка файлов LISP в AutoCADСкачать
Запуск новых команд.
После того, как файлы загружены, мы может запускать в Автокад новые команды, которые хранятся в этих файлах. Для этого достаточно набрать ИМЯ КОМАНДЫ в командной строке и нажать Enter >.
Кроме этого для любой команды можно создать кнопку.
Поместить ее на панель инструментов, а панель вынести на ленту.
После этого запускать команду, нажимая на эту кнопку.
Также для этих команд можно создать горячие клавиши и запускать их нажатием определенных клавиш на клавиатуре.
Как это сделать читайте в уроке: « Горячие клавиши Автокад ».
Конечно, мы разобрали далеко не все способы загрузки файлов и запуска команд, но этого в полнее достаточно для того, чтобы комфортно использовать LISP программы размещенные ниже.
Видео:Lisp AutoCAD - Separate Hatch #ntd #tutorials #autocad #lispСкачать
Список LISP программ.
LISP программа «mp_kub.lsp»
Программа, которая рисует в Автокад куб со сторонами 200.
Для запуска в Автокад используется имя MP_KUB
После запуска выдает запрос: “ Укажите базовую точку ».
Указываем любую точку в рабочем окне Автокад. Команда построит куб со сторонами 200 .
Подробное описание программного кода смотрите в уроке: « Пример простой программы на LISP ».
Скачать программу Mp_kub.lsp (Размер файла: 449 bytes)
LISP программа «mp_paral.lsp»
Программа рисует параллелограмм, со сторонами указанными в диалоговом окне. Программа работает только вместе с файлом диалогового окна « mp_paral.dcl ». Поэтому скачать надо два файла.
Чтобы Автокад определил местонахождение файла диалогового окна, его нужно поместить в папку вспомогательных файлов Автокад.
Либо в коде программы, в строке
( setq dcl_id ( load_dialog «mp_paral.dcl» )) нужно указать полный путь к файлу диалогового окна.
Например, если файл находиться в папке « D:MyLisp » строка должна выглядеть так:
( setq dcl_id ( load_dialog «D:\MyLisp\mp_paral.dcl» ))
Для запуска в Автокад используется имя MP_PARAL
После запуска на экране появится диалоговое окно.
Нужно указать размеры сторон параллелограмма и нажать на кнопку ОК .
Далее появится запрос: “ Укажите базовую точку ».
Указываем любую точку в рабочем окне Автокад. Команда построит параллелограмм со сторонами указанными в диалоговом окне.
Подробное описание программного кода смотрите в уроке: « Пример программы LISP с диалоговым окном ».
Подробное описание программного кода создания диалогового окна смотрите в уроке: « Диалоговое окно ».
Скачать диалоговое окно Mp_paral.dcl (Размер файла: 392 bytes)
Скачать программу Mp_paral.lsp (Размер файла: 781 bytes)
LISP программа «Sum_dl.lsp»
Программа считает сумму длин выбираемых отрезков. В процессе выбора отрезков Автокад выдает количество выбранных отрезков и сумму их длины.
Для запуска в Автокад используется имя SumDl
После запуска выдает запрос: « Выберите отрезок »:
Укажите любой отрезок.
Он выделится. В командной строке появиться сообщение, что выбран один отрезок и его длина.
Ниже снова появиться запрос: « Выберите отрезок »:
Укажите следующий отрезок.
Он выделится. В командной строке появиться сообщение о количестве выбранных отрезков и их общей длины.
Ниже снова появиться запрос: « Выберите отрезок »:
Количество выбранных отрезков и их общая длина.
И так до бесконечности. Чтобы завершить выполнения программы нажмите клавишу Esc >.
Подробное описание программного кода смотрите в уроке: « Пример AutoLISP программы: Сумма длин отрезков ».
Скачать программу Sum_dl.lsp (Размер файла: 464 bytes)
LISP программа «Sum_dls.lsp»
Программа суммы длин со свободным выбором отрезков.
Программа считает сумму длин выбираемых отрезков.
Выбор отрезков можно делать и по одному и группой при помощи рамки (или при помощи секущей рамки). В общем, любым стандартным способом AutoCAD.
Для запуска в Автокад используется имя: SumDls
После запуска программа выдает запрос: « Выберите объекты »:
Выбирать отрезки можно любым стандартным способом Автокад. Если случайно выбран не тот отрезок, его выбор можно отменить. Для этого удерживая клавишу Shift >, щелкните по нему. Этот отрезок будет исключен из выбора.
Процесс выбора и отмены выбора отрезков отражается в командной строке.
Отмена выбора объекта.
После того как вы выбрали все необходимые объекты, нажмите Enter >, чтобы завершить выбор.
В командной строке появиться сообщение о количестве выбранных отрезков и их общей длины.
Результат выполнения программы.
Подробное описание программного кода смотрите в уроке: « Примеры LISP программ: Сумма длин отрезков ».
Скачать программу Sum_dls.lsp (Размер файла: 487 bytes)
LISP программа «Sum_dlv.lsp»
Программа считает сумму длин отрезков на всем чертеже.
Для запуска в Автокад используется имя: SumDlv
После запуска программа выделить на чертеже все отрезки
В командной строке появиться сообщение о количестве отрезков на все чертеже и их общей длины.
Результат выполнения программы.
Подробное описание программного кода смотрите в уроке: «Примеры LISP программ: Сумма длин отрезков».
Скачать программу Sum_dlv.lsp (Размер файла: 440 bytes)
LISP программа «Sum_sl.lsp»
Программа считает сумму длин отрезков на выбранном слое.
Для запуска в Автокад используется имя: SumSl
После запуска программа выдает запрос: « Выберите объект для определения слоя: “
Укажите любой объект. Программа выделит и сосчитает длину все отрезков на слое, на котором расположен указанный объект.
В командной строке появиться сообщение о количестве отрезков на данном слое и их общей длины.
Результат при выборе синего слоя.
Подробное описание программного кода смотрите в уроке: «Примеры LISP программ: Сумма длин отрезков».
Скачать программу Sum_sl.lsp (Размер файла: 563 bytes)
LISP программа «Scom.lsp»
Программа показывает, как в программном коде AutoLISP можно использовать стандартные команды Автокад.
- Построения отрезка.
- Построения дуги.
- Использования команды редактирования: Зеркало
- Перевода чертежа ЮЗ изометрию.
- Построения Полуконуса.
Для запуска в Автокад используется имя: SCOM
После запуска программа выдает запрос: “ Укажите базовую точку ».
Указываем любую точку в рабочем окне Автокад. Команда построит два отрезка и дугу. Затем отзеркалит их. Потом переведет чертеж ЮЗ изометрию и построит Полуконус.
Подробное описание программного кода смотрите в уроке: « AutoLISP. Стандартные команды Автокад ».
Скачать программу Scom.lsp (Размер файла: 535 bytes)
LISP программа «mp_kub2.lsp»
Программа создает блок куба, стороны которого предварительно задаются.
Для запуска в Автокад используется имя MP_KUB2
После запуска выдает запрос: « Задайте длину стороны куба : »
Введите числовое значение стороны куба и нажмите Enter >
Появиться запрос: “ Укажите базовую точку ».
Указываем любую точку в рабочем окне Автокад. Команда построит блок в виде куба со сторонами, значение которых мы задали при первом запросе.
Подробное описание программного кода смотрите в уроке: « AutoLISP. Создание блока ».
Скачать программу Mp_kub2.lsp (Размер файла: 802 bytes)
LISP программа «mp_kub3.lsp»
Программа создает блок куба при помощи функций расширения языка AutoLISP, стороны которого предварительно задаются. В программе вычисляется объем куба, и координаты центра верхней грани. Объем и координаты сохраняются, как дополнительные данные, которые в любой момент можно извлечь.
Для запуска в Автокад используется имя: MP_KUB3
После запуска программа выдает запрос: « Задайте длину стороны куба : »
Введите числовое значение стороны куба и нажмите Enter >
Появиться запрос: “ Укажите базовую точку ».
Указываем любую точку в рабочем окне Автокад. Команда построит блок в виде куба со сторонами, значение которых мы задали при первом запросе. Так же программа сосчитает объем, и координаты центра верхней грани и сохранить их в блоке в качестве дополнительных данных.
Подробное описание программного кода смотрите в уроке: « LISP. Создание блока ».
Скачать программу Mp_kub3.lsp (Размер файла: 993 bytes)
LISP программа «Udim.lsp»
Программа считывает дополнительные данные из блока, созданного в уроке: «LISP. Создание блока». Вставляет динамический блок, созданный в уроке: « Создание динамического блока ».
Для того, чтобы посмотреть как работает программа предварительно нужно:
- Скачать программу « mp_kub3.lsp », и создать при помощи ее блок (или несколько блоков).
- Скачать динамический блок « Vyn.dwg ».
- Поместить « Vyn.dwg » в папку вспомогательных файлов Автокад.
Как это сделать смотрите в уроке: «Пример программы LISP с диалоговым окном» (или в программе lsp вместо имени файла «Vyn» нужно будет указать полный путь к нему. Например: если файл лежит в папке «D:MyLisp» нужно поставить «D:\MyLisp\ Vyn.dwg « )
Для запуска в Автокад используется имя: UDIM
После запуска программа выдает запрос: « Выберите блок :»
Укажите предварительно построенный блок (созданный программой mp_kub3.lsp ).
Команда вставит выноску. Выноска будет начинаться из центра верхней грани. Сверху полки будет стоять имя указанного блока, снизу – его объем.
Далее программа снова выдает запрос: « Выберите блок: »
Укажите следующий блок.
Что завершит программу нажмите Esc >.
Подробное описание программного кода смотрите в уроке: «Вставка динамического блока из LISP-программы».
Скачать программу Mp_kub3.lsp (Размер файла: 993 bytes)
Скачать динамический блок (Размер файла: 30 kB)
Скачать программу Udim.lsp (Размер файла: 538 bytes)
LISP программа «Udim2.lsp»
Программа считывает дополнительные данные из блока, созданного в уроке: « LISP. Создание блока ». Вставляет динамический блок, созданный в уроке: «Создание динамического блока». Меняет длину и положение выносной линии и длину и положение полки.
Для того, чтобы посмотреть как работает программа предварительно нужно:
- Скачать программу « mp_kub3.lsp », и создать при помощи ее блок (или несколько блоков).
- Скачать динамический блок « Vyn.dwg ».
- Поместить « Vyn.dwg » в папку вспомогательных файлов Автокад.
Как это сделать смотрите в уроке: « Пример программы LISP с диалоговым окном » (или в программе lsp вместо имени файла «Vyn» нужно будет указать полный путь к нему. Например: если файл лежит в папке « D:MyLisp » нужно поставить «D:\MyLisp\ Vyn.dwg « )
Для запуска в Автокад используется имя: UDIM2
После запуска программа выдает запрос: « Выберите блок: »
Укажите предварительно построенный блок (созданный программой mp_kub3.lsp ).
Появится начало выносной линии
Далее программа выдает запрос: « Укажите выносную линию: »
Нужно указать вторую точку выносной линии. Команда вставит выноску. Сверху полки будет стоять имя указанного блока, снизу – его объем.
Затем программа снова выдает запрос: « Выберите блок: »
Снова укажите блок куба.
На запрос « Укажите выносную линию: »
Укажите вторую точку линии в другом месте.
На следующий запрос « Выберите блок : » – нажмите Esc >.
Программа нарисует две выноски к одному блоку.
Подробное описание программного кода смотрите в уроке: «Изменение динамического блока из LISP-программы».
Скачать программу Mp_kub3.lsp (Размер файла: 993 bytes)
Скачать динамический блок (Размер файла: 30 kB)
Скачать программу Udim2.lsp (Размер файла: 856 bytes)
LISP программа «3d_tro.lsp»
Программа содержит в себе две команды
Первая команда рисует в Автокад 3D тройник.
Для запуска в Автокад используется имя: 3D_TRO
После запуска выдает запрос: “ Укажите базовую точку ».
Указываем любую точку в рабочем окне Автокад. Команда построит 3D тройник.
Вторая команда поворачивает 3D тройник на 90 градусов вокруг оси параллельной оси Y.
Для запуска в Автокад используется имя: ROY
Предварительно выделите 3D тройник
Введите в командной строке ROY и нажмите Enter >.
Повернутый 3D тройник.
Подробное описание программного кода смотрите в уроке: «3D моделирование в AutoCAD».
Скачать программу 3d_tro.lsp (Размер файла: 927 bytes)
LISP программа « 3d_bolt.lsp»
Программа рисует в Автокад 3D болт.
Для запуска в Автокад используется имя: 3D_BOLT
После запуска выдает запрос: “ Укажите базовую точку ».
Указываем любую точку в рабочем окне Автокад. Команда построит 3D болт.
Подробное описание программного кода смотрите в уроке: «3D моделирование. Болт с резьбой.».
Скачать программу 3d_bolt.lsp (Размер файла: 1.02 kB)
38 комментарии на “ LISP Программы. ”
Здравствуйте. как можно к вам обратиться для написания программы для автокада?
Здравствуйте! Как можно посчитать суммарно объемы всех выделенных тел? Выборка сделана через быстрый выбор по цвету.
И где можно взять информацию по аргументам функций автокада, например как забрать через Лисп аргумент объем из «Измеритьгеом». Хотя бы методологию поиска, можно?
Спасибо!
Неважно каким образом Вы выделите 3Д-тела. После того как они выделены, запускаем функцию (ssget). Получаем набор выделенных 3Д-тел. Сохраняем его в переменную set_obj
Загружаем функции расширения LISP
Организуем цикл, в котором перебираем по порядку все выбранные 3Д-тела.
Внутри цикла:
Переводим 3Д-тела в vla-объекты:
Видео:загрузка лиспов (lisp) и прочих дополнений для autocadСкачать
Файл vlx в автокаде как запустить
Более сорока лет назад разработан и внедрен в использование для выполнения целей искусственного интеллекта язык программирования LISP (ЛИСП), позднее ставший популярным среди пользователей ПО AutoCAD. Он создан для символьных вычислений. С течением времени был преобразован, чтобы соответствовать новым потребностям ИИ.
Начинающим пользователям, изучающим его архитектуру, рекомендуется рассматривать его в качестве формальной знаковой системы.
Это imperative language (императивный), действия которого описывают выполнение алгоритма, отличается от других, декларативных, предполагающих определение ограничений и соотношений в предметной сфере поставленной цели. По сравнению с другими подобными разработками С++ и FORTRAN, ЛИСП наделен большей функциональностью. Его популярность обусловлена большими возможностями для программирования в сочетании с мощным набором:
Это средства построения данных структур обозначения высокого уровня.
Видео:[Урок AutoCAD] Создание команд и макросов в Автокад.Скачать
Конструкция
LISP синтаксис и семантика, разработанные программистами, обусловлены теорией рекурсивных функций. Символьные, s-выражения, являются элементами предложений, сочетаний. В них представлены софты и файлы. Они могут отображаться в виде списка (list) или атомов (atom).
Во втором варианте включены числовые комбинации, цифры, буквы латинского алфавита и знаки: *, -, +, /,@, %, , &, _, ,
Несколько поочередно идущих абзацев составляют каталог. Они обязательно разделяются пробелами и замыкаются в скобки.
Составляющими одних перечислений могут служить другие, более мелкие, подпункты. Символьные структуры разной формы и уровня сложности можно создавать благодаря произвольной углубленности и вложенности. Существует пустая строка, она обозначается – () и называется «nill». При возведении информационной структуры, а также при способе управления ею, она играет особенную роль, представляясь одновременно и атомом, и списком.
Язык LISP относится к языкам программирования, которые используются для создания дополнительных загрузок к ПО по проектированию и моделированию. Для их использования необязательно хорошо разбираться в компьютере на уровне профессионала.
После изучения основных принципов работы в таких пакетах, как AutoCAD или ZWCAD 2018 Professional, который является аналогом ACAD, появляется необходимость упростить выполнение длительных рутинных операций или полностью избавиться от них. Для этого дополнения и нужны. Если они написаны на ЛИСПе, скрипты называются LISP-приложения. Каждое из них представляет собой текстовый файл с определенным встроенным кодом для выполнения команды и подсказками от производителя. Определитесь с нужными для работы свойствами, выбирайте надстройку, скачивайте ее и загружайте в «ЗВКАД» или другую платформу. Рассмотрим возможности одного такого модуля на образце скрипта «Выравнивание текстов».
Видео:AutoCAD Lisp calculate plot's table Area and export to excelСкачать
Примеры программ на ЛИСПе (lisp) для Автокада
Приложение форматирует страницу горизонтально и вертикально по заданной точке. Это полезная возможность, непредусмотренная в основном ПО. Файл с расширением *.lsp открывается двумя кликами левой кнопки мыши. В окне появится «блокнот».
Чтобы сгладить и уподобить несколько напечатанных строк в готовом чертеже, обычно приходится выполнять однообразные действия много раз. Со скачанным скриптом это выполняется одной командой (в примере указана Z-TEXT-ALIGN).
Подобные дополнения полезны на любом этапе проектирования. Их существует очень много, но совсем необязательно устанавливать все. Перед скачиванием, посмотрите, подходит ли скрипт для выполнения нужных конкретных задач. Для каждой области написаны подходящие:
- для инженерного проектирования в строительстве;
- коммунальных структур, занимающихся планированием и укладкой сетей;
- ЛИСПы Автокада для геодезистов.
Видео:Массовое проставление площадей полилинийСкачать
Как загрузить вспомогательную часть в ПО
После выбора нужного вложения возникает надобность его внедрения. Если речь идет об ACAD, для него доступны файлы с такими расширениями:
Помимо файлов lisp также поддерживается загрузка форматов:
На примере того же модуля для выравнивания текста рассмотрим, как подгрузить в основную программу его файл.
Обратите внимание: при скачивании архивированного лисп-приложения, распакуйте его, чтобы на ПК фрагмент сохранился перед загрузкой.
Этапы установки LISP (их можно отследить по истории):
- Перейдите по пути «Управление» – «Приложения» – «Загрузить».
- В командной строке основного ПО введите «_appload».
- В окне «Загрузка/Выгрузка» найдите файл с одним из вышеперечисленных расширений и кликните «Загрузить».
- Процедура завершена. Переходите к тестированию и написанию кода.
Важно: при каждом запуске базовой утилиты нажмите кнопку «Добавить» в разделе «Добавить в автозагрузку». Если этого не сделать, то будет выполнен единоразовый вход в модуль, который не сохраняется с закрытием софта.
Видео:Определяем сумму длин выделенных отрезков в AutocadСкачать
Команды LISP-программы для Автокада (Autocad)
В главном ПО их посмотреть невозможно, поэтому нужно обратиться к исходному файлу дополнения. Он открывается в «Блокноте», вверху которого находится название команды для запуска лиспа и вся необходимая информация для работы от его создателей. В примере указано z-text-align, что и нужно ввести в командную строку, чтобы вызвать нужный инструмент.
После этого, следите за указаниями вложения. Обычно такие скрипты интуитивно понятны и не требуют дополнительных разъяснений относительно дальнейших действий пользователя.
Обратите внимание: в случае отсутствия подобной подсказки, ищите ее в коде – в строке «defun c: z-text-align».
Вложения, написанные на диалекте, разработаны только для внедрения в полную версию ACAD и в схожие программы, например, ZWCAD 2018 Professional, NanoCAD, они не подгружаются. Для них существуют другие приложения.
Видео:Как установить и запустить Лисп (Lisp) для AutoCADСкачать
Список функций лисп (LISP) – языка программирования для Autocad
С оператора defun начинается определение задач. С его помощью создают опции с переменными. Зависимо от назначения, каждая из них будет действовать по-разному.
Варианты, производимые этим оператором:
- с префиксом «С:» (circle) – команда на выполнение s-выражения в сфере деятельности;
- без приставки – их вычисления используются в теле программы-дополнения.
В каждом модуле, написанном этим диалектом, есть встроенный интерпретатор. Он выполняет вычисление введенных данных и возвращает их в программную среду для дальнейшей обработки. Готовые наработки передаются на высший уровень системы или сохраняются в переменной. Это значит, что скрипт получает информацию, когда ее вводит пользователь, или при самостоятельном выборе из существующей. Он сохраняет ее в переменную, и производит вычисления, включающие неизвестное значение и функцию.
Есть участок кода: (setq gh (+ 4 5)), где setq – одна из прописанных единиц. Она объявляет вариацию gh. В скобках знак + тоже опция, числа 4 и 5 – данные, которые были введены в систему. Значение выражения в gh сохранится, то есть 4+5 =9, gh=9. При заданном условии (setqhj (* gh 2), в результат hj сохраняется 18 – gh = 9, 9 умножить на 2 равно 18.
Синтаксис отличен от привычной большинству математики. Его порядок представлен сначала задачей, а потом переменными. В школьном счете это выглядит, как (3+2), а здесь (+ 3 2), однако, смысл одинаковый.
Список функций lisp, работа которых является основой дополнительных приложений:
- для преобразования данных (float);
- вычислений (fix);
- организации циклов (if);
- логические (and, nul,=, , or и другие);
- арифметические (+, -,
При помощи этого программного диалекта создают новые уравнения 3-х классов:
Язык, который не позволяет этого – бесполезен. Часто используется LISP в геодезии, инженерии и строительстве, применяя надстройку «Автокада».
С помощью ЛИСП изучают рекурсивную функцию, используя такую возможность, как «трассировка». Это основной и весьма эффективный способ организации вычислений, повторяющихся несколько раз.
На входе в эту ячейку печатают значения входящих параметров, а на выходе появляются результаты, полученные в ходе операции. Для этого есть специальная опция класса FSURB, называемая TRACE. При ее успешном завершении, возвращается наименование задачи. При неудачном – возврат «NIil».
Пример включения рассматриваемой возможности SUMLIST и произведения математических манипуляций, суммирования элементов списка (1 2 3 4 5):
Обратите внимание на то, что ответ на поставленную задачку ведется в ином порядке – от последнего к первому.
Используемые только для AutoCAD (Автокад) LISP программы, устанавливаются исключительно на полноценную версию и не подходят по списку функций и команд для работы в пакетах типа Autodesk LT, Electrical, Mechanical. Исключений немного, ими выступают специальные разработки типа LT Extender, с типом расширения *.arx, *.lsp.
Если имеются растры с файлами привязки .TAB (MapInfo, ТРАНСФОРМ), .jgw или .tfw , которые необходимо подгрузить в Автокад, то это приложение в помощь Вам. С ним нет необходимости подгружать, масштабировать перемещать и разворачивать каждый растр по отдельности, а достаточно установить данное приложение и выбрать необходимые файлы для загрузки.
Иногда будет удобно воспользоваться и тем, что данное приложение помимо подгрузки растров, может сформировать файлы привязки .TAB и tfw уже подгруженных растров.
Видео:AutoCAD LISPСкачать
Загрузка растра с файлом привязки в AutoCAD. Установка
1. Качаем архив с VLX файла для загрузки растра в AutoCAD здесь.
2. Распаковываем архив и сохраняем файл в папочку где хранятся все наши приложения, а если такой еще нет например в D:MyLisp.
3. Запускаем AutoCAD и устанавливаем VLX аналогично установке Lisp стандартным способом. Если не знаем как, читаем здесь.
4. Ну все можно пользоваться, набираем в командной строке:
(Geo_load_image «One» ) – для загрузки одного файла;
(Geo_load_image «All» ) – для загрузки всех файлов из каталога;
(Geo_load_image T) – для выборочной загрузки файлов (загрузка растра из сети не доступна);
Make_tab_file – для создания файла координат .TAB (файл сохраняется в той же папке где и растр);
Make_world_file – для создания файла координат .tfw (файл сохраняется в той же папке где и растр).
5. Ну и для вывода команд с кнопки, создаем их стандартным способом и в поле макрос пишем следующее:
^C^C^P(if (not Geo_load_image)(load «Geo_load_image_by_data_binding_v2_1.VLX» ) );^P(Geo_load_image «One» ); – для загрузки одного файла;
^C^C^P(if (not Geo_load_image)(load «Geo_load_image_by_data_binding_v2_1.VLX» ) );^P(Geo_load_image «All» ); – для загрузки всех файлов из каталога;
^C^C^P(if (not Geo_load_image)(load «Geo_load_image_by_data_binding_v2_1.VLX» ) );^P(Geo_load_image T); – для выборочной загрузки файлов (загрузка растра из сети не доступно);
^C^C^P(if (not C:Make_tab_file)(load «Geo_load_image_by_data_binding_v2_1.VLX» ) );^PMake_tab_file; – для создания файла координат .TAB (файл сохраняется в той же папке где и растр);
^C^C^P(if (not C:Make_world_file)(load «Geo_load_image_by_data_binding_v2_1.VLX» ) );^PMake_world_file; – для создания файла координат .tfw (файл сохраняется в той же папке где и растр).
Полезно. Если не знаем как создать свою кнопку читаем здесь.
Примечание: Перед загрузкой растра, убедитесь что он не был загружен раннее, в противном случаи удалите его через палитру «Внешние ссылки» вызвав из пункта меню «Вставка» или набрав в командной строке _externalreferences.
Установка приложения для подгрузки растра с файлом привязки в Автокад. Видеоурок
Видео наглядно демострирует как подгрузить в координаты подложки имеющие файлы .TAB, .jgw или .tfw.
Ранее мы уже рассмотрели, что из себя представляет LISP-приложения для AutoCAD. Теперь давайте рассмотрим, как его внедрить в работу.
Для Автокада доступны приложения со следующим расширением файла: *.arx, *.crx, *.lsp, *.dvb, *.dbx, *.vlx, *.fas. Рассмотрим на примере ЛИСПа, который позволяет выравнивать текст относительно указанной точки по оси X или Y (скачать файл «Выравнивание текста .lsp»).
Видео:Автокад длина всех линий Сумма как сложить и посчитать общую. Скачать скрипт GeomPropsСкачать
Как установить файл *.lsp в Автокад?
1. Перейдите во вкладку «Управление» и на панели «Приложения» выберите команду «Загрузить приложение». Можно воспользоваться командной строй в Автокаде и ввести «_appload».
2. Откроется диалоговое окно «Загрузка/выгрузка приложений», через которое вам нужно найти подходящий файл с расширением *.lsp или др, которое было перечислено выше.
3. После проделанных действий нажмите кнопку «Загрузить».
4. После того как внизу этого диалогового окна появиться сообщение об успешной загрузке, можно тестировать установленное приложение. Нажмите кнопку «Закрыть».
Как запустить команду приложения lisp?
В AutoCAD lisp команды посмотреть нельзя. Следует отталкиваться от исходного файла, который был загружен в программу.
Ранее мы говорили, что файл скрипта можно открыть через обычный «Блокнот». Как правило, в самом верху этого текстового документа разработчики оставляют всю необходимую информацию для работы, в том числе и название команды, которая будет запускать ЛИСП. В данном примере это «z-text-align», поэтому в командную строку нужно вводить именно такой запрос для вызова инструмента.
Далее следуйте указаниям командной строки и пошагово выполняйте запросы установленного скрипта. Как правило, все достаточно интуитивно понятно.
Как подгрузить lisp в Автокад LT?
С вопросом: «Как установить лисп в Автокад» все понятно. Но, как его загрузить в схожие программы, например, Автокад Electrical/Mechanical?
К сожалению, приложения, написанные на AutoLISP, работают только на полной версии программы AutoCAD. Поэтому такие скрипты нельзя внедрить в AutoCAD LT или др. версии.
Исключением могут являться специализированные приложения типа LT Extender и подобные ему, которые были разработаны чтобы запускать файлы *.lsp или *.arx непосредственно в среде Автокад LT.