const ToggleModel = () => {
const viewer = initViewer();
commStore.changeModelIs3D()
if (commStore.ModelIs3D) {
//三维球体上
const twoPosition = window.leafletMap.getCenter()
const zoom = window.leafletMap.getZoom()
console.log(twoPosition, '三维上经纬度')
const xyz = Cesium.Cartesian3.fromDegrees(twoPosition.lng, twoPosition.lat, 10000)
viewer.camera.setView({
destination: xyz
})
} else {
// 二维平面上
const threePosition = viewer.scene.camera.position
const lngLat3D = Cartesian3_to_WGS84(threePosition)
const center = window.L.latLng(lngLat3D.lat, lngLat3D.lng)
window.leafletMap.setView(center, 4)
console.log(center, '二维上经纬度')
}
}
我在开发二三维平台的时候需要对三维球体和二维平面进行切换,于是我在切换的时候设置他们的视口位置,但是现在如何能够把三维的地面离相机的高度也就是height转换为leaflet中的缩放层级zoom呢,再二维切三维的时候再将zoom锁对应的层级切换会三维的相机高度height呢,以达到查看位置再切换二三维时查看的是同一个地方