ArcGIS Desktop

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

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

ArcGIS Online

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

ArcGIS Desktop

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

ArcGIS Enterprise

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

ArcGIS for Developers

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

ArcGIS Solutions

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

ArcGIS Marketplace

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

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

ArcMap

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

Упростить полигон

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

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

Упрощает границы полигонов посредством удаления лишних вершин с сохранением основной формы.

Более подробно о работе инструментов Упростить линию и Упростить полигон

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

  • Этот инструмент задействует различные алгоритмы упрощения для разных целей:

    • Алгоритм POINT_REMOVE работает путём выявления и удаления относительно излишних вершин для упрощения данных, чтобы отображать их в мелких масштабах. Это самый быстрый алгоритм упрощения в данном инструменте. Этот алгоритм часто используется для сжатия данных или грубого упрощения. Угловатость получившегося контура полигона значительно возрастает при увеличении допуска. Данный алгоритм основан на алгоритме Дугласа-Пекера: Douglas, David and Peucker, Thomas, "Algorithms for the reduction of the number of points required to represent a digitized line or its caricature," The Canadian Cartographer 10(2), 112–122 (1973).
    • Алгоритм BEND_SIMPLIFY работает путём выявления и сглаживания относительно незначительных изгибов для упрощения данных, чтобы отображать их в мелких масштабах. Он гораздо добросовестнее обрабатывает входную геометрию, чем алгоритм POINT_REMOVE, но его работа занимает гораздо больше времени. Он является более медленным, зато обычно позволяет получить более точный результат. Метод заключается в удалении незначительных изгибов контуров полигонов. Данный алгоритм основан на алгоритме, описанном в работе Wang, Zeshen and Müller, Jean-Claude, "Line Generalization Based on Analysis of Shape Characteristics," Cartography and Geographic Information Systems 25(1), 3–15 (1998).
    • Алгоритм WEIGHTED_AREA определяет треугольник полезной площади для каждой вершины. Затем эти треугольники взвешиваются по набору определений, для оценки их однородности, асимметричности и выпуклости для каждой области. Взвешенные области указывают на избыточные вершины для удаления, позволяющие упростить контур полигона, максимально возможно сохраняя при этом его характеристики. Данный алгоритм основан на алгоритме, описанном в работе Zhou, Sheng and Jones, Christopher B., (2005) Shape-Aware Line Generalisation with Weighted Effective Area" in Fisher, Peter F. (Ed.) Developments in Spatial Handling 11th International Symposium on Spatial Handling, 369–80.

  • Параметр Допуск упрощения определяет степень упрощения. Чем больше допуск, тем более грубая выходная геометрия. Меньшие значения допусков дают более достоверную геометрию. MinSimpTol и поля MaxSimpTol добавляются к выходным данным, чтобы там хранился использованный допуск.

    • Для алгоритма POINT_REMOVE допуском является максимально допустимое перпендикулярное расстояние от каждой из вершин до новой созданной линии.
    • Для алгоритма BEND_SIMPLIFY допуском является диаметр окружности, приближенной к значимому изгибу.
    • Для алгоритма WEIGHTED_AREA квадрат допуска – это площадь значительного треугольника, заданного тремя соседними вершинами.

  • Все полигоны, которые меньше параметра Минимальной площади, удаляются из выходного класса пространственных объектов. Для группы смежных полигонов, имеющих общие рёбра, минимальная площадь относится к общей площади группы. Используйте параметр Сохранить линии нулевой длины, чтобы оставить записи удалённых полигонов в виде точечных объектов.

  • Части составных полигонов упрощаются отдельно.

  • Используйте параметр Сохранить линии нулевой длины (collapsed_point_option в Python), чтобы создать выходной класс пространственных объектов, который будет представлять полигоны, удалённые по причине их размеров меньше минимальной площади. Получаются выходные точки; они используют те же имя и местоположение, как у параметра Выходной класс пространственных объектов (out_feature_class в Python), но с суффиксом _Pnt. В выходном полигональном классе пространственных объектов имеются все поля, представленные во входном классе. Выходной класс точечных объектов не содержит ни одного из этих полей.

  • Выходными данными будет топологически корректный полигональный класс пространственных объектов. Все топологические ошибки входных данных будут помечены в выходном полигональном классе пространственных объектов. Выходной класс пространственных объектов содержит два дополнительных поля: InPoly_FID и SimPgnFlag, в которых содержатся соответственно идентификаторы входных пространственных объектов и топологические ошибки входных данных. Значение SimPgnFlag в 1 означает наличие топологической ошибки; 0 (zero) означает, что ошибок нет.

    Прежние версии:

    В предыдущей версии этого инструмента топологические ошибки можно было генерировать в процессе обработки. Параметр Управление топологическими ошибками (error_option в Python) пока присутствует в синтаксисе скрипта для совместимости в скриптах и моделях, но в диалоговом окне инструмента скрыт и в данный момент не используется.

    Поле SimPgnFlag использовалось для того, чтобы отмечать обнаруженные в процессе работы инструмента ошибки топологии в выходном классе пространственных объектов. Теперь в этом поле отмечены ошибки, присутствующие во входных данных. При исправлении ошибок топологии, в предыдущих версиях этих инструментов изменялся кластерный допуск для каждого объекта, и эти значения хранились в полях MinSimpTol и MaxSimpTol. В текущей версии значения в этих полях остаются неизменными и соответствует допуску, указанному в параметре Допуск упрощения. Не забудьте изменить существующие модели или скрипты, если они ссылаются на эти поля.

  • Используйте параметр Входные барьерные слои для указания пространственных объектов, которые не должны пересекаться упрощаемыми полигонами. Объектами-барьерами могут быть полигоны, линии или точки.

  • Обработка больших наборов входных данных может вызвать превышение ограничений использования оперативной памяти. В таком случае попытайтесь разделить входные данные на части, определив соответствующий полигональный класс пространственных объектов с помощью параметра среды Картографические разделы. Части данных, разделенные между собой границами, будут последовательно обрабатываться отдельно друг от друга. Полученный выходной класс объектов будет бесшовным и соответствовать границам частей. Более подробно см. Генерализация больших наборов данных путем разделения на части.

Синтаксис

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

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

Feature Layer
out_feature_class

Упрощённый выходной класс полигональных объектов. В нём имеются все поля, представленные во входном классе. Выходными данными будет топологически корректный полигональный класс пространственных объектов. Инструмент не вводит топологические ошибки, но все топологические ошибки входных данных будут помечены в выходном полигональном классе пространственных объектов. Выходной класс пространственных объектов содержит два дополнительных поля: InPoly_FID и SimPgnFlag, в которых содержатся соответственно идентификаторы входных пространственных объектов и топологические ошибки входных данных. Значение SimPgnFlag в 1 означает наличие входной топологической ошибки; 0 (zero) означает, что входных ошибок нет.

Feature Class
algorithm

Определяет используемый алгоритм упрощения полигонов.

  • POINT_REMOVE —Сохраняет критические точки, которые образуют главную форму контура полигона и удаляет все остальные точки. Используется по умолчанию.
  • BEND_SIMPLIFY —Сохраняет только критические точки, определяющие основную форму полигона, и удаляет все лишние изгибы.
  • WEIGHTED_AREA —Оставляет вершины, которые формируют треугольники эффективной площади.
String
tolerance

Допуск, определяющий степень упрощения. Вы можете выбрать предпочитаемые единицы измерения; в противном случае будут использоваться единицы входных данных. MinSimpTol и поля MaxSimpTol добавляются к выходным данным, чтобы там хранился использованный во время обработки допуск.

  • Для алгоритма POINT_REMOVE допуском является максимально допустимое перпендикулярное расстояние от каждой из вершин до новой созданной линии.
  • Для алгоритма BEND_SIMPLIFY допуском является диаметр окружности, приближенной к значимому изгибу.
  • Для алгоритма WEIGHTED_AREA квадрат допуска – это площадь значительного треугольника, заданного тремя соседними вершинами.
Linear Unit
minimum_area
(Дополнительный)

Определяет минимальную площадь полигонов, которые будут сохранены. Значение по умолчанию равно нулю; в этом случае сохраняются все полигоны. Вы можете выбрать предпочитаемые единицы измерения указанного значения; в противном случае будут использоваться единицы входных данных.

Areal Unit
error_option
(Дополнительный)
Прежние версии:

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

String
collapsed_point_option
(Дополнительный)

Определяет, надо ли создать выходной точечный класс пространственных объектов, в котором будут храниться центроиды полигонов, удалённых по причине того, что они были меньше параметра minimum_area. Получаются выходные точки; они используют те же имя и местоположение, как у выходного полигонального класса объектов, который вы указали в параметре out_feature_class, но с суффиксом _Pnt.

  • KEEP_COLLAPSED_POINTS —Отмечено – в выходной точечный класс объектов записываются центроиды полигонов, удалённых по причине того, что они были меньше Минимальной площади. Используется по умолчанию.
  • NO_KEEP —Выходной точечный класс объектов не создается.
Boolean
in_barriers
[in_barriers,...]
(Дополнительный)

Входные данные, содержащие пространственные объекты, действующие при упрощении как барьеры. Выходные упрощённые полигоны, которые не касаются и не пересекают объекты-барьеры. Например, при упрощении лесных районов результирующие упрощённые полигоны лесных территорий не будут касаться объектов-дорог, которые были заданы как барьеры.

Feature Layer

Пример кода

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

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

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

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

# Name: SimplifyPolygon_Example2.py
# Description: Eliminate small islands before simplifying and smoothing lake boundaries
 
# Import system modules
import arcpy
import arcpy.management as DM
import arcpy.cartography as CA
 
# 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, #, "KEEP_COLLAPSED_POINTS")
 
# 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. | Конфиденциальность | Правовая информация