多模型瓦片局部更新
使用说明
针对基于多模型数据合并生成的S3M瓦片数据,该工具支持按“指定更新范围”或者“指定业务ID”方式实现瓦片数据的局部更新,从而实现城市精细模型、BIM、建筑白模等数据的按需更新。功能使用要点:
- 数据备份:此操作会删除历史数据。执行前请确认已备份原始数据。
- 参数一致:更新操作的瓦片必须使用与创建原始瓦片时完全一致的参数(如瓦片路径、名称、插入点、边长、类型等),否则可能会导致失败。
- 数据准备:
- 源S3M瓦片数据:待更新的目标瓦片。
- 更新源模型数据集:包含更新后的模型对象的最新状态,模型数据集名称需要与原始瓦片attribute.json文件的layerName标签中记录的名称完全一致。还支持输入新模型数据集,实现增量更新。请避免对该数据集进行任何可能改变现有对象SMID的操作(如数据源紧缩等)。
- 更新范围数据集(可选):当选择采用“按范围更新”方式时需要,用于指定一个或多个不连续的更新区域。
- 更新方式包括依据按指定范围更新、按指定业务SMID/ID(源瓦片生成时选择业务ID作为对象ID字段,业务ID需保证唯一性)更新。
- 更新原则:遵循“结果替换”原则,系统会根据指定的范围或ID列表,定位到原始瓦片中的相应部分并删除,然后将输入的模型数据集中对应范围或ID的新数据写入瓦片。
- 增加对象:操作输入的模型数据集需包含增加的模型对象或者新模型数据集,更新范围或ID为增加对象对应的空间范围或ID。
- 删除对象:仅采用“依据范围更新”时,操作输入的模型数据集需删除指定模型对象,更新范围为删除对象对应的空间范围。
- 修改对象:操作输入的模型数据集需删除要修改的原模型对象,包含修改后的模型对象,更新范围或ID为修改对象对应的空间范围或ID。
- 更新属性:操作输入的模型数据集需修改某些对象的属性信息,更新范围或ID为修改对象对应的空间范围或ID。
- 更新次数无限制。
源瓦片金字塔剖分类型与更新内容的关系为: |金字塔剖分类型|更新方式|属性更新|新增对象|修改/替换对象|删除对象 |:----|:----|:----|:----|:----|:---- |四叉树|依范围更新|支持|支持|支持|支持 |四叉树|依ID更新|支持|支持|支持|不支持 |八叉树|依范围更新|支持|支持|支持|支持 |八叉树|依ID更新|支持|支持|不支持|不支持 |KD树|依范围更新|支持|支持|支持|支持 |KD树|依ID更新|支持|支持|支持|不支持
参数说明
参数名 | 参数释义 | 参数类型 |
---|---|---|
SCP路径: | 输入源模型瓦片的配置文件(*.scp)。 | String |
模型数据集: | 输入待操作的模型数据集。待操作模型数据集的名称,需要与原始模型数据集名称一致,且包含所有模型对象,用于为局部更新提供数据基础。 | DatasetVector |
按数据集范围更新 (可选) |
设置数据更新方式。如果勾选,则按照指定数据范围更新数据;否则,按照指定对象ID更新数据。 | Boolean |
更新范围: (可选) |
当选择按“数据集范围更新”时,通过指定数据源和数据集来确定数据局部更新的范围。 指定数据集所在的空间范围是数据局部更新的范围。 |
DatasetVector |
业务ID: (可选) |
当选择按“指定ID值更新”时,通过设置业务ID号来确定更新对象,多个业务ID号之间用逗号隔开。例如:阶段1,阶段2。如果不设置业务ID,默认以SMID作为更新依据。 | String |
更新方式: (可选) |
设置数据更新方式,可选项包括几何数据和属性文件、属性文件、几何数据。
|
UpdateType |
输出结果
参数名 | 参数释义 | 参数类型 |
---|---|---|
多模型瓦片局部更新 | 结果瓦片数据的存储路径 | String |