|
AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
|
Functions | |
| template<typename T = double> | |
| Matrix< T > | xRotation (double angleRad, int ndims=3) |
| Return rotation matrix about X axis. More... | |
| template<typename T = double> | |
| Matrix< T > | yRotation (double angleRad, int ndims=3) |
| Return rotation matrix about Y axis. More... | |
| template<typename T = double> | |
| Matrix< T > | zRotation (double angleRad, int ndims=3) |
| Return rotation matrix about Z axis. More... | |
| template<typename T = double> | |
| Matrix< T > | axisRotation (double angleRad, double x, double y, double z) |
| Return 3D rotation matrix about specified axis. More... | |
| template<typename T = double> | |
| Matrix< T > | translate (T tx, T ty) |
| Return translation matrix. More... | |
| template<typename T = double> | |
| Matrix< T > | translate (T tx, T ty, T tz) |
| template<typename T = double> | |
| Matrix< T > | scale (T s, int ndims=3) |
| Return scaling matrix. More... | |
| template<typename T = double> | |
| Matrix< T > | scale (T sx, T sy, T sz, int ndims=3) |
| Return scaling matrix. More... | |
| template<typename T = double> | |
| Matrix< T > | scale (T sx, T sy, int ndims=3) |
| Return scaling matrix. More... | |
| template<typename T = double> | |
| Matrix< T > | scale (T sx, T sy, const axom::ArrayView< T > ¢er) |
| Return scaling matrix relative to a center point. More... | |
| template<typename T = double> | |
| Matrix< T > | scale (T sx, T sy, T sz, const axom::ArrayView< T > ¢er) |
| Return scaling matrix relative to a center point. More... | |
| Matrix<T> axom::numerics::transforms::xRotation | ( | double | angleRad, |
| int | ndims = 3 |
||
| ) |
Return rotation matrix about X axis.
| angleRad | The angle to rotate in radians. |
| ndims | The number of dimension to make for the Matrix. It needs to be 3 or 4. |
References axom::numerics::Matrix< T >::identity().
| Matrix<T> axom::numerics::transforms::yRotation | ( | double | angleRad, |
| int | ndims = 3 |
||
| ) |
Return rotation matrix about Y axis.
| angleRad | The angle to rotate in radians. |
| ndims | The number of dimension to make for the Matrix. It needs to be 3 or 4. |
References axom::numerics::Matrix< T >::identity().
| Matrix<T> axom::numerics::transforms::zRotation | ( | double | angleRad, |
| int | ndims = 3 |
||
| ) |
Return rotation matrix about Z axis.
| angleRad | The angle to rotate in radians. |
| ndims | The number of dimension to make for the Matrix. It needs to be 2, 3, or 4. |
References axom::numerics::Matrix< T >::identity().
| Matrix<T> axom::numerics::transforms::axisRotation | ( | double | angleRad, |
| double | x, | ||
| double | y, | ||
| double | z | ||
| ) |
Return 3D rotation matrix about specified axis.
| angleRad | The angle to rotate in radians. |
| x,y,z | The components of the axis of rotation |
Formulation from https://en.wikipedia.org/wiki/Rotation_matrix#Axis_and_angle
References axom::numerics::Matrix< T >::identity(), and axom::utilities::isNearlyEqual().
| Matrix<T> axom::numerics::transforms::translate | ( | T | tx, |
| T | ty | ||
| ) |
Return translation matrix.
| tx | The translation in x. |
| ty | The translation in y. |
References axom::numerics::Matrix< T >::identity().
| Matrix<T> axom::numerics::transforms::translate | ( | T | tx, |
| T | ty, | ||
| T | tz | ||
| ) |
References axom::numerics::Matrix< T >::identity().
| Matrix<T> axom::numerics::transforms::scale | ( | T | s, |
| int | ndims = 3 |
||
| ) |
Return scaling matrix.
| s | The scaling value. |
| ndims | The number of dimension to make for the Matrix. It needs to be 2, 3, or 4. |
References axom::numerics::Matrix< T >::identity(), and axom::utilities::min().
| Matrix<T> axom::numerics::transforms::scale | ( | T | sx, |
| T | sy, | ||
| T | sz, | ||
| int | ndims = 3 |
||
| ) |
Return scaling matrix.
| sx | The scaling value in x. |
| sy | The scaling value in y. |
| sz | The scaling value in z. |
| ndims | The number of dimension to make for the Matrix. It needs to be 2, 3, or 4. |
References axom::numerics::Matrix< T >::identity().
| Matrix<T> axom::numerics::transforms::scale | ( | T | sx, |
| T | sy, | ||
| int | ndims = 3 |
||
| ) |
| Matrix<T> axom::numerics::transforms::scale | ( | T | sx, |
| T | sy, | ||
| const axom::ArrayView< T > & | center | ||
| ) |
Return scaling matrix relative to a center point.
| sx | The scaling value in x. |
| sy | The scaling value in y. |
| center | The center point. |
References axom::utilities::isNearlyEqual(), axom::numerics::matrix_multiply(), scale(), axom::ArrayView< T, DIM, SPACE >::size(), and translate().
| Matrix<T> axom::numerics::transforms::scale | ( | T | sx, |
| T | sy, | ||
| T | sz, | ||
| const axom::ArrayView< T > & | center | ||
| ) |
Return scaling matrix relative to a center point.
| sx | The scaling value in x. |
| sy | The scaling value in y. |
| center | The center point. |
References axom::utilities::isNearlyEqual(), axom::numerics::matrix_multiply(), scale(), axom::ArrayView< T, DIM, SPACE >::size(), and translate().