#include <xsi_plane.h>
Public Member Functions | |
SICPPSDK_INLINE | CPlane () |
SICPPSDK_INLINE | CPlane (const CVector3 &in_point, const CVector3 &in_normal) |
SICPPSDK_INLINE | CPlane (const CVector3 &in_point, const CVector3 &in_tangentU, const CVector3 &in_tangentV) |
SICPPSDK_INLINE | CPlane (const CPlane &in_plane) |
SICPPSDK_INLINE | ~CPlane () |
SICPPSDK_INLINE CPlane & | operator= (const CPlane &in_plane) |
SICPPSDK_INLINE bool | operator== (const CPlane &in_plane) const |
SICPPSDK_INLINE bool | operator!= (const CPlane &in_plane) const |
SICPPSDK_INLINE bool | EpsilonEquals (const CPlane &in_plane, double in_dEpsilon) const |
SICPPSDK_INLINE bool | Equals (const CPlane &in_plane) const |
bool | Parallel (const CPlane &in_plane) const |
bool | Coplanar (const CPlane &in_plane) const |
SICPPSDK_INLINE double | GetDistance (const CVector3 &in_point) const |
SICPPSDK_INLINE CVector3 | GetPosition (double in_U, double inV) const |
void | GetParameters (const CVector3 &in_point, double &out_U, double &out_V) const |
bool | Intersect (const CLine &in_line, CVector3 &out_point) const |
SICPPSDK_INLINE CVector3 | Project (const CVector3 &in_point) const |
SICPPSDK_INLINE CVector3 | Reflect (const CVector3 &in_point) const |
SICPPSDK_INLINE CLine | ProjectLine (const CLine &in_line) const |
SICPPSDK_INLINE CLine | ReflectLine (const CLine &in_line) const |
CMatrix4 & | GetMirrorTransform (CMatrix4 &out_matrix4) const |
SICPPSDK_INLINE const CVector3 & | GetOrigin () const |
SICPPSDK_INLINE const CVector3 & | GetNormal () const |
SICPPSDK_INLINE const CVector3 & | GetTangentU () const |
SICPPSDK_INLINE const CVector3 & | GetTangentV () const |
SICPPSDK_INLINE CPlane & | SetOrigin (const CVector3 &in_point) |
CPlane & | SetNormal (const CVector3 &in_normal) |
CPlane & | SetTangents (const CVector3 &in_U, const CVector3 &in_V) |
SICPPSDK_INLINE CPlane & | Set (const CVector3 &in_point, const CVector3 &in_normal) |
SICPPSDK_INLINE CPlane & | Set (const CVector3 &in_point, const CVector3 &in_U, const CVector3 &in_V) |
SICPPSDK_INLINE CPlane & | operator*= (const CMatrix3 &in_matrix3) |
SICPPSDK_INLINE CPlane & | operator*= (const CMatrix4 &in_matrix4) |
SICPPSDK_INLINE CPlane & | operator*= (const CTransformation &in_transformation) |
SICPPSDK_INLINE CPlane & | MulByMatrix3InPlace (const CMatrix3 &in_matrix3) |
SICPPSDK_INLINE CPlane & | MulByMatrix3 (const CPlane &in_plane, const CMatrix3 &in_matrix3) |
SICPPSDK_INLINE CPlane & | MulByMatrix4InPlace (const CMatrix4 &in_matrix4) |
SICPPSDK_INLINE CPlane & | MulByMatrix4 (const CPlane &in_plane, const CMatrix4 &in_matrix4) |
SICPPSDK_INLINE CPlane & | MulByTransformationInPlace (const CTransformation &in_transformation) |
SICPPSDK_INLINE CPlane & | MulByTransformation (const CPlane &in_plane, const CTransformation &in_transformation) |
SICPPSDK_INLINE CPlane | ( | ) |
Default constructor.
Construct a plane through a point with the given normal.
in_point | Point on the plane |
in_normal | Normal vector |
SICPPSDK_INLINE CPlane | ( | const CVector3 & | in_point, |
const CVector3 & | in_tangentU, | ||
const CVector3 & | in_tangentV | ||
) |
Construct a plane through a point with the given tangents.
in_point | Point on the plane |
in_tangentU | First tangent vector |
in_tangentV | Second tangent vector |
Copy constructor.
in_plane | Line to copy |
SICPPSDK_INLINE ~CPlane | ( | ) |
Default destructor.
Assignment operator.
in_plane | Line to copy |
SICPPSDK_INLINE bool operator== | ( | const CPlane & | in_plane | ) | const |
Equality operator tests the strict equality of this CPlane with the specified plane.
in_plane | Operand plane. |
SICPPSDK_INLINE bool operator!= | ( | const CPlane & | in_plane | ) | const |
Inequality operator tests the strict inequality of this CPlane with the specified plane.
in_plane | Operand plane. |
SICPPSDK_INLINE bool EpsilonEquals | ( | const CPlane & | in_plane, |
double | in_dEpsilon | ||
) | const |
Tests the equality of this plane with the specified plane, with a tolerance of Epsilon.
in_plane | Operand plane. |
in_dEpsilon | Error margin Possible Values: [0, +INF[ should be a positive value |
SICPPSDK_INLINE bool Equals | ( | const CPlane & | in_plane | ) | const |
Tests the strict equality of this plane with the specified plane.
in_plane | Operand plane. |
bool Parallel | ( | const CPlane & | in_plane | ) | const |
Tests whether two planes are parallel.
in_plane | Operand plane. |
bool Coplanar | ( | const CPlane & | in_plane | ) | const |
Tests whether two planes are coplanar.
in_plane | Operand plane. |
SICPPSDK_INLINE double GetDistance | ( | const CVector3 & | in_point | ) | const |
Return distance fromt the plane to the given point.
SICPPSDK_INLINE CVector3 GetPosition | ( | double | in_U, |
double | inV | ||
) | const |
Return position on plane for given parameters.
in_U | First parameter. |
in_V | Second parameter. |
void GetParameters | ( | const CVector3 & | in_point, |
double & | out_U, | ||
double & | out_V | ||
) | const |
Return parameter on plane closest to input point.
out_U | First projection parameter. |
out_V | Second projection parameter. |
Return intersection of this plane with the given line.
in_line | Line to intersect. |
out_point | Closest point of intersection on plane. |
Return projection of this point on to the plane.
Return reflection of this point across the plane.
Return projection of line on the plane.
Return reflection of line across the plane.
Return CMatrix4 that transforms points across this plane.
out_matrix4 | Matrix. |
SICPPSDK_INLINE const CVector3 & GetOrigin | ( | ) | const |
Return origin of the plane.
SICPPSDK_INLINE const CVector3 & GetNormal | ( | ) | const |
Return normal for the plane.
SICPPSDK_INLINE const CVector3 & GetTangentU | ( | ) | const |
Return first tangent for the plane.
SICPPSDK_INLINE const CVector3 & GetTangentV | ( | ) | const |
Return second tangent for the plane.
Set normal for the plane.
in_normal | Normal vector. |
Set direction of the plane.
in_U | First tangent vector. |
in_V | Second tangent vector. |
Set origin and normal of the plane.
in_point | Point on the plane |
in_direction | Normal vector. |
SICPPSDK_INLINE CPlane & Set | ( | const CVector3 & | in_point, |
const CVector3 & | in_U, | ||
const CVector3 & | in_V | ||
) |
Set origin and tangents of the plane.
in_point | Point on the plane |
in_U | First tangent vector. |
in_V | Second tangent vector. |
Right-multiplies this plane by the matrix m in place (this = this . m ).
in_matrix3 | Operand matrix. |
Right-multiplies this plane by the matrix m in place (this = this . m ).
in_matrix4 | Operand matrix. |
SICPPSDK_INLINE CPlane & operator*= | ( | const CTransformation & | in_transformation | ) |
Right-multiplies this plane by the transformation t in place (this = this . t).
in_transformation | transformation operand. |
Right-multiplies this plane by the matrix m in place (this = this . m ).
in_matrix3 | Operand matrix. |
Right-multiplies the plane l by the matrix m and store the result in this plane (this = l . m ).
in_plane | Operand plane |
in_matrix3 | Operand matrix. |
Right-multiplies this plane by the matrix m in place (this = this . m ).
in_matrix4 | Operand matrix. |
Right-multiplies the plane l by the matrix m and store the result in this plane (this = l . m ).
in_plane | Operand plane |
in_matrix4 | Operand matrix. |
SICPPSDK_INLINE CPlane & MulByTransformationInPlace | ( | const CTransformation & | in_transformation | ) |
Right-multiplies this plane by the transformation t in place (this = this . t).
in_transformation | transformation operand. |
SICPPSDK_INLINE CPlane & MulByTransformation | ( | const CPlane & | in_plane, |
const CTransformation & | in_transformation | ||
) |
Right-multiplies the plane l by the transformation t and stores the result in this plane (this = l . t ).
in_plane | Operand plane. |
in_transformation | transformation operand. |