Cesium定位到加载的物体上
1.设置destination位置,定位到primitive可使用这种方式
viewer.camera.flyTo({
destination: Cesium.Cartesian3.fromDegrees(100, 39., 10000),
orientation: {//设置相机的Heading,Pitch,Roll,参照上图
heading: Cesium.Math.toRadians(90.0),
pitch: Cesium.Math.toRadians(-90),
roll: 0.0
},
duration: 3
})
2.直接定位到entity或者dataScource上
var a=viewer.entities.add({
polygon: {
hierarchy: Cesium.Cartesian3.fromDegreesArray([l100,20,100,30,110,30]),
material: Cesium.Color.fromRandom()
}
})
viewer.zoomTo(a)//定位到entity上方,flyTo有一个飞行的效果
3.用lookAtTransform定位到3Dtiles
这里tileset.boundingSphere时tileset的边界球,tileset.boundingSphere.center是边界球的中心点,radius是边界球半径
var tileset = window.viewer.scene.primitives.add(
new Cesium.Cesium3DTileset({
url: 'Tileset/tileset.json'
})
)
tileset.readyPromise
.then(function() {
var boundingSphere = tileset.boundingSphere
window.viewer.camera.viewBoundingSphere(boundingSphere, new Cesium.HeadingPitchRange(0.0, -0.5, boundingSphere.radius))
window.viewer.camera.lookAtTransform(Cesium.Matrix4.IDENTITY)
})
.otherwise(function(error) {
throw error
})