RU:JOSM/Plugins/AdaptiveSimplifier

From OpenStreetMap Wiki
Jump to navigation Jump to search

Описание

Плагин реализует алгоритм адаптивного упрощения геометрии для выделенных линий (Way) в JOSM. Он эффективно удаляет избыточные точки с учетом локальной кривизны и геометрической важности узлов, сохраняет форму изгибов, защищает линию от самопересечений, предотвращает удаление точек перекрестков, точек с тегами и узлов, входящих в отношения. Также поддерживается функция слияния близко расположенных точек и режим приоритета для сохранения исходных авторских узлов.

Использование

  1. Выделите одну или несколько линий любым способом (кликом или рамкой)
  2. Выберите в меню Мои инструменты → Адаптивное упрощение или нажмите горячую клавишу (по умолчанию Ctrl+ Shift+Y).
    • Примечание: Если сочетание по умолчанию уже занято другим плагином, JOSM назначит клавишу автоматически. Актуальную комбинацию можно всегда увидеть в меню Мои инструменты справа от названия плагина.
  3. Настройте параметры:
    • Порог (в метрах): — основной порог геометрического отклонения (0.01–100.0 м). Чем меньше значение, тем точнее сохраняются мельчайшие детали; чем больше, тем агрессивнее удаляются точки на пологих участках.
    • Слияние близких точек — активирует предварительное объединение/удаление узлов, расположенных слишком близко друг к другу.
      • Порог слияния (в метрах): — минимально допустимое расстояние между соседними точками (поле активно при включении опции слияния).
    • Приоритет сохранения авторским точкам — при выборе между удаляемыми и сохраняемыми точками отдает предпочтение уже существующим на сервере OSM авторским узлам с историей, минимизируя создание новых объектов.
  4. Нажмите ОК
  5. По завершении операции плагин выведет информационное сообщение с количеством обработанных линий и удаленных точек.

Особенности защиты данных

  • Защита от самопересечений: алгоритм проверяет траекторию каждого нового соединяющего отрезка и блокирует удаление точек, если это может привести к образованию петли или пересечению линии самой с собой.
  • Защита топологии: узлы-сочленения (принадлежащие двум и более линиям), точки с собственными тегами и узлы, состоящие в отношениях OSM (маршруты, ограничения маневров и др.), гарантированно сохраняются.

Установка

  1. Скачайте JAR-файл из раздела Releases на GitHub
  2. Скопируйте в папку плагинов JOSM:
    • Windows: %APPDATA%\JOSM\plugins\
    • Linux: ~/.local/share/JOSM/plugins/ или ~/.josm/plugins/
    • macOS: ~/Library/JOSM/plugins/
  3. Перезапустите JOSM (плагин поддерживает загрузку без перезапуска)

Исходный код

GitHub repository

Лицензия

GNU General Public License v3.0