35 lines
658 B
Go
35 lines
658 B
Go
package main
|
|
|
|
import (
|
|
"math"
|
|
|
|
"github.com/umahmood/haversine"
|
|
)
|
|
|
|
func rad2deg(rad float64) float64 {
|
|
return rad * (180 / math.Pi)
|
|
}
|
|
|
|
func calcDistance(lat_from float64, lon_from float64, lat_to float64, lon_to float64) float64 {
|
|
from := haversine.Coord{Lat: lat_from, Lon: lon_from}
|
|
to := haversine.Coord{Lat: lat_to, Lon: lon_to}
|
|
_, km := haversine.Distance(from, to)
|
|
return km
|
|
}
|
|
|
|
func calcMps(km float64, seconds float64) float64 {
|
|
return (km * 1000) / seconds
|
|
}
|
|
|
|
func calcKnots(mps float64) float64 {
|
|
return mps * 1.94384449
|
|
}
|
|
|
|
func calcKph(mps float64) float64 {
|
|
return mps * 3.6
|
|
}
|
|
|
|
func calcMph(mps float64) float64 {
|
|
return mps * 2.23694
|
|
}
|