Class IMeshSelect

3DS Max Plug-In SDK

Class IMeshSelect

See Also: Class Mesh, Class LocalModData, Class IMeshSelectData.

class IMeshSelect

Description:

This class is available in release 2.0 and later only.

This class provides access to selection data for the Mesh Select Modifier, Editable Mesh and Edit Mesh modifier.

To get a pointer to this interface given a pointer to a modifier or editable mesh object, use the following macro (defined in ANIMTBL.H ). Using this macro, given any Animatable, it is easy to ask for the interface.

#define GetMeshSelectInterface(anim) ((IMeshSelect*)anim->GetInterface(I_MESHSELECT))

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

IMeshSelect *ims = GetMeshSelectInterface(anim);

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

Methods:

Prototype:

virtual DWORD GetSelLevel()=0;

Remarks:

Returns the current level of selection for the modifier.

Return Value:

One of the following values:

IMESHSEL_OBJECT: Object level.

IMESHSEL_VERTEX: Vertex level.

IMESHSEL_FACE: Face level.

IMESHSEL_EDGE: Edge level.

Prototype:

virtual void SetSelLevel(DWORD level)=0;

Remarks:

Sets the selection level of the modifier.

Parameters:

DWORD level

One of the following values:

IMESHSEL_OBJECT: Object level.

IMESHSEL_VERTEX: Vertex level.

IMESHSEL_FACE: Face level.

IMESHSEL_EDGE: Edge level.

Prototype:

virtual void LocalDataChanged()=0;

Remarks:

This method must be called when the LocalModData of the modifier is changed. Developers can use the methods of IMeshSelectData to get and set the actual selection for vertex, face and edge. When a developers does set any of these selection sets this method must be called when done.

Prototype:

virtual BOOL HasWeightedVertSel();

Remarks:

This method is available in release 3.0 and later only.

Returns TRUE if this modifier or object has weighted vertex selection data (Soft Selection data), FALSE if not.

Default Implementation:

{ return FALSE; }

Prototype:

virtual BOOL CanAssignWeightedVertSel();

Remarks:

This method is available in release 3.0 and later only.

Returns TRUE if this modifier or object can assign weighted vertex selection data; FALSE if it cannot.

Default Implementation:

{ return FALSE; }