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

在谷歌地图api中加载多边形

郭阳曜
2023-03-14

我想实现喜欢用户可以从我们的html" target="_blank">应用程序在谷歌地图绘制一个区域。然后当他回来的时候,然后应该加载他/她以前画的数据。

我用了两种方法。一是,,

>

使用javascript在googlemap中绘制多边形

https://developers.google.com/maps/documentation/javascript/drawinglayer

使用谷歌地图api数据层<代码>http://jsfiddle.net/dg9e93qy/

从第一种方法,我可以允许用户拖动,并可以限制用户绘制多个多边形。但是我不能再次将多边形加载到这幅画中。但是我找到了一个可以加载多边形的地方。https://developers.google.com/maps/documentation/javascript/examples/polygon-simple.

但这是使用多边形实例来显示多边形,而不是绘图。

这里我需要另外两种解决方案。

>

  • 是否应使用绘图将多边形数据加载到地图。

    应该启用绘图选项使用多边形https://developers.google.com/maps/documentation/javascript/examples/polygon-simple

    从第二种方法中,我可以得到坐标,并可以再次加载多边形。但是我不能从中得到多边形区域。(实际上我正在获取geoJson数据)

    在这里,我无法获得绘制位置的区域。怎么做?

    第一种方法或第二种方法的任何答案都是好的。

  • 共有1个答案

    蔡楚
    2023-03-14

    我已经做了另一种选择,创建了多边形,而不是在同一个图形管理器中加载。

    绘图完成后,删除绘图管理器,然后创建多边形。然后有一个单独的按钮来从地图上删除多边形。

    如果删除多边形,则从地图中删除多边形并重新创建图形管理器。

    这解决了我的问题。

    drawingManager.setMap(null);
                        bermudaTriangle = new google.maps.Polygon({
                            paths: polygonsArray,
                            strokeColor: '#FF0000',
                            strokeOpacity: 0.8,
                            strokeWeight: 2,
                            fillColor: '#FF0000',
                            fillOpacity: 0.35
                            //,editable: true
                        });
                        bermudaTriangle.setMap(map);
    
     类似资料:
    • 我一直在阅读GoogleMapsJSAPI的文档,我无法理解这一点。我想将geojson文件加载到地图,以便它可以显示所有标记,但在文档(如下所示)中,它使用url。除了使用本地文件(使用我自己的geojson)之外,我如何做同样的事情? 这是GoogleAPI文档 这是我的geojson。根据控制台,错误出现在“类型”:“FeatureCollection”(the):) 控制台错误 控制台错误

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

    • 我用谷歌地图标记找到了一个答案,但是自从它死了,我就陷入了死胡同。 我想知道是否有人知道我将如何在我的网站上为用户复制此内容:https://www.google.ca/maps/place/Toronto,在m4n3m5/@43.7216028,-79.3771275,16z/数据=!3m1!4b1!4m5!3m4!10x89D4CD2E4F1652CD:0xee93f0117ea5797d!8

    • 最近Chrome开始发出以下警告: [违规]将非被动事件侦听器添加到阻止滚动的触摸移动事件。考虑将事件处理程序标记为“被动”,以使页面更具响应性。看https://www.chromestatus.com/feature/5745543795965952 这些都来自JavaScript谷歌地图API代码。我可以在自己的代码中将{passive:true}添加到addEventListener(),

    • 我对类似的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库,支持通过邮政编码或城市作为参数的能力,并获得一个列表的x, y坐标绘制一个多边形使用谷歌地图? 这是否存在?谷歌地图API支持这样的查询吗?我正在寻找一个类似于谷歌用来在谷歌查询中绘制地图的坐标数组: