BIGEMAP

添加多边形
编辑时间:2017-03-03

QQ截图20170301154801.png

多边形

   多边形表示由闭合路径(或环路)封闭的区域,由一系列坐标定义。Polygon 对象与 Polyline 对象类

似,因为它们都包含一系列有序的坐标。多边形使用描边和填充区绘制。您可以为多边形边缘(描边)定义自定

义颜色、粗细和不透明度,以及为封闭区域(填充区)定义自定义颜色和不透明度。颜色应以十六进制 HTML 格

式表示。不支持颜色名称。


Polygon 对象可描述复杂形状,其中包括:


  • 由单个多边形定义的多个不连续区域


  • 带孔的区域


  • 一个或多个区域的交集


如需定义复杂形状,您需要使用包含多个路径的多边形。

添加多边形

由于多边形区域可能包括几个不同路径,因此 Polygon 对象的 paths 属性指定的是数组的数组,每个数组

的类型均为 MVCArray。每个数组定义的都是不同的有序 LatLng 坐标序列。

对于只包括一个路径的简单多边形,您可以利用单个 LatLng 坐标数组构建 Polygon。构建时,Google Maps

 JavaScript API 将在于 paths 属性内存储该简单数组时将其转换成数组的数组。API 为包括一个路径的多

边形提供了一个简单的 getPath() 方法。


多边形的 editable 属性指定用户是否可以编辑形状。请参阅下文的用户可编辑形状。同理,您也可以通过设

draggable 属性来允许用户拖动形状


以下代码将显示一个多边形:

     var pathLatLng=[{lat:33,lng:104},{lat:34,lng:114},{lat:28,lng:98}]
     
var testPath = new google.maps.Polygon({
         
path: pathLatLng,
         
strokeColor: '#FF0000',
         
strokeOpacity: 1.0,
         
strokeWeight: 2,
         
fillColor: '#FF0000',
         
fillOpacity: 0.35
     
});
    testPath.setMap(map);

 

多边形自动完成

上例中的 Polygon 包含三组 LatLng 坐标,但请注意第一组坐标和最后一组坐标定义的位置不同。但在实

践中,由于多边形定义的是封闭区域,因此您无需定指定最后一组坐标。Google Maps JavaScript API 将通过

绘制一笔,将任何给定路径的最后一个位置连回第一个位置,自动完成多边形。


移除多边形

如需移除地图中的多边形,请调用 setMap() 方法,并传递 null 作为其自变量。在下例

中,bermudaTriangle 是一个多边形对象:


testPath.setMap(null);


请注意,以上方法不会删除多边形,而只是从地图中移除多边形。如果您实际上是想删除多边形,则应先将其从

地图中移除,然后将多边形本身设置为 null


获取正版授权

方式一:自动授权

关注官方微信号
BIGEMAP微信公众号
操作步骤:
①关注官方微信号
②点击【自助授权】
③按提示完成操作!

方式二:点击加入

免费授权QQ群

QQ在线咨询 QQ在线咨询

免费热线电话

400-028-7262

淘宝店铺

点击进入

联系我们