Cesium 3种取点方式

1. 椭球面坐标:

获取当前点击视线与椭球面相交处的坐标,在加载地形的场景上获取的坐标有误差

var earthPosition = viewer.camera.pickEllipsoid(event.position,viewer.scene.globe.ellipsoid);

2. 场景坐标:

获取场景中任意点击处的对应的世界坐标,需要开启“地形深度检测”(在未开启“地形深度检测”的情况下只能在3DTile上准确获取空间坐标,开启“地形深度检测”后,viewer.scene.pickPosition 也能在非3DTile上准确获取坐标)。

但如果非3DtTile且未开地形深度检测则会报错,包括3DTile加载异常情况

viewer.scene.globe.depthTestAgainstTerrain = true;
var earthPosition = viewer.scene.pickPosition(event.position);

3. 地标坐标:

获取点击处地球表面的世界坐标,不包括模型、倾斜摄影表面

var ray = viewer.camera.getPickRay(event.position);
var earthPosition = viewer.scene.globe.pick(ray, viewer.scene);
 

 

全部评论

相关推荐

点赞 评论 收藏
分享
一表renzha:手写数字识别就是一个作业而已
点赞 评论 收藏
分享
求offer的大角牛:不吃香菜
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务