Cesium JS 无法在沙堡中选择地形

问题描述

我试图简单地单击地形上的一个点来获取其 3D 坐标,但我无法在 Cesium sandcastle 中使用它:

var viewer = new Cesium.Viewer('cesiumContainer',{
    terrainProvider : Cesium.createWorldTerrain()
});

var scene = viewer.scene;

scene.camera.setView({
  destination: Cesium.Cartesian3.fromDegrees(2.3488,48.8534,450),orientation: {
    heading: Cesium.Math.toRadians(0),pitch: Cesium.Math.toRadians(-40),},}); 

var handler = new Cesium.ScreenSpaceEventHandler(scene.canvas);
handler.setInputAction(function onLeftClick(movement) {
    var ray = scene.camera.getPickRay(movement.position);
    var pos = scene.globe.pick(ray,scene);
    console.log("pos: ",pos);
  },Cesium.ScreenSpaceEventType.LEFT_CLICK
);

每次点击都会执行该函数,但结果实际上是空的。

如何通过左键单击获取地形坐标?

示例灵感来自:https://cesium.com/docs/cesiumjs-ref-doc/Globe.html#pickhttps://cesium.com/docs/tutorials/cesium-workshop/

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)