PxMeshScale
Defined in include/geometry/PxMeshScale.h
-
class PxMeshScale
A class expressing a nonuniform scaling transformation.
The scaling is along arbitrary axes that are specified by PxMeshScale::rotation. Specifically, PxMeshScale::rotation describes the rotation from the scaling-axes frame to the mesh-local frame, i.e. PxMeshScale::rotation.rotate(v) transforms the coordinates of vertex v from the mesh-local frame to the scaling-axes frame.
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.
Note
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).
Public Functions
-
inline PxMeshScale()
Constructor initializes to identity scale.
-
inline PxMeshScale(const PxVec3 &s)
Constructor to initialize to arbitrary scale and identity scale rotation.
-
inline PxMeshScale(const PxVec3 &s, const PxQuat &r)
Constructor to initialize to arbitrary scaling.
-
inline bool isIdentity() const
Returns true if the scaling is an identity transformation.
-
inline PxMeshScale getInverse() const
Returns the inverse of this scaling transformation.
-
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.
-
inline bool isValidForTriangleMesh() const
-
inline bool isValidForConvexMesh() const
-
inline PxMeshScale()