首页 / Cesium / 使用示例
点选实体并高亮
画面上四个方块,点中一个就换成亮黄描边并读出经纬度。 点空白处取消选中,面板会说明当前状态。
源码与运行效果
拾取返回什么
scene.pick(position) 返回一个对象,id 字段就是
被点中的实体或图元。示例先用 Cesium.defined 判断是否存在,
再检查 id.box 是否定义,确认点中的确实是方块而不是地球。
拾取是逐像素的,管道、盒子等立体图形都能命中实际表面, 空白区域的返回值为 undefined。
高亮的实现
每个方块保留了自己的原始颜色。选中时把材质换成半透明亮黄,
同时打开 outline 并把标签染色;取消选中时按记录的颜色还原。
这种「记住原值再还原」的方式适合样式不复杂的场景。
可调参数
| 位置 | 改什么 | 效果 |
|---|---|---|
BLOCKS 数组 | 增删方块 | 可点的对象数量 |
outline 颜色 | 换成青绿 | 高亮色调变化 |
| 事件类型 | LEFT_CLICK 改 LEFT_DOUBLE_CLICK | 改为双击选中 |
| 面板输出 | 加高度字段 | 同时显示离地高度 |
拾取和相机操作共用左键。示例没有禁用相机旋转,单击仍能选中,
但按下后拖动会变成旋转视角。需要严格的点选体验时,
改用 LEFT_UP 并判断按下到抬起的位移是否足够小。