1.数据:
1.1倾斜摄影数据(必须)
1.2与倾斜摄影数据配套的
矢量面数据
(关键),如果没有,可以根据倾斜摄影数据进行提取(效果不可控,需要
手动录入业务数据
)
2.数据处理
2.1
单体话点选
:将矢量面数据在三维场景中设置对象风格为
贴对象
,必要时设置
底部高程
2.2
分层分户
:将原始矢量面备份一份,转为
二维矢量面
,全选,进行复制,分数根据楼层数决定,之后进行
数据属性表
补录,包括必要的
底部高程
(一层高程+层高*层数),之后将数据进行拉伸,选择绝对高度,底部高程字段,拉伸高度。
2.3
分层分户图层生成缓存
(三维插件客户端某些必要的方法只支持
OSGB缓存
)。
3.开发思路
目前web三维需要我们产品支持的交互功能主要还是
展示
,
点选
。
3.1
点选
很简单:sceneControl.addEvent("objectSelected", handler);
3.2
对象颜色
例如,分层分户,
红色表示已经入住,绿色表示没有入住
。这里的方案,
分层分户是缓存
,不能直接修改,并且数据也无法保存。其实,入住与否,这种属性应该归类于
业务数据
,建议与GIS数据库分开。
一种思路是:原始图层设置为统一的红色,业务数据库查询出可以入住的对象ids,使用接口:setObjectsColor(keys,color),将对象改为绿色。
3.3其他功能
参考示例代码。
4总结
与业务有关的功能,还需要在业务系统上开发功能,GIS服务器在整个系统里往往只承担了一部分的
数据交互
和
GIS数据的展示
的功能。