我使用Google Maps V3 API创建了一个圆圈,并尝试制作一个半径相同的标记圈.
问题:我创建的那个是倾斜的,而谷歌地图的那个是一个很好的圆形圈.什么地方出了错?
Google Maps V3 Circle Code
// 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);
解决方法
你需要记住的一件事是,谷圈给出了球体(地球)上两点之间的距离,这就是为什么你的圆圈看起来不一样的原因.
您没有在示例中指定圆圈的用途,但是从代码段我可以看出它与旅行距离有关.在这种情况下,您可能有兴趣研究:
The Haversine Formula
要么
The Spherical Law of Cosines
此外,this page可以为您提供一些基础,如何调整您的公式,以获得正确的圆形.
编辑:为了正确起见,地球不是一个完美的球体,但出于所有实际目的,它被认为是一个.