绘制多边形,但它在中心绘制一条线

时间:2014-07-16 03:15:02

标签: google-maps-api-3

我在地图上绘制多边形,但是我遇到麻烦,因为如果我形成一个正方形或任何形状,它会在中心画一条线。我不知道是什么让我的多边形绘制线在中心。

var map;  
  var count=0;
  var polycolor = '#ED1B24';
  var polyarray=[];
function initialize() {


            var initial = new google.maps.LatLng(53.199246241276875, -105.76864242553711);

            var mapOptions = {
                zoom: 16,
                center: initial,
                zoomControl: true,
                zoomControlOptions: {
                    style: google.maps.ZoomControlStyle.LARGE
                },
                mapTypeControl: false
            };

            map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);
  google.maps.event.addListener(map, 'click', function(e) {
                polyarray[count]= e.latLng;
                addPolygon(polyarray);
                count++;
            });


        }

 function addPolygon(path){

         var poly = new google.maps.Polygon({
               path: path,
               strokeColor: polycolor,
               strokeOpacity: 1.0,
               strokeWeight: 2
           });

             poly.setMap(map);

       }

        google.maps.event.addDomListener(window, 'load', initialize);

这是我的jsfiddle

my demo

1 个答案:

答案 0 :(得分:1)

中心没有一条线,您每次点击都会绘制一个新的多边形。

使多边形全局化,并在每次向其添加点时更新路径:

var poly = new google.maps.Polygon({
           strokeColor: polycolor,
           strokeOpacity: 1.0,
           strokeWeight: 2
    });

function addPolygon(path){
         poly.setPath(path);          
         poly.setMap(map);
   }

updated fiddle