Краткая информация
Генерирует отчет об ошибках геометрии в классе пространственных объектов.
Допустимыми форматами являются шейп-файлы и классы объектов, хранящиеся в персональной или файловой базе геоданных. Базы геоданных SDE автоматически проверяют правильность каждой геометрии при загрузке, поэтому инструменты Проверить геометрию (Check Geometry) и Восстановить геометрию (Repair Geometry) не используются с базами геоданных SDE.
Дополнительную информацию о проблемах с геометрией, их причинах и влиянии на работу программного обеспечения см. в разделе Проверка и восстановление геометрии.
Использование
- Выходная таблица (Output Table) будет содержать записи по каждой обнаруженной проблеме геометрии. Если ошибки не найдены, таблица будет пустой. 
- Выходная таблица содержит следующие поля: - CLASS – полный путь к классу пространственных объектов и его имя, где была найдена ошибка.
- FEATURE_ID – идентификатор объекта Feature ID (FID) или Object ID (OID) для пространственного объекта с ошибками геометрии.
- PROBLEM – краткое описание ошибки.
 
- Поле PROBLEM может содержать следующие сообщения: - Short segment : некоторые сегменты короче, чем допускается единицами системы пространственной привязки, связанной с геометрией.
- Null geometry : у пространственных объектов нет геометрии или ничего нет в поле SHAPE.
- Incorrect ring ordering : полигон топологически простой, но его кольца ориентированы некорректно (внешние кольца – по часовой стрелке, внутренние кольца – против).
- Incorrect segment orientation : отсутствует согласованность ориентации отдельных сегментов. Точка "до" сегмента i должна совпадать с точкой "от" сегмента i+1.
- Self intersections : полигон не должен пересекать сам себя.
- Unclosed rings : точка "до" последнего сегмента кольца должна совпадать с точкой "от" первого сегмента.
- Empty parts : геометрия состоит из нескольких частей, одна из которых пустая (без геометрии).
- Duplicate vertex : в геометрии есть две или более вершины с одинаковыми координатами.
- Mismatched attributes : координаты Z или M конечной точки линейного сегмента не совпадают с координатами Z или M совпадающей конечной точки следующего сегмента.
- Discontinuous parts : одна из частей геометрии состоит из разрозненных или дискретных частей.
- Empty Z values : в геометрии есть одна или несколько вершин с пустым значением Z (например, NaN).
- Bad envelope : конверт не соответствует координатному экстенту геометрии.
- Bad dataset extent : экстент набора данных содержит не все объекты.
 
- Проблему, выявленную этим инструментом, можно решить одним из указанных ниже способов: - Вручную отредактировать и исправить пространственный объект с проблемами геометрии. Некоторые проблемы нельзя устранить редактированием.
- Запустить инструмент Восстановить геометрию (Repair Geometry) для класса пространственных объектов, обозначенных как имеющие проблемы геометрии.
 
- Для точечных объектов возможна только проблема нулевой геометрии. 
- Чтобы сделать более удобным просмотр пространственных объектов, обозначенных как имеющие проблемы геометрии, можно присоединить Входные объекты (Input Features) к Выходной таблице (Output Table) с помощью инструмента Соединение (Join), указав входное поле OBJECTID или FID и поле выходной таблицы FEATURE_ID. 
Синтаксис
CheckGeometry_management (in_features, out_table)
| Параметр | Объяснение | Тип данных | 
| in_features [in_feature,...] | Один или несколько классов пространственных объектов или векторных слоев, в которых проверяется геометрия. Допустимыми входными данными являются шейп-файлы и классы объектов, хранящиеся в персональной или файловой базе геоданных. | Feature Layer | 
| out_table | Выходная таблица, содержащая список проблем с геометрией, обнаруженных во входных объектах. | Table | 
Пример кода
CheckGeometry, пример 1 (окно Python)
Пример скрипта окна Python для выполнения функции CheckGeometry в режиме прямого запуска.
import arcpy
arcpy.env.workspace = "c:/data/data.gdb"
arcpy.CheckGeometry_management (["contours", "roads", "vegetation"], "CheckGeom_Result")
CheckGeometry, пример 2 (автономный скрипт)
Пример автономного скрипта, использующего функцию CheckGeometry с запуском цикла по всем классам пространственных объектов в базе геоданных.
# BatchCheckGeometry.py
# Description: 
#   Loops through all the feature classes in a geodatabase, and generates 
#   a report of the problems encountered with feature geometry.
# Import modules
import arcpy
 
# The workspace in which the feature classes will be checked
arcpy.env.workspace = "C:/data/St_Lucia.gdb"
outTable = "checkGeometryResult"
 
# A variable that will hold the list of all the feature classes 
# inside the geodatabase
fcs = []
 
# List all feature classes in feature datasets
for fds in arcpy.ListDatasets("featuredataset"):
    fcs += arcpy.ListFeatureClasses("*", "", fds)
          
# List all standalone feature classes
fcs = arcpy.ListFeatureClasses()
     
print("Running the check geometry tool on {} feature classes".format(len(fcs)))
arcpy.CheckGeometry_management(fcs, outTable)
print("{} geometry problems found, see {} for details.".format(arcpy.GetCount_management(outTable)[0],
                                                               outTable))
Параметры среды
Информация о лицензиях
- ArcGIS Desktop Basic: Да
- ArcGIS Desktop Standard: Да
- ArcGIS Desktop Advanced: Да