创建镶嵌图层 (Data Management)

许可等级:BasicStandardAdvanced

摘要

根据镶嵌数据集或图层文件创建临时镶嵌图层。该工具创建的图层是临时图层,如果不将此图层保存到磁盘或保存地图文档,该图层在会话结束后将不会继续存在。

此工具可用来创建临时图层,这样便可以对镶嵌数据集内的指定波段子集进行处理。

用法

语法

MakeMosaicLayer_management (in_mosaic_dataset, out_mosaic_layer, {where_clause}, {template}, {band_index}, {mosaic_method}, {order_field}, {order_base_value}, {lock_rasterid}, {sort_order}, {mosaic_operator}, {cell_size})
参数说明数据类型
in_mosaic_dataset

输入镶嵌数据集的路径和名称。

Mosaic Layer
out_mosaic_layer

临时输出镶嵌图层的名称。

Mosaic Layer
where_clause
(可选)

使用镶嵌数据集的字段和值的查询语句。

SQL Expression
template
(可选)

您可以使用 x 最小值、y 最小值、x 最大值或 y 最大值指定输出镶嵌图层的范围。

Extent
band_index
[ID,...]
(可选)

选择要为图层输出哪些波段。如果未指定波段,则输出中将使用所有波段。

Value Table
mosaic_method
(可选)

选择镶嵌方法。镶嵌方法定义了如何使用镶嵌数据集中的不同栅格数据来创建图层。

  • CLOSEST_TO_CENTER根据栅格中心与视图中心的距离对栅格数据进行排序,与视图中心距离越近,栅格数据的次序越靠前。
  • NORTH_WEST根据栅格中心与西北方向的距离对栅格数据进行排序,与西北方向距离越近,栅格数据的次序越靠前。
  • LOCK_RASTER允许用户根据 ID 或名称锁定单个或多个栅格数据的显示。选择此选项后,需要指定锁定栅格的 ID。
  • BY_ATTRIBUTE根据属性字段及其与基础值的差异对栅格数据进行排序。选择此选项后,还需要设置排序字段和排序基础值参数。
  • CLOSEST_TO_NADIR根据像底点与视图中心的距离对栅格数据进行排序,像底点与视图中心的距离越近,栅格数据的次序越靠前。像底点可以不同于中心点,尤其是在倾斜的影像数据中。
  • CLOSEST_TO_VIEWPOINT根据像底点与用户定义的视点之间的距离对栅格数据进行排序,像底点与视点距离越近,栅格数据的次序越靠前。
  • SEAMLINE使用预定义的接缝线形状分割栅格,并且可以选择是否沿接边使用羽化功能。在生成接缝线的过程中对排序进行预定义。使用此镶嵌方法时,最后一个镶嵌运算符无效。
String
order_field
(可选)

选择排序字段。如果镶嵌方法为 BY_ATTRIBUTE,则需要设置排序栅格时所要使用的默认字段。根据服务表中类型为元数据的字段来定义字段列表。

String
order_base_value
(可选)

输入排序基础值。根据此值与指定字段中的属性值之间的差异对影像(栅格数据)进行排序。

String
lock_rasterid
(可选)

选择将服务锁定到哪个栅格 ID 或栅格名称,以便只显示指定的栅格。如果未定义,将遵循系统默认设置。可使用分号分隔的列表定义多个 ID。

String
sort_order
(可选)

选择排序顺序是升序还是降序。

  • ASCENDING排序顺序将为升序。这是默认设置。
  • DESCENDING排序顺序将为降序。
String
mosaic_operator
(可选)

选择要使用的镶嵌运算符。如果两个或更多栅格全部具有相同的排序优先级,则可使用此参数来进一步细化排序顺序。

  • FIRST列表中第一个栅格的次序将最为靠前。这是默认设置。
  • LAST列表中最后一个栅格的次序将最为靠前。
  • MIN值越低的栅格次序越靠前。
  • MAX值越低的栅格次序越靠前。
  • MEAN平均像素值的次序将最为靠前。
  • BLEND通过对值进行融合来获得输出像元值;该融合结果依据算法得出,该算法基于权重且与重叠区域内各像素到边缘的距离相关。
String
cell_size
(可选)

输出镶嵌图层的像元大小。

Double

代码实例

MakeMosaicLayer 示例 1(Python 窗口)

这是 MakeMosaicLayer 的 Python 示例。

import arcpy
arcpy.MakeMosaicLayer_management("c:/data/fgdb.gdb/mdsrc", "mdlayer2", "", \
                                 "clipmd.shp", "3;2;1", "BY_ATTRIBUTE",\
                                 "Tag", "Dataset", "", "DESCENDING", "LAST", "10")
MakeMosaicLayer 示例 2(独立脚本)

这是 MakeMosaicLayer 的 Python 脚本示例。

##====================================
##Make Mosaic Layer
##Usage: MakeMosaicLayer_management(in_mosaic_dataset, out_mosaic_layer, {where_clause},
##                                  {template}, {ID;ID...}, {mosaic_method}, {order_field},
##                                  {order_base_value}, {lock_rasterid}, {ASCENDING | DESCENDING},
##                                  {FIRST | LAST | MIN | MAX | MEAN | BLEND}, {cell_size})
    
try:
    import arcpy
    
    arcpy.env.workspace = "C:/workspace"
    
    # Create Mosaic Layer with selection and Lock Raster mosaic method
    arcpy.MakeMosaicLayer_management("fgdb.gdb/mdsrc", "mdlayer", "OBJECTID<10",\
                                     "", "", "LOCK_RASTER", "", "", "5",\
                                     "ASCENDING", "FIRST")
    
    # Create Mosaic Layer with band extraction and clip template
    # Also assign a cell size value to the mosaic layer 
    arcpy.MakeMosaicLayer_management("fgdb.gdb/mdsrc", "mdlayer2", "", \
                                     "clipmd.shp", "3;2;1", "BY_ATTRIBUTE",\
                                     "Tag", "Dataset", "", "DESCENDING", "LAST", "10")
    
except:
    print "Make Mosaic Layer exsample failed."
    print arcpy.GetMessages()

环境

许可信息

ArcGIS for Desktop Basic: 是
ArcGIS for Desktop Standard: 是
ArcGIS for Desktop Advanced: 是
5/10/2014