当前位置: 首页 > 知识库问答 >
问题:

如何获得一组可以构建多边形谷歌地图的点

阮星火
2023-03-14

我想用谷歌地图建立一个多边形区域作为图片,你可以知道如何获得该区域的坐标数组?

所需多边形的图片

共有1个答案

云瑞
2023-03-14

您可以使用至少包含3个元素的lat,lng对数组构建多边形。

如果阵列未关闭,谷歌地图将默认关闭它。

而对于大多数DBMS,必须保存一个闭合的坐标数组。接近是什么意思?基本上,数组的第一个点和最后一个点是相等的。像MongoDB这样的DBMS会对格式错误的地理空间数据抛出错误。关于$polygon的MongoDB文档。另一件需要提及的事情是,MongoDB只接受lng,lat格式的坐标。

正如您在Google Maps官方多边形文档中看到的,您可以从坐标数组开始绘制多边形:

// Define the LatLng coordinates for the polygon.
var triangleCoords = [
    {lat: 25.774, lng: -80.190},
    {lat: 18.466, lng: -66.118},
    {lat: 32.321, lng: -64.757}
];

然后你可以构建它并在地图上设置它:

// Construct the polygon.
var bermudaTriangle = new google.maps.Polygon({
    paths: triangleCoords, //Array of Coordinates
    strokeColor: '#FF0000', //Color of the line
    strokeOpacity: 0.8, //Color opacity
    strokeWeight: 3, //Line weight
    fillColor: '#FF0000', //Inner Color
    fillOpacity: 0.35 //Inner color opacity
 });
 //Set it on the map
 bermudaTriangle.setMap(map);

然后,您可以使用clickListenerinfoWindows

// Add a listener for the click event and opens infoWindow
bermudaTriangle.addListener('click', showArrays);

infoWindow = new google.maps.InfoWindow;

您可以在此处阅读有关infoWindows的更多信息。

最后,在这里你可以找到我用谷歌地图文档和AngularJS制作的Plunker。当然,您可以使用纯Javascript来实现。

最后但并非最不重要的一点是,确保边界上有点,并且具有合理的lat、lng坐标。

我希望我能帮上忙。

 类似资料:
  • 我想用多边形类和一组lat/lng坐标在谷歌地图上画一个城区区域。 OpenStreetMap为我提供了所需的所有数据——如果我键入一些地区名称,我可以获得OSM XML格式的有用数据,例如拉脱维亚里加“Vecmilgravis”地区的OSM绘制多边形,以及OSM XML格式的数据。 问题是所有这些节点都是按某种奇怪的顺序排序的,因此如果我只提取所有和对,并为Google Maps多边形类创建一个

  • 我对类似的http://wiki.openstreetmap.org/wiki/Nominatim 即,为了能够提出请求并获得某种多边形坐标: “geojson:{“类型”:“多边形”,“坐标”:[[[-87.464761,44.600998],-87.459755,44.599569],-87.459745,44.601012],-87.463143,44.601],-87.464761,44.

  • 我想实现喜欢用户可以从我们的应用程序在谷歌地图绘制一个区域。然后当他回来的时候,然后应该加载他/她以前画的数据。 我用了两种方法。一是,, > 使用javascript在googlemap中绘制多边形 https://developers.google.com/maps/documentation/javascript/drawinglayer 使用谷歌地图api数据层<代码>http://jsf

  • 我正在google maps android中开发一个监控地理围栏的应用程序,但是在Geofence Builder类中我们只能设置圆形区域,是不是他们的任何类我们都可以使用多边形来监控地理围栏,请帮助我谢谢和问候

  • 我正试图创建一个餐厅的多个多边形的基础上,他们的送货费用的数据,我在这里https://jsoneditoronline.org/?id=7a7287f99c0964ffd6125b4bb48a2e50 这是我已经有的https://codepen.io/mani619cash/pen/mpaqQq?editors=1000 它基于文本区域中显示的输入数据创建类似的东西 我想要的是类似于下图的东西

  • 在互联网上我可以找到许多创建谷歌地图的例子。 这样地:https://developers.google.com/maps/documentation/javascript/examples/polygon-arrays 但是我需要创建多边形不是从拉特和Lng,而是公里。 示例: 有可能吗?