Portability | GHC only |
---|---|
Stability | experimental |
Maintainer | stephen.tetley@gmail.com |
Affine transformations
- class Rotate t where
- class RotateAbout t where
- rotateAbout :: Radian -> Point2 (DUnit t) -> t -> t
- class Scale t where
- class Translate t where
- rotate30 :: Rotate t => t -> t
- rotate30About :: (RotateAbout t, DUnit t ~ u) => Point2 u -> t -> t
- rotate45 :: Rotate t => t -> t
- rotate45About :: (RotateAbout t, DUnit t ~ u) => Point2 u -> t -> t
- rotate60 :: Rotate t => t -> t
- rotate60About :: (RotateAbout t, DUnit t ~ u) => Point2 u -> t -> t
- rotate90 :: Rotate t => t -> t
- rotate90About :: (RotateAbout t, DUnit t ~ u) => Point2 u -> t -> t
- rotate120 :: Rotate t => t -> t
- rotate120About :: (RotateAbout t, DUnit t ~ u) => Point2 u -> t -> t
- uniformScale :: (Scale t, DUnit t ~ u) => u -> t -> t
- reflectX :: (Num u, Scale t, DUnit t ~ u) => t -> t
- reflectY :: (Num u, Scale t, DUnit t ~ u) => t -> t
- translateBy :: (Translate t, DUnit t ~ u) => Vec2 u -> t -> t
- reflectXPlane :: (Num u, Scale t, Translate t, u ~ DUnit t) => Point2 u -> t -> t
- reflectYPlane :: (Num u, Scale t, Translate t, u ~ DUnit t) => Point2 u -> t -> t
Type classes
class RotateAbout t whereSource
rotateAbout :: Radian -> Point2 (DUnit t) -> t -> tSource
(Floating a, Real a) => RotateAbout (Point2 a) | |
(Floating a, Real a) => RotateAbout (Vec2 a) | |
(Floating u, Real u) => RotateAbout (Picture u) |
Common rotations
rotate30About :: (RotateAbout t, DUnit t ~ u) => Point2 u -> t -> tSource
rotate45About :: (RotateAbout t, DUnit t ~ u) => Point2 u -> t -> tSource
rotate60About :: (RotateAbout t, DUnit t ~ u) => Point2 u -> t -> tSource
rotate90About :: (RotateAbout t, DUnit t ~ u) => Point2 u -> t -> tSource
rotate120About :: (RotateAbout t, DUnit t ~ u) => Point2 u -> t -> tSource
Common scalings
uniformScale :: (Scale t, DUnit t ~ u) => u -> t -> tSource
Translate by a vector
translateBy :: (Translate t, DUnit t ~ u) => Vec2 u -> t -> tSource