|
C++ API Reference
|
Mesh intersector. More...
#include <MMeshIntersector.h>
Public Member Functions | |
| MMeshIntersector (void) | |
| Constructor. | |
| virtual | ~MMeshIntersector (void) |
| Destructor. | |
| MStatus | create (MObject &meshObject, const MMatrix &matrix=MMatrix::identity, const MIntArray *facesOfInterest=nullptr) |
| This method creates the data required by the intersector. More... | |
| bool | isCreated (void) const |
| This method returns true if the intersector is created. More... | |
| MStatus | getClosestPoint (const MPoint &point, MPointOnMesh &meshPoint, double maxDistance=DBL_MAX) const |
| This method finds the closest point. More... | |
Static Public Member Functions | |
| static const char * | className () |
| Returns the name of this class. More... | |
Mesh intersector.
The MMeshIntersector class contains methods for efficiently finding the closest point on a mesh. An octree algorithm is used to find the closest point.
The create() method builds the internal data required for the algorithm. As a result, calls to it should be minimized as it is a heavy operation.
This class allows multiple threads to evaluate closest points simultaneously as the method getClosestPoint is threadsafe.
| MStatus create | ( | MObject & | meshObject, |
| const MMatrix & | matrix = MMatrix::identity, |
||
| const MIntArray * | facesOfInterest = nullptr |
||
| ) |
This method creates the data required by the intersector.
It is a heavy operation that should be called only when necessary.
| [in] | meshObject | a kMesh or kMeshData object |
| [in] | matrix | specify the mapping to apply for transforming points that are specified in the getClosestPoint method into the object space of the mesh. |
| [in] | facesOfInterest | faces to be considered by the intersector. |
| bool isCreated | ( | void | ) | const |
This method returns true if the intersector is created.
False is return otherwise.
| MStatus getClosestPoint | ( | const MPoint & | point, |
| MPointOnMesh & | meshPoint, | ||
| double | maxDistance = DBL_MAX |
||
| ) | const |
This method finds the closest point.
Information is returned in the meshPoint object.
This method is threadsafe.
| [in] | point | Specifies the location for which to evaluate the closest point on the mesh. `point' is transformed using the matrix parameter passed to the create() method, so for example if your matrix maps world to object space, then `point' should be specified in world space. |
| [out] | meshPoint | Resulting closest point in object space. |
| [in] | maxDistance | Maximum distance to consider in object space. |
|
static |
Returns the name of this class.