标注 | 说明 | 数据类型 |
输入图层 | 创建掩膜所使用的符号化输入图层。 | Annotation Layer |
输出要素类 | 含有掩膜要素的要素类。 | Feature Class |
参考比例 | 在使用页面单位指定掩膜时,将用于计算掩膜几何的参考比例。 该比例通常是地图的参考比例。 | Double |
计算坐标系 | 将创建掩膜面的地图的空间参考。 该空间参考不是要分配给输出要素类的空间参考。 它是地图的空间参考;由于投影要素时,符号系统的位置可能发生变化,所以在该空间参考内将使用掩膜面。 | Spatial Reference |
边距 | 在用于创建掩膜面的符号化输入要素周围的间距(使用页面单位)。 通常,创建掩膜面时,在符号的周围留有小边距,以提高显示效果。 边距值可使用页面单位或地图单位指定。 边距值不能为负。 | Linear Unit |
掩膜类型 | 指定要创建的掩膜几何类型。
| String |
为未放置的注记创建掩膜 | 指定是否为未放置的注记创建掩膜。 该参数仅在对地理数据库注记图层执行掩膜操作时使用。
| String |
传递属性 (可选) | 指定将从输入要素传递到输出要素的属性。
| String |
保留小尺寸要素 (可选) | 指定是否将在输出要素类中包含小型掩膜要素。
| Boolean |
使用情况
该工具接受点、线和面要素图层以及地理数据库注记图层作为输入。
向地图添加掩膜将增加地图的复杂性,从而降低地图的绘制速度并影响最终的打印和导出。 通常,为地图创建掩膜时要考虑三个方面:掩膜的数量、掩膜的复杂性,以及是否用于对用标记或线符号填充的面要素执行掩膜操作。 所有这些操作都将导致屏幕上的绘制速度降低。 此外,打印和导出两种操作的性能也会变得很糟,甚至无法生成有效的输出。 这是因为打印并导出含有掩膜的地图需要执行处理操作;而且如何使用图形文件格式存储具有许多复杂掩膜的地图导出结果受到已知的限制。
如需提高绘图性能、打印和导出性能以及可靠性,请根据地图的用途,使用必要的而且是最简单的掩膜。 特别是使用掩膜类型参数对注记文本执行掩膜操作时,凸多边形选项足以实现许多地图用途。 如果需要更为详细的文本掩膜,请使用精确简化选项。 在相对较大的地图上对大量文本执行掩膜操作时,应避免使用精确选项,因为该类型的掩膜会创建过多的复杂掩膜以至于无法高效地生成有效的输出。
默认情况下,此工具会从输出中过滤出非常小的掩码要素。 将删除在地图参考比例下不可见的小型掩膜,以创建便于管理的高效输出要素类。 如果工作流程需要非常小型的掩膜,请选中保留小尺寸要素参数,不论大小、保留输出要素类中的所有掩膜。 许多小型掩膜会增加地图和地图输出的复杂性。
边距值通常使用页面单位指定,但也接受地图单位。
通常,边距大于 0。 如果边距大小为 0,将创建表示符号化要素的确切形状的掩膜。
如果输入图层是注记图层,则参考比例将自动设置为图层的要素类的参考比例,以确保掩膜计算的准确性。
对动态投影的注记执行掩膜操作时,应通过计算坐标系参数对地图的空间参考进行适当的设置,然后利用地图的空间参考来创建掩膜。 对文本进行动态投影时,保留了可读性,所以在不同的投影中,文本所在的空间区域可能存在差异。
注记要素的掩膜是字体特定的。 使用含文本的掩膜时,要保证屏幕上和输出中使用的字体相同。 为此,请将字体嵌入到矢量输出中或下载 SoftFonts 到打印机或绘图机。
将基于当前地图旋转来创建掩膜,在创建掩膜后,如果将地图设置为不同的旋转,则掩膜可能无效。
参数
arcpy.cartography.FeatureOutlineMasks(input_layer, output_fc, reference_scale, spatial_reference, margin, method, mask_for_non_placed_anno, {attributes}, {preserve_small_sized_features})
名称 | 说明 | 数据类型 |
input_layer | 创建掩膜所使用的符号化输入图层。 | Annotation 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 |
preserve_small_sized_features (可选) | 指定是否将在输出要素类中包含小型掩膜要素。
| Boolean |
代码示例
以下 Python 窗口脚本演示了如何在即时模式下使用 FeatureOutlineMasks 函数。
import arcpy
arcpy.env.workspace = "C:/data"
sr = arcpy.SpatialReference(4326)
arcpy.cartography.FeatureOutlineMasks("C:/data/cartography.gdb/transportation/roads",
"C:/data/cartography.gdb/transportation/fom_polys",
"25000", sr, "5 meters","EXACT_SIMPLIFIED",
"ALL_FEATURES", "ALL")
此独立脚本显示的是使用 FeatureOutlineMasks 函数的示例。
# Name: FeatureOutlineMasks_standalone_script.py
# Description: Creates mask polygons at a specified distance and shape
# around symbolized features.
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data"
# Set local variables
input_layer = "roads.lyrx"
output_fc = "cartography.gdb/transportation/roads_fom_polys"
reference_scale = "25000"
spatial_reference = arcpy.SpatialReference(4326)
margin = "5 meters"
method = "EXACT_SIMPLIFIED"
mask_for_non_placed_anno = "ONLY_PLACED"
attributes = "ALL"
# Execute Feature Outline Masks
arcpy.FeatureOutlineMasks_cartography(input_layer,
output_fc,
reference_scale,
spatial_reference,
margin, method,
mask_for_non_placed_anno,
attributes)
环境
许可信息
- Basic: 否
- Standard: 否
- Advanced: 是