标注 | 说明 | 数据类型 |
输入图层 | 使用标记放置进行符号化的面图层。 | Layer |
输出要素类 | 包含根据输入图层标记放置设置中的标记创建的点的点要素类。 点将作为图层添加到活动地图中,并使用输入中的符号通过唯一值渲染器进行符号化。 | Feature Class |
创建多点 (可选) | 指定输出点要素是否为多点。
| Boolean |
边界选项 (可选) | 指定是否为跨越面边界的输入标记创建输出点。
| String |
边界距离 (可选) | 输出点符号与面边界之间的最小距离。 仅当边界选项参数设置为固定距离时,才应用此参数。 默认值为 0。 | Double |
边界距离字段 (可选) | 输入面中的数值字段,用于确定边界距离。 仅当边界选项参数设置为字段值时,才应用此参数。 | Field |
边界距离单位 (可选) | 指定用于边界距离值的线性单位。
| String |
输入障碍图层 (可选) | 包含作为输入标记的冲突障碍的点、线或面要素所在的图层。 不会创建与障碍冲突的标记。 将考虑障碍图层的符号系统。
| Value Table |
保留至少一个标记 (可选) | 指定当所有标记与边界或障碍冲突时是否为输入面创建单个标记。
| Boolean |
移位方法 (可选) | 指定将用于移动彼此太靠近的标记的位移方法。 仅当标记随机放置在面内时才应用此参数。
| String |
最小标记距离 (可选) | 各标记间的最小距离。 仅当标记随机放置在面内时才应用此参数。 默认值为 0。 | Linear Unit |
摘要
根据符号化面要素中标记放置的标记创建点。
插图
使用情况
该工具可评估符号化要素的图形冲突,以确定哪些标记将包含在输出中。 符号系统范围和参考比例均被使用。 仅在以下操作结束后再运行此工具:确定符号的外观,并且确保参考比例与所需的最终输出比例相对应。
输出的默认坐标系与当前地图视图相同。 要使用不同的坐标系,请使用制图坐标系环境设置。 当该工具在没有活动地图的脚本环境中运行时,将使用输入要素的坐标系。
输入图层仅支持单一符号和唯一值符号系统。 将遵循输入图层中保存的属性映射设置。
指定保留至少一个标记参数后,将创建一个日志文件,其中列出了为其创建单个标记的输入要素,否则该标记将被忽略。 日志文件的位置包含在地理处理消息详细信息中。
将为输入符号中每个支持的标记图层创建点。 为了确保将复杂的多图层标记视为单个实体并在输出中创建为单个点,首先将符号创建为点符号并将其保存到样式。 然后,在符号系统窗格的图层选项卡上,使用外观设置中的样式按钮来设置样式中的标记符号。
当至少一个标记图层使用随机放置时,可以使用位移方法和最小标记距离参数。 使用这些参数可以解决重叠标记之间的冲突并保持它们之间的最小距离。 分开移位选项可将标记彼此远离,直到达到最小距离,并在必要时删除标记以避免冲突。 向格网移位选项将移动标记,直到达到最小距离或到达原始网格位置。 使用向格网移动选项不会删除任何标记。
参数
arcpy.cartography.ConvertMarkerPlacementToPoints(in_layer, out_feature_class, {create_multipoints}, {boundary_option}, {boundary_distance}, {boundary_distance_field}, {boundary_distance_unit}, {in_barriers}, {keep_at_least_one_marker}, {displacement_method}, {minimum_marker_distance})
名称 | 说明 | 数据类型 |
in_layer | 使用标记放置进行符号化的面图层。 | Layer |
out_feature_class | 包含根据输入图层标记放置设置中的标记创建的点的点要素类。 点将作为图层添加到活动地图中,并使用输入中的符号通过唯一值渲染器进行符号化。 | Feature Class |
create_multipoints (可选) | 指定输出点要素是否为多点。
| Boolean |
boundary_option (可选) | 指定是否为跨越面边界的输入标记创建输出点。
| String |
boundary_distance (可选) | 输出点符号与面边界之间的最小距离。 仅当 boundary_option 参数设置为 FIXED_DISTANCE 时,才应用此参数。 默认值为 0。 | Double |
boundary_distance_field (可选) | 输入面中的数值字段,用于确定边界距离。仅当 boundary_option 参数设置为 VALUE_FROM_FIELD 时,才应用此参数。 | Field |
boundary_distance_unit (可选) | 指定用于边界距离值的线性单位。
| String |
in_barriers [[barrier_layer, {barrier_distance}, {barrier_distance_field}, {barrier_distance_unit}],...] (可选) | 包含作为输入标记的冲突障碍的点、线或面要素所在的图层。 不会创建与障碍冲突的标记。 将考虑障碍图层的符号系统。
| Value Table |
keep_at_least_one_marker (可选) | 指定当所有标记与边界或障碍冲突时是否为输入面创建单个标记。
| Boolean |
displacement_method (可选) | 指定将用于移动彼此太靠近的标记的位移方法。 仅当标记随机放置在面内时才应用此参数。
| String |
minimum_marker_distance (可选) | 各标记间的最小距离。 仅当标记随机放置在面内时才应用此参数。 默认值为 0。 | Linear Unit |
代码示例
以下 Python 窗口脚本演示了如何在即时模式下使用 ConvertMarkerPlacementToPoints 函数。
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.env.referenceScale = 5000
arcpy.cartography.ConvertMarkerPlacementToPoints("parks.lyrx", "cartography.gdb/tree_markers")
此独立脚本显示的是使用 ConvertMarkerPlacementToPoints 函数的示例。
# Name: ConvertMarkerPlacementToPoints_standalone_script.py
# Description: Converts markers in a marker placement into point features.
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
env.referenceScale = "5000"
# Set local variables
in_layer = "parks.lyrx"
out_feature_class = "cartography.gdb/tree_markers"
create_multipoints = "CREATE_MULTIPOINTS"
boundary_option = "VALUE_FROM_FIELD"
boundary_distance = ""
boundary_distance_field = "distance"
boundary_distance_unit = "Points"
in_barriers = [["roads.lyrx", 1, "", "Points"],["rivers.lyrx", 0, "distance", "Points"]]
keep_at_least_one_marker = "KEEP_AT_LEAST_ONE_MARKER"
displacement_method = "DISPLACE_APART"
minimum_marker_distance = "2 Points"
arcpy.cartography.ConvertMarkerPlacementToPoints(in_layer,
out_feature_class,
create_multipoints,
boundary_option,
boundary_distance,
boundary_distance_field,
boundary_distance_unit,
in_barriers,
keep_at_least_one_marker,
displacement_method,
minimum_marker_distance
)
许可信息
- Basic: 否
- Standard: 否
- Advanced: 是