Safe Haskell | None |
---|---|
Language | Haskell2010 |
- newtype EllipsoidReaderT f a = EllipsoidReaderT (Ellipsoid -> f a)
- type EllipsoidReader a = EllipsoidReaderT Identity a
- runEllipsoidReader :: Iso' (EllipsoidReader a) (Ellipsoid -> a)
- toEllipsoidReaderT :: Iso' (EllipsoidReaderT f a) (ReaderT Ellipsoid f a)
- hoistEllipsoidReader :: Applicative f => EllipsoidReader a -> EllipsoidReaderT f a
- arrEllipsoidReader :: Applicative f => (Ellipsoid -> a) -> EllipsoidReaderT f a
- readEllipsoid :: Applicative f => EllipsoidReaderT f Ellipsoid
- readSemiMajor :: Applicative f => EllipsoidReaderT f Double
- readFlattening :: Applicative f => EllipsoidReaderT f Double
- readFlatteningReciprocal :: Applicative f => EllipsoidReaderT f Double
- semiMinor :: Applicative f => EllipsoidReaderT f Double
- eccentricitySquared :: Applicative f => EllipsoidReaderT f Double
- eccentricitySquared' :: Applicative f => EllipsoidReaderT f Double
- distributeNormal :: Applicative f => Double -> EllipsoidReaderT f Double
- normal :: Applicative f => EllipsoidReaderT f (Double -> Double)
- wgs84' :: EllipsoidReader a -> a
- wgs84'' :: EllipsoidReaderT f a -> f a
- earthGeo :: Applicative f => EllipsoidReaderT f (ReifiedIso' ECEF LLH)
Documentation
newtype EllipsoidReaderT f a Source #
EllipsoidReaderT (Ellipsoid -> f a) |
MonadTrans EllipsoidReaderT Source # | |
Monad f => Monad (EllipsoidReaderT f) Source # | |
Functor f => Functor (EllipsoidReaderT f) Source # | |
MonadFix f => MonadFix (EllipsoidReaderT f) Source # | |
Applicative f => Applicative (EllipsoidReaderT f) Source # | |
MonadZip f => MonadZip (EllipsoidReaderT f) Source # | |
MonadIO f => MonadIO (EllipsoidReaderT f) Source # | |
Alternative f => Alternative (EllipsoidReaderT f) Source # | |
MonadPlus f => MonadPlus (EllipsoidReaderT f) Source # | |
Wrapped (EllipsoidReaderT f0 a0) Source # | |
(~) * (EllipsoidReaderT f0 a0) t0 => Rewrapped (EllipsoidReaderT f1 a1) t0 Source # | |
type Unwrapped (EllipsoidReaderT f0 a0) Source # | |
type EllipsoidReader a = EllipsoidReaderT Identity a Source #
runEllipsoidReader :: Iso' (EllipsoidReader a) (Ellipsoid -> a) Source #
toEllipsoidReaderT :: Iso' (EllipsoidReaderT f a) (ReaderT Ellipsoid f a) Source #
hoistEllipsoidReader :: Applicative f => EllipsoidReader a -> EllipsoidReaderT f a Source #
arrEllipsoidReader :: Applicative f => (Ellipsoid -> a) -> EllipsoidReaderT f a Source #
readEllipsoid :: Applicative f => EllipsoidReaderT f Ellipsoid Source #
readSemiMajor :: Applicative f => EllipsoidReaderT f Double Source #
readFlattening :: Applicative f => EllipsoidReaderT f Double Source #
semiMinor :: Applicative f => EllipsoidReaderT f Double Source #
eccentricitySquared :: Applicative f => EllipsoidReaderT f Double Source #
>>>
wgs84' eccentricitySquared
6.6943799901413165e-3
eccentricitySquared' :: Applicative f => EllipsoidReaderT f Double Source #
>>>
wgs84' eccentricitySquared'
6.694455244784511e-3
distributeNormal :: Applicative f => Double -> EllipsoidReaderT f Double Source #
normal :: Applicative f => EllipsoidReaderT f (Double -> Double) Source #
>>>
wgs84' normal 7
6387371.845852088
>>>
wgs84' normal 71
6397535.266650572
>>>
wgs84' normal 711
6393308.675975408
>>>
wgs84' normal (-7)
6387371.845852088
wgs84' :: EllipsoidReader a -> a Source #
wgs84'' :: EllipsoidReaderT f a -> f a Source #
earthGeo :: Applicative f => EllipsoidReaderT f (ReifiedIso' ECEF LLH) Source #
>>>
ECEF (XY (-5019624) 2618621) (-2927516) ^. runIso (wgs84' earthGeo)
LLH {ll = LL {_lat = -0.4799654447089294, _lon = 2.66075442877903}, _height = 100.20987554546446}
>>>
ECEF (XY 9919623 (-3116612)) (-2396517) ^. runIso (wgs84' earthGeo)
LLH {ll = LL {_lat = -0.22740831363634992, _lon = -0.30442061911398305}, _height = 4293252.6636643605}
>>>
LLH (LL 0.48 2.661) 100 ^. from (runIso (wgs84' earthGeo))
ECEF {_xy = XY {_x = -5020176.908575072, _y = 2617341.3240995244}, _z = 2927710.5079646683}
>>>
LLH (LL (-0.22741) (-0.30442)) 4293252.66 ^. from (runIso (wgs84' earthGeo))
ECEF {_xy = XY {_x = 9919621.069754401, _y = -3116604.645933256}, _z = -2396534.4668575544}