Portability | GHC |
---|---|
Stability | highly unstable |
Maintainer | stephen.tetley@gmail.com |
LocImage and LocGraphic types - these are functional types from the DrawingContext and start point to a graphic primitive.
- data LocImage u a
- type LocGraphic u = LocImage u (UNil u)
- type DLocImage a = LocImage Double a
- type DLocGraphic = LocGraphic Double
- data LocQuery u a
- runLocImage :: InterpretUnit u => DrawingContext -> Point2 u -> LocImage u a -> PrimResult u a
- runLocQuery :: InterpretUnit u => DrawingContext -> Point2 u -> LocQuery u a -> a
- stripLocImage :: LocImage u a -> LocQuery u a
- liftLocQuery :: LocQuery u a -> LocImage u a
- promoteLoc :: InterpretUnit u => (Point2 u -> Image u a) -> LocImage u a
- applyLoc :: InterpretUnit u => LocImage u a -> Point2 u -> Image u a
- supplyLoc :: InterpretUnit u => Point2 u -> LocImage u a -> Image u a
- qpromoteLoc :: InterpretUnit u => (Point2 u -> Query u a) -> LocQuery u a
- qapplyLoc :: InterpretUnit u => LocQuery u a -> Point2 u -> Query u a
- emptyLocImage :: Monoid a => LocImage u a
- moveStart :: InterpretUnit u => Vec2 u -> LocImage u a -> LocImage u a
- at :: InterpretUnit u => LocImage u a -> Point2 u -> Image u a
- distrib :: (Monoid a, InterpretUnit u) => Vec2 u -> [LocImage u a] -> LocImage u a
- distribH :: (Monoid a, InterpretUnit u) => u -> [LocImage u a] -> LocImage u a
- distribV :: (Monoid a, InterpretUnit u) => u -> [LocImage u a] -> LocImage u a
- duplicate :: (Monoid a, InterpretUnit u) => Int -> Vec2 u -> LocImage u a -> LocImage u a
- duplicateH :: (Monoid a, InterpretUnit u) => Int -> u -> LocImage u a -> LocImage u a
- duplicateV :: (Monoid a, InterpretUnit u) => Int -> u -> LocImage u a -> LocImage u a
Documentation
LocThetaImage
- function from start point and
DrawingContext to a polymorphic answer and a graphic
primitive (PrimW).
Decorate LocImage | |
UConvert LocImage | |
Monad (LocImage u) | |
Functor (LocImage u) | |
Applicative (LocImage u) | |
DrawingCtxM (LocImage u) | |
Monoid a => Monoid (LocImage u a) | |
(Real u, Floating u, InterpretUnit u, Rotate a) => Rotate (LocImage u a) | |
(u ~ DUnit a, Real u, Floating u, InterpretUnit u, RotateAbout a) => RotateAbout (LocImage u a) | |
(Fractional u, InterpretUnit u, Scale a) => Scale (LocImage u a) | |
(u ~ DUnit a, InterpretUnit u, Translate a, ScalarUnit u) => Translate (LocImage u a) |
type LocGraphic u = LocImage u (UNil u)Source
type DLocGraphic = LocGraphic DoubleSource
Type specialized version of LocGraphic
.
runLocImage :: InterpretUnit u => DrawingContext -> Point2 u -> LocImage u a -> PrimResult u aSource
runLocQuery :: InterpretUnit u => DrawingContext -> Point2 u -> LocQuery u a -> aSource
stripLocImage :: LocImage u a -> LocQuery u aSource
liftLocQuery :: LocQuery u a -> LocImage u aSource
promoteLoc :: InterpretUnit u => (Point2 u -> Image u a) -> LocImage u aSource
supplyLoc :: InterpretUnit u => Point2 u -> LocImage u a -> Image u aSource
Flipped version of applyLoc
.
qpromoteLoc :: InterpretUnit u => (Point2 u -> Query u a) -> LocQuery u aSource
emptyLocImage :: Monoid a => LocImage u aSource
Having empty at the specific LocImage
type is useful.
Composing LocImages
duplicate :: (Monoid a, InterpretUnit u) => Int -> Vec2 u -> LocImage u a -> LocImage u aSource
This is analogue to replicate
in the Prelude.
duplicateH :: (Monoid a, InterpretUnit u) => Int -> u -> LocImage u a -> LocImage u aSource
duplicateV :: (Monoid a, InterpretUnit u) => Int -> u -> LocImage u a -> LocImage u aSource