Cesium 3Dtiles偏移调整,上下左右前后以及倾斜
Cesium 3Dtiles偏移调整可以通过以下步骤进行:
根据前后经纬度和高度计算变换矩阵-平移矩阵:
step1: 根据tileset的边界球体中心点的笛卡尔坐标得到经纬度坐标。
step2: 根据经纬度和高度0,得到地面笛卡尔坐标。
step3: 根据经纬度和需要的高度,得到偏移后的笛卡尔坐标。
step4: 计算坐标变换,得到新的笛卡尔坐标。
根据旋转角度计算变换矩阵-旋转矩阵。
请注意,以上步骤仅为一般步骤,具体调整方法需要根据具体情况进行具体调整。
方法源码如下:
function translate(tileSet, lng, lat, height, rx, ry, rz, scale) {
if (!tileSet.surface) {
let c = Cesium.Cartographic.fromCartesian(tileSet.boundingSphere.center);
tileSet.surface = Cesium.Cartesian3.fromRadians(c.longitude, c.latitude, c.height);