45 lines
910 B
Go
45 lines
910 B
Go
package main
|
|
|
|
import (
|
|
"math"
|
|
|
|
"github.com/umahmood/haversine"
|
|
)
|
|
|
|
func (pool *Pool) rad2deg(rad float64) float64 {
|
|
return rad * (180 / math.Pi)
|
|
}
|
|
|
|
func (pool *Pool) 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 (pool *Pool) calcMps(km float64, seconds float64) float64 {
|
|
return (km * 1000) / seconds
|
|
}
|
|
|
|
func (pool *Pool) calcKnots(mps float64) float64 {
|
|
return mps * 1.94384449
|
|
}
|
|
|
|
func (pool *Pool) calcKph(mps float64) float64 {
|
|
return mps * 3.6
|
|
}
|
|
|
|
func (pool *Pool) calcMph(mps float64) float64 {
|
|
return mps * 2.23694
|
|
}
|
|
|
|
func (pool *Pool) coalition(side string) string {
|
|
if side == "Allies" {
|
|
return "REDFOR"
|
|
} else if side == "Enemies" {
|
|
return "BLUFOR"
|
|
} else {
|
|
return "GRNFOR"
|
|
}
|
|
}
|