LISP Программы. Как использовать лисп, опубликованный на форуме Загрузка файлов с помощью Редактора Visual LISP

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

Важно: Для избежания проблем при передаче файлов чертежей и подложек, копировании в другие папки - размещайте файлы чертежа DWG и вставки (изображения) вместе, в одной и той же папке. Либо подложки в подпапке "Подложки".

Хотя Autodesk Autocad - это векторный редактор, он обладает некоторыми возможностями для работы с растровыми изображениями. Здесь показано на примере версии Autocad 2013.

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

Если вы используете интерфейс "Классический AutoCAD", для того, чтобы вставить отсканированное изображение или картинку в Автокад , выберите меню "Вставка" - "Растровое Изображение" :

В появившемся окне выберите нужный файл:

Чтобы вставить картинку в Автокад правильно - нужно указать необходимые параметры. Например, старайтесь указывать "Относительный" путь к изображению, это позволит избежать потери подложки при перемещении или копировании чертежа DWG. При выборе галочкой масштаба "Указать на экране" - после нажатия кнопки ОК вы сможете указать масштаб вручную мышкой. Обычно указывают 1 (потом его всё равно можно изменить средствами масштабировани Автокада), либо другой коэффициент. "Точка вставки" - можно указать точные координаты, либо ткнуть просто на экране и потом переместить подложку, если нужно.

С параметрами определились, нажмите ОК. Появится рамка изображения:

Щелкните мышкой (если точка вставки выбрана "Указать на экране") - картинка появится в рабочем пространстве модели Автокад. Кстати, в пространство "Листа" подложки вставляются ангалогично.

Совет: Если есть возможность, старайтесь в качестве подложек использовать черно-белые (монохромные) изображения в формате TIF с сжатием, например CCiTT FAX 4. С ними удобнее визуально работать в Автокаде, т.к. они не имеют фона, и к тому же занимают мало места на диске и в оперативной памяти.

Вот пример вставленного черно-белого (не путать с оттенками серого) изображения:

Как убрать контур изображения, вставленного в Автокад?

Если "лишняя" рамка вставленной картинки мешает при печате и работе, ее можно отключить командой: " IMAGEFRAME 0 ". Включить контур: " IMAGEFRAME 1 ".

Либо через меню "Редактировать" - "Объект" - "Изображение" - "Контур". Возможно для доступа к этому меню понадобится включить строку меню в Автокаде , через пункт "Показать строку меню".

Затем "Редактировать" - "Объект" - "Изображение" - "Контур". Там же кстати есть еще много интересных пунктов меню для работы с разными объектами Автокада.

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

Примечание: AutoLISP программы могут быть запущены только на полной версии Автокада, они не работают под AutoCAD LT. (исключая случаи загрузки дополнительных приложений типа LT Extender и ему подобных, которые специально разработаны для запуска lisp и (или) arx приложений в среде AutoCAD LT.)

Сохранение программного кода на своем компьютере

С помощью курсора выделяем этот код и копируем его в буфер обмена, нажав правую кнопку мыши и выбрав пункт Копировать (или Ctrl+C ).
Запускаем "Блокнот" и вставляем наш код с помощью меню Правка >> Вставить (или Ctrl+V ):

Код:

(defun C:OFF2 (/ d obj ent adoc *error* undo lays Flag) (defun *error* (msg)(vla-EndUndoMark adoc)) (vl-load-com)(setq adoc (vla-get-activedocument (vlax-get-acad-object)) lays (vla-get-layers adoc))(vla-StartUndoMark adoc)(setvar "CMDECHO" 0) (if (null *OFF2*)(setq *OFF2* (abs (getvar "OFFSETDIST")))) (if (zerop *OFF2*)(setq *OFF2* 1))(setq d (getvar "UNDOCTL")) (cond ((= d 0) (vl-cmdf "_.UNDO" "_All")) ((= d 3) (vl-cmdf "_.UNDO" "_Control" "_All")) (t nil)) ;_ end of cond (princ "\n Величина смещения: ") (initget 6)(if (null (setq d (getdist))) (setq d *OFF2*)) (setq *OFF2* d undo 0 Flag t) (initget "Undo Отмени Г J Exit Выход У D _Undo Undo Undo Undo Exit Exit Exit Exit") (while Flag (setq obj (entsel (strcat "\n Выберите объект [" (if (not (zerop undo)) "Отмени/" "") "Выход] : "))) (cond ((= obj "Undo")(if (not (zerop undo))(progn (vl-cmdf "_UNDO" "_B")(setq undo (1- undo)))(alert "Нечего больше отменять"))) ((= obj "Exit")(setq Flag nil)) ((null obj)(if (= (getvar "ERRNO") 52)(setq Flag nil)(princ " *** Мимо ***"))) (t (setq ent (vlax-ename->vla-object (car obj))) (cond ((= (vla-get-lock (vla-item lays (vla-get-layer ent))) :vlax-true) (alert "На блокированном слое!")) ((vlax-method-applicable-p ent "Offset)(vl-cmdf "_UNDO" "_M")(setq undo (1+ undo)) (vla-offset ent d)(vla-offset ent (- 0 d))) (t (alert "Не удается создать объект, подобный данному"))))) (initget "Undo Отмени Г J Exit Выход У D _Undo Undo Undo Undo Exit Exit Exit Exit")) (vla-EndUndoMark adoc)(princ)) (princ "\nНаберите в командной строке OFF2"))

После того как вставили код в блокнот, мы должны иметь что-то наподобие этого:

Теперь мы должны сохранить файл. Файл можно назвать, как вам нравится, но расширение у него должно быть .LSP . Правильнее (но не обязательно) будет назвать файл так же, как названа команда в найденном Вами коде. Команде всегда предшествует префикс C: после слова defun . В примере выше видно, что команду назвали OFF2 , соответственно файл называем off2.lsp . Таким образом, мы можем избежать беспорядка, т.к. будем знать, что в файле off2.lsp находится команда OFF2 .
Иногда в коде представлено несколько функций. Необходимо найти "главную". Такая функция либо имеет префикс С: , либо сам автор кода уточняет, что "использовать как ". В случае нескольких "главных" именование файла не может иметь никаких рекомендаций.

Загрузка lisp файла

Далее, запускаем Автокад и выбираем Сервис >> Автолисп >> Загрузить (Tools >> AutoLISP >> Load _appload .
Мы должны увидеть диалоговое окно как представлено ниже:

Используйте следующую последовательность, чтобы загрузить off2.lsp :

  1. Перейдите к папке, куда Вы сохранили lisp файл.
  2. Выберите файл, который Вы хотите загрузить из списка.
  3. Нажмите кнопку Загрузить .
    (Если все прошло удачно, Вы должны увидеть надпись "off2.lsp успешно загружено")
  4. Нажмите кнопку Закрыть для завершения команды.

Команда или функция?

Для начала необходимо определиться, что у нас: команда или функция?
Немного теории.
В описании практически любого кода есть такая строка, как

Ее вызывать (при условии, что она подгружена) с командной строки можно напрямую:

Команда: test

И будут выполнены действия
А вот такую:

То в командной строке необходимо набрать имя_команды> без префикса C: .

Tips: Вы можете также загрузить lisp файл путем перетаскивания (drag-and-drop ) иконки файла в графическое окно открытого документа Автокада.

AutoCAD ; error: no function definition:

Если Ваша функция или команда не работает или завершает работу с сообщением как в примере ниже, то Вам может помочь простой способ.

Теперь ваш lisp должен работать без ошибок.

Что такое это (vl-load-com) ?

Данная функция загружает большое количество функций, входящих в расширение AutoLisp, позволяющее работать с объектами, свойствами, методами и событиями ActiveX. Признаком необходимости загрузки расширения AutoLisp является наличие в тексте Вашей программы функций, начинающихся с префиксов vla- (например vla- get-activedocument), vlax- (например vlax- get-acad-object), vl- (например vl- catch-all-apply) и vlr- (например vlr- pers).
В любом случае никогда не помешает добавить (vl-load-com) в начало файла, чтобы избежать подобных ошибок.

Организация библиотеки лисп файлов.

Что делать, если набралось достаточное количество файлов? Каждый раз набирать _appload для загрузки того или иного приложения? Наиболее эффективным будет организация своей библиотеки. Для начала условимся, что все наши файлы будем складывать в одну папку. Например, D:\MyLisp . Пропишем эту папку в путях доступа Автокада. Для этого выбираем Сервис >> Настройка (Tools >> Options ) или набираем в командной строке _options . Переходим на закладку Файлы (Files ) и раскрываем список Путь доступа к вспомогательным файлам (Support File Search Path ).
Мы должны увидеть диалоговое окно, как представлено ниже:

Используйте следующую последовательность, чтобы прописать папку в путях доступа:

  1. Нажмите кнопку Добавить .
  2. Нажмите кнопку Обзор и выберите целевую папку (в нашем случае, D:\MyLisp )
  3. Путь к папке должен появиться в диалоговом окне.
  4. Нажмите кнопку OK для завершения команды.

Теперь наша папка прописана в путях доступа Автокада. Что это нам дает? Мы можем загружать наши файлы не указывая конкретного пути, а только имя файла.
Мы можем набрать в командной строке (load "") для загрузки необходимого кода, например (load "off2") . Заметьте, что добавлять расширение .lsp не обязятельно, хотя и не запрещается.
И, наконец, самое главное - это позволит нам создать панели с кнопками для загрузки той или иной программы. Кнопка будет иметь следующее содержание:

^C^C(if (null C:)(load ""));;

В нашем случае:

^C^C(if (null C:OFF2)(load "off2"));OFF2;

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

Если есть необходимость загружать свои lsp файлы при открытии чертежа, то нужно добавить необходимые файлы в список автозаргузки.
Запускаем Автокад и выбираем Сервис >> Автолисп >> Загрузить (Tools >> AutoLISP >> Load ) или набираем в командной строке _appload .
В открывшемся диалоговом окне жмем на кнопку Приложения рядом с изображение портфеля

В следующем диалоговом окне жмем на кнопку Добавить и указываем на необходимые файлы.

Они должны появиться в списке приложений.
Теперь перечисленные файлы будут загружаться каждый раз при открытии рисунка.
Важно понимать, что (по крайней мере в полной версии AutoCAD) загрузка приложений, помещенных в Автозагрузку (Startup Suite ), как правило, выполняется во все профили и сессии AutoCAD"a.
Кроме того, есть еще один момент. Если существует 2 или более файлов, в которых описаны функции с одинаковыми именами, выполняться будет та, которая загрузилась последней. Поскольку предсказать, в какой последовательности будет выполняться загрузка приложений, невозможно, подобных ситуаций следует избегать.

Доброго времени суток, дорогие друзья! Продолжаем нашу серию статей, посвященных самой распространённой в мире системе автоматизированного проектирования чертежей на компьютере – программе (AutoCAD)!

Мы надеемся, что Вы уже прочитали нашу предыдущую статью, о том, как скачать и получить бесплатную лицензию на AutoCAD.

И не только прочитали, а прошли регистрацию и перед Вами примерно вот такое окно интернет-браузера:

Если да, то это значит, что все необходимое для установки лицензионного «автокада» - у Вас есть. (Если нет – внимательно читаем нашу статью: «Где скачать AutoCAD? Бесплатная лицензия и регистрация на сайте»).

Установка Автокад(AutoCAD) поэтапно:

Ну что же? Приступим к установке AutoCAD!!!

Всем известно, что для того, чтобы установить какую-любо программу на компьютер – её нужно вначале скачать из интернета, или приобрести установочный диск, а может даже и установочную флэшку.

До недавнего времени, точно также было и с автокадом, но на сегодняшний день в рассматриваемом нами способе получения лицензионной студенческой версии AutoCAD мы выделим два способа установки: «Установи прямо сейчас!» и «Сперва скачай, потом ставь!»

Начнем с первого способа «Установи прямо сейчас!»

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

Получив Serial Number и Product key – Вы получаете лицензию на автокад. И самое время его установить. Ищем красную кнопку и жмем её! Причем щелкаем мышкой именно по фразе «INSTALL NOW».

Это будет самый легкий способ установить автокад, когда вы зарегистрируетесь и запросите лицензию. НО! Тут важно, чтобы у Вас был хороший компьютер/ноутбук и очень хороший доступ в интернет.

Если у Вас доступ в интернет 3G или ADSL с маленькими скоростями, то вам лучше ко второму способу переходить, а то что будет написано ниже лучше просто мельком ознакомится.

После того, как Вы нажмете Install now будет скачан небольшой файлик установщик, запустив который, Вы приступите к установке AutoCAD 2018. И, в идеале, после этого вы просто жмете «Далее» и «Далее»…

Будет происходить процесс параллельного скачивания установочных файлов программы и последующая их установка на компьютер/ноутбук.

Поэтому, важно, чтобы была хорошая скорость и хорошее аппаратное обеспечение (ну, хороший комп чтобы был, не глючил).

Окно установки, которое вы будете видеть, в процессе установки отражает ход выполненных операций и объем скачанных файлов.

Будут устанавливаться не только программные файлы AutoCAD, но и вспомогательные программы:





Если у Вас хороший доступ в Интернет со скоростью не менее 50 Мбит/с, то весь процесс может занят около получаса. Но может быть и больше, так как загруженность серверов компании AUTODESK тоже оказывает влияние на скорость загрузки.

Когда установка завершится, Вы увидите окно, схожее с этим:



После нажатия на кнопку «Готово» и запуска AutoCAD, первое с чем придется Вам столкнутся – это вопрос лицензирования. И именно в «первом случае» установки он решается очень просто!

Но обязательно наличие интернета. Вы увидите окно, где можно прочесть информацию о конфиденциальности Autodesk.

А после нажатия кнопки «Принимаю», произойдет автоматическая проверка лицензии, причем Вам ничего делать не нужно. То есть ваши учетные данные, программа установки определит сама!

Ну и после успешного прохождения проверки лицензии (причем это делается Один раз! Потом интернет не нужен) Вы можете смело работать в лицензионной программе Автокад(AutoCAD).

Еще раз повторюсь, это самый простой и быстрый способ скачать и установить программу.

Если по какой-то причине у Вас не получается сделать это – то переходим ко второму способу. Он немногим более трудоемкий, но не сложный.

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

И так, способ номер два « Сперва скачать Автокад, потом установить!».

Возвращаемся к началу нашего процесса, и вместо кнопки «INSTALL NOW» жмем маленькую кнопку рядом с ней:

Получаем раскрывающееся меню, в котором выбираем пункт «DOWNLOAD NOW».


Будет скачан небольшой файлик Download Manager (По русски говоря, скачивальщик автокада?).


Мы его устанавливаем, соглашаясь с предоставлением лицензии и оказанием услуг.


Затем, устанавливается программка Autodesk Download Manager.


После установки, Вы вновь щелкаете мышкой по кнопке «DOWNLOAD NOW» и компьютер уже предложит Вам открыть ссылка в установленном приложении.


Потом, Вы указываете, куда будут сохранены установочные файлы AutoCAD и начнется процесс скачивания. Время скачивания напрямую зависит от скорости подключения к Инетернет.


В моем случае, показатели скорости были разными. От 0 б/с до 30 Мб/с и выше. Как видите, изначально он показывает 25 минут до окончания, потом (через 15 сек.) 14 минут. И даже 8 минут.







Но потом, скорость скачивания снизилась, падая до нуля или минимальных значений. Но спустя время, скорость вновь нормализовалась и весь процесс занял порядка 20 минут.

То есть, второй способ подходит тем, у кого неустойчивое подключение к Интернет. При помощи Autodesk Download Manager вы можете потихоньку скачивать автокад хоть сутками. Но хотя я бы этого Вам не советовал… А советовал бы дочитать статью до конца и узнать маленькую хитрость, для тех, у кого плохой доступ в интернет?.

После того, как все файлы будут скачаны, Вы увидите окно, похожее на ниже представленное.


Процесс установки начался!


После инициализации программы установки, Вам будет предложено установить программу. Жмем кнопку «Установка»!


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


Выбираем папку установки, или (мы бы советовали) оставляем все без изменений и кликаем по кнопке «Установить »!


Начнётся процесс установки, схожий с предыдущим, но будет происходить уже просто установка, без скачивания установочных файлов.








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



Перезагрузившись, находим на Рабочем столе ярлык для запуска AutoCAD и вперед!

Стоп, стоп, стоп… По крайней мере, Вам так скажет автокад. Ну вернее, он попросит сведения о лицензии, на что вы смело нажимаете «центральную кнопку» «Ввести серийный номер».


Произойдет переход к окну активации программы.

Не все любят этот процесс, всем хочется скорее чертить/моделировать/проектировать, но умная программа сперва хочет познакомится с хозяевами.


Поэтому, жмем кнопку «Активировать»!

После этого, Вам как раз и пригодятся Serial Number и Product key, что Вам были даны при регистрации. Не записали? Забыли? Фантастически пропали? ?.

Идем еще раз в личный кабинет на сайт образовательного сообщества Autodesk и уточняем информацию.

После этого, указываем ее в окне, по аналогии с нижним:


Произойдет проверка лицензии, сколько раз ее использовали, что она позволяет делать, ну и прочее.


Когда процесс активации будет завершен, Вы увидите радостное сообщение: «Поздравляем! Активация выполнена успешно!».



Ну, и на последок, Вас могут спросить о сборе и использовании Ваших данных. Тут каждый выбирает сам, но мы бы не рекомендовали делится информацией о сбоях. Ведь и без этого есть куча других дел.


Подведем итоги?!

Первый способ самый быстрый, можно сделать даже не выпуская из рук чашку кофе.

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

Но зарегистрироваться на сайте нужно! Как и получить свои Serial Number и Product key. Тогда все будет проще!

Процесс вставки блоков в чертеж происходит примерно так же, как и вставка отдельных объектов. При этом, можно изменить масштабирование или повернуть блок на нужный уровень. Также можно разработать динамический блок с разнообразным масштабированием и углом поворота копий. О блоках такого типа речь пойдет немного после.

Как вставить блоки в чертежи

Чтобы произвести вставку блока в чертежный файл, потребуется выполнить такие шаги:

  1. Вызываем окно вставки блока.

а) в командную строку вводим «Вставить».

б) выполняем команды Вставка>Блок.

в) Нажимаем соответствующую пиктограмму в панели блоков.

  1. Выбираем вставки блока или отдельного файла.

а) Чтобы вставить блок из рабочего чертежа, выбираем нужный вариант из окна «Имя».

б) Вставляем файл при помощи опции «Обзор».

3.Ставим флаг напротив опции «Указать на экране». Присваиваем его точке вставки, масштабу и углу поворота.

  1. Также ставим флажок в опции «Равные масштабы».
  2. И наконец, устанавливаем или снимаем флажок на функции «Расчленить».
  3. Завершаем процесс, выбирая опцию «Ок».
  1. Программное обеспечение автоматически запросит указать необходимые параметры, в случае если они не были указаны ранее:
  • Укажите точку вставки, как было рассказано в первом уроке, точка вставки совпадает с базовой точкой блока.
  • Укажите масштаб вставляемого блока, по умолчанию установленный масштаб 1:1. Для того что бы изменить масштаб по осям, при запросе ввода масштаба, введитеX в командной строке. После чего команда выдаст запрос на ввод масштаба по оси Х и оси Y . Для трехмерных моделей ввод масштабов по осям аналогичен. Указание отрицательного масштаба по одной из оси, создает зеркальное отражение относительно второй оси.
  • Укажите угол поворота можно как вводом значения угла в командную строку, так и указанием точек угла, курсором.

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

Как работать с DesignCenter

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

Выбираем блок и вставляем его в чертежи

  1. Открываем DesignCenter и зажимаем ctrl+2.
  2. Указываем прямой путь к папке с нужным файлом при помощи проводника.
  3. В открытой папке открываем нужный чертеж.
  4. Так пользователь получит доступ ко всем параметрам и атрибутам.
  5. Выбираем вкладку блоков.
  6. Смотрим на ряд иконок с блоками выбранного чертежа.

Чтобы вставить блок, потребуется провести процедуру, которая происходит по аналогии с описанной выше.

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

Мы заканчиваем урок по вставке блоков и файловых систем. Далее мы расскажем о работе с их управлением и библиотечными разделами.

Тонкая настройка интерфейса пользователя позволяет добавить в функционал стандартного интерфейса AutoCAD свои функции, комбинации клавиш клавиатуры, комбинации клавиш мыши, изменить стандартные панели.

Данная инструкция полезная для опытного пользователя который понимает какие инструменты он использует часто, а какие инструменты не используются вообще, либо каких не хватает.

Преимущества Тонкой настройки интерфейса

1. Настройка интерфейса чётко под себя
2. Добавление собственных команд
3. Удаление ненужных кнопок
4. Добавление быстрого набора клавиш

После установки AutoCAD и первичной настройки получаем вот такой интерфейс

Опишу минусы компоновки данного интерфейса:
- Все панели разбросаны по периметру экрана;
- В панелях инструментов присутствуют кнопки которые не используются;
- Включена командная строка (уменьшает видимое пространство);
- Включены ненужные панели инструментов

Тонкая настройка интерфейса

1. Организация панелей инструментов
Включаем все часто используемые панели инструментов. Я приведу свой список
Как показано на рисунке все панели сгруппированы в левом верхнем углу (как мне кажется мы привыкли воспринимать информацию слева-на право)

2. Настраиваем командную стоку:
- Ctrl+F9 (В AutoCAD < 2010 версии)
- Перетаскиваем командную строку на поле модели и настраиваем прозрачность равную 0%.


Рис.3 Прозрачность командной строки.
При наведении курсора на командную строку она становится не прозрачной.

3. Настраиваем панель инструментов.
Для запуска настройки панели инструментов выполните команду: _CUI (Customize User Interface)


Тут можно настроить:

  1. Панель быстрого запуска;
  2. Ленту (для "ленточного" интерфейса);
  3. Панель инструментов (тулбары);
  4. Сочетания клавиш и пр.
3.1. Создание собственной панели инструментов и добавление кнопок

Создадим собственную панель инструментов и назовём ее "SCSENG_TOOLBAR"

Заходим в раздел: Toolbar ->ПКМ ->New Toolbar
В панель инструментов могут быть добавлены только зарегистрированные функции и команды. Как зарегистрировать функцию в статье "Автоматизация рутинных задач или использование скриптов Lisp, ARX и пр ".
Добавляем в панель "SCSENG_TOOLBAR"
Команды: "dlina", "plus1", "Deselect All".
Перетаскиваем созданную панель.
Кнопка "Deselect All" позволяет быстро сбросить выделенные объекты (очень удобно когда нужно много копировать или выделять).

Всё добавление кнопок готово.

3.2 Удаляем ненужные кнопки
В панели инструментов жмём ПКМ и удаляем ненужные кнопки.


Удалением ненужных кнопок мы экономим пространство панели. Это особо полезно при использовании экранов с маленькой диагональю.

3.3 Настройка сочетаний клавиш

4. Сохранение настроенного интерфейса
После настройки расположения панелей инструментов, комбинаций клавиш нужно сохранить своё рабочее место.

Рис. 12. Сохранение рабочего места