gpt4 book ai didi

javascript - Google Maps API v3 - 对齐折线边缘

转载 作者:行者123 更新时间:2023-12-04 19:57:04 24 4
gpt4 key购买 nike

有谁知道如何使标记或多段线与现有多段线的坐标对齐?

我正在寻找类似于 googlemaps engine lite 中的行为的东西:https://mapsengine.google.com

如果您在此处选择折线或标记并尝试编辑另一条折线坐标(使用 ctrl 或 shift),它将捕捉到标记或折线坐标

最佳答案

据我所知,没有简单的方法可以做到这一点。多段线只有您最初传递给它们的位置(latLng 对象),仅此而已。

因此,考虑到这一点,您可以采取两种方法:

  1. 而不是 Polyline , 你可以画一个 Polygon .
  2. 更改折线以包含更多点。

多边形

使用这种方法,您必须绘制一个非常的多边形,细到看起来像一条线。

通过这种方法,您可以使用 containsLocation() 轻松检查标记是否在多边形内。方法,如果不是,则将其新位置设置为多边形内部。

缺点是你的Polygon需要非常非常细,而且你需要给线条设置一个宽度。如果宽度太大,拖动会看起来不准确,如果宽度太小,则可能会漏掉。

折线

使用这种方法,您必须向多段线添加多个点,然后在每次消失时将标记移动到其中一个点。

这样就不需要创建宽度来计算线,但是你需要自动计算几十个甚至几百个额外的点,然后将它们添加到折线中。

这两种解决方案都可行,并且各有利弊。最后,它几乎围绕着你更喜欢哪种毒药这句老话。

额外

撇开理论不谈,我确实找到了 good example for the Polylines strategy (感谢 @geocodezip 的评论和 @BradBarrow 的回复)。

关于javascript - Google Maps API v3 - 对齐折线边缘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18325166/

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