如何使用 google 地图 api 获取路线 north/south/east/west?
How to get the directions north/south/east/west with google maps api?
例如我有 5 个标记,我想根据主要标记(中间的红色)获得每个标记的方向(E、W、NE 等)。这是一张照片。有没有办法用 google.maps.DirectionsService 做到这一点或以某种方式计算它?
谢谢。
更新:这是我得到的:
m.position.lng() - c.position.lng()
m.position.lat() - c.position.lat()
让我来出主意。
您可以使用 slope
。假设您有一个标记 M1
和中心标记 C
.
Slope
应该等于 (C.lat - C.lng)/(M1.lat - M1.lng)
如果坡度刚好接近 0 它可以是东或西如果 M1.lng > C.lng
它应该是西
如果坡度接近 1,则它是西南或东北。然后,如果 M1.lng > C.lng
是西南
如果坡度接近 -1,则它是西北或东南。那么iM1.lng > C.lng
,就是西北。
您可以对其他方向使用相同的方法
假设我们想要找到从 A 点到 B 点的基本方向:
if (A.lat > B.lat){
NS = "S"
} else {
NS = "N"
}
if (A.lng > B.lng){
EW = "W"
} else {
EW = "E"
}
cardinal_direction = NS + EW
可能的 cardinal_direction
值为:西南、东南、西北、东北
例如我有 5 个标记,我想根据主要标记(中间的红色)获得每个标记的方向(E、W、NE 等)。这是一张照片。有没有办法用 google.maps.DirectionsService 做到这一点或以某种方式计算它? 谢谢。
更新:这是我得到的:
m.position.lng() - c.position.lng()
m.position.lat() - c.position.lat()
让我来出主意。
您可以使用 slope
。假设您有一个标记 M1
和中心标记 C
.
Slope
应该等于 (C.lat - C.lng)/(M1.lat - M1.lng)
如果坡度刚好接近 0 它可以是东或西如果 M1.lng > C.lng
它应该是西
如果坡度接近 1,则它是西南或东北。然后,如果 M1.lng > C.lng
是西南
如果坡度接近 -1,则它是西北或东南。那么iM1.lng > C.lng
,就是西北。
您可以对其他方向使用相同的方法
假设我们想要找到从 A 点到 B 点的基本方向:
if (A.lat > B.lat){
NS = "S"
} else {
NS = "N"
}
if (A.lng > B.lng){
EW = "W"
} else {
EW = "E"
}
cardinal_direction = NS + EW
可能的 cardinal_direction
值为:西南、东南、西北、东北