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