Сравнить пространственные объекты (Feature Compare) (Управление данными)

Уровень лицензии:BasicStandardAdvanced

Резюме

Сравнивает два класса пространственных объектов или слоя. Инструмент Сравнить пространственные объекты (Feature Compare) позволяет выявить отличия в типе геометрии, табличных значениях, пространственной привязке и атрибутивных полях.

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

Синтаксис

FeatureCompare_management (in_base_features, in_test_features, sort_field, {compare_type}, {ignore_options}, {xy_tolerance}, {m_tolerance}, {z_tolerance}, {attribute_tolerances}, {omit_field}, {continue_compare}, {out_compare_file})
ПараметрОбъяснениеТип данных
in_base_features

С исходными объектами сопоставляются тестовые объекты. Исходные объекты соответствуют данным, которые считаются корректными. Они имеют корректную геометрию, поля и пространственную привязку.

Feature Layer
in_test_features

Тестовые объекты сопоставляются с исходными объектами. Тестовые объекты соответствуют данным, в которые внесены изменения при редактировании или компиляции новых объектов.

Feature Layer
sort_field
[sort_field,...]

Одно или несколько полей, используемые для сортировки записей в исходной (Input Base Table) и тестовой таблицах (Input Test Table). Записи сортируются по возрастанию. Сортировка по общему для обеих таблиц полю обеспечивает проверку идентичных строк во входном наборе данных.

Value Table
compare_type
(дополнительно)

Тип сравнения. ALL используется по умолчанию. В этом случае сравниваются все свойства сопоставляемых пространственных объектов.

  • ALLСравниваются все свойства классов пространственных объектов. Это значение используется по умолчанию.
  • GEOMETRY_ONLYСравнивается только геометрия классов пространственных объектов.
  • ATTRIBUTES_ONLYСравниваются только атрибуты и их значения.
  • SCHEMA_ONLYСравнивается только схема классов пространственных объектов.
  • SPATIAL_REFERENCE_ONLYСравниваются только пространственные привязки двух классов пространственных объектов.
String
ignore_options
[ignore_option,...]
(дополнительно)

Отмеченные свойства будут проигнорированы при сравнении.

  • IGNORE_MСвойства измерений не сравниваются.
  • IGNORE_ZСвойства рельефа не сравниваются.
  • IGNORE_POINTIDСвойства ID точек не сравниваются.
  • IGNORE_EXTENSION_PROPERTIESНе сравнивать свойства расширения.
  • IGNORE_SUBTYPESНе сравнивать подтипы.
  • IGNORE_RELATIONSHIPCLASSESНе сравнивать классы отношений.
  • IGNORE_REPRESENTATIONCLASSESКлассы представлений не сравниваются.
String
xy_tolerance
(дополнительно)

Расстояние, в пределах которого объекты будут считаться идентичными. Для снижения вероятности ошибки выбирайте значение минимально возможное значение допуска. По умолчанию, в качестве этого параметра устанавливается допуск XY исходных объектов.

Linear unit
m_tolerance
(дополнительно)

Минимальное расстояние между измерениями. На меньшем расстоянии измерения будут считаться идентичными.

Double
z_tolerance
(дополнительно)

Допуск Z - это минимальное расстояние между координатами Z, до того, как они будут считаться равными.

Double
attribute_tolerances
[[Field, {Tolerance}],...]
(дополнительно)

Допустимое отклонение атрибутивных значений числовых полей.Диапазон, в котором значения будут считаться идентичными. Используется только для числовых полей.

Value Table
omit_field
[omit_field,...]
(дополнительно)

Одно или несколько полей, которые будут пропущены в процессе сравнения. Свойства и значения данных полей будут проигнорированы.

String
continue_compare
(дополнительно)

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

  • NO_CONTINUE_COMPAREОстанавливается при встрече с первым несоответствием. Это значение используется по умолчанию.
  • CONTINUE_COMPAREСравнивает другие свойства после встречи с первым несоответствием.
Boolean
out_compare_file
(дополнительно)

Данный файл будет хранить информацию обо всех совпадениях и отличиях исходных и текстовых объектов. Это текстовый файл с запятой в качестве разделителя, который можно просмотреть и использовать как таблицу в ArcGIS.

File

Пример кода

Инструмент Сравнить пространственные объекты (FeatureCompare). Пример (окно Python)

Пример скрипта Python для выполнения функции Сравнить пространственные объекты (Feature Compare) с запуском из окна Python в ArcGIS.

import arcpy
arcpy.FeatureCompare_management(r'C:/Workspace/baseroads.shp', r'C:/Workspace/newroads.shp', 'ROAD_ID', 'ALL', 'IGNORE_M;IGNORE_Z', '0.001 METERS', 0, 0, 'Shape_Length 0.001', '#', 'CONTINUE_COMPARE', e = r'C:/Workspace/roadcompare.txt')
Пример инструмента Сравнить пространственные объекты (FeatureCompare) (автономный скрипт)

Пример использования инструмента Сравнить пространственные объекты (Feature Compare) в автономном скрипте.

# Name: FeatureCompare.py
# Description: Compare two feature classes and return comparison result.

# import system modules 
import arcpy

try:
    # Set local variables
    base_features = "C:/Workspace/baseroads.shp"
    test_features = "C:/Workspace/newroads.shp"
    sort_field = "ROAD_ID"
    compare_type = "ALL"
    ignore_option = "IGNORE_M;IGNORE_Z"
    xy_tolerance = "0.001 METERS"
    m_tolerance = 0
    z_tolerance = 0
    attribute_tolerance = "Shape_Length 0.001"
    omit_field = "#"
    continue_compare = "CONTINUE_COMPARE"
    compare_file = "C:/Workspace/roadcompare.txt"
 
    # Process: FeatureCompare
    compare_result = arcpy.FeatureCompare_management(base_features, test_features, sort_field, compare_type, ignore_option, xy_tolerance, m_tolerance, z_tolerance, attribute_tolerance, omit_field, continue_compare, compare_file)
    print compare_result
    print arcpy.GetMessages()
 
except:
    # Print error message if an error occurs
    print arcpy.GetMessages()

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

Этот инструмент не использует параметры среды геообработки

Связанные темы

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

ArcGIS for Desktop Basic: Да
ArcGIS for Desktop Standard: Да
ArcGIS for Desktop Advanced: Да
9/10/2013