Cesium 平移cesiumlab生产的3Dtiles切片模型到目标经纬度

背景:在没有cesiumlab官方授权的情况下,对于fbx,obj等模型无法使用坐标系和偏移量进行切片处理 ,此时用cesiumlab的默认参数生产的切片模型数据,默认位置在北京天安门上空,与实际位置有距离很大偏差,不能只通过平移矩阵移动模型到实际位置,还需要对应的旋转矩阵。

目的:通过cesium的内置函数,将模型移动到实际位置。

思路顺序:

  1. 将模型平移回世界坐标系原点(地心)

  2. 将局部坐标Z轴调整到与世界坐标Z轴重合

  3. 将局部坐标X,Y轴调整到与世界坐标X,Y轴重合

  4. 将目标位置的eastNorthUp局部坐标系平移回世界坐标系原点(地心)

  5. 旋转物体坐标系与目标坐标系重合

  6. 平移到目标位置,即为最终变换矩阵

具体思路细节可参考csdn文章: Cesium加载3Dtiles模型的平移和旋转

矩阵很抽象,想要了解矩阵相关的详细信息,推荐观看书籍《3D数学基础:图形与游戏开发(第一版)》,网络上很多pdf,注意,请看第一版,不要看第二版,第二版可能是机翻,很多语句难以理解。 

function moveModel(tileset,longitude,latitude,height) {
    //计算世界坐标系中的目标位置offset
    var cartographic = new Cesium.Cartographic.fromCartesian(
      tileset.boundingSphere.center
    );
    var offset = Cesium.Cartesian3.fr
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值