PxMeshScale Class Reference
[Geomutils]
A class expressing a nonuniform scaling transformation.
More...
#include <PxMeshScale.h>
Public Member Functions | |
PX_CUDA_CALLABLE PX_FORCE_INLINE | PxMeshScale () |
Constructor initializes to identity scale. | |
PX_CUDA_CALLABLE PX_FORCE_INLINE | PxMeshScale (PxReal r) |
Constructor from scalar. | |
PX_CUDA_CALLABLE PX_FORCE_INLINE | PxMeshScale (const PxVec3 &s) |
Constructor to initialize to arbitrary scale and identity scale rotation. | |
PX_CUDA_CALLABLE PX_FORCE_INLINE | PxMeshScale (const PxVec3 &s, const PxQuat &r) |
Constructor to initialize to arbitrary scaling. | |
PX_CUDA_CALLABLE PX_FORCE_INLINE bool | isIdentity () const |
Returns true if the scaling is an identity transformation. | |
PX_CUDA_CALLABLE PX_FORCE_INLINE PxMeshScale | getInverse () const |
Returns the inverse of this scaling transformation. | |
PX_CUDA_CALLABLE PX_FORCE_INLINE PxMat33 | toMat33 () const |
Converts this transformation to a 3x3 matrix representation. | |
PX_CUDA_CALLABLE PX_FORCE_INLINE bool | hasNegativeDeterminant () const |
Returns true if combination of negative scale components will cause the triangle normal to flip. The SDK will flip the normals internally. | |
PxVec3 | transform (const PxVec3 &v) const |
bool | isValidForTriangleMesh () const |
bool | isValidForConvexMesh () const |
Public Attributes | |
PxVec3 | scale |
A nonuniform scaling. | |
PxQuat | rotation |
The orientation of the scaling axes. |
Detailed Description
A class expressing a nonuniform scaling transformation.The scaling is along arbitrary axes that are specified by PxMeshScale::rotation.
- Note:
- Negative scale values are supported for PxTriangleMeshGeometry with absolute values for each component within [PX_MIN_ABS_MESH_SCALE, PX_MAX_ABS_MESH_SCALE] range. Negative scale causes a reflection around the specified axis, in addition PhysX will flip the normals for mesh triangles when scale.x*scale.y*scale.z < 0.
Only positive scale values are supported for PxConvexMeshGeometry with values for each component within [PX_MIN_ABS_MESH_SCALE, PX_MAX_ABS_MESH_SCALE] range).
Constructor & Destructor Documentation
PX_CUDA_CALLABLE PX_FORCE_INLINE PxMeshScale::PxMeshScale | ( | ) | [inline] |
Constructor initializes to identity scale.
PX_CUDA_CALLABLE PX_FORCE_INLINE PxMeshScale::PxMeshScale | ( | PxReal | r | ) | [inline, explicit] |
Constructor from scalar.
PX_CUDA_CALLABLE PX_FORCE_INLINE PxMeshScale::PxMeshScale | ( | const PxVec3 & | s | ) | [inline] |
Member Function Documentation
PX_CUDA_CALLABLE PX_FORCE_INLINE PxMeshScale PxMeshScale::getInverse | ( | ) | const [inline] |
Returns the inverse of this scaling transformation.
PX_CUDA_CALLABLE PX_FORCE_INLINE bool PxMeshScale::hasNegativeDeterminant | ( | ) | const [inline] |
Returns true if combination of negative scale components will cause the triangle normal to flip. The SDK will flip the normals internally.
PX_CUDA_CALLABLE PX_FORCE_INLINE bool PxMeshScale::isIdentity | ( | ) | const [inline] |
Returns true if the scaling is an identity transformation.
bool PxMeshScale::isValidForConvexMesh | ( | ) | const [inline] |
bool PxMeshScale::isValidForTriangleMesh | ( | ) | const [inline] |
References PxVec3::maxElement(), PxVec3::minElement(), PX_MESH_SCALE_MAX, and PX_MESH_SCALE_MIN.
Referenced by PxTriangleMeshGeometry::isValid().
PX_CUDA_CALLABLE PX_FORCE_INLINE PxMat33 PxMeshScale::toMat33 | ( | ) | const [inline] |
Converts this transformation to a 3x3 matrix representation.
References PxMat33::column0, PxMat33::column1, PxMat33::column2, and PxMat33::getTranspose().
Member Data Documentation
The orientation of the scaling axes.
Referenced by PxTriangleMeshGeometry::isValid(), PxConvexMeshGeometry::isValid(), and PxMassProperties::PxMassProperties().
A nonuniform scaling.
Referenced by PxTriangleMeshGeometry::isValid(), PxConvexMeshGeometry::isValid(), and PxMassProperties::PxMassProperties().
The documentation for this class was generated from the following file:
Copyright © 2008-2017 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. www.nvidia.com