TG_MAX_SelectPointsOnPolyline: Интеллектуальный выбор точек вдоль полилинии
Скачайте лисп: TG_MAX_SelectPointsOnPolyline.lsp
Версия: V1 (02.10.2025)
Этот специализированный LISP-скрипт для AutoCAD решает задачу быстрого и точного выделения точечных объектов (POINT), расположенных вблизи заданной полилинии. Инструмент незаменим при обработке полевых геодезических данных, когда необходимо отделить точки, относящиеся к конкретному линейному объекту (дороге, коммуникации, границе) от общего облака точек.
Что делает этот лисп?
Программа выполняет интеллектуальную пространственную выборку точек на основе их близости к полилинии:
-
Анализирует расположение: Для каждой точки в чертеже вычисляет кратчайшее расстояние до выбранной полилинии.
-
Два режима работы:
«План» (2D): Учитывает только плановые координаты X,Y. Идеально для работы с горизонтальными проекциями.
«Высота» (3D): Учитывает все три координаты X,Y,Z. Незаменим для работы с 3D-полилиниями и рельефом. -
Гибкий допуск: Позволяет задать максимальное расстояние от точки до полилинии, в пределах которого точка считается принадлежащей объекту.
-
Автоматическое выделение: Все найденные точки автоматически выделяются на чертеже, готовые для дальнейших операций (экспорт, изменение свойств, удаление).
Типичные сценарии применения:
-
Выделение пикетов и точек подробной съемки вдоль трассы дороги.
-
Отбор точек, относящихся к линии коммуникации (газопровод, водопровод) в общем облаке съемки.
-
Фильтрация точек границы участка или контура сооружения.
-
Подготовка данных для построения продольных профилей по точкам, расположенным в коридоре.

Пошаговая инструкция по использованию
-
Загрузка скрипта:
-
Скачайте файл
TG_MAX_SelectPointsOnPolyline.lsp. -
В AutoCAD введите команду
APPLOADи загрузите файл. -
Для запуска введите
TG_MAX_SELECTPOINTSONPOLYLINE(допустимо сокращение доTSPили других символов).
-
-
Выбор режима работы:
-
Программа запросит:
Выберите режим [План/Высота] <План>:. -
Введите
П(План) — если нужно учитывать только отклонение точки от линии в плане (по X,Y). Используется для большинства ситуаций. -
Введите
В(Высота) — если важно учитывать и вертикальное отклонение (координату Z). Используется при работе с 3D-полилиниями и сложным рельефом.
-
-
Выбор полилинии:
-
Выберите полилинию:— укажите ЛЮБОЙ линейный объект (LWPOLYLINE или POLYLINE), к которому нужно «привязать» точки.
-
-
Задание допуска (расстояния):
-
Введите расстояние от полилинии <0.1>:— укажите максимальное расстояние, в пределах которого точка будет считаться принадлежащей полилинии. -
Например, значение 0.5 (метра) означает, что будут выделены все точки, отстоящие от полилинии не более чем на 50 см в выбранном режиме (2D или 3D).
-
-
Результат:
-
Программа мгновенно просканирует ВСЕ точечные объекты в чертеже, вычислит расстояния и выделит подходящие.
-
В командной строке появится сообщение с количеством найденных точек и используемым режимом.
-
Найденные точки будут выделены (подсвечены) на чертеже, образуя отдельный набор для выделения (selection set). Теперь с ними можно выполнять любые операции: копировать, экспортировать, изменять слой или удалять.
-
Принцип работы и геометрия
-
Для каждой точки в чертеже функция
vlax-curve-getClosestPointToнаходит ближайшую точку на полилинии. -
Рассчитывается расстояние между реальной точкой и этой ближайшей точкой на кривой.
-
В режиме «План» расчет расстояния использует только координаты X и Y (фактически, горизонтальная проекция).
-
В режиме «Высота» расчет использует все три координаты (фактическое пространственное расстояние).
-
Если рассчитанное расстояние меньше или равно заданному пользователем допуску, точка попадает в итоговую выборку.
Особенности и важные примечания
-
Только точки: Скрипт работает исключительно с примитивами типа POINT. Блоки (BLOCK), тексты или другие объекты не анализируются.
-
Высокая скорость: Использует эффективные алгоритмы AutoCAD (VLAX) для вычисления ближайшей точки, что обеспечивает высокую скорость даже на больших наборах данных (десятки тысяч точек).
-
Умное выделение: Использует команду
sssetfirstдля одновременного подсвечивания и активации выбранных точек. Это позволяет сразу начать с ними работать. -
Поиск по всему чертежу: Анализируются все точки в чертеже, независимо от слоя, цвета или других свойств. Фильтрация происходит только по геометрическому положению относительно полилинии.
-
Безопасность: Все изменения (фактически — только выделение объектов) упакованы в одну операцию Undo Mark. Выделение можно отменить командой
UNDO.
Инструмент разработан геодезистами «ТопГео» для ускорения процесса камеральной обработки, когда необходимо быстро и точно разделить общее облако точек на логические группы, соответствующие линейным объектам на местности.
СКаЧАЙТЕ ОБРАЗЦЫ ДОКУМЕНТОВ