
Data.Vec.LinAlg.Transform3D 


Description 
Some 4x4 transformation matrices, using a right handed coordinate system.
These matrices are used by multiplying vectors from the right.
The projection matrices will produce vectors in a left handed coordinate system, i.e. where z goes into the screen.


Synopsis 



Documentation 


A 4x4 translation matrix



:: Floating a   => a  The angle in radians
 > Mat44 a   A 4x4 rotation matrix for a rotation around the X axis




:: Floating a   => a  The angle in radians
 > Mat44 a   A 4x4 rotation matrix for a rotation around the Y axis




:: Floating a   => a  The angle in radians
 > Mat44 a   A 4x4 rotation matrix for a rotation around the Z axis




:: Floating a   => Vec3 a  The normalized vector around which the rotation goes
 > a  The angle in radians
 > Mat44 a   A 4x4 rotation matrix for a rotation around an arbitrary normalized vector




A 4x4 rotation matrix from the euler angles yaw pitch and roll. Could be useful in e.g.
first person shooter games,



:: Num a   => Vec4 a  The quaternion with the real part (w) last
 > Mat44 a   A 4x4 rotation matrix from a normalized quaternion. Useful for most free flying rotations, such as airplanes.




:: Floating a   => Vec3 a  The up direction, not necessary unit length or perpendicular to the view vector
 > Vec3 a  The viewers position
 > Vec3 a  The point to look at
 > Mat44 a   A 4x4 rotation matrix for turning toward a point. Useful for targeting a camera to a specific point.




A 4x4 scaling matrix



:: Floating a   => a  Near plane clipping distance (always positive)
 > a  Far plane clipping distance (always positive)
 > a  Field of view of the y axis, in radians
 > a  Aspect ratio, i.e. screen's width/height
 > Mat44 a   A perspective projection matrix for a right handed coordinate system looking down negative z. This will project far plane to z = +1 and near plane to z = 1, i.e. into a left handed system.




:: Fractional a   => a  Near plane clipping distance
 > a  Far plane clipping distance
 > Vec2 a  The size of the view (center aligned around origo)
 > Mat44 a   An orthogonal projection matrix for a right handed coordinate system looking down negative z. This will project far plane to z = +1 and near plane to z = 1, i.e. into a left handed system.



Produced by Haddock version 2.4.2 