首页 / 浏览问题 / 三维GIS / 问题详情
iClient3D for Plugin
13EXP 2017年03月15日
请教一下:

用Plugin开发,地图上有模型,然后想实现的效果是界面上有按钮,点了按钮模型可以改变一种风格(比如本身模型是绿色,点击按钮后模型变为红色)。这个可以实现吗?

1个回答

您好,请将模型切osgb格式缓存,客户端使用对象选中实践和设置对象颜色的方式实现:

var id=selection3Ds[0].get_item(0);
var ids=[Number(id)];
layer3D.get_selection3D().removeAll();
layer3D.setObjectsColor(ids, new SuperMap.Web.Core.Color(255,0,0,100));

449EXP 2017年03月15日
模型事放在点符号库里的,场景中的模型是通过给点数据添加风格来加到场景中的。点的风格不是有一个模型的编码来控制吗,然后我现在是要再在客户端中需要改变点的风格信息来改变点的风格。
请问你现在的缓存是什么格式呢?是矢量缓存还是osgb缓存?
没有生成缓存
那您是想通过替换模型符号来控制还是改变模型前景色来实现?
替换模型符号

<!--StartFragment -->

实现步骤如下:
1、先获取到该点,然后将该对象通过layer3D.setObjectVisible()接口将该点隐藏。
2、在跟踪层在该位置添加你需要替换的模型。具体方法和接口可参考客户端samplecode《获取跟踪层对象》范例中的在跟踪层添加模型对象代码。

...