LISP Программы.

На этой странице будут выкладываться примеры LISP программ. По многим из них есть уроки с подробным  описанием кода.

Если Вы знаете как запускать  LISP программы в AutoCAD, то можете сразу перейти к списку программ. 

Как использовать программы.

Все программы написаны для использования их в полной версии программы AutoCAD. Они не будут работать в AutoCAD LT. 

Если Вам понравилась какая-либо программа на этом сайте и Вы хотите ее установить на свой компьютер. Для этого Вам нужно сделать следующее:

1. Скачать программу на свой компьютер;

2. Все программы заархивированы. Поэтому после того, как вы скачали архив, его нужно разархивировать. Разархивировав архив, Вы получите файлы программы, которые можете хранить в любом месте на вашем компьютере (Я для этого использую папку D:\MyLisp);

3. Файлы программы нужно загрузить в AutoCAD;

4. Запускаем новые команды, которые хранятся в загруженных файлах.

Я думаю, что с первыми двумя пунктами справятся все. Поэтому сразу поговорим о загрузке LISP файлов в Автокад.

Загрузка LISP файлов в Автокад.

Загрузить в Автокад LISP программу можно несколькими способами. Опишу некоторые из них.

Загрузка файлов с помощью окна «Загрузка / Выгрузка приложений».

Откройте Автокад. На ленте перейдите на вкладку «Управление» и щелкните по кнопке «Приложение». См. Рис. 1.

LISP программы

Рис. 1 Кнопка «Приложение»

Если вы работаете в режиме Классический AutoCAD:

В главном меню выберите «Сервис», далее щелкните по строчке «Приложения…». См. Рис. 2.

LISP программы

Рис. 2. Строка «Приложение

Откроется окно «Загрузка / Выгрузка приложений».

Найти папку, в которой лежит файл, выделите его и нажмите на кнопку «Загрузить».  См. Рис. 3.

LISP программы

Рис. 3. «Загрузка / Выгрузка приложений»

Внизу окна появится сообщение о том, что выбранный файл загружен. Обратите внимания, что данным способом можно загружать не только LISP файлы (*.lsp), но и другие приложения поддерживаемые программой AutoCAD (*.arx; *.crx; *.dvd; *.dbx; *.vlx; *.fas).

Таким способ загружают программы для их временного использования. После того, как Вы закроете Автокад, а потом откроете его снова, их не будет в Автокаде, и для их использования их нужно загрузить снова.

Для того, чтобы нужны Вам LISP файлы загружались в Автокад автоматически, их нужно добавить в список автоматической загрузки.  Для этого щелкаем на портфельчик «Автозагрузка» (или на кнопку «Приложения» под ним).  Откроется окно «Автозагрузка», в котором нажимаем на кнопку «Добавить». См. Рис. 4.

LISP программы

Рис. 4. Автозагрузка

Откроется окно «Добавление файла в список автоматической автозагрузки». Находим нужную папку, выделяем файл и нажимаем на кнопку «Открыть». См. Рис. 5.

LISP программы

Рис. 5.  Добавление файла в список автоматической автозагрузки

В окне «Автозагрузка» появится строка с файлом, который будет автоматически загружаться при каждом запуске Автокад.

После того, как Вы добавите все необходимые файлы, нажмите на кнопку «Закрыть». Затем на кнопку «Закрыть» в окне «Загрузка / Выгрузка приложений». См. Рис. 6.

LISP программы

Рис. 6. Файл добавлен

Имейте в виду, что файлы загрузятся автоматически, только при следующем запуске Автокад. Если Вы хотите использовать их в текущей сессии, их нужно загрузить способом, описанным выше (либо каким другим способом).

Загрузка файлов с помощью Редактора Visual  LISP.

Откройте Редактор Visual  LISP: 

Наберите в командной строке VLIDE (или VLISP) и нажмите <Enter>.

Или на ленте перейдите на вкладку «Управление» и нажмите  на кнопку «Редактор Visual  LISP». См. Рис. 7.

LISP программы

Рис. 7. Редактор Visual LISP

Откроется Редактор Visual  LISP. Нажмите на кнопку «Открыть файл». Появится окно «Открытие файла для редактирования / просмотра».

Найдите нужную папку;

Выделите файл и нажмите на кнопку «Открыть». См. Рис. 8.

LISP программы

Рис. 9. Открытие файла в Редакторе Visual LISP

Файл загрузится в активное окно редактора. Чтобы загрузить его в Автокад, нужно нажать на кнопку «Загрузить активное окно редактора».

Такой способ имеет свои плюсы, связанные с тем, что Вы видите программный код файла:

1. Вы можете посмотреть, сколько команд в этом LISP файле (их может быть несколько).

2. Найти имена этих команд: находим строку с функцией defun; Имя команды стоит сразу после с: (в нашем случаи это: 3d_tro и roY);

3. Кроме всего прочего Вы имеете возможность отредактировать код программы.

 См. Рис. 9.

LISP программы

Рис. 9. Имена новых команд.

Чтобы определить  границы команды в программном коде, поставьте курсор мыши перед открывающейся скобкой функции defun и дважды щелкните левой кнопкой мыши.  Функция defun, которая описывает одну команду – выделиться. См. Рис. 10.

LISP программы

Рис. 10. Программный код одной команды

Запуск новых команд.

После того, как файлы загружены, мы может запускать в Автокад новые команды, которые хранятся в этих файлах. Для этого достаточно набрать ИМЯ КОМАНДЫ в командной строке и нажать <Enter>.

Кроме этого для любой команды  можно создать кнопку.

Поместить ее на панель инструментов, а панель вынести на ленту.

После этого запускать команду, нажимая на эту кнопку.

Как это сделать читайте в уроках:  «Создание кнопки для программы LISP» и «Простой запуск LISP программ».

Также для этих команд можно создать горячие клавиши и запускать их нажатием определенных клавиш на клавиатуре.

Как это сделать читайте в уроке:  «Горячие клавиши Автокад».

Конечно, мы разобрали далеко не все способы загрузки файлов и запуска команд, но этого в полнее достаточно для того, чтобы комфортно использовать LISP программы размещенные ниже.

 

Список LISP программ.

LISP программа «mp_kub.lsp»

Программа, которая рисует в Автокад куб со сторонами 200.

Для запуска в Автокад используется имя MP_KUB

После запуска выдает запрос: “Укажите базовую точку».

Указываем любую точку в рабочем окне Автокад. Команда построит  куб со сторонами 200.

Создание блока

Подробное описание программного кода смотрите в уроке: «Пример простой программы на LISP».

 Скачать программу Mp_kub.lsp Скачать программу Mp_kub.lsp (Размер файла: 449 bytes)

 

LISP программа «mp_paral.lsp»

Программа рисует параллелограмм, со сторонами указанными в диалоговом окне. Программа работает только вместе с файлом диалогового окна «mp_paral.dcl». Поэтому скачать надо два файла.

Чтобы Автокад определил местонахождение файла диалогового окна, его нужно поместить в папку вспомогательных файлов Автокад.

Как это сделать смотрите в уроке: «Пример программы LISP с диалоговым окном».

Либо в коде программы, в строке

(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 Скачать диалоговое окно Mp_paral.dcl (Размер файла: 392 bytes)

 Скачать программу Mp_paral.lsp Скачать программу Mp_paral.lsp (Размер файла: 781 bytes)

 

LISP программа «Sum_dl.lsp»

Программа считает сумму длин выбираемых отрезков. В процессе выбора отрезков Автокад выдает количество выбранных отрезков и сумму их длины.

Для запуска в Автокад используется имя SumDl

После запуска выдает запрос: «Выберите отрезок»:

Укажите любой отрезок.

Он выделится. В командной строке появиться сообщение, что выбран один отрезок  и его длина.

Ниже снова появиться запрос: «Выберите отрезок»:

Укажите следующий отрезок.

Он выделится. В командной строке появиться сообщение о количестве выбранных отрезков и их общей длины.

Ниже снова появиться запрос: «Выберите отрезок»:

Пример AutoLISP

Количество выбранных отрезков и их общая длина.

И так до бесконечности. Чтобы завершить выполнения программы нажмите клавишу  <Esc>.

Подробное описание программного кода смотрите в уроке: «Пример AutoLISP программы: Сумма длин отрезков».

 Скачать программу Sum_dl.lsp Скачать программу Sum_dl.lsp (Размер файла: 464 bytes)

 

LISP программа «Sum_dls.lsp»

Программа суммы длин со свободным выбором отрезков.

Программа считает сумму длин выбираемых отрезков.

Выбор отрезков можно делать и по одному и группой при помощи рамки (или при помощи секущей рамки). В общем, любым стандартным способом  AutoCAD.

Для запуска в Автокад используется имя:  SumDls

После запуска программа  выдает запрос: «Выберите объекты»:

Выбирать  отрезки можно любым стандартным способом Автокад. Если случайно выбран не тот отрезок, его выбор можно отменить.  Для этого удерживая клавишу <Shift>, щелкните по нему. Этот отрезок будет исключен из выбора.  

Процесс выбора и отмены выбора отрезков отражается в командной строке.

AutoCAD Lisp

Отмена выбора объекта.

После того как вы выбрали все необходимые объекты, нажмите <Enter>, чтобы завершить выбор.

В командной строке появиться сообщение о количестве выбранных отрезков и их общей длины.

AutoCAD Lisp

Результат выполнения программы.

Подробное описание программного кода смотрите в уроке: «Примеры LISP программ: Сумма длин отрезков».

 Скачать программу Sum_dls.lsp Скачать программу Sum_dls.lsp (Размер файла: 487 bytes)

 

LISP программа «Sum_dlv.lsp»

Программа считает сумму длин отрезков на всем чертеже.

Для запуска в Автокад используется имя:  SumDlv

После запуска программа  выделить на чертеже все отрезки

В командной строке появиться сообщение о количестве отрезков на все чертеже и их общей длины.

AutoCAD Lisp

Результат выполнения программы.

Подробное описание программного кода смотрите в уроке: «Примеры LISP программ: Сумма длин отрезков».

 Скачать программу Sum_dlv.lsp Скачать программу Sum_dlv.lsp (Размер файла: 440 bytes)

 

LISP программа «Sum_sl.lsp»

Программа считает сумму длин отрезков на выбранном слое.

Для запуска в Автокад используется имя:  SumSl

После запуска программа  выдает запрос: «Выберите объект для определения слоя:

Укажите любой объект. Программа выделит и сосчитает длину все отрезков на слое, на котором расположен указанный объект.

В командной строке появиться сообщение о количестве отрезков на данном слое и их общей длины.

AutoCAD Lisp

Результат при выборе синего слоя.

Подробное описание программного кода смотрите в уроке: «Примеры LISP программ: Сумма длин отрезков».

 Скачать программу Sum_sl.lsp Скачать программу Sum_sl.lsp (Размер файла: 563 bytes)

 

LISP программа «Scom.lsp»

Программа показывает, как в программном коде AutoLISP можно использовать стандартные команды Автокад.

Приведен пример:

  • Построения отрезка.
  • Построения дуги.
  • Использования команды редактирования: Зеркало
  • Перевода чертежа ЮЗ изометрию.
  • Построения Полуконуса.

Для запуска в Автокад используется имя: SCOM

После запуска программа выдает запрос: “Укажите базовую точку».

Указываем любую точку в рабочем окне Автокад. Команда построит  два отрезка и дугу. Затем отзеркалит их. Потом переведет чертеж ЮЗ изометрию и построит Полуконус.

Команды Автокад

Подробное описание программного кода смотрите в уроке: «AutoLISP. Стандартные команды Автокад».

 Скачать программу Scom.lsp Скачать программу Scom.lsp (Размер файла: 535 bytes)

 

LISP программа «mp_kub2.lsp»

Программа создает блок куба, стороны которого предварительно задаются.

Для запуска в Автокад используется имя MP_KUB2

После запуска выдает запрос:  «Задайте длину стороны куба :»

Введите числовое значение стороны куба и нажмите <Enter>

Появиться запрос: “Укажите базовую точку».

Указываем любую точку в рабочем окне Автокад. Команда построит блок в виде куба со сторонами, значение которых мы задали при первом запросе.

AutoLISP. Создание блока.

Блок куба.

Подробное описание программного кода смотрите в уроке: «AutoLISP. Создание блока».

 Скачать программу Mp_kub2.lsp Скачать программу Mp_kub2.lsp (Размер файла: 802 bytes)

 

LISP программа «mp_kub3.lsp»

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

Для запуска в Автокад используется имя: MP_KUB3

После запуска программа выдает запрос:  «Задайте длину стороны куба :»

Введите числовое значение стороны куба и нажмите <Enter>

Появиться запрос: “Укажите базовую точку».

Указываем любую точку в рабочем окне Автокад. Команда построит  блок в виде куба со сторонами, значение которых мы задали при первом запросе. Так же программа сосчитает объем, и координаты центра верхней грани и сохранить их в блоке в качестве дополнительных данных.

AutoLISP. Создание блока.

Блок куба.

Подробное описание программного кода смотрите в уроке: «LISP. Создание блока».

 Скачать программу Mp_kub3.lsp Скачать программу 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).

Команда вставит выноску. Выноска будет начинаться из центра верхней грани. Сверху полки будет стоять имя указанного блока, снизу – его объем.

Далее программа снова выдает запрос:  «Выберите блок:»

Укажите следующий блок.

LISP. Динамический блок.

Выноски.

Что завершит программу нажмите <Esc>.

Подробное описание программного кода смотрите в уроке: «Вставка динамического блока из LISP-программы».

 Скачать программу Mp_kub3.lsp Скачать программу Mp_kub3.lsp (Размер файла: 993 bytes)

 Скачать динамический блок Скачать динамический блок (Размер файла: 30 kB)

 Скачать программу Udim.lsp Скачать программу 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 Скачать программу Mp_kub3.lsp (Размер файла: 993 bytes)

 Скачать динамический блок Скачать динамический блок (Размер файла: 30 kB)

 Скачать программу Udim2.lsp Скачать программу Udim2.lsp (Размер файла: 856 bytes)

 

LISP программа «3d_tro.lsp»

Программа содержит в себе две команды

Первая команда рисует в Автокад 3D тройник.

Для запуска в Автокад используется имя: 3D_TRO

После запуска выдает запрос: “Укажите базовую точку».

Указываем любую точку в рабочем окне Автокад. Команда построит  3D тройник.

3D моделирование в AutoCAD

Выделенный тройник.

Вторая  команда поворачивает 3D тройник на 90 градусов вокруг оси параллельной оси Y.

Для запуска в Автокад используется имя: ROY

Предварительно выделите 3D тройник

Введите в командной строке ROY и нажмите <Enter>.

Тройник повернется.

3D моделирование в AutoCAD

Повернутый 3D тройник.

Подробное описание программного кода смотрите в уроке: «3D моделирование в AutoCAD».

 Скачать программу 3d_tro.lsp Скачать программу 3d_tro.lsp (Размер файла: 927 bytes)

 

LISP программа « 3d_bolt.lsp»

Программа рисует в Автокад 3D болт.

Для запуска в Автокад используется имя:  3D_BOLT

После запуска выдает запрос: “Укажите базовую точку».

Указываем любую точку в рабочем окне Автокад. Команда построит  3D болт.

3D моделирование

3D Болт

Подробное описание программного кода смотрите в уроке: «3D моделирование. Болт с резьбой.».

 Скачать программу 3d_bolt.lsp Скачать программу 3d_bolt.lsp (Размер файла: 1.02 kB)

2 комментарии на “LISP Программы.

  1. daiman444 28.10.2016 11:04

    Здравствуйте. как можно к вам обратиться для написания программы для автокада?

Оставить комментарий

Ваш mail не будет опубликован.

Вы можете использовать HTML теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>