Сводка
Создает полигональные маски для класса пространственных объектов из входного линейного слоя с условными обозначениями.
Использование
Этот инструмент только создает маски на концах линий, которые не соединяются (в тупиках). Конец линии считается соединенным, если его конечная точка является общей с конечной точкой другой линии. Для данного инструмента входными объектами могут быть только линейные слои.
Этот инструмент используется для создания масок на концах линий в случаях, когда для линий задано условное обозначение с закругленными концами для сглаживания переходов в местах соединения линий. Линии могут оканчиваться как закругленными концами, так и использовать маскирующие полигоны, созданные с помощью данного инструмента.
Как правило, поля больше, чем 0. Если оно будет равно 0, будут созданы маски, представляющие реальную форму условных знаков объектов. При отрицательном значении полей будут созданы маски, меньшие по размеру, нежели размеры символов.
Если входной линейный слой содержит составную линейную геометрию, маски тупиков создаются для всех конечных точек линии без соединений, в том числе и для окончаний частей составных линейных объектов.
При создании масок важно знать, что добавление масок к карте является сложным процессом, который замедляет прорисовку карты и сказывается на процессах печати и экспорта карты. В общем, при создании масок для карты необходимо учитывать три вещи: количество масок, сложность масок и будут ли они использоваться для маскирования полигональных объектов, заполненных маркерами или линейными символами. Увеличение количества масок, использование более сложных масок, а также маскирование по символам заполнения маркеров или полигонов ведет к замедлению отрисовки карты на экране. Кроме того, производительность печати и экспорта может снизиться или вовсе не давать правильного результата. Это связано с большим объемом обработки, необходимой для печати и экспорта карт с масками, а также из-за известных ограничений в том, как форматы графических файлов хранят результаты экспорта карт, которые имеют много сложных масок.
Значения буферного расстояния указываются в единицах карты или в единицах страницы. В большинстве случаев вы будете указывать значение буферного расстояния в единицах страницы.
Единицы буферного расстояния воспринимаются по-разному, в зависимости от выбранных единиц измерения. Если вы выберете точки, дюймы, миллиметры или сантиметры, маски будут созданы с учетом буферного расстояния, вычисленного в единицах страницы (вы можете представить его как расстояние, измеренное на бумаге). В этом расчете учитывается значение параметра базового масштаба.
Если вы выберете любые другие единицы измерений для буферного расстояния, то маски будут создаваться с учетом буферного расстояния, вычисленного в единицах карты (вы можете думать об этом буферном расстоянии как о реально измеренном расстоянии на поверхности Земли. Также, в этом случае, значение параметра базового масштаба не используется в процессе вычислений.
Синтаксис
arcpy.cartography.CulDeSacMasks(input_layer, output_fc, reference_scale, spatial_reference, margin, {attributes})
Параметр | Объяснение | Тип данных |
input_layer | Входной слой линейных объектов, из которого будут созданы маски. | Layer |
output_fc | Класс пространственных объектов, который будет содержать объекты маски. | Feature Class |
reference_scale | Базовый масштаб используется для вычисления маскирующей геометрии, когда маски указываются в единицах страницы. Как правило, это базовый масштаб карты. | Double |
spatial_reference | Пространственная привязка карты, в которой будут созданы маскирующие полигоны. Это не пространственная привязка, которая будет назначена выходному классу пространственных объектов. Это пространственная привязка карты, в которой будут использованы маскирующие полигоны, поскольку при проецировании объектов местоположение символов может измениться. | Spatial Reference |
margin | Пространство в единицах страницы, окружающее обозначенные входные объекты, которые используются для создания маскирующих полигонов. Как правило, маскирующие полигоны создаются с небольшим буферным расстоянием вокруг символа, чтобы улучшить внешний вид карты. Значения буферного расстояния указываются в единицах карты или в единицах страницы. В большинстве случаев вы будете указывать значение буферного расстояния в единицах страницы. | Linear Unit |
attributes (Дополнительный) | Определяет атрибуты, которые будут перенесены из входных объектов в выходные объекты.
| String |
Пример кода
CulDeSacMasks, пример 1 (окно Python)
Следующий скрипт окна Python показывает, как использовать инструмент CulDeSacMasks в режиме прямого запуска.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.CulDeSacMasks_cartography("C:/data/cartography.gdb/transportation/roads",
"C:/data/cartography.gdb/transportation/cds_polys",
"25000", "", "5 meters", "ALL")
CulDeSacMasks, пример 2 (автономный скрипт)
В этом автономном скрипте показан пример использования инструмента CulDeSacMasks.
# Name: CulDeSacMasks_standalone_script.py
# Description: Creates masks at the unconnected ends of lines in the input layer.
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
input_layer = "C:/data/cartography.gdb/transportation/roads"
outpuf_fc = "C:/data/cartography.gdb/transportation/cds_polys"
reference_scale = "25000"
spatial_reference = x
margin = "5 meters"
attributes = "ALL"
# Execute Cul De Sac Masks
arcpy.CulDeSacMasks_cartography(input_layer, output_fc, reference_scale, spatial_reference, margin, attributes)
Параметры среды
Информация о лицензиях
- Basic: Нет
- Standard: Нет
- Advanced: Да