Подпись | Описание | Тип данных |
Маскирующий слой | Изображаемый исходный слой, который будет пересекаться с маскируемым слоем для создания маскирующих полигонов. Этот слой будет отображаться, после того как к маскируемому слою будет применено маскирование. | Layer |
Маскируемый слой | Изображаемый входной слой, для которого будут создаваться маски. Этот слой будет скрыт маскирующими полигонами. | Layer |
Выходной класс пространственных объектов | Класс пространственных объектов, который будет содержать объекты маски. | Feature Class |
Базовый масштаб | Базовый масштаб, который будет использоваться для вычисления маскирующей геометрии, когда маски указываются в единицах страницы. Как правило, это базовый масштаб карты. | Double |
Вычисление системы координат | Пространственная привязка карты, в которой будут использованы маскирующие полигоны. Это не пространственная привязка, которая будет назначена выходному классу пространственных объектов. Это пространственная привязка карты, в которой будут использованы маскирующие полигоны, поскольку местоположение символов может быть изменено при проецировании объектов. | Spatial Reference |
Расширение | Пространство в единицах страницы, окружающее условные обозначения входных объектов, используется для создания маскирующих полигонов. Как правило, маскирующие полигоны создаются с небольшим буферным расстоянием вокруг символа, чтобы улучшить внешний вид карты. Значения буферного расстояния указываются в единицах карты или в единицах страницы. Чаще всего значения буферного расстояния указаны в единицах страницы. Поле не может быть отрицательным. | Linear Unit |
Вид маски | Задает тип геометрии создаваемой маски.
| String |
Создать маски для неразмещенных аннотаций | Указывает, надо ли создавать маски для неразмещенных аннотаций. Этот параметр используется только для маскирования слоев аннотаций в базе геоданных.
| String |
Перенос атрибутов (Дополнительный) | Определяет, какие атрибуты будут перенесены из входных объектов в выходные.
| String |
Краткая информация
Создает маскирующие полигоны определенной формы и определенного размера в местах пересечения двух отображаемых символами входных слоев: маскирующего слоя и маскируемого слоя.
Более подробно о том, как работают Контурные маски и Маски пересечения слоев
Использование
Этот инструмент в качестве исходного объекта может использовать точечные, линейные и полигональные слои пространственных объектов, а также слои аннотаций.
Допустимы значения полей, большие 0. Если оно будет равно 0, будут созданы маски, представляющие реальную форму условных знаков объектов.
Добавление масок к карте является сложным процессом, который замедляет прорисовку карты и сказывается на процессах печати и экспорта карты. При создании масок для карты вам необходимо решить для себя три основных вопроса: количество масок, сложность масок и будут ли они использоваться для маскирования полигональных объектов, заполненных маркерами или линейными символами. Все это замедляет отображение на экране. Кроме того, производительность печати и экспорта может быть очень низкой, и результаты могут быть неудовлетворительными. Это может произойти из-за системных требований, предъявляемых к печати и экспорту карт с масками, а также из-за ограничений, накладываемых на объем графического файла, в который может быть сохранен результат экспорта карты.
Если производительность печати и экспорта карты так же важны, как качество отрисовки, используйте простейшие маски для достижения нужного впечатления от карты. В частности, при использовании параметра Вид маски для маскировки текста аннотации, опция Выпуклая оболочка вполне достаточна для формирования нужного впечатления от карты. Для более детализированных текстовых масок используйте опцию Точная упрощенная. При маскировании большого количества текста на большой карте избегайте использования опции Точная, поскольку при этом будет создано слишком много составных масок для корректного результата.
Значения буферного расстояния указываются в единицах карты или в единицах страницы. Обычно значения буферного расстояния указаны в единицах страницы.
Значения буферного расстояния воспринимаются по-разному, в зависимости от выбранных единиц измерения. Если вы выберете точки, дюймы, миллиметры или сантиметры, маски будут созданы с учетом буферного расстояния, вычисленного в единицах страницы (вы можете представить его как расстояние, вычисленное на бумаге). Значение параметра Базовый масштаб учитывается в вычислениях.
Если вы выберете любые другие единицы измерений для буферного расстояния, маски будут созданы с учетом буферного расстояния, вычисленного в единицах карты (вы можете считать, что это реальное расстояние на поверхности Земли). Также, в связи с этим, значение параметра Базовый масштаб не используется в процессе вычислений.
Если входной слой является слоем аннотаций, базовый масштаб будет автоматически установлен равным базовому масштабу слоя класса объектов.Это делается для более точного вычисления маски. Если пересекаются два слоя аннотаций, они должны иметь одинаковый базовый масштаб.
При маскировании аннотаций, спроецированных на лету, создавайте маски с использованием пространственной привязки карты, указанной в параметре Вычисление системы координат. Читаемость текста сохраняется при проецировании текста на лету, этим и объясняются возможные различия в пространственных областях, занятых текстом, в разных проекциях.
Маски объектов-аннотаций являются специфичными для шрифта. При использовании масок с текстом убедитесь, что для отображения используется тот же шрифт, что и для выходных объектов. Для этого выберите встроенные шрифты в векторных выходных данных или загрузите SoftFonts для принтеров и плоттеров.
Одновременная обработка больших наборов данных дорог может вызвать превышение ограничений использования оперативной памяти. В таком случае попытайтесь разделить входные данные на части, определив соответствующий полигональный класс пространственных объектов с помощью параметра среды Картографические разделы. Части данных, разделенные между собой границами разделов, будут последовательно обрабатываться отдельно друг от друга. Выходные классы объектов будут бесшовными и единообразными между границами разделов.
Маски будут созданы на основе текущего поворота карты и могут быть недействительными, если карта настроена на другой поворот после создания маски.
Параметры
arcpy.cartography.IntersectingLayersMasks(masking_layer, masked_layer, output_fc, reference_scale, spatial_reference, margin, method, mask_for_non_placed_anno, {attributes})
Имя | Описание | Тип данных |
masking_layer | Изображаемый исходный слой, который будет пересекаться с маскируемым слоем для создания маскирующих полигонов. Этот слой будет отображаться, после того как к маскируемому слою будет применено маскирование. | Layer |
masked_layer | Изображаемый входной слой, для которого будут создаваться маски. Этот слой будет скрыт маскирующими полигонами. | Layer |
output_fc | Класс пространственных объектов, который будет содержать объекты маски. | Feature Class |
reference_scale | Базовый масштаб, который будет использоваться для вычисления маскирующей геометрии, когда маски указываются в единицах страницы. Как правило, это базовый масштаб карты. | Double |
spatial_reference | Пространственная привязка карты, в которой будут использованы маскирующие полигоны. Это не пространственная привязка, которая будет назначена выходному классу пространственных объектов. Это пространственная привязка карты, в которой будут использованы маскирующие полигоны, поскольку местоположение символов может быть изменено при проецировании объектов. | Spatial Reference |
margin | Пространство в единицах страницы, окружающее условные обозначения входных объектов, используется для создания маскирующих полигонов. Как правило, маскирующие полигоны создаются с небольшим буферным расстоянием вокруг символа, чтобы улучшить внешний вид карты. Значения буферного расстояния указываются в единицах карты или в единицах страницы. Чаще всего значения буферного расстояния указаны в единицах страницы. Поле не может быть отрицательным. | Linear Unit |
method | Задает тип геометрии создаваемой маски.
| String |
mask_for_non_placed_anno | Указывает, надо ли создавать маски для неразмещенных аннотаций. Этот параметр используется только для маскирования слоев аннотаций в базе геоданных.
| String |
attributes (Дополнительный) | Определяет, какие атрибуты будут перенесены из входных объектов в выходные.
| String |
Пример кода
В следующем скрипте окна Python показано, как используется функция IntersectingLayersMasks в режиме прямого запуска.
import arcpy
arcpy.cartography.IntersectingLayersMasks("C:/data/cartography.gdb/transportation/roads",
"C:/data/cartography.gdb/transportation/railroads",
"C:/data/cartography.gdb/transportation/ilm_polys",
"25000", "", "5 meters", "EXACT_SIMPLIFIED", "", "ALL")
Этот автономный скрипт демонстрирует пример использования функции IntersectingLayersMasks.
# Name: IntersectingLayersMasks_standalone_script.py
# Description: Creates masking polygons at a specified
# shape and size at the intersections of symbolized features.
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data"
# Set local variables
masking_layer = "roads.lyrx"
masked_layer = "buildings_poly.lyrx"
outpuf_fc = "cartography.gdb/transportation/ilm_polys"
reference_scale = "25000"
spatial_reference = arcpy.Describe(masking_layer).spatialReference
margin = "5 Points"
method = "CONVEX_HULL"
mask_for_non_placed_anno = "ALL_FEATURES"
attributes = "ALL"
# Execute Intersecting Layers Masks
arcpy.IntersectingLayersMasks_cartography(masking_layer,
masked_layer,
output_fc,
reference_scale,
spatial_reference,
margin, method,
mask_for_non_placed_anno,
attributes)
Параметры среды
Информация о лицензиях
- Basic: Нет
- Standard: Нет
- Advanced: Да