| Safe Haskell | None |
|---|
Data.Geo.Geodetic.GreatCircle
Description
Great circle geodetic distance algorithm.
- sphericalLaw :: (HasCoordinate c1, HasCoordinate c2) => Sphere -> c1 -> c2 -> Double
- sphericalLawD :: (HasCoordinate c1, HasCoordinate c2) => c1 -> c2 -> Double
- sphericalLaw' :: Optional1 Sphere (Coordinate -> Coordinate -> Double) x => x
Documentation
Arguments
| :: (HasCoordinate c1, HasCoordinate c2) | |
| => Sphere | reference sphere |
| -> c1 | start coordinate |
| -> c2 | end coordinate |
| -> Double |
Great circle spherical law algorithm.
>>>fmap (printf "%0.4f") (do fr <- 27.812 ..#.. 154.295; to <- (-66.093) ..#.. 12.84; return (sphericalLaw earthMean fr to)) :: Maybe StringJust "15000950.5589"
>>>fmap (printf "%0.4f") (do fr <- (-16.7889) ..#.. 41.935; to <- 6.933 ..#.. (-162.55); return (sphericalLaw earthMean fr to)) :: Maybe StringJust "17128743.0669"
>>>fmap (printf "%0.4f") (do fr <- 27.812 ..#.. 154.295; to <- (-66.093) ..#.. 12.84; return (sphericalLaw (6350000 ^. nSphere) fr to)) :: Maybe StringJust "14959840.4461"
>>>fmap (printf "%0.4f") (do fr <- (-16.7889) ..#.. 41.935; to <- 6.933 ..#.. (-162.55); return (sphericalLaw (6350000 ^. nSphere) fr to)) :: Maybe StringJust "17081801.7377"
Arguments
| :: (HasCoordinate c1, HasCoordinate c2) | |
| => c1 | start coordinate |
| -> c2 | end coordinate |
| -> Double |
Great circle spherical law algorithm with a default sphere of the earth mean.
>>>fmap (printf "%0.4f") (do fr <- 27.812 ..#.. 154.295; to <- (-66.093) ..#.. 12.84; return (sphericalLawD fr to)) :: Maybe StringJust "15000950.5589"
>>>fmap (printf "%0.4f") (do fr <- (-16.7889) ..#.. 41.935; to <- 6.933 ..#.. (-162.55); return (sphericalLawD fr to)) :: Maybe StringJust "17128743.0669"
sphericalLaw' :: Optional1 Sphere (Coordinate -> Coordinate -> Double) x => xSource
Great circle spherical law algorithm with an optionally applied default sphere of the earth mean.
>>>fmap (printf "%0.4f") (do fr <- 27.812 ..#.. 154.295; to <- (-66.093) ..#.. 12.84; return (sphericalLaw' fr to :: Double)) :: Maybe StringJust "15000950.5589"
>>>fmap (printf "%0.4f") (do fr <- (-16.7889) ..#.. 41.935; to <- 6.933 ..#.. (-162.55); return (sphericalLaw' fr to :: Double)) :: Maybe StringJust "17128743.0669"