描述
同步镶嵌数据集以使其保持最新状态。 除同步数据外,还可更新概视图(如果基础影像发生更改)、生成新的概视图和缓存以及恢复镶嵌数据集项目的原始配置。 您也可使用此工具移除源数据的路径。 要修复路径,请使用修复镶嵌数据集路径工具。
同步是一个单向操作:可将源数据的更改同步到镶嵌数据集的属性表,从而更新镶嵌数据集的属性表。 镶嵌数据集属性表的更改不会影响源数据。
使用方法
可以将选择集用于此工具,用以限制待更新的栅格项目。 如果进行选择或查询,则仅处理这些项目。
同步可以添加新项目、更新现有项目或移除项目。
过时项目是指自镶嵌数据集创建以来或上次同步镶嵌数据集后更改的源栅格。 例如,可能已更新地理配准,或者可能已构建金字塔。
由于栅格项目已重新构建,因此自上次构建以来对这些项目所做的任何修改(例如编辑属性表中的函数或内容)都会丢失。
如果移除数据源已损坏的项目,请确保所有网络连接正常工作。 此工具会移除无法访问的所有项目。
此工具还可对源栅格构建金字塔和计算统计数据,并可为栅格项目创建缩略图和栅格缓存。
此工具对于使镶嵌数据集保持最新状态特别有用。 如果新的栅格数据集已添加至此镶嵌数据集访问的工作空间,则新的栅格数据集就可以添加到镶嵌数据集中。 用外部托管数据库中的表填充的镶嵌数据集也可以使用此工具进行更新。
要使用刷新聚合信息参数,请取消选中更新现有项目参数。 对于多维镶嵌数据集,刷新聚合信息参数将基于镶嵌数据集的属性表中的内容来刷新镶嵌的多维属性。
此工具可用于为镶嵌数据集中的项目生成缓存。 始终可以进行缓存的项目可使用以下数据进行创建:.las 文件、LAS 数据集和 terrain。 项目也可以使用缓存栅格函数进行缓存。
数据库碎片和频繁的数据操纵可显著增大镶嵌数据集的大小。如果由于恒定事务导致数据库膨胀,请运行数据库碎片整理工具。
语法
arcpy.management.SynchronizeMosaicDataset(in_mosaic_dataset, {where_clause}, {new_items}, {sync_only_stale}, {update_cellsize_ranges}, {update_boundary}, {update_overviews}, {build_pyramids}, {calculate_statistics}, {build_thumbnails}, {build_item_cache}, {rebuild_raster}, {update_fields}, {fields_to_update}, {existing_items}, {broken_items}, {skip_existing_items}, {refresh_aggregate_info}, estimate_statistics)
参数 | 说明 | 数据类型 |
in_mosaic_dataset | 将同步的镶嵌数据集。 | Mosaic Layer |
where_clause (可选) | 用于选择要同步的镶嵌数据集项目的 SQL 表达式。 如果不提供表达式,将更新所有数据集项目。 | SQL Expression |
new_items (可选) | 指定同步时是否包含新项目,以及用于更新新项目的选项。 如果使用此选项,则将为新数据搜索项目的工作空间。 当数据添加到镶嵌数据集后,其使用的栅格类型将与同一工作空间内的其他项目相同。
| Boolean |
sync_only_stale (可选) | 指定是否仅在基础栅格数据集已因同步而被修改时才更新镶嵌数据集项目。 例如,构建金字塔或更新栅格的地理配准将影响概视图的渲染方式。
| Boolean |
update_cellsize_ranges (可选) | 指定是否重新计算镶嵌数据集的像元大小范围。
| Boolean |
update_boundary (可选) | 指定是否重建显示镶嵌数据集全图边界。 如果同步将更改镶嵌数据集的范围,则选择 UPDATE_BOUNDARY。
| Boolean |
update_overviews (可选) | 指定是否更新废弃的概视图。 如果有任何基础栅格因同步而发生更改,概视图则会被废弃。
| Boolean |
build_pyramids (可选) | 指定是否为指定的镶嵌数据集项构建金字塔。 可以为镶嵌数据集中的每个栅格项目构建金字塔。 金字塔可以提高每个栅格的显示速度。
不会为因同步而添加的项目构建金字塔。 | Boolean |
calculate_statistics (可选) | 指定是否为指定的镶嵌数据集项计算统计数据。 在执行某些任务时(如应用对比度拉伸),需要对镶嵌数据集进行统计。
不会为因同步而添加的项目计算统计数据。 | Boolean |
build_thumbnails (可选) | 指定是否为指定的镶嵌数据集项构建缩略图。 缩略图是可为镶嵌定义中的每个栅格项目创建的较小的高度重采样图像。 可在以影像服务形式访问镶嵌数据集时访问缩略图,缩略图将显示为项目描述的一部分。
不会为因同步而添加的项目构建缩略图。 | Boolean |
build_item_cache (可选) | 指定是否为指定的镶嵌数据集项构建缓存。 在使用 LAS、Terrain 或 LAS 数据集栅格类型添加数据时,可以构建缓存。 项目也可以使用缓存栅格函数进行缓存。
不会为因同步而添加的项目构建缓存。 | Boolean |
rebuild_raster (可选) | 指定是否使用原始栅格类型从数据源重新构建栅格项目。
此操作仅影响要同步的项目。 仅当 new_items 参数设置为 UPDATE_WITH_NEW_ITEMS 时,此参数不适用。 | Boolean |
update_fields (可选) | 指定是否将更新表中的字段。 此操作仅影响要同步的项目。
如果更新字段,可以控制通过 fields_to_update 参数更新哪些字段。 如果已编辑某些字段,则可以在 fields_to_update 参数中将其移除。 | Boolean |
fields_to_update [field_to_update,...] (可选) | 将更新的字段。 仅当 update_fields 参数设置为 UPDATE_FIELDS 时,该参数才有效。 如果已编辑某些字段,则需要确保不列出它们。 即使未指定 REBUILD_RASTER,也可刷新 RASTER 字段。 但是,如果已指定 REBUILD_RASTER,则即使未指定 fields_to_update 字段,也会重新构建 RASTER 字段。 | String |
existing_items (可选) | 指定是否要在镶嵌数据集内更新现有项目。 如果使用此参数,则需要选择要更新的现有参数:sync_only_stale、build_pyramids、calculate_statistics、build_thumbnails、build_item_cache、update_fields 或 fields_to_update。
| Boolean |
broken_items (可选) | 指定是否移除链接已损坏的项目。 确保所有网络连接正常工作。 此工具会移除无法访问的所有项目。
| Boolean |
skip_existing_items (可选) | 指定是跳过现有镶嵌数据集项目,还是使用磁盘上的已修改文件进行更新。 要使用此参数,必须将 new_items 参数设置为 UPDATE_WITH_NEW_ITEMS。
| Boolean |
refresh_aggregate_info (可选) | 指定是否包含已从镶嵌数据集中移除的数据。 要使用此参数,必须将 existing_items 参数设置为 IGNORE_EXISTING_ITEMS。
| Boolean |
estimate_statistics | 指定是否估算镶嵌数据集的统计数据。
| Boolean |
派生输出
名称 | 说明 | 数据类型 |
out_mosaic_dataset | 已更新的镶嵌数据集。 | Mosaic Layer |
代码示例
SynchronizeMosaicDataset 示例 1(Python 窗口)
这是 SynchronizeMosaicDataset 函数的 Python 示例。
import arcpy
arcpy.SynchronizeMosaicDataset_management(
"c:/data/syncmd.gdb/md", "Year>1999", "NO_NEW_ITEMS", "SYNC_STALE",
"#", "#", "#", "NO_PYRAMIDS", "NO_STATISTICS", "NO_THUMBNAILS",
"NO_ITEM_CACHE", "NO_RASTER", "NO_FIELDS", "#", "#")
SynchronizeMosaicDataset 示例 2(独立脚本)
这是 SynchronizeMosaicDataset 函数的 Python 脚本。
# Synchronize source and add new data
import arcpy
arcpy.env.workspace = "C:/Workspace"
mdname = "syncmd.gdb/mdnew"
query = "#"
updatenew = "UPDATE_WITH_NEW_ITEMS"
syncstale = "SYNC_STALE"
updatecs = "#"
updatebnd = "#"
updateovr = "#"
buildpy = "NO_PYRAMIDS"
calcstats = "NO_STATISTICS"
buildthumb = "NO_THUMBNAILS"
buildcache = "NO_ITEM_CACHE"
updateras = "NO_RASTER"
updatefield = "NO_FIELDS"
fields = "#"
arcpy.SynchronizeMosaicDataset_management(
mdname, query, updatenew, syncstale, updatecs, updatebnd,
updateovr, buildpy, calcstats, buildthumb, buildcache,
updateras, updatefield, fields)
环境
许可信息
- Basic: 否
- Standard: 是
- Advanced: 是