3DTiles格式介绍总目录:https://blog.csdn.net/qq_31709249/article/details/102643371
上一篇文章介绍了Tile,下面来接着介绍TileSet。3DTiles使用一个或多个tileset的json文件来组成整个场景,这些json文件不需要遵循特定的命名规则。老办法,我们还是来看tileset的json文件内容,一遍看一边说。
{
"asset" : {
"version": "1.0",
"tilesetVersion": "e575c6f1-a45b-420a-b172-6449fa6e0a59",
},
"properties": {
"Height": {
"minimum": 1,
"maximum": 241.6
}
},
"geometricError": 494.50961650991815,
"root": {
"boundingVolume": {
"region": [
-0.0005682966577418737,
0.8987233516605286,
0.00011646582098558159,
0.8990603398325034,
0,
241.6
]
},
"geometricError": 268.37878244706053,
"refine": "ADD",
"content": {
"uri": "0/0/0.b3dm",
"boundingVolume": {
"region": [
-0.0004001690908972599,
0.8988700116775743,
0.00010096729722787196,
0.8989625664878067,
0,
241.6
]
}
},
"children": [..]
}
}
我们可以看到,tileSet有四个属性:asset、properties、geometricError、root。下面来逐个介绍每个属性:
1.asset
asset包含整个tileSet的元数据,asset.Version属性,定义了3DTiles的版本,此版本号指定tileSet的JSON模式和基本的tileSet格式。tileVersion属性可选,用于定义特定的应用程序的tileset。
2.properties
该属性中包含tileSet中的一些功能性属性。上面的例子是一个建筑物的3DTiles,因此每个瓦片都含有三维建筑物模型,每个三维建筑物模型都有Height属性,所以上面的例子中就定义了Height属性。properties中的属性,每个属性的作用通常如属性名称相对应(如例子中的Height对应高度),并且包含该属性的最大值和最小值。这对于创建随值