第7节:cesium 3dtiles模型展示优化,平移、旋转、缩放...(含源码+视频) - 小专栏

您所在的位置:网站首页 vue如何旋转视频 第7节:cesium 3dtiles模型展示优化,平移、旋转、缩放...(含源码+视频) - 小专栏

第7节:cesium 3dtiles模型展示优化,平移、旋转、缩放...(含源码+视频) - 小专栏

2024-07-16 05:02| 来源: 网络整理| 查看: 265

上一节,我们说明了如何加载3DTiles模型,这节我们主要说一下模型加载进来如何进行模型的展示优化。

核心代码 export default { data() { return { Cesium: undefined, viewer: undefined, imageryProvider: {}, //经度 longitude: 108.94670, //纬度 latitude: 34.26197, //高度 heigth: 8000, }; }, methods: { ready(cesiumInstance) { this.cesiumInstance = cesiumInstance; const { Cesium, viewer } = cesiumInstance; this.imageryProvider = new Cesium.UrlTemplateImageryProvider({ url: "/static/map/{z}/{x}/{y}.png", fileExtension: "png" }); this.viewer = viewer; // 加载模型 var palaceTilesetLine = new Cesium.Cesium3DTileset({ url: "/static/3DTiles/jiayouzhan/tileset.json" }); this.viewer.scene.primitives.add(palaceTilesetLine); //加载模型数据并定位到模型 var params = { tx: this.longitude, //模型中心X轴坐标(经度,单位:十进制度) ty: this.latitude, //模型中心Y轴坐标(纬度,单位:十进制度) tz: 500, //模型中心Z轴坐标(高程,单位:米) rx: 90, //X轴(经度)方向旋转角度(单位:度) ry: 30, //Y轴(纬度)方向旋转角度(单位:度) rz: 40, //Z轴(高程)方向旋转角度(单位:度) scale: 10 //放大倍数 }; palaceTilesetLine.readyPromise.then(function(argument) { //经纬度、高转笛卡尔坐标 var position = Cesium.Cartesian3.fromDegrees( params.tx, params.ty, params.tz ); var mat = Cesium.Transforms.eastNorthUpToFixedFrame(position); //缩放 start var scale = Cesium.Matrix4.fromUniformScale(params.scale); Cesium.Matrix4.multiply(mat, scale, mat); //缩放 end //旋转 start var mx = Cesium.Matrix3.fromRotationX(Cesium.Math.toRadians(params.rx)); var my = Cesium.Matrix3.fromRotationY(Cesium.Math.toRadians(params.ry)); var mz = Cesium.Matrix3.fromRotationZ(Cesium.Math.toRadians(params.rz)); var rotationX = Cesium.Matrix4.fromRotationTranslation(mx); var rotationY = Cesium.Matrix4.fromRotationTranslation(my); var rotationZ = Cesium.Matrix4.fromRotationTranslation(mz); Cesium.Matrix4.multiply(mat, rotationX, mat); Cesium.Matrix4.multiply(mat, rotationY, mat); Cesium.Matrix4.multiply(mat, rotationZ, mat); //旋转 end palaceTilesetLine._root.transform = mat; }); //相机定位 this.viewer.zoomTo(palaceTilesetLine); // this.viewer.camera.flyTo({ // destination: Cesium.Cartesian3.fromDegrees( // this.longitude, // this.latitude, // this.heigth // ), // duration: 0 // }); this.viewer = viewer; } } };

视频地址:第7节:cesium 3dtiles模型展示优化,平移、旋转、缩放... 完整源码: ==夸克网盘== 链接:https://pan.quark.cn/s/24bdffe9ec04 提取码:vXi1



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3