Javascript 如何将google地图圈转换为GeoJSON?

Javascript 如何将google地图圈转换为GeoJSON?,javascript,google-maps-api-3,geojson,Javascript,Google Maps Api 3,Geojson,我需要将google地图转换为GeoJSON。不支持圆,所以我想生成一个N边多边形。我发现,但这需要在坐标系中定义半径,而谷歌地图中的圆半径是以米为单位定义的。谷歌地图在几何库中有一套方便的几何图形,这让我们非常容易。具体来说,我们需要computeOffset函数: 返回从指定航向中的原点移动一段距离(以从北顺时针方向角度表示)所产生的纬度 我们有原点(圆心)和距离(圆的半径),所以我们只需要根据我们想要的边数计算一组点的方向 function generateGeoJSONCircle(ce

我需要将google地图转换为GeoJSON。不支持圆,所以我想生成一个N边多边形。我发现,但这需要在坐标系中定义半径,而谷歌地图中的圆半径是以米为单位定义的。

谷歌地图在几何库中有一套方便的几何图形,这让我们非常容易。具体来说,我们需要
computeOffset
函数:

返回从指定航向中的原点移动一段距离(以从北顺时针方向角度表示)所产生的纬度

我们有原点(圆心)和距离(圆的半径),所以我们只需要根据我们想要的边数计算一组点的方向

function generateGeoJSONCircle(center, radius, numSides){

  var points = [],
      degreeStep = 360 / numSides;

  for(var i = 0; i < numSides; i++){
    var gpos = google.maps.geometry.spherical.computeOffset(center, radius, degreeStep * i);
    points.push([gpos.lng(), gpos.lat()]);
  };

  // Duplicate the last point to close the geojson ring
  points.push(points[0]);

  return {
    type: 'Polygon',
    coordinates: [ points ]
  };
}
函数生成器高斯圆(中心、半径、天体){
var points=[],
degreeStep=360/numSides;
对于(变量i=0;i
默认情况下不包括。您必须通过网站明确要求