Copyright | (c) 2020 Cedric Liegeois |
---|---|
License | BSD3 |
Maintainer | Cedric Liegeois <ofmooseandmen@yahoo.fr> |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Types and functions for working with ellipsoids (including spheres).
see Data.Geo.Jord.Ellipsoids for supported ellipsoids.
Synopsis
- data Ellipsoid
- equatorialRadius :: Ellipsoid -> Length
- polarRadius :: Ellipsoid -> Length
- eccentricity :: Ellipsoid -> Double
- flattening :: Ellipsoid -> Double
- ellispoid :: Length -> Double -> Ellipsoid
- sphere :: Length -> Ellipsoid
- toSphere :: Ellipsoid -> Ellipsoid
- isSphere :: Ellipsoid -> Bool
- meanRadius :: Ellipsoid -> Length
Documentation
Parameters of an ellispoid describing the surface of a celestial body.
An ellispoid is a circle if its equatorialRadius
and polarRadius
are
equal (both its eccentricity
and flattening
are 0); it is used to represent
a celestial body as a sphere.
equatorialRadius :: Ellipsoid -> Length Source #
equatorial radius or semi-major axis (a).
polarRadius :: Ellipsoid -> Length Source #
polar radius or semi-minor axis (b).
eccentricity :: Ellipsoid -> Double Source #
eccentricity
flattening :: Ellipsoid -> Double Source #
flattening
ellispoid :: Length -> Double -> Ellipsoid Source #
ellispoid eqr invf
: ellipsoid with equatorial radius eqr
and inverse flattening invf
.
sphere :: Length -> Ellipsoid Source #
sphere r
: ellipsoid with equatorial & polar radius radius r
.
The returned ellipsoid is a sphere.
meanRadius :: Ellipsoid -> Length Source #
meanRadius e
computes the mean radius of ellipsoid e
.