gpt4 book ai didi

javascript - 在 Google map api 中加载多边形

转载 作者:行者123 更新时间:2023-11-28 05:46:48 25 4
gpt4 key购买 nike

我想实现像用户可以从我们的应用程序中在谷歌地图中绘制一个区域。然后当他回来时,就应该加载他/她之前绘制的数据。

我已经做了两种方法。一是,

  1. 使用绘图管理器。

    Drawing Polygon in google map using javascript

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

  2. 使用 Google map api 数据层。 http://jsfiddle.net/dg9e93qy/

从第一种方法中,我可以允许用户拖动,并且可以限制用户绘制多个多边形。但我无法再次将多边形加载到该绘图中。但我发现在某个地方我们可以加载多边形。 https://developers.google.com/maps/documentation/javascript/examples/polygon-simple

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

这里我需要任何其他两个解决方案。

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

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

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

在这里我无法获取绘制区域。如何做到这一点?

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

最佳答案

我已经做了替代方案,创建了多边形,而不是在同一个绘图管理器中加载。

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

如果我们删除多边形,然后从 map 中删除多边形并重新创建绘图管理器。

这解决了我的问题。

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);

关于javascript - 在 Google map api 中加载多边形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38458133/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com