макроси команд

Макроси команд можуть містити команди, спеціальні символи, вираження DIESEL, або програмні коди AutoLISP.

Прим. AutoLISP не підтримуються в AutoCAD LT.

Основні відомості про макроси

Макрос визначає дію, яка повинна виконуватися в тому випадку, якщо використовується елемент інтерфейсу користувача. Він може бути такою ж простою, як команди (наприклад, circle), і включати спеціальні символи (наприклад, ^ C ^ C).

Наприклад, макрос ^ C ^ C_.circle \ 1 будує коло з радіусом, рівним 1 одиниці. Компоненти, що визначають цей макрос, описані в наступній таблиці.

Компоненти макросу CIRCLE

Скасування активної команди

Якщо кнопка в інтерфейсі користувача натиснута, макрос, призначений їй, все одно виконується в поточному контексті програми. Це означає, що макрос буде намагатися відповісти на поточний запит. Якщо потрібно переконатися, що жодна команда не активна при виконанні макросу, поставте перед макросом префікс послідовності команд ^ C. Для скасування більшості команд досить ввести ^ C один раз; для повернення до командного рядка з команди проставляння розмірів необхідно ввести ^ C ^ C; в залежності від поточного параметра команди СЛОЙ може знадобитися ввести ^ C ^ C ^ C. ^ C ^ C забезпечує скасування більшості послідовностей команд, тому рекомендується широко використовувати цю послідовність.

Перевірка символів макросу

При написанні макросів значущим є кожен символ, навіть пробіл. Розміщення простору в кінці макросу інтерпретується як натискання клавіші ПРОБІЛ або ENTER для завершення команди.

Використання в макросах вбудованих команд

Команди, які є частиною AutoCAD або програм на її основі, повинні починатися з крапки (.). Пропуск дозволяє використовувати стандартні команди навіть в тому випадку, якщо визначення команди анульовано за допомогою команди НЕТКОМ. Ці запобіжні заходи дозволяють уникнути непередбачених результатів під час роботи макросу, коли він використовується на інших комп'ютерах, що задіюють той же файл адаптації (CUI / CUIx).

Прим. В AutoCAD LT не можна виконувати скасування ухвал команд.

Міжнародна підтримка для макросів

При першому створенні макросу зазвичай використовуються імена команд і значення параметрів знайомою мовою користувачеві. У кожної команди і параметра є локальне і глобальне ім'я, що дозволяє використовувати макроси на різних мовах, підтримуваних AutoCAD. Підтримка локалізованих елементів не вимагає багато додаткової роботи. Перед командою або параметром необхідно просто вставити знак підкреслення (_). Знак підкреслення сигналізує AutoCAD, що ім'я команди або значення параметра повинні бути перетворені перед виконанням.

Використання режиму вибору одного об'єкта

Метод вибору об'єктів "Єдиний" скасовує повторення запиту про вибір об'єктів в командному рядку. Після вибору одного об'єкта і відповіді на інші запити команда завершується.

Розглянемо наступний приклад:

Цей макрос перериває поточну команду і викликає команду СТЕРЕТЬ в режимі вибору одного об'єкта. Після запуску макросу, можна або вибрати одиничний об'єкт, або клацнути в порожній області креслення і вказати січну рамку / рамку вибору. Всі об'єкти, вибрані за допомогою таких методів стираються.

Повторення команд в макросах

Після створення макросу, можливо, буде потрібно використовувати його кілька разів перед використанням іншої команди. У макросі можна поставити символ зірочки (*), який вказує на те, що команда макросу повинна повторюватися до тих пір, поки Ви не натиснете ESC або використовувати інший макрос, який починається з ^ C.

Наведений нижче приклад ілюструє повторний виклик команд в макросі:

Прим. Однак це не відноситься до вибору опцій, або для макросів в меню мозаїки зображень.

завершення макросу

Для завершення деяких макросів потрібні спеціальні символи. Наприклад, команда ТЕКСТ для завершення вимагає натискання клавіші ENTER, а не ПРОБЕЛ, а деякі інші команди вимагають декількох натискань клавіші ПРОБІЛ (або ENTER).

Для вирішення цих проблем прийняті два спеціальних угоди.

  • Крапка з комою (;) в макросі відповідає натискання клавіші ENTER.
  • Пробіл не додається після рядків, що закінчуються символом управління: зворотною косою межею (\) або крапкою з комою (;).

Порівняємо такі макроси:

Перший приклад починається з команди ПСК, так як рядок закінчується пропуском, моделюється натискання клавіші ПРОБІЛ. У командному рядку з'явиться наступний запит:

Початок ПСК або [Грань / Іменована / Об'єкт / Попередня / Вид / Світ / X / Y / Z / Z вісь] <Мир>:

Другий приклад починається з команди ПСК, імітується натискання клавіші ПРОБІЛ, а потім натискання клавіші ВВЕДЕННЯ, приймається значення за замовчуванням ( "Мир").

Придушення луна-виведення і запитів в макросах

Символи макросу дублюються в командному запиті, як якщо б вони були введені з клавіатури. Дублювання на екрані називається "луна-виводом". Можна придушити луна-висновок макросу за допомогою системної змінної MENUECHO. Якщо луна-висновок і запити для елемента меню включені, їх можна тимчасово відключити в макросі за допомогою послідовності ^ P. Можна також використовувати в макросі послідовність ^ Q. щоб придушити відображення всіх запитів і введення з журналу командного рядка.

Поняття, пов'язані з даними