Выявить конфликты графики (Картография)

Сводка

Создает полигоны, в пределах которых существует два и более графического конфликта отображения объектов.

Иллюстрация

Определение качества графики

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

  • Инструмент оценивает именно конфликты между символами, а не геометрию. Входной слой и конфликтный слой могут совпадать.

  • Входные слои должны быть с условными знаками. Входные слои могут включать класс объектов-аннотаций, в том числе замену символов. Шейп-файлы и слои САПР также являются допустимыми входными данными.

    Этот инструмент не поддерживает следующие входные данные:

    • аннотация САПР
    • аннотации покрытия,
    • VPF аннотации
    • Размеры
    • Растровые слои
    • Наборы сетевых данных
    Этот инструмент не поддерживает следующие типы символов:
    • Символы диаграмм
    • Условные обозначения плотности точек
    • Пропорциональные символы
    • Неклассифицированные цвета
    • Символы карты интенсивности
    • Словарные символы
    • Любые символы, содержащие 3D-символы

  • Выходной класс объектов хранит полигоны, которые представляют области графических конфликтов между входными и конфликтующими представлениями. Идентификаторы ID объектов, связанные с двумя конфликтными представлениями, хранятся вместе с полигонами конфликтов в полях FID_<input_layer_name> и FID_<conflict_layer_name>. Если конфликтующий слой совпадает с входным слоем, второе поле получает имя FID_<input_layer_name>_1. Если конфликты графики не обнаружены, выходной класс объектов будет пустым.

  • Используйте параметр Допуск конфликта для определения территорий, в пределах которых входные и конфликтующие с ними представления находятся друг к другу ближе, чем это имеет место в действительности. Вокруг символов создаются временные буферные зоны, размеры которых составляют половину значения допуска конфликта. Полигоны конфликтных зон будут созданы во всех местах пересечения буферов. Если значение допуска конфликта равно нулю, конфликты выявляются во всех местах пересечения символов отображения объектов. Это настройка по умолчанию. Вычисление конфликтов основывается на базовом масштабе. Используется базовый масштаб фрейма данных, который содержит входные слои, если только Базовый масштаб не был установлен в Параметрах среды.

  • Используйте параметр Допуск при соединении линий для пропуска перекрывающихся символов на сходящихся концах линий. Это полезно в случаях, когда вы используете концевые штрихи, чтобы соединения линий были визуально представлены, но вы не хотите, чтобы каждый из этих случаев был определен как конфликт. Допуск при соединении линий выставляется в единицах страницы с учетом базового масштаба. Допуск при соединении линий равен радиусу окружности, центр которой находится в точке соединения линий и в пределах которой не будут выявлены графические пересечения. Используйте значение, равное, как минимум, половине ширины линии символа вашего линейного представления, чтобы избежать этих конфликтов. Значение, равное 0, обозначает отсутствие допуска конфликта, поэтому конфликт будет выявляться на каждой линии, соединенной таким образом. Этот параметр учитывается только в случае, когда входной слой и слой конфликтов идентичны.

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

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

Синтаксис

arcpy.cartography.DetectGraphicConflict(in_features, conflict_features, out_feature_class, {conflict_distance}, {line_connection_allowance})
ParameterОбъяснениеТип данных
in_features

Входной слой объектов, содержащий объекты, отображающиеся с помощью символов. Аннотации САПР, покрытия или VPF, размеры, диаграммы, символы плотности точек или градуированные, растровые слои, наборы сетевых данных и 3D-символы не являются допустимыми входными данными.

Layer
conflict_features

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

Layer
out_feature_class

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

Feature Class
conflict_distance
(Дополнительный)

Область, в которой расстояние между входными и конфликтующими символами меньше определенного значения. Вокруг символов, используемых для отображения объектов, во входных слоях и слоях с конфликтами создаются временные буферы, размер которых равен половине значения допуска конфликта. Полигоны конфликтов будут созданы в местах пересечения этих буферов. Допуск конфликта измеряется в единицах страницы (точки, дюймы, миллиметры или сантиметры). Если вы введете допуск конфликта в единицах карты, они будут переведены в единицы страницы с учетом базового масштаба. Значение допуска конфликта по умолчанию равно 0; в этом случае буферы не строятся, а конфликты фиксируются только в местах непосредственного пересечения символов.

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

Радиус окружности, центр которой находится в точке соединения линий и в пределах которой не будут выявлены графические пересечения. Этот параметр учитывается только в случае, когда входной слой и слой конфликтов идентичны. Нулевой допуск приведет к обнаружению конфликта во всех местах соединения линий (в случае перекрытия символов на концах линий). Допуск при соединении линий вычисляется в единицах страницы (точки, дюймы, миллиметры или сантиметры). Если вы введете допуск в единицах карты, они будут переведены в единицы страницы с учетом базового масштаба. Значение не может быть отрицательным числом; значение по умолчанию – 1 точка.

Linear Unit

Пример кода

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

Пример скрипта Python для использования инструмента DetectGraphicConflict в режиме прямого запуска.

import arcpy
arcpy.env.workspace = "C:/data/carto.gdb/buildings"
arcpy.env.referenceScale = "50000"
arcpy.DetectGraphicConflict("footprints.lyr", 
                            "roads.lyr",
                            "C:/data/carto.gdb/buildings/dgc_polys",
                            "25 meters", 
                            "0 meters")
DetectGraphicConflict, пример 2 (автономный скрипт)

В этом автономном скрипте показан пример использования инструмента DetectGraphicConflict.

# Name: DetectGraphicConflict_standalone_script.py
# Description: Detects graphic conflicts between
#              feature representations and stores
#              the overlaps as polygons in
#              the output feature class.
# Author: ESRI
 
# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data/cartography.gdb/buildings"
env.referenceScale = "50000"

# Set local variables
in_features = "footprints.lyr"
conflict_features = "roads.lyr"
out_feature_class = "C:/data/carto.gdb/buildings/dgc_polys"
conflict_distance = "25 meters"
line_connection_allowance = "0 meters"

# Execute Detect Graphic Conflict
arcpy.DetectGraphicConflict(in_features,
                            conflict_features,
                            out_feature_class,
                            conflict_distance,
                            line_connection_allowance)

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

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

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