javascript - Google Maps V3 Circle 和我创建的 Circle 不匹配

标签 javascript jquery google-maps google-maps-api-3 gis

我使用 Google Maps V3 API 创建了一个圆,还尝试制作了一个具有相同半径的标记圆。

问题:我创建的是倾斜的,而谷歌地图创建的是一个漂亮的圆圈。出了什么问题?

Google map V3 圆代码

// Draw search circle
search_circle = new google.maps.Circle;
search_circle.setCenter(target_latlng);
search_circle.setRadius(travel_time * average_speed);
search_circle.setMap(map);

enter image description here

最佳答案

这里你需要记住一件事,谷歌圆给出了球体(地球)上两点之间的距离,这就是你的圆看起来不一样的原因。

您没有在示例中指定圆圈的用途,但从代码片段中我可以看出它与行进距离有关。在这种情况下,您可能有兴趣研究:

The Haversine Formula

The Spherical Law of Cosines

还有 this page可以为您提供一些关于如何调整公式以获得正确圆形的基础。

编辑:为了正确起见,地球不是一个完美的球体,但出于所有实际目的,它被假定为一个。

关于javascript - Google Maps V3 Circle 和我创建的 Circle 不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8064930/

相关文章:

javascript - 如何显示城市的 Google map ?

javascript - Firefox 鼠标事件不起作用

javascript - 数据表使用混合数字和字母对数据进行排序

javascript - 在转换后的 UL 列表中添加选择选项

react-native - react-native-maps 中的当前位置

javascript - Google map 屏幕截图不适用于使用 html2canvas 的标记和标记集群

javascript - 如何在javascript中暂停执行?

javascript - 如何创建以不同于辅音的方式对元音进行评分的字母评分函数

javascript - 如何更新数据库中的所有行并在不刷新的情况下显示更新的数据?

javascript - 无法更改新闻行情的方向