WebGL属性查看

0 投票
97 浏览
WebGL在点击模型,根据数据服务获取属性信息。点击模型的速度不一样,比如建筑这种比较大的模型的查询,但模型数据集数据量小的,查询速度比较慢;小品这种小模型,模型数据集数据量较多的,查询数据确快很多。这个情况我要怎么做呢,怎么优化?
最新提问 9月 21 分类:  97次浏览 | 用户: gisWJC 初出茅庐 (24 分)
修改于 9月 21 用户:gisWJC

1个回答

0 投票
 
已采纳
一般来说我们都是建议查询数据服务。

想要提高查询速度的话,可以在桌面中将模型数据集另存成属性表数据集(右键 - 浏览属性表 - 上方“属性表”选项卡中选择另存为数据集),然后发布纯属性表的数据集。
最新回答 9月 21 用户: 张阳名 名扬四海 (4,895 分)
采纳于 9月 25 用户:gisWJC
S3M缓存图层里的模型不是primitives 类型的吗?它是什么类型的呢?通过以下方式,获取不到模型的,返回的是undefined:

//var pickModel = null;

//注册鼠标左键点击事件

handler.setInputAction(function(click){

//窗口点击位置

let windowPosition = click.position;

//获取点击位置笛卡尔坐标

let position = scene.pickPosition(windowPosition);

//拾取的模型

let pickModel = scene.pick(windowPosition);

if(pickModel && pickModel.id){

//

}

},Cesium.ScreenSpaceEventType.LEFT_CLICK);
是Layer下的一个对象。

获取方法:

layer = scene._layers._selectedLayer获取当前选择的对象所处的图层

然后layer.getSelection()获取选择对象的id
iClient for WebGL的官网上提供的下载是最新的吗?怎么还是2017年12月份的呢?这个版本是没有动态标绘的功能的吧。请问我哪里可以下到最新的产品呢?

http://support.supermap.com.cn/DownloadCenter/ProductPlatform.aspx

SuperMap iClient3D 9D(2019) Beta - SuperMap iClient3D 9D(2019) for WebGL(V9.1.0)(2018/8/3)

可以尝试数据存放到数据库,然后去查询数据库中的属性,这样和数据库交互会快很多
...