PhysicsBasedAnimationToolkit 0.0.10
Cross-platform C++20 library of algorithms and data structures commonly used in computer graphics research on physically-based simulation.
|
A 3D rigid transform. More...
#include <Transform.h>
Public Types | |
using | ScalarType = TScalar |
Scalar type. | |
Public Member Functions | |
Transform ()=default | |
Default constructor. | |
Transform (Mat3< ScalarType > const &_R, Vec3< ScalarType > const &_t) | |
Constructor with rotation matrix and translation vector. | |
PBAT_HOST_DEVICE Vec3< ScalarType > | operator() (Vec3< ScalarType > const &p) const |
Apply the transform to a point (technically, a vector) | |
PBAT_HOST_DEVICE Vec3< ScalarType > | operator/ (Vec3< ScalarType > const &p) const |
Apply the inverse transform to a point (technically, a vector) | |
void | CleanRotation () |
Clean the rotation matrix to ensure it is a valid rotation (orthogonal with determinant 1) | |
Static Public Member Functions | |
static Transform | Identity () |
Create an identity transform. | |
Public Attributes | |
Mat3< ScalarType > | R |
Rotation matrix. | |
Vec3< ScalarType > | t |
Translation vector. | |
A 3D rigid transform.
TScalar | Scalar type |
|
inline |
Constructor with rotation matrix and translation vector.
R | Rotation matrix |
t | Translation vector |
|
inlinestatic |
Create an identity transform.
|
inline |
Apply the transform to a point (technically, a vector)
p | Point to transform |
|
inline |
Apply the inverse transform to a point (technically, a vector)
p | Point to inverse transform |