cesium-控高分析
先看效果
截图
实例
思路
查阅网上文章得知实现控高分析涉及ClassificationPrimitive(不懂中文怎么翻译它,暂叫基元吧), CallbackProperty 这两个关键类,前者是一个分类基元,表示要在场景中突出显示的包围几何体的体积(分析中指定高度以外建筑的高亮效果)。后者是一个特殊属性,它的值由调用异步函数获取,可动态变化(在此分析中实现指定高度以内建筑高亮效果以及高度面变化)。
整理分析操作流程如下:
- 绘制一个范围面。
- 创建一个ClassificationPrimitive(基元)对象表示区域内高度超限,及两个几何面Entity (实体)对象,其中一个Entity设置为贴地且分类属性设置为3DTiles表示区域内高度不超限,另一个不贴地,表示高度面。
- 修改高度,两个Entit拉伸高度以及基元位置同步变化。
难点
Entity实现拉伸高度变化比较容易,但ClassificationPrimitive位置动态变化无法借助CallbackProperty,而是直接修改位置矩阵,有个问题是,必须要给基元拉伸高度设置一个很高的高度值,以至于能够覆盖最高的建筑。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· Trae初体验