您的位置:首页 > 科技 > IT业 > 网易企业邮箱客服电话_大气聚财的公司名字_技术培训机构排名前十_百度收录网址

网易企业邮箱客服电话_大气聚财的公司名字_技术培训机构排名前十_百度收录网址

2025/4/25 2:32:32 来源:https://blog.csdn.net/luoganttcc/article/details/147281584  浏览:    关键词:网易企业邮箱客服电话_大气聚财的公司名字_技术培训机构排名前十_百度收录网址
网易企业邮箱客服电话_大气聚财的公司名字_技术培训机构排名前十_百度收录网址

很奇怪cesium 里面只支持 相对路径 不支持绝对路径

我把 模型放在 /***/Cesium-1.128/Apps/SampleData/Cesium3DTiles/Tilesets 下面
"../../SampleData/Cesium3DTiles/Tilesets/terra_b3dms/tileset.json",

所有源码

const viewer = new Cesium.Viewer("cesiumContainer", {shadows: true,
});const viewModel = {height: 0,
};Cesium.knockout.track(viewModel);const toolbar = document.getElementById("toolbar");
Cesium.knockout.applyBindings(viewModel, toolbar);let tileset;
try {tileset = await Cesium.Cesium3DTileset.fromUrl("../../SampleData/Cesium3DTiles/Tilesets/terra_b3dms/tileset.json",);viewer.scene.primitives.add(tileset);viewer.scene.globe.depthTestAgainstTerrain = true;viewer.zoomTo(tileset,new Cesium.HeadingPitchRange(0.0, -0.5, tileset.boundingSphere.radius * 2.0),);
} catch (error) {console.log(`Error loading tileset: ${error}`);
}Cesium.knockout.getObservable(viewModel, "height").subscribe(function (height) {height = Number(height);if (isNaN(height) || !Cesium.defined(tileset)) {return;}const cartographic = Cesium.Cartographic.fromCartesian(tileset.boundingSphere.center,);const surface = Cesium.Cartesian3.fromRadians(cartographic.longitude,cartographic.latitude,0.0,);const offset = Cesium.Cartesian3.fromRadians(cartographic.longitude,cartographic.latitude,height,);const translation = Cesium.Cartesian3.subtract(offset,surface,new Cesium.Cartesian3(),);tileset.modelMatrix = Cesium.Matrix4.fromTranslation(translation);
});//鼠标显示 位置let handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
handler.setInputAction(function(event){let ray = viewer.camera.getPickRay(event.position);let cartesian = viewer.scene.globe.pick(ray, viewer.scene);let cartographic = Cesium.Cartographic.fromCartesian(cartesian);let lng = Cesium.Math.toDegrees(cartographic.longitude); // 经度let lat = Cesium.Math.toDegrees(cartographic.latitude); // 纬度let alt = cartographic.height; // 高度let coordinate = {longitude: Number(lng.toFixed(6)),latitude: Number(lat.toFixed(6)),altitude: Number(alt.toFixed(2))};console.log(coordinate.longitude);console.log(coordinate.latitude);console.log(coordinate.altitude);//console.log(longitude);
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);
输出坐标
121.484453
31.361559
0
121.484535
31.361587
0
121.484766
31.361574
0

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com