vect-0.4.5: A low-dimensional linear algebra library, tailored to computer graphics.Source codeContentsIndex
Data.Vect.Float.Util.Dim4
Description
Rotation around an arbitrary plane in four dimensions, and other miscellanea. Not very useful for most people, and not re-exported by Data.Vect.
Synopsis
structVec4 :: [Float] -> [Vec4]
destructVec4 :: [Vec4] -> [Float]
translate4X :: Float -> Vec4 -> Vec4
translate4Y :: Float -> Vec4 -> Vec4
translate4Z :: Float -> Vec4 -> Vec4
translate4W :: Float -> Vec4 -> Vec4
vec4X :: Vec4
vec4Y :: Vec4
vec4Z :: Vec4
vec4W :: Vec4
biVector4 :: Vec4 -> Vec4 -> (Float, Float, Float, Float, Float, Float)
biVector4AsTensor :: Vec4 -> Vec4 -> Mat4
rotate4' :: Float -> (Normal4, Normal4) -> Vec4 -> Vec4
rotate4 :: Float -> (Vec4, Vec4) -> Vec4 -> Vec4
rotMatrix4' :: Float -> (Normal4, Normal4) -> Mat4
rotMatrix4 :: Float -> (Vec4, Vec4) -> Mat4
Documentation
structVec4 :: [Float] -> [Vec4]Source
destructVec4 :: [Vec4] -> [Float]Source
translate4X :: Float -> Vec4 -> Vec4Source
translate4Y :: Float -> Vec4 -> Vec4Source
translate4Z :: Float -> Vec4 -> Vec4Source
translate4W :: Float -> Vec4 -> Vec4Source
vec4X :: Vec4Source
vec4Y :: Vec4Source
vec4Z :: Vec4Source
vec4W :: Vec4Source
biVector4 :: Vec4 -> Vec4 -> (Float, Float, Float, Float, Float, Float)Source

If (x,y,u,v) is an orthonormal system, then (written in pseudo-code) biVector4 (x,y) = plusMinus (reverse $ biVector4 (u,v)). This is a helper function for the 4 dimensional rotation code. If (x,y,z,p,q,r) = biVector4 a b, then the corresponding antisymmetric tensor is

 [  0  r  q  p ]
 [ -r  0  z -y ]
 [ -q -z  0  x ]
 [ -p  y -x  0 ]
biVector4AsTensor :: Vec4 -> Vec4 -> Mat4Source
the corresponding antisymmetric tensor
rotate4' :: Float -> (Normal4, Normal4) -> Vec4 -> Vec4Source
We assume that the axes are normalized and orthogonal to each other!
rotate4 :: Float -> (Vec4, Vec4) -> Vec4 -> Vec4Source
We assume only that the axes are independent vectors.
rotMatrix4' :: Float -> (Normal4, Normal4) -> Mat4Source
Rotation matrix around a plane specified by two normalized and orthogonal vectors. Intended for multiplication on the right!
rotMatrix4 :: Float -> (Vec4, Vec4) -> Mat4Source
We assume only that the axes are independent vectors.
Produced by Haddock version 2.4.2