Public Member Functions

IMeshSelectData Class Reference

Search for all occurrences

Detailed Description

See also:
Class ModContext, Class BitArray, Class IMeshSelect, Class Interface, Class GenericNamedSelSetList.

Description:
This class is available in release 2.0 and later only.

When a developer gets the LocalModData from the ModContext of the Mesh Select Modifier or Edit Mesh Modifier, they may cast it to this class and use these methods. They may be used to get/set the vert/face/edge selection state of the modifier. This class also provides access to the named sub-object selection sets.

To get a pointer to this interface given a pointer to a modifier use the following macro (defined in AnimatableInterfaceIDs.h ). Using this macro, given any Animatable, it is easy to ask for the interface.

#define GetMeshSelectDataInterface(anim) ((IMeshSelectData*)anim->GetInterface(I_MESHSELECTDATA))

A plug-in developer may use this macro as follows:

IMeshSelectData *imsd = GetMeshSelectDataInterface(anim);

This return value will either be NULL or a pointer to a valid Mesh Select Data interface.

#include <istdplug.h>

Inheritance diagram for IMeshSelectData:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual BitArray  GetVertSel ()=0
virtual BitArray  GetFaceSel ()=0
virtual BitArray  GetEdgeSel ()=0
virtual void  SetVertSel (BitArray &set, IMeshSelect *imod, TimeValue t)=0
virtual void  SetFaceSel (BitArray &set, IMeshSelect *imod, TimeValue t)=0
virtual void  SetEdgeSel (BitArray &set, IMeshSelect *imod, TimeValue t)=0
virtual GenericNamedSelSetList GetNamedVertSelList ()=0
virtual GenericNamedSelSetList GetNamedEdgeSelList ()=0
virtual GenericNamedSelSetList GetNamedFaceSelList ()=0
virtual void  GetWeightedVertSel (int nv, float *sel)
virtual void  SetWeightedVertSel (int nv, float *sel, IMeshSelect *imod, TimeValue t)

Member Function Documentation

virtual BitArray GetVertSel ( ) [pure virtual]
Remarks:
Returns a BitArray that reflects the current vertex selection. There is one bit for each vertex. Bits that are 1 indicate the vertex is selected.
virtual BitArray GetFaceSel ( ) [pure virtual]
Remarks:
Returns a BitArray that reflects the current face selection. There is one bit for each face. Bits that are 1 indicate the face is selected.
virtual BitArray GetEdgeSel ( ) [pure virtual]
Remarks:
Returns a BitArray that reflects the current edge selection. There is one bit for each edge. Bits that are 1 indicate the edge is selected.
virtual void SetVertSel ( BitArray set,
IMeshSelect imod,
TimeValue  t 
) [pure virtual]
Remarks:
Sets the vertex selection of the modifier.
Parameters:
BitArray &set

There is one bit for each vertex. Bits that are 1 indicate the vertex is selected.

IMeshSelect *imod

This parameter is available in release 3.0 and later only.

Points to the IMeshSelect instance (generally this is a modifier).

TimeValue t

This parameter is available in release 3.0 and later only.

The current time at which the call is made.
virtual void SetFaceSel ( BitArray set,
IMeshSelect imod,
TimeValue  t 
) [pure virtual]
Remarks:
Sets the face selection of the modifier.
Parameters:
BitArray &set

There is one bit for each face. Bits that are 1 indicate the face is selected.

IMeshSelect *imod

This parameter is available in release 3.0 and later only.

Points to the IMeshSelect instance (generally this is a modifier).

TimeValue t

This parameter is available in release 3.0 and later only.

The current time at which the call is made.
virtual void SetEdgeSel ( BitArray set,
IMeshSelect imod,
TimeValue  t 
) [pure virtual]
Remarks:
Sets the edge selection of the modifier.
Parameters:
BitArray &set

There is one bit for each edge. Bits that are 1 indicate the edge is selected.

IMeshSelect *imod

This parameter is available in release 3.0 and later only.

Points to the IMeshSelect instance (generally this is a modifier).

TimeValue t

This parameter is available in release 3.0 and later only.

The current time at which the call is made.
virtual GenericNamedSelSetList& GetNamedVertSelList ( ) [pure virtual]
Remarks:
Returns a reference to an instance of GenericNamedSelSetList used for storing vertex level named selection sets. This class provides access to and the ability to manipulate a list of named selection sets.
virtual GenericNamedSelSetList& GetNamedEdgeSelList ( ) [pure virtual]
Remarks:
Returns a reference to an instance of GenericNamedSelSetList used for storing edge level named selection sets. This class provides access to and the ability to manipulate a list of named selection sets.
virtual GenericNamedSelSetList& GetNamedFaceSelList ( ) [pure virtual]
Remarks:
Returns a reference to an instance of GenericNamedSelSetList used for storing face level named selection sets. This class provides access to and the ability to manipulate a list of named selection sets.
virtual void GetWeightedVertSel ( int  nv,
float *  sel 
) [inline, virtual]
Remarks:
Retrieves the weighted vertex selections data (Soft Selection data).
Parameters:
int nv

The number of vertices.

float *sel

An array of floats to store the results.
Default Implementation:
{}
{}
virtual void SetWeightedVertSel ( int  nv,
float *  sel,
IMeshSelect imod,
TimeValue  t 
) [inline, virtual]
Remarks:
Sets the weighted vertex selection data (Soft Selection data) to the values passed.
Parameters:
int nv

The number of vertices.

float *sel

An array of floats with the data.

IMeshSelect *imod

Points to the IMeshSelect object.

TimeValue t

The time at which to set the data.
Default Implementation:
{}
{}

IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData
IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData IMeshSelectData