注:我们在使用Vector图层中
map.addLayer(new ol.layer.Vector({title:result_data["name"],
layers_id:result_data["layers_id"],
source:vectorSource2,
style:new ol.style.Style()
}
正常使用Vector Layers 和Vector Source,是没有任何问题
问题1:当出现很多数据需要加载,尤其是loader
var vectorSource2 = new ol.source.Vector({
format:new ol.format.WKT(),
loader:function(extent,resolution,projection){
vectorSource2.addFeatures(myFeature);
}
});
当出现上万,或者几十万个feature,尤其是MultiPolygon,
如果此时你需要立马定位或者查找其中一个Feature
就会出现该图层未找到,
原理:
因为这个过程有两个步骤:
1.下载数据从数据库或者其他地方
2.交给浏览器渲染数据
一般浏览器渲染会出现比较耗时,自然找不到图层和矢量图形;
解决思路:
将feature按照一定分类逻辑,分散到多个图层,会大大提到首次加载速度;
如果总是需要定位和查找某个feature,那么没必要必须查找原图层;
那么专门做一个定位图层,该图层只需要绘制一个你需要查找的矢量图形。
问题2:
数据加载后,需要查看更多范围的矢量图形,或者说更多数量的feature出现在地图中,移动都会变得非常卡;怎么解决,一句话,将Image图层和Vector数据源结合,那个在一定程度解决