SCR-скрипты в AutoCAD — это текстовые файлы с последовательностью команд, которые выполняются автоматически. Они экономят часы на рутине: пакетную печать, изменение слоёв, экспорт данных. Скрипты работают там, где не нужна сложная логика, но важно выполнить одни и те же действия над десятками файлов. Рассказываем, как их создавать, использовать и избегать частых ошибок.
Как создать и запустить SCR-скрипт
SCR — это обычный текстовый файл с расширением .scr. Команды записываются так, как если бы вы вводили их в командной строке AutoCAD. Каждая команда — с новой строки. Паузы и ожидания добавляются через пустые строки.
Пример простого скрипта для открытия файла и печати:
OPEN "C:\drawings\project.dwg" PLOT да Мой_Принтер A4 миллиметры ландшафт нет окно 0,0 1000,1000 да нет да
Запустить можно тремя способами:
- Внутри AutoCAD: команда СЦЕНАРИЙ (SCRIPT), выбрать файл.
- Из командной строки Windows:
acad.exe /b путь_к_скрипту.scr - Через диспетчер публикации (PUBLISH), настроив действие для листов.
Самый надежный способ для пакетной обработки — командная строка. Она позволяет запустить AutoCAD в фоновом режиме без интерфейса.
Что можно автоматизировать скриптами
SCR подходит для задач, где последовательность действий фиксирована и не требует вмешательства.
- Пакетная печать: открыть файл, настроить печать, закрыть. Повторить для следующего.
- Изменение свойств: заморозить слои, изменить стили текста, назначить веса линий.
- Экспорт и импорт: выгрузить данные в CSV, загрузить блоки из библиотеки.
- Очистка чертежей: удалить неиспользуемые элементы, аудит,purge.
Ограничение: скрипты не умеют принимать решения. Если нужна проверка условий или циклы — придется использовать LISP.
Частые ошибки и как их избежать
Большинство проблем возникают из-за неправильного формата или неожиданного поведения команд.
- Диалоговые окна: некоторые команды выводят окна, которые прерывают скрипт. Решение: отключать через системные переменные (например, FILEDIA 0) или использовать версии команд без диалогов (например, -ПЕЧАТЬ вместо ПЕЧАТЬ).
- Тайминг: скрипт выполняется быстрее, чем AutoCAD успевает обработать команды. Добавляйте пустые строки для пауз, особенно после долгих операций.
- Пути к файлам: используйте полные пути и двойные обратные косые черты (\ вместо ) в путях.
- Локализация: команды и ответы должны быть на языке интерфейса AutoCAD. Если у вас английская версия, пишите «yes» вместо «да».
Чек-лист для отладки:
- Проверьте, что все команды существуют в вашей версии AutoCAD.
- Запустите скрипт на тестовом файле с включенной командной строкой — увидите, на какой команде ошибка.
- Убедитесь, что нет опечаток и лишних пробелов.
SCR против LISP: когда что использовать
SCR и LISP решают задачи автоматизации, но на разных уровнях.
| Критерий | SCR-скрипты | |
|---|---|---|
| Сложность логики | Только линейное выполнение | Условия, циклы, функции |
| Обучение | Минимальное: знание команд AutoCAD | Требует изучения языка |
| Гибкость | Низкая | Высокая |
| Обработка ошибок | Скрипт прерывается при ошибке | Можно добавить проверки |
| Интеграция | Только через командную строку или скрипт-менеджер | Можно встроить в меню или палитры |
Выбирайте SCR, если нужно быстро automate простые задачи без программирования. LISP — когда требуется гибкость: например, обработать только определенные объекты или сделать сложную выборку.
Практические примеры скриптов
Пример 1: Пакетная печать всех DWG в папке
FILEDIA 0 QUICKSAVE ПЕЧАТЬ Мой_Принтер A3 миллиметры ландшафт нет границы да нет да ЗАКРЫТЬ да
Этот скрипт можно запустить из .bat-файла в цикле по всем файлам.
Пример 2: Стандартизация слоев
-СЛОЙ сделать Моя_Основная цвет 7 выход
Устанавливает слой «Моя_Основная» текущим и задает ему цвет 7 (белый).
SCR-скрипты — мощный инструмент для тех, кто работает с большим количеством чертежей. Начните с малого: automate печать или очистку файлов. По мере надобности переходите к LISP для более сложных сценариев.
Частые вопросы
Чем SCR-скрипты отличаются от LISP?
SCR — это простые текстовые файлы с последовательностью команд AutoCAD, выполняются линейно. LISP — язык программирования с логикой, циклами, условиями. SCR проще для базовой автоматизации, LISP — для сложных задач.
Какие команды AutoCAD нельзя использовать в скриптах?
Не работают команды, требующие интерактивного выбора: например, некоторые опции «РАСТЯНИ» (STRETCH) или «ПОДРЕЖ» (TRIM) без предварительного выбора. Также проблемы с диалоговыми окнами — их нужно обходить системными переменными.
Как запустить скрипт на несколько файлов?
Через командную строку: acad.exe /b скрипт.scr. Можно добавить в пакетный файл (.bat) для обработки папки. Или использовать встроенный менеджер публикации (PUBLISH) с настройкой скрипта.
Читайте также
Условные операторы в AutoLISP: if, cond, логика ветвлений
Базовые принципы условных операторов Условные операторы позволяют управлять потоком выполнения программы в зависимости от выполнения условий. В AutoLISP основными инструментами для этого являются if и cond. Они оценивают…
Скрипт подсчёта длины линий в AutoCAD на LISP
Подсчёт общей длины линий — рутинная задача в AutoCAD, которую можно автоматизировать скриптами на LISP. Готовые решения вроде TLEN.lsp экономят время, но имеют ограничения с блоками и сложными…
Полезные LISP-скрипты для AutoCAD: ТОП-10 бесплатных утилит
AutoLISP остается одним из самых доступных способов автоматизации рутинных операций в AutoCAD. Готовые скрипты экономят часы монотонной работы: автоматическое создание штампов, нумерация позиций, работа со слоями и блоками.…
Добавить комментарий