This reference page is linked to from the following overview topics: Scene Graph, Picking, Writing Plug-ins.
Picker objects are used as part of the map extraction process, to find.
points on one mesh that most closely correspond to points on another. This is used for creating displacement maps, normal maps, color maps, etc. If you need to control the algorithm by which points are picked from a vector, you can override this class in a plug-in, and replace Mudbox's version, which is in the plugin called "BTreePicker". To create your own: 1. Write a plug-in that defines your own class derived from Picker. 2. Delete the existing BTreePicker plugin, and copy yours into the plug-in folder. On OSX, this plugin is found in the Mudbox module, under Contents>MacOS>plugins. On the PC, it is found in the work dir folder, under "plugins"
#include <mesh.h>
Public Member Functions |
|
virtual void | SetMesh (Mesh *m_pMesh) |
virtual bool | Pick (const Vector &vLocalStart, const Vector &vLocalEnd, bool bBothSides, SurfacePoint &cResult, float fTarget=0.5f) |
virtual void SetMesh | ( | Mesh * | m_pMesh | ) | [virtual] |
[in] | m_pMesh | Specify the mesh from which SurfacePoints can be picked |
virtual bool Pick | ( | const Vector & | vLocalStart, |
const Vector & | vLocalEnd, | ||
bool | bBothSides, | ||
SurfacePoint & | cResult, | ||
float | fTarget =
0.5f |
||
) | [virtual] |
[in] | vLocalStart | Start point of the picking vector, in object space |
[in] | vLocalEnd | End point of the picking vector, in object space |
[in] | bBothSides | If true, allow the mesh to be picked from either side (front or back of faces) |
[out] | cResult | The calculated SurfacePoint |
[in] | fTarget | This value, ranging from 0 to 1, represents a position on the line between vLocalStart and vLocalEnd. If there are multiple selection points, the one closes to this value is returned. |