geoshpereパッケージdestPoint()


RのgeoshpereパッケージのdestPoint()を用いて、地点(Po)から任意の方位・距離にある地点の経度・緯度(Px)を求めることができます。pは基準点の位置(経度・緯度)、bは方位(90度、真北が0度、真西が-90度、真南が-180度となる角度)、dは距離(m)とすると、destPoint(p, b, d)でPxを求めることができます。例えば、名古屋駅(北緯35.170915度、東経136.881537度)( 世界測地系 WGS84)から北東に50 km(=50,000 m)の地点の緯度経度を求めるには、

library(“geosphere”)
nagoya <- c(136.881537, 35.170915)
destPoint(nagoya, 45, 50000)

で求められる。これを応用して、名古屋駅から2000 km の離れた地点の等距離線を地図上に図示してみる。

library(“geosphere”)
nagoya <- c(136.881537, 35.170915)
point_2000<- destPoint(nagoya, -180:180, 2000000)

data(wrld)
plot(wrld, type = “l”)
polygon(point_2000, col=rgb(1, 0, 1, alpha=0.1), border = rgb(1, 0, 0, 1), lwd = 2)
points(nagoya[1], nagoya[2], pch = 20, col = rgb(1, 0, 0, 1))

補足 destPoint()では 世界測地系 WGS84( 準拠楕円体 )がデフォルトで、赤道半径6378137.0 m、極半径 6356752.314245 mである。扁平率は298.25223563である。

名古屋駅から2000km圏内を示す