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