Safe Haskell | None |
---|
- (!*!) :: (Functor m, Foldable r, Applicative r, Distributive n, Num a) => m (r a) -> r (n a) -> m (n a)
- (!*) :: (Functor m, Metric r, Num a) => m (r a) -> r a -> m a
- (*!) :: (Metric r, Distributive n, Num a) => r a -> r (n a) -> n a
- adjoint :: (Functor m, Distributive n, Conjugate a) => m (n a) -> n (m a)
- type M33 a = V3 (V3 a)
- type M44 a = V4 (V4 a)
- type M43 a = V4 (V3 a)
- m33_to_m44 :: Num a => M33 a -> M44 a
- m43_to_m44 :: Num a => M43 a -> M44 a
- eye3 :: Num a => M33 a
- eye4 :: Num a => M44 a
- trace :: (Monad f, Foldable f, Num a) => f (f a) -> a
- translation :: (R3 t, R4 v, Functor f, Functor t) => (V3 a -> f (V3 a)) -> t (v a) -> f (t a)
- fromQuaternion :: Num a => Quaternion a -> M33 a
- mkTransformation :: Num a => Quaternion a -> V3 a -> M44 a
Documentation
(!*!) :: (Functor m, Foldable r, Applicative r, Distributive n, Num a) => m (r a) -> r (n a) -> m (n a)Source
matrix product
(*!) :: (Metric r, Distributive n, Num a) => r a -> r (n a) -> n aSource
row vector * matrix
adjoint :: (Functor m, Distributive n, Conjugate a) => m (n a) -> n (m a)Source
hermitian conjugate or conjugate transpose
m33_to_m44 :: Num a => M33 a -> M44 aSource
m43_to_m44 :: Num a => M43 a -> M44 aSource
translation :: (R3 t, R4 v, Functor f, Functor t) => (V3 a -> f (V3 a)) -> t (v a) -> f (t a)Source
Extract the translation vector (first three entries of the last column) from a 3x4 or 4x4 matrix
fromQuaternion :: Num a => Quaternion a -> M33 aSource
Build a rotation matrix from a Quaternion
.
mkTransformation :: Num a => Quaternion a -> V3 a -> M44 aSource
Build a transformation matrix from a rotation expressed as a
Quaternion
and a translation vector.