Eli*_*ten 13 google-maps-api-3
基于Google Maps JavaScript API v3文档,google.maps.Polygon类的getPath()函数返回一个MVCArray.在简单的情况下,Polygon的路径可以是单个数组,在传递到google.maps.Polygon类的函数时LatLngs转换为该MVCArray类型setPath().
以上案例是我目前正在处理的问题.我传入一个数组LatLngs,并MVCObject在我调用getPath()我的Polygon对象时返回(我假设的).我的问题是:如何将其转换MVCObject回LatLngs形成Polygon形状的单个数组?我是否缺少一些内置的Google Maps API v3方式?我觉得必须有一些明显的内置转换功能或API中的东西,这是我的想法.
任何帮助,将不胜感激.
Sea*_*key 28
当调用Polygon.getPath()API的文档,返回的是一个MVCArrayAPI的文档的LatLng代表的第一路径实例Polygon.您可以通过MVCAarray两种方式直接联系成员:
MVCAarray.getArray,它将返回Array包含LatLng成员的基础JavaScript .MVCArray.getAt( index ),它将返回MVCArray(a)LatLng在该索引中的任何内容.这为您提供了一种设置JavaScript for循环以迭代数组成员的方法.您还可以MVCArray使用该forEach(callback:function(*, number))函数间接使用该成员.在这种情况下,您必须传递一个接受两个参数的回调函数:
MVCArray. var polygonBounds = polygon.getPath();
var bounds = [];
for (var i = 0; i < polygonBounds.length; i++) {
var point = {
lat: polygonBounds.getAt(i).lat(),
lng: polygonBounds.getAt(i).lng()
};
bounds.push(point);
}
Run Code Online (Sandbox Code Playgroud)