Castor3D 0.16.0
Multiplatform 3D engine
Espaces de nommage | Fonctions
Référence du fichier TransformationMatrix.hpp

Espaces de nommage

namespace  castor
 
namespace  castor::matrix
 Opérations basiques sur des matrices 4x4.
 

Fonctions

template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::rotate (Matrix4x4< T > &matrix, QuaternionT< U > const &orientation)
 Fonction de rotation, construit une matrice de rotation à partir d'un quaternion.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::setRotate (Matrix4x4< T > &matrix, QuaternionT< U > const &orientation)
 Fonction de rotation, construit une matrice de rotation à partir d'un quaternion.
 
template<typename T , typename U >
static void castor::matrix::getRotate (Matrix4x4< T > const &matrix, QuaternionT< U > &orientation)
 Fonction de rotation, construit une matrice de rotation à partir d'un quaternion.
 
template<typename T >
static Matrix4x4< T > & castor::matrix::yaw (Matrix4x4< T > &matrix, Angle const &angle)
 Fonction de rotation autour de l'axe Y, construit une matrice de rotation à partir d'un angle.
 
template<typename T >
static Matrix4x4< T > & castor::matrix::pitch (Matrix4x4< T > &matrix, Angle const &angle)
 Fonction de rotation autour de l'axe X, construit une matrice de rotation à partir d'un angle.
 
template<typename T >
static Matrix4x4< T > & castor::matrix::roll (Matrix4x4< T > &matrix, Angle const &angle)
 Fonction de rotation autour de l'axe Z, construit une matrice de rotation à partir d'un angle.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::scale (Matrix4x4< T > &matrix, U x, U y, U z)
 Fonction de mise a l'échelle.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::scale (Matrix4x4< T > &matrix, Point3< U > const &scaling)
 Fonction de mise a l'échelle.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::setScale (Matrix4x4< T > &matrix, U x, U y, U z)
 Fonction de mise a l'échelle.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::setScale (Matrix4x4< T > &matrix, Point3< U > const &scaling)
 Fonction de mise a l'échelle.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::translate (Matrix4x4< T > &matrix, U x, U y, U z)
 Fonction de construction de matrice de translation.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::translate (Matrix4x4< T > &matrix, Point3< U > const &translation)
 Fonction de construction de matrice de translation.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::setTranslate (Matrix4x4< T > &matrix, U x, U y, U z)
 Fonction de construction de matrice de translation.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::setTranslate (Matrix4x4< T > &matrix, Point3< U > const &translation)
 Fonction de construction de matrice de translation.
 
template<typename T , typename U , typename V >
static Matrix4x4< T > & castor::matrix::setTransform (Matrix4x4< T > &matrix, Point3< U > const &position, Point3< U > const &scaling, QuaternionT< V > const &orientation)
 Récupère la matrice de transformation à partir de la translation, la mise à l'échelle et la rotation.
 
template<typename T , typename U , typename V >
static Matrix4x4< T > & castor::matrix::transform (Matrix4x4< T > &matrix, Point3< U > const &position, Point3< U > const &scaling, QuaternionT< V > const &orientation)
 Récupère la matrice de transformation à partir de la translation, la mise à l'échelle et la rotation.
 
template<typename T , typename U >
static Point3< U > castor::matrix::getTransformed (Matrix4x4< T > const &matrix, Point3< U > const &value)
 Transforme une position/mise à l'échelle via une matrice de transformation.
 
template<typename T , typename U >
static Quaternion castor::matrix::getTransformed (Matrix4x4< T > const &matrix, Quaternion const &value)
 Transforme une orientation via une matrice de transformation.
 
template<typename T , typename U , typename V >
static void castor::matrix::decompose (Matrix4x4< T > const &matrix, Point3< U > &position, Point3< U > &scaling, QuaternionT< V > &rotation)
 Récupère les composantes d'une matrice de transformation.
 
template<typename T >
static Matrix4x4< T > castor::matrix::reverseDepth (Matrix4x4< T > const &matrix)
 Inverse la profondeur pour la matrice de projection donnée.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::perspective (Matrix4x4< T > &matrix, Angle const &fovy, U aspect, U zNear, U zFar)
 Construit une matrice de projection en perspective centrée.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::perspective (Matrix4x4< T > &matrix, Angle const &fovy, U aspect, U zNear)
 Construit une matrice de projection en perspective infinie centrée.
 
template<typename T >
static Matrix4x4< T > castor::matrix::perspective (Angle const &fovy, T aspect, T nearVal, T farVal)
 Construit une matrice de projection en perspective centrée.
 
template<typename T >
static Matrix4x4< T > castor::matrix::perspective (Angle const &fovy, T aspect, T nearVal)
 Construit une matrice de projection infinie en perspective centrée.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::frustum (Matrix4x4< T > &matrix, U left, U right, U bottom, U top, U nearVal, U farVal)
 Construit une matrice de projection en perspective non centrée.
 
template<typename T >
static Matrix4x4< T > castor::matrix::frustum (T left, T right, T bottom, T top, T nearVal, T farVal)
 Construit une matrice de projection en perspective non centrée.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::ortho (Matrix4x4< T > &matrix, U left, U right, U bottom, U top, U zNear, U zFar)
 Construit une matrice de projection orthographique non centrée.
 
template<typename T >
static Matrix4x4< T > castor::matrix::ortho (T left, T right, T bottom, T top, T zNear, T zFar)
 Construit une matrice de projection orthographique non centrée.
 
template<typename T , typename U >
static Matrix4x4< T > & castor::matrix::lookAt (Matrix4x4< T > &matrix, Point3< U > const &eye, Point3< U > const &center, Point3< U > const &up)
 Construit une matrice de vue regardant un point donné
 
template<typename T >
static Matrix4x4< T > castor::matrix::lookAt (Point3< T > const &eye, Point3< T > const &center, Point3< T > const &up)
 Construit une matrice de vue regardant un point donné
 
template<typename T >
static Matrix4x4< T > & castor::matrix::switchHand (Matrix4x4< T > &matrix)
 Change la main de la matrice (de main gauche à droite et inversement)
 
template<typename T >
static Matrix4x4< T > castor::matrix::getSwitchHand (Matrix4x4< T > const &matrix)
 Change la main de la matrice (de main gauche à droite et inversement)
 
template<typename T , typename U >
static Matrix3x3< T > & castor::matrix::rotate (Matrix3x3< T > &matrix, Angle orientation)
 Fonction de rotation, construit une matrice de rotation à partir d'un quaternion.
 
template<typename T , typename U >
static Matrix3x3< T > & castor::matrix::setRotate (Matrix3x3< T > &matrix, Angle orientation)
 Fonction de rotation, construit une matrice de rotation à partir d'un quaternion.
 
template<typename T , typename U >
static void castor::matrix::getRotate (Matrix3x3< T > const &matrix, Angle orientation)
 Fonction de rotation, construit une matrice de rotation à partir d'un quaternion.
 
template<typename T , typename U >
static Matrix3x3< T > & castor::matrix::scale (Matrix3x3< T > &matrix, U x, U y)
 Fonction de mise a l'échelle.
 
template<typename T , typename U >
static Matrix3x3< T > & castor::matrix::scale (Matrix3x3< T > &matrix, Point2< U > const &scaling)
 Fonction de mise a l'échelle.
 
template<typename T , typename U >
static Matrix3x3< T > & castor::matrix::setScale (Matrix3x3< T > &matrix, U x, U y)
 Fonction de mise a l'échelle.
 
template<typename T , typename U >
static Matrix3x3< T > & castor::matrix::setScale (Matrix3x3< T > &matrix, Point2< U > const &scaling)
 Fonction de mise a l'échelle.
 
template<typename T , typename U >
static Matrix3x3< T > & castor::matrix::translate (Matrix3x3< T > &matrix, U x, U y)
 Fonction de construction de matrice de translation.
 
template<typename T , typename U >
static Matrix3x3< T > & castor::matrix::translate (Matrix3x3< T > &matrix, Point2< U > const &translation)
 Fonction de construction de matrice de translation.
 
template<typename T , typename U >
static Matrix3x3< T > & castor::matrix::setTranslate (Matrix3x3< T > &matrix, U x, U y)
 Fonction de construction de matrice de translation.
 
template<typename T , typename U >
static Matrix3x3< T > & castor::matrix::setTranslate (Matrix3x3< T > &matrix, Point2< U > const &translation)
 Fonction de construction de matrice de translation.
 
template<typename T , typename U , typename V >
static Matrix3x3< T > & castor::matrix::setTransform (Matrix3x3< T > &matrix, Point2< U > const &position, Point2< U > const &scaling, Angle orientation)
 Récupère la matrice de transformation à partir de la translation, la mise à l'échelle et la rotation.
 
template<typename T , typename U , typename V >
static Matrix3x3< T > & castor::matrix::transform (Matrix3x3< T > &matrix, Point2< U > const &position, Point2< U > const &scaling, Angle orientation)
 Récupère la matrice de transformation à partir de la translation, la mise à l'échelle et la rotation.