首页 / 浏览问题 / 其他 / 问题详情
Vector图层定时刷新覆盖物位置时闪烁
6EXP 2017年08月25日
地图平台:isserver 7c  client

在Vector图层中每隔5秒定时刷新feature的位置时,feature会闪烁。

刷新feature位置的代码如下:

vectorLayerFlights.removeAllFeatures();
vectorLayerFlights.addFeatures(features);

当vectorLayerFlights = new SuperMap.Layer.Vector("VectorLayerFlights"
,{renderers:["Canvas2"]})这样时,即添加渲染效果是feature会闪烁;

当vectorLayerFlights = new SuperMap.Layer.Vector("VectorLayerFlights"
)这样时,即不添加渲染效果是feature不会闪烁,但是feature量比较大时,操作地图就会出现明显的卡顿。

1个回答

你好,Vector图层每次拖拽、缩放都会重绘当前范围内的要素,数据量大出现卡顿和明显的重绘(也就是闪一下)是正常的,浏览器绘制能力是有限的。建议:
1.用Canvas渲染而不是Canvas2(绘制快,但可能出现别的问题)
2.减少数据量,比如减少线面节点数量(线和面都是点串构成,可以在iDesktop抽稀,不建议前端处理)和点数量、LOD显示(即不同比例尺显示不同细节层次的要素)。
3.让服务端处理,也就是和别的地图一样,制作保存地图并发布服务,增删改要素可以通过iServer的数据服务。
1,780EXP 2017年08月25日
...