随着地图上的多边形增加,最大ram利用并减慢CPU导致浏览器崩溃

时间:2015-04-25 07:02:23

标签: javascript google-maps google-maps-api-3 ram cpu-speed

在使用多达500个多边形并且有14000纬度/长关联时,我无法找到在我的应用程序中在地图上渲染多个多边形时浏览器崩溃的确切解决方案。它最多可以加载300个多边形,然后由于ram利用率的增加和CPU性能的下降,浏览器崩溃。

是否有任何解决方案可以降低RAM和CPU利用率,因此您可以在不崩溃浏览器的情况下运行应用程序?

function init(mydata){

    var mypolygons  = [];
    var bounds      = new google.maps.LatLngBounds();
    for (i = 0; i < mydata.length; i++){        
        var placemark_name = mydata[i].placemark_name ; 
        var latlong = mydata[i].latlong;
        LatLng = [];
            for (j = 0; j < latlong.length; j++) {

                var lat = latlong[j].LatitudeLongitude.latitude;
                var lng = latlong[j].LatitudeLongitude.longitude;

                LatLng.push(new google.maps.LatLng(lat,lng));
                bounds.extend(LatLng[LatLng.length-1]);
                map.fitBounds(bounds);
            }

            var polygonOptions = {
                paths:LatLng,
                strokeColor: '#FF0000',
                fillColor: '#FF0000',
                draggable: false,
                editable:true,
                fillOpacity: 0.35,
                strokeOpacity: 0.8
            };  

            mypolygons.push(new google.maps.Polygon(polygonOptions));
            mypolygons[i].setMap(map);                              
    }           
}

1 个答案:

答案 0 :(得分:0)

I found the solution and that was to keep the property 
"editable:true" to "editable:false" and 
Everything worked fine.