Merge remote-tracking branch 'origin/master'
Some checks failed
Локальный тест / test (push) Has been cancelled
Some checks failed
Локальный тест / test (push) Has been cancelled
This commit is contained in:
@@ -642,29 +642,6 @@ class Tile:
|
||||
self.y = y0
|
||||
self.z = z0
|
||||
|
||||
# Возвращает расстояние в метрах между двумя точками на карте
|
||||
func haversine_m(lat1: float, lon1: float, lat2: float, lon2: float) -> float:
|
||||
# Радиус Земли в метрах
|
||||
const R: = 6372795.0
|
||||
# Преобразование градусов в радианы
|
||||
var rlat1: = deg_to_rad(lat1)
|
||||
var rlon1: = deg_to_rad(lon1)
|
||||
var rlat2: = deg_to_rad(lat2)
|
||||
var rlon2: = deg_to_rad(lon2)
|
||||
# вычисление длины большого круга
|
||||
var cl1: = cos(rlat1)
|
||||
var cl2: = cos(rlat2)
|
||||
var sl1: = sin(rlat1)
|
||||
var sl2: = sin(rlat2)
|
||||
var delta: = rlon2 - rlon1
|
||||
var cdelta: = cos(delta)
|
||||
var sdelta: = sin(delta)
|
||||
var y: = sqrt(pow(cl2 * sdelta, 2.0) + pow(cl1 * sl2 - sl1 * cl2 * cdelta, 2.0))
|
||||
var x: = sl1 * sl2 + cl1 * cl2 * cdelta
|
||||
var ad: = atan2(y, x)
|
||||
var dist: = ad * R
|
||||
return dist
|
||||
|
||||
|
||||
func remove_closest_dot(screen_pos: Vector2) -> bool:
|
||||
var closest_dot = find_at_screen_position(screen_pos)
|
||||
|
||||
Reference in New Issue
Block a user