ArcGIS Desktop

  • Документация
  • Поддержка

  • My Profile
  • Справка
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Картографическая платформа вашей организации

ArcGIS Desktop

Полноценная профессиональная ГИС

ArcGIS Enterprise

ГИС предприятия

ArcGIS for Developers

Инструменты для встраивания приложений с местоположениями

ArcGIS Solutions

Бесплатные шаблоны карт и приложений для отрасли

ArcGIS Marketplace

Получение приложения и данных для вашей организации.

  • Документация
  • Поддержка
Esri
  • Войти
user
  • Мой профиль
  • Выход

ArcMap

  • На главную
  • Начало работы
  • Карта
  • Анализ
  • Управление данными
  • Инструменты
  • Дополнительные модули

Сгладить полигоны

  • Краткая информация
  • Иллюстрация
  • Использование
  • Синтаксис
  • Пример кода
  • Параметры среды
  • Информация о лицензиях

Краткая информация

Улучшает визуальное и картографическое качество линий границ полигонов посредством сглаживания их углов.

Иллюстрация

Иллюстрация сглаживания полигонов

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

  • Можно выбрать один из двух методов сглаживания:

    • Метод PAEK (Полиномиальная аппроксимация с использованием экспоненциального ядра) сглаживает полигоны на основе допуска сглаживания. Каждый сглаженный полигон может иметь большее количество вершин, чем исходный. Параметр Допуск сглаживания определяет длину сдвига кривой и используется при вычислении координат новых вершин. Чем меньше длина, тем больше деталей сохранится и тем больше времени займет обработка.
    • Метод Интерполяции Безье (BEZIER_INTERPOLATION в Python) сглаживает полигоны без использования допуска посредством создания кривых Безье, совпадающих с входными линиями. Если выходными данными является шейп-файл, кривые Безье будут приблизительно аппроксимированы, т.к. шейп-файл не поддерживает хранение подобных данных.
  • Сглаживание может вызвать топологические ошибки, например, пересечения линий границ полигонов. Для обнаружения этих ошибок используйте опцию Пометить ошибки (FLAG_ERRORS в Python) параметра Исправлять топологические ошибки. Будут созданы два поля – InPoly_FID and SmoPlyFlag, содержащие, соответственно, идентификаторы входных объектов и ошибки топологии. Значение в поле SmoPlyFlag, равное 1, означает наличие топологической ошибки; нулевое значение соответствует корректной топологии. Поле InPolyFID связывает выходные полигоны со входными. Опция Пометить ошибки не может использоваться во время сеанса редактирования.

  • В процессе сглаживания может быть создана некорректная геометрия (самопересекающаяся), которая будет только исправлена, но не улучшена. К примеру, самопересекающийся полигон будет преобразован в составной полигон, но будет по-прежнему выглядеть как самопересекающийся.

Синтаксис

SmoothPolygon_cartography (in_features, out_feature_class, algorithm, tolerance, {endpoint_option}, {error_option})
ПараметрОбъяснениеТип данных
in_features

Полигональные объекты, которые необходимо сгладить.

Feature Layer
out_feature_class

Создаваемый выходной класс полигональных пространственных объектов.

Feature Class
algorithm

Определяет алгоритм сглаживания.

  • PAEK —PAEK – аббревиатура, означающая полиномиальную аппроксимацию с использованием экспоненциального ядра. Вычисляет сглаженный полигон, линии границ которого не будут проходить через вершины исходного полигона. Используется по умолчанию.
  • BEZIER_INTERPOLATION —Строит между вершинами параметрические кривые (кривые Безье). Получившийся полигон проходит через вершины исходного полигона. Этот алгоритм не требует указания допуска. Кривые Безье будут аппроксимированы приблизительно в выходном шейп-файле.
String
tolerance

Устанавливает допуск, используемый алгоритмом PAEK. Должен быть указан допуск, значение которого больше нуля. Вы можете выбрать единицы измерения; по умолчанию используются единицы измерения объекта. Если используется алгоритм сглаживания BEZIER_INTERPOLATION, необходимо ввести 0 в качестве заполнителя.

Linear Unit
endpoint_option
(Дополнительный)

Определяет, следует ли сохранять концевые точки кольцевых полигонов. Эта опция доступна только для алгоритма PAEK.

  • FIXED_ENDPOINT —Сохраняет конечную точку замкнутого кольцевого полигона. Используется по умолчанию.
  • NO_FIXED —Сглаживает замкнутую линию в районе конечной точки кольцевого полигона.
Boolean
error_option
(Дополнительный)

Определяет способ обработки топологических ошибок, которые могут появиться в процессе обработки (например, пересечения и наложения линий).

  • NO_CHECK —Топологические ошибки не выявляются. Используется по умолчанию.
  • FLAG_ERRORS —Найденные топологические ошибки помечаются.
String

Пример кода

SmoothPolygon, пример (Окно Python)

Следующий скрипт окна Python показывает, как использовать инструмент SmoothPolygon в режиме прямого запуска.

import arcpy
import arcpy.cartography as CA
arcpy.env.workspace = "C:/data"
CA.SmoothPolygon("soils.shp", "C:/output/output.gdb/smoothed_soils", "PAEK", 100)
SmoothPolygon, пример 2 (автономный скрипт)

В следующем автономном скрипте показано, как использовать инструмент SmoothPolygon.

# Name: SmoothPolygon_Example2.py
# Description: Eliminate small islands before simplifying and smoothing lake boundaries
 
# Import system modules
import arcpy
import arcpy.cartography as CA
import arcpy.management as DM
 
# Set environment settings
arcpy.env.workspace = "C:/data/Portland.gdb/Hydrography"
 
# Set local variables
inLakeFeatures = "lakes"
eliminatedFeatures = "C:/data/PortlandOutput.gdb/lakes_eliminated"
simplifiedFeatures = "C:/data/PortlandOutput.gdb/lakes_simplified"
smoothedFeatures = "C:/data/PortlandOutput.gdb/lakes_smoothed"
# Eliminate small islands in lake polygons.
DM.EliminatePolygonPart(inLakeFeatures, eliminatedFeatures, 100, "OR", 0, "CONTAINED_ONLY")
 
# Simplify lake polygons.
CA.SimplifyPolygon(eliminatedFeatures, simplifiedFeatures, "POINT_REMOVE", 50, 200, "RESOLVE_ERRORS", "KEEP_COLLAPSED_POINTS", "CHECK")
 
# Smooth lake polygons.
CA.SmoothPolygon(simplifiedFeatures, smoothedFeatures, "PAEK", 100, "", "FLAG_ERRORS")

Параметры среды

  • Текущая рабочая область
  • Выходное Z значение по умолчанию
  • Выходной M домен
  • Выходной XY домен
  • Выходная система координат
  • Экстент
  • Выходные данные содержат M-значения
  • Выходные данные содержат Z значения
  • Временная рабочая область
  • Допуск XY

Информация о лицензиях

  • ArcGIS Desktop Basic: Нет
  • ArcGIS Desktop Standard: Да
  • ArcGIS Desktop Advanced: Да

Связанные разделы

  • Обзор группы инструментов Генерализация (Generalization)
  • Разрешение конфликтов и генерализация
  • Автоматизирование урегулирования конфликтов и процессов генерализации с процессами геообработки
  • Сгладить линию
  • Упростить полигон

ArcGIS Desktop

  • На главную
  • Документация
  • Поддержка

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Об Esri

  • О нас
  • Карьера
  • Блог сотрудников
  • Конференция пользователей
  • Саммит разработчиков
Esri
Расскажите нам, что вы думаете.
Copyright © 2018 Esri. | Конфиденциальность | Правовая информация