TG_MAX_ALIGN_TEXT_LI: Автоматическое выравнивание текстов вдоль полилинии

Скачайте лисп: TG_MAX_ALIGN_TEXT_LI.lsp
Версия: V1 (последнее обновление: 05.02.2026)
Этот профессиональный LISP-скрипт для AutoCAD решает сложную задачу автоматического позиционирования и ориентации текстовых объектов относительно криволинейных траекторий. Программа обеспечивает идеальное выравнивание подписей вдоль любых полилиний с интеллектуальным учетом кривизны и заданным смещением. Доступны два режима работы для максимальной гибкости.
Что делает этот лисп?
Скрипт выполняет комплексное выравнивание текстовых объектов (TEXT и MTEXT) вдоль полилинии с математической точностью:
1. TG_MAX_ALIGN_TEXT_LI — Автоматический режим с радиусом поиска
-
Сканирует весь чертеж на наличие текстовых объектов.
-
Автоматически находит все тексты, попадающие в заданный радиус от полилинии.
-
Интеллектуально выравнивает: Для каждого текста определяет ближайшую точку на полилинии и вычисляет локальную касательную для правильного угла поворота.
-
Позиционирует с учетом кривизны: Текст размещается на заданном расстоянии (в процентах от высоты текста) над или под линией, строго по нормали к кривой.
2. TG_MAX_ALIGN_TEXT_LI_R — Ручной режим выбора
-
Работает только с предварительно выбранными текстовыми объектами.
-
Игнорирует расстояние — обрабатывает ВСЕ выбранные тексты, независимо от их удаленности от полилинии.
-
Обеспечивает полный контроль над выбором объектов для обработки.
Ключевые возможности:
-
Динамический угол поворота: Текст поворачивается параллельно локальной касательной к полилинии, что обеспечивает идеальное выравнивание даже на извилистых траекториях.
-
Гибкое позиционирование: Возможность размещения текста над или под линией с настраиваемым отступом.
-
Автоматическая нормализация угла: Угол поворота автоматически адаптируется для удобочитаемости текста (текст не отображается вверх ногами).
-
Работа с любыми полилиниями: Поддерживает как LWPOLYLINE, так и POLYLINE (включая 3D полилинии).
Пошаговая инструкция по использованию
Режим 1: Автоматическое выравнивание (TG_MAX_ALIGN_TEXT_LI)
-
Загрузка скрипта:
-
Скачайте файл
TG_MAX_ALIGN_TEXT_LI.lsp. -
В AutoCAD введите
APPLOADи загрузите файл. -
Для запуска введите
TG_MAX_ALIGN_TEXT_LI.
-
-
Выбор базовой полилинии:
-
Выберите базовую полилинию:— укажите ЛЮБУЮ полилинию, вдоль которой нужно выровнять тексты.
-
-
Настройка радиуса поиска:
-
Радиус поиска текста (в плане) <0.5>:— укажите максимальное расстояние от полилинии, в пределах которого будут искаться тексты (в плане, без учета Z).
-
-
Настройка отступа:
-
Выберите отступ в % [50/80/100] <80>:— выберите, на каком расстоянии (в процентах от высоты текста) разместить текст относительно линии.
-
-
Выбор стороны размещения:
-
Выберите сторону [Над/Под] <Над>:— укажите, где должен располагаться текст: Над линией или Под линией.
-
-
Результат:
-
Программа автоматически просканирует весь чертеж, найдет все тексты в заданном радиусе, вычислит для каждого оптимальное положение и угол, и переместит их.
-
В командной строке отобразится количество обработанных объектов.
-
Режим 2: Ручное выравнивание выбранных текстов (TG_MAX_ALIGN_TEXT_LI_R)
-
Запуск: Введите
TG_MAX_ALIGN_TEXT_LI_R. -
Выбор полилинии: Укажите базовую полилинию.
-
Настройка параметров: Выберите процент отступа и сторону размещения (аналогично режиму 1).
-
Выбор текстов:
-
Выберите текст для выравнивания:— вручную выберите текстовые объекты, которые нужно выровнять вдоль указанной полилинии.
-
-
Результат: Все выбранные тексты будут выровнены вдоль полилинии с учетом заданных параметров.
Как работает математика выравнивания
-
Для каждого текста определяется ближайшая точка на полилинии с помощью
vlax-curve-getClosestPointTo. -
В этой точке вычисляется вектор первой производной (касательный вектор) к полилинии.
-
Угол поворота текста вычисляется как арктангенс отношения компонент касательного вектора.
-
Выполняется нормализация угла для исключения перевернутого отображения текста.
-
Точка вставки текста смещается по нормали к кривой на расстояние, равное
Высота_текста × Коэффициент_процента.
Типичные сценарии применения
-
Подписи дорог и рек: Идеальное выравнивание названий вдоль извилистых трасс и водных объектов.
-
Маркировка коммуникаций: Размещение обозначений трубопроводов, кабелей и других линейных объектов.
-
Оформление границ: Подписи границ участков, зон, контуров с учетом их формы.
-
Работа с разбивочными осями: Выравнивание номеров осей вдоль криволинейных конструкций.
-
Обработка импортированных данных: Приведение в порядок текстовых подписей, полученных из ГИС-систем.
Преимущества перед ручным выравниванием
-
Высочайшая точность: Математически точное позиционирование относительно кривой.
-
Сохранение читаемости: Автоматическая нормализация угла гарантирует, что текст всегда будет читаем.
-
Массовая обработка: Возможность выравнивания десятков или сотен текстов за один запуск.
-
Адаптивность к форме: Корректная работа с полилиниями любой сложности — от прямых до сплайнов.
-
Профессиональный результат: Обеспечивает уровень аккуратности, недостижимый при ручном редактировании.
Особенности и рекомендации
-
Работа в плане: В автоматическом режиме поиск текстов ведется только по плановым координатам (X,Y), координата Z игнорируется.
-
Высота текста: Отступ рассчитывается относительно высоты каждого конкретного текстового объекта.
-
Сброс выравнивания: Для обычных текстов (не MTEXT) сбрасывается выравнивание (Alignment) для корректного позиционирования.
-
Производительность: На чертежах с тысячами текстовых объектов автоматический режим может потребовать нескольких секунд на обработку.
Инструмент разработан специалистами «ТопГео» для автоматизации процесса оформления сложных инженерно-топографических планов, где точное и аккуратное расположение подписей вдоль криволинейных объектов является критически важным.