Safe Haskell | None |
---|---|
Language | Haskell2010 |
Limited spatial transformations in 2 and 3 dimensions.
- data Affine a r
- type Affine2 a = Affine (V2 a) a
- type Affine3 a = Affine (V3 a) (a, V3 a)
- promoteV2 :: Num a => V2 a -> V3 a
- demoteV3 :: V3 a -> V2 a
- promoteAffine2 :: Num a => Affine2 a -> Affine3 a
- affine3Modelview :: (Num a, Real a, Floating a, Epsilon a) => Affine3 a -> M44 a
- affine2Modelview :: (Num a, Real a, Floating a, Epsilon a) => Affine2 a -> M44 a
- affine2sModelview :: (Num a, Real a, Floating a, Epsilon a) => [Affine2 a] -> M44 a
- transformV2 :: Num a => M44 a -> V2 a -> V2 a
- transformPoly :: M44 Float -> [V2 Float] -> [V2 Float]
- transformV3 :: RealFloat a => M44 a -> V3 a -> V3 a
- v3ToM41 :: Num a => V3 a -> V4 (V1 a)
- m41ToV3 :: V4 (V1 a) -> V3 a
- rotateAbout :: (Num a, Epsilon a, Floating a) => V3 a -> a -> V3 a -> V3 a
- mat4Translate :: Num a => V3 a -> M44 a
- mat4Rotate :: (Num a, Epsilon a, Floating a) => a -> V3 a -> M44 a
- mat4Scale :: Num a => V3 a -> M44 a
Documentation
promoteV2 :: Num a => V2 a -> V3 a Source #
Promotes a point in R2 to a point in R3 by setting the z coord to '0'.