Автоматизация работы в AutoCAD при помощи макросов

14.08.14
14535 4.5
Автоматизация работы в AutoCAD при помощи макросов

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

Основное отличие:

  • Сценарий AutoCAD – представляет собой текстовый файл формата ASCII. Этот файл имеет расширение *.SCR и содержит последовательность команд для командной строки AutoCAD.
  • Макрокоманда (макрос) AutoCAD – это также список инструкций для AutoCAD, но макрос запускается из AutoCAD UI (кнопкой, расположенной на панели инструментов или в выпадающем меню; или сочетанием клавиш).

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

Сценарии AutoCAD

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

Сценарии, написанные на LISP работают только в полноценных версиях AutoCAD или вертикальных решениях, например, AutoCAD Electrical, но не работают в AutoCAD LT.

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

AutoCAD Макросы

Положительные моменты: Макрос AutoCAD может быть запущен кнопкой, расположенной на инструментальной палитре, что делает доступ к макросу более простым и понятным. Макрос может содержать LISP - код, а также содержать DIESEL - код, что удобно для пользователей AutoCAD LT. Макрос может содержать паузы для ввода данных пользователем, но будьте внимательны, в макросах нет обработчика ошибок.

Отрицательные моменты: Макросы довольно долго создавать, и порой весьма сложно отлаживать их работу. Кроме того, при обновлении версии AutoCAD придется создавать макросы для новой версии сначала.

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

Автоматизация вывода на печать

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

Сценарий печати в PDF для AutoCAD

Для перевода сценария в макрокоманду необходимо написать то же самое, но в одну строку, используя в качестве разделителей, точку с запятой (;):

^C^C-ПЕЧАТЬ;д;;DWG to PDF.pc3;ISO A4 (210,00 х 297,00 мм);м;а;н;г;в;ц;д;monochrome.ctb;д;о;;н;д;

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

^C^C – в начале команды, аналогично двойному нажатию Esc на клавиатуре. Эта операция должна отменить любые другие команды, которые выполнялись перед вашим макросом.

Запуск и отладка макросов

Используя сочетание клавиш CTRL + 3, откроем Инструментальные палитры.

Инструментальные палитры

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

Создание новой палитры

Эта инструкции предназначена для AutoCAD 2014 или более поздней версии. Предыдущие версии могут иметь некоторые отличия в названии команд и окон.

Щелкните правой кнопкой мыши по любой пустой области новой палитры и выберите Адаптация команд…. Это вызовет появление окна Адаптация пользовательского интерфейса.

Адаптация команд…

Наберите «сценарий» в поле поиска, чтобы найти команду Сценарий.

Перетащите команду Сценарий из окна Адаптация пользовательского интерфейса на вашу палитру. Нажмите ОК в окне Адаптация пользовательского интерфейса, чтобы его закрыть.

Добавление кнопки Сценарий на Инструментальную палитру

Конечно, теоретически, вы не должны использовать команду Сценарий для тестирования макроса, но в AutoCAD нет команды Выполнить макрос.

Чтобы добавить свою макрокоманду к новой кнопке на панели инструментов, щелкните правой кнопкой мыши на кнопке палитры инструментов Сценарий, и в контекстном меню выберите Свойства объекта.

Редактирование свойств кнопки

В открывшемся окне Свойства инструмента, вы можете вставить свой макрос в строку: Командная строка, добавить Название и Описание вашей кнопке, поменять изображение значка кнопки и т.д.

Добавление макроса и настройка свойств кнопки

Нажмите OK, чтобы закрыть диалог и сохранить макрос.

Теперь можно нажать на новую кнопку и посмотреть, что происходит!

Если макрос сработал правильно – великолепно. Если нет, то нажмите на клавиатуре F2, чтобы открыть Текстовое окно AutoCAD. В нем вы увидите, что произошло, и может, даже поймете, что необходимо исправить, чтобы ваш макрос заработал.

Отладка макросов весьма увлекательный процесс!

Примеры макросов

Вот примеры макросов, которые можно использовать для ускорения некоторых операций в Autocad Electrical, например:

^C^CAEEXPLODE;все;;

Расчленить все блоки на простые геометрические и текстовые объекты с сохранением заданных значений текстовых атрибутов.

^C^CAEEXPLODE;все;;^C^C'_.zoom;_e;

Добавляем в предыдущую команду зуммирование в реальном времени.

^C^C-ОЧИСТИТЬ;в;*;н;

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

Специальные символы, применяемые в макрокомандах

СимволНаименование
; или ^M, или Пробел Соответствует нажатию на клавиатуре Enter или Пробел.

\

(обратная косая черта)

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

/

(прямая косая черта)

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

_

(подчеркивание)

Применяется в локализованных (например, в русскоязычной) версиях AutoCAD. Ставиться перед некоторыми командами на английском языке.
@ Символ последней указанной на экране точки.
^C^C Тоже, что двойное нажатие клавиши Esc. Практически все макросы начинаются этими символами.
* Префикс (*) служит для бесконечного повторения макроса. Выход из команды осуществляется нажатием клавиши Esc.

'

(апостроф)

Применяется перед "прозрачной" командой, например, '_ОРТО.
$, $M= Специальный символ, предназначенный для ввода выражений, написанных на языке DIESEL.
^Z Подавляет автоматическое добавление пробела, появляющееся на конце макроса.
( ) В скобках записываются выражения, написанные на языках LISP и DIESEL. А также применяется для записи вложенных выражений калькулятора в полной версии AutoCAD.

Для чего нужны макросы?

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

Оцените статью
1 1 1 1 1 Рейтинг 4.50 (16 Голосов)

Добавить комментарий

Оставляя свой комментарий, Вы соглашаетесь с правилами комментирования

  1. Регистрация отключает капчу, разрешает мгновенную публикацию комментариев.
  2. Комментарии гостей проходят премодерацию.
  3. Комментарии должны быть по теме статьи. Малоинформативные и короткие комментарии скорее всего будут удалены.
  4. Комментарии содержащие рекламу запрещены.
  5. Имя комментатора должно быть лаконичным, удобочитаемым, без рекламы.
  6. Хамство, грубость, нецензурные выражения запрещены.

Нажмите на изображение, чтобы обновить код