我正在尝试渲染具有一些严重性能问题的多个多边形。
我目前正在通过网络服务检索一个很大的GeoJSON文件(〜2MB),其中包含许多多边形和多多边形。
我设法将它们全部渲染为GeoJsonLayer
,随后将它们毫无问题地添加到我的GoogleMap
实例中,除了一些多边形没有填充背景色(请查看GitHub问题{{3 }})。据我所知,这是一个已知的错误。
主要问题是构成多边形的点的数量,这使性能真的很差,尤其是在低端设备上。
是否可以将每个多边形渲染为Tile,PNG,Image或可以放置在地图顶部以提高性能的任何东西?
如果不是,那是绘制大量多边形的最佳方法吗?
这是我当前正在使用的代码示例(Android):
for(int i = 0; i < pages.length(); i++){
JSONObject obj = (JSONObject) pages.get(i);
JSONObject geometry = obj.getJSONObject("geometry");
GeoJsonLayer layer = new GeoJsonLayer(mGoogleMap, geometry);
GeoJsonPolygonStyle style = layer.getDefaultPolygonStyle();
style.setStrokeColor(Color.WHITE);
style.setStrokeWidth(2F);
style.setFillColor(Color.GREEN);
style.setPolygonFillColor(Color.GREEN);
layer.addLayerToMap();
}