调整模型位置及高度

1.数字模型

InitPoLiShuZiModel() {

let UrlsDMU = imageUrl.Model.Model20200420DMU;

ZhiYunGisProperty.PoLiShuZiModel = [];

UrlsDMU.forEach(item => {

// 经纬度高度

let longitude = 119.77247739757397;

let latitude = 35.69295362813212;

let height = 100;

let heading = 0;

let scale = 1;

let degrees = -2.036954362399994;

let tileset = new NF.Cesium3DTileset({

url: ImageUrl + item,

maximumScreenSpaceError: 2,

show: false,});

let ModelDMU =ZhiYunGisProperty.ZhiYunViewer.scene.primitives.add(tileset); ZhiYunGisProperty.PoLiShuZiModel.push(ModelDMU); tileset.readyPromise.then(function (argument) { ZhiYunGisProperty.changeModelTilesetPosition(tileset, longitude, latitude, height, heading, scale, degrees); }); }); console.log("初始化:==>数字孪生城市---规划"); },

 

// 转换矩阵

changeModelTilesetPosition(tileset, lon, lat, height, heading, scale, degree) {

let position = NF.Cartesian3.fromDegrees(lon, lat, height);

let mat = NF.Transforms.eastNorthUpToFixedFrame(position);

let rotationX = NF.Matrix4.fromRotationTranslation(NF.Matrix3.fromRotationZ(NF.Math.toRadians(heading)));

NF.Matrix4.multiply(mat, rotationX, mat);

let m = NF.Matrix4.fromUniformScale(scale);

NF.Matrix4.multiply(mat, m, mat);

tileset.root.transform = mat; },

2.倾斜模型

InitPoLiDSMModel() {

ZhiYunGisProperty.Model20200304DSM = [];

//4*4 转换矩阵

let matrix = NF.Matrix4.fromArray([

1.0, 0.0, 0.0, 0.0,

0.0, 1.0, 0.0, 0.0,

0.0, 0.0, 1.0, 0.0,

1.0, 1.0, 1.0, 1.0 ]);

let tileset = new NF.Cesium3DTileset({

url: "Production_1302_3dTiles.json",

modelMatrix: matrix,

maximumScreenSpaceError: 2,

show: true, });

let dsmModel = ZhiYunGisProperty.ZhiYunViewer.scene.primitives.add(tileset) ZhiYunGisProperty.Model20200304DSM.push(dsmModel);

console.log("初始化:==>倾斜模型---规划"); },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值