Copyright | (c) Anton Gushcha, 2015-2016 Oganyan Levon, 2016 |
---|---|
License | BSD3 |
Maintainer | ncrashed@gmail.com |
Stability | experimental |
Portability | POSIX |
Safe Haskell | None |
Language | Haskell2010 |
Defines common math transformations for world, camera, vieport spaces.
- scale :: Num a => V3 a -> M44 a
- rotationZ :: Floating a => a -> M44 a
- translate :: Num a => V3 a -> M44 a
- scale2D :: Num a => V2 a -> M33 a
- rotation2D :: Floating a => a -> M33 a
- translate2D :: Num a => V2 a -> M33 a
- toHom2D :: Num a => V2 a -> V3 a
- fromHom2D :: Floating a => V3 a -> V2 a
- applyTransform2D :: Floating a => M33 a -> V2 a -> V2 a
- viewportTransform2D :: Floating a => V2 a -> V2 a -> M33 a
3D matrix transformations
2D matrix transformations
rotation2D :: Floating a => a -> M33 a Source
Rotation matrix for 2D transformation
translate2D :: Num a => V2 a -> M33 a Source
Translation matrix for 2D transformation
applyTransform2D :: Floating a => M33 a -> V2 a -> V2 a Source
Applies transformation matrix to vector
:: Floating a | |
=> V2 a | Viewport left top corner |
-> V2 a | Viewport right bottom corner |
-> M33 a |
Viewport transformation matrix