构建轮廓 (Data Management)
摘要
计算镶嵌数据集中每个栅格数据集的轮廓线。
用法
-
如果进行了选择,则仅重新计算那些所选的轮廓线。
-
轮廓线用于计算边界。如果修改沿镶嵌数据集周长方向的轮廓线的形状,则需要重新计算边界。如果不选择使用此工具,则可稍后使用构建边界工具。
-
不能为引用的镶嵌数据集重新构建轮廓线。
-
近似折点数参数用于定义轮廓线的复杂程度。折点数越多意味着轮廓线越精确且越不规则。有效值介于 4 到 10000 之间。可以将该值设置为 -1(这样就不会发生制图综合),但这可能意味着轮廓线具有大量折点。
语法
参数 | 说明 | 数据类型 |
in_mosaic_dataset |
将对其计算轮廓线的镶嵌数据集。 | Mosaic Layer |
where_clause (可选) |
可以使用 SQL 定义查询,或者使用查询构建器构建查询。 | SQL Expression |
reset_footprint (可选) |
选择当重新定义轮廓线时要使用的方法。
| Boolean; String |
min_data_value (可选) |
表示有效图像数据的最低像素值。该值取决于栅格数据集的位深度。 例如,对于 8 位数据,该值可介于 0 到 255 之间。近似于 0 的值表示非常暗的颜色,如黑色边框像素。将该值指定为 1 时,小于 1 的值只有 0,因此,所有 0 值都将被视作无效的数据,并从轮廓线的周长中移除。如果使用有损压缩方法压缩影像,则应定义一个稍大于 1 的值,以便移除所有黑色像素。当发现错误地从轮廓线中移除黑色区域(如阴影)后,应减少该值。 | Double |
max_data_value (可选) |
表示有效数据的最高值。该值取决于栅格数据集的位深度。 例如,对于 8 位数据,该值可介于 0 到 255 之间。近似于 255 的值表示非常亮的颜色,如白云和雪。如果将该值指定为 245,则所有介于 246 和 255 之间的值都会从轮廓线的周长移除。 | Double |
approx_num_vertices (可选) |
创建新轮廓线面要使用的近似折点数。 最小值为 4,最大值为 10,000。该值越大,面越精确且越不规则,处理时间也越长。 值为 -1 时将在轮廓线中显示所有折点,这样就不会概化面轮廓线。 | Long |
shrink_distance (可选) |
以镶嵌数据集的坐标系单位指定的表示整个面的减小幅度的距离值。 面的收缩用于抵消有损压缩的影响,这会导致图像边缘与 NoData 区域重叠。 | Double |
maintain_edges (可选) |
在使用已分块且对接(或沿着接边对齐且基本没有重叠)的栅格数据集时使用此参数。
| Boolean |
skip_derived_images (可选) |
调整派生图像(如服务金字塔)的轮廓线。
| Boolean |
update_boundary (可选) |
生成或更新镶嵌数据集的边界面。默认情况下,边界会合并所有轮廓线面以创建一个表示有效像素范围的边界。
| Boolean |
request_size (可选) |
使用此工具检查栅格时对栅格进行重采样的大小。该值(如 2,000)使用行和列定义尺寸。 可以基于栅格数据的复杂程度增大或减小该值。图像分辨率越高,提供的栅格数据集信息越详细,因而也增加了处理时间。 值为 -1 时将不对轮廓线进行重新取样,这样就将以原像素大小计算轮廓线。 请求大小不能超过轮廓线所包含的栅格。如果出现这种情况,则值将自动变为与栅格大小相同。 | Long |
min_region_size (可选) |
确定一个用来移除轮廓线中所创建的孔洞的过滤器。 该值按像素指定,直接与“请求大小”相关,而与源栅格的像素分辨率无关。 | Long |
simplification_method (可选) | 简化操作会减少折点的数量,因为密集的轮廓线可能会影响显示性能。 选择简化轮廓线所使用的方法。
| String |
edge_tolerance (可选) |
容差值以镶嵌数据集的坐标系单位指定,小于该容差值时,轮廓线将捕捉到页边缘。当 maintain_edges 设置为 MAINTAIN_EDGES 时使用此容差值。 默认情况下,基于与请求的重采样栅格对应的像素大小计算出来的容差值为空。 值为 -1 时,将使用镶嵌数据集的平均像素大小来计算容差。 | Double |
代码实例
这是 BuildFootprints 工具的 Python 示例。
import arcpy
arcpy.BuildFootprints_management(
"c:/data/Footprints.gdb/md", "#","RADIOMETRY",
"1", "254", "25", "0", "#", "SKIP_DERIVED_IMAGES",
"UPDATE_BOUNDARY", "#", "#", "CONVEX_HULL")
这是 BuildFootprints 工具的 Python 脚本示例。
# Build Footprint by setting the valid pixel value range from 1 to 254
# Allow 25 vertices to be used to draw a single footprint polygon
# Skip the overviews image
# Build new boundary afterwards
# Build footprints based on minimum bounding geometry
import arcpy
arcpy.env.workspace = "C:/Workspace"
mdname = "Footprints.gdb/md"
query = "#"
method = "RADIOMETRY"
minval = "1"
maxval = "254"
nvertice = "25"
shrinkdis = "0"
maintainedge = "#"
skipovr = "SKIP_DERIVED_IMAGES"
updatebnd = "UPDATE_BOUNDARY"
requestsize = "#"
minregsize = "#"
simplify = "#"
arcpy.BuildFootprints_management(
mdname, query, method, minval, maxval, nvertice, shrinkdis,
maintainedge, skipovr, updatebnd, requestsize, minregsize,
simplify)