import math
# 2つのトラックポイントの座標
lat1 = 35.91555
lon1 = 138.54241
lat2 = 35.91554
lon2 = 138.54238
# 緯度経度をラジアンに変換
lat1_rad = math.radians(lat1)
lon1_rad = math.radians(lon1)
lat2_rad = math.radians(lat2)
lon2_rad = math.radians(lon2)
# 2つのトラックポイント間の方向を計算
delta_lon = lon2_rad - lon1_rad
y = math.sin(delta_lon) * math.cos(lat2_rad)
x = math.cos(lat1_rad) * math.sin(lat2_rad) - math.sin(lat1_rad) * math.cos(lat2_rad) * math.cos(delta_lon)
# 方向(方角)を計算(ラジアンから度に変換)
bearing_degrees = math.degrees(math.atan2(y, x))
# 方向が0から360の範囲になるように調整
bearing_degrees = (bearing_degrees + 360) % 360
print(f"2つのトラックポイントの方向(方角): {bearing_degrees} 度")
コメント