Public Member Functions | Protected Member Functions

MFnComponent Class Reference

This reference page is linked to from the following overview topics: Components.


Search for all occurrences

Detailed Description

Base class for component function sets.

This is the base class for all function sets which deal with component objects.

Components are MObjects which hold index information for shapes. The component object does not contain any information about the shape, it just contains index values and type information.

Components can be marked as complete meaning that the component represents a complete set of indices from 0 to numElements-1;

Components come is 3 varieties based upon the dimensions of the index. The types are single, double, and triple indexed. Examples of these types are mesh vertices (single indexed), nurbs surface CVs (double indexed), and lattice points (triple indexed).

To create, edit, or query a specific type of component, use the derived classes MFnSingleIndexedComponent, MFnDoubleIndexedComponent, and MFnTripleIndexedComponent.

Examples:

componentScaleManip.cpp.

#include <MFnComponent.h>

Inheritance diagram for MFnComponent:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual MFn::Type  type () const
  Function set type.
virtual  ~MFnComponent ()
  Destructor.
  MFnComponent (MObject &object, MStatus *ReturnStatus=NULL)
  Constructor.
  MFnComponent ()
  Default class constructor.
int  elementCount (MStatus *ReturnStatus=NULL)
  Returns the number of elements that this component contains.
MFn::Type  componentType (MStatus *ReturnStatus=NULL)
  Returns the MFn type of the component.
bool  isEmpty (MStatus *ReturnStatus=NULL) const
  Determines if this component is empty, i.e.
bool  isEqual (MObject &, MStatus *ReturnStatus=NULL) const
  Compares this component with the given component.
bool  isComplete (MStatus *ReturnStatus=NULL) const
  Returns the complete state of the component.
MStatus  setComplete (bool)
  Sets the complete state of the component.
bool  hasWeights () const
  Query this component for the existance of attached weight data.
MWeight  weight (int index, MStatus *ReturnStatus=NULL) const
  Return the weight data for a given element within this component.
  MFnComponent (const MObject &object, MStatus *ReturnStatus=NULL)
  Constructor.
MFn::Type  type (MStatus *ReturnStatus=NULL)
  Obsolete & no script support.

Protected Member Functions

virtual const char *  className () const
  Class name.

Constructor & Destructor Documentation

MFnComponent ( MObject object,
MStatus ReturnStatus = NULL 
)

Constructor.

Class constructor that initializes the function set to the given MObject.

Parameters:
[in] object The MObject to attach the function set to
[out] ReturnStatus the return status
Status Codes:
MFnComponent ( const MObject object,
MStatus ReturnStatus = NULL 
)

Constructor.

Class constructor that initializes the function set to the given MObject.

Parameters:
[in] object The MObject to attach the function set to
[out] ReturnStatus the return status
Status Codes:

Member Function Documentation

MFn::Type type ( ) const [virtual]
const char * className ( ) const [protected, virtual]
int elementCount ( MStatus ReturnStatus = NULL )

Returns the number of elements that this component contains.

Parameters:
[out] ReturnStatus Status code
Returns:
The number of elements
Status Codes:
MFn::Type componentType ( MStatus ReturnStatus = NULL )

Returns the MFn type of the component.

Parameters:
[out] ReturnStatus Status code
Returns:
The type
Status Codes:
bool isEmpty ( MStatus ReturnStatus = NULL ) const

Determines if this component is empty, i.e.

there are no index elements.

Parameters:
[out] ReturnStatus Status code
Returns:
True if empty, false otherwise
Status Codes:
bool isEqual ( MObject component,
MStatus ReturnStatus = NULL 
) const

Compares this component with the given component.

Parameters:
[in] component component to compare
[out] ReturnStatus Status code
Returns:
True if the components are equal, false otherwise
Status Codes:
bool isComplete ( MStatus ReturnStatus = NULL ) const

Returns the complete state of the component.

Components can be marked as complete meaning that the component represents a complete set of indices from 0 to numElements-1;

Parameters:
[out] ReturnStatus Status code
Returns:
True if this component is complete, false otherwise
Status Codes:
MStatus setComplete ( bool  complete )

Sets the complete state of the component.

Components can be marked as complete meaning that the component represents a complete set of indices from 0 to numElements-1;

Important: if the component is set as complete, setCompleteData must also be called with the appropriate parameter (the total number of elements in the object). Note that setCompleteData(...) also sets the component as complete, thus 'setComplete(true)' may never need to appear in your code.

setCompleteData(...) is defined in derived classes.

Parameters:
[in] complete true sets the component as complete
Returns:
Status code
Status Codes:
bool hasWeights ( ) const

Query this component for the existance of attached weight data.

Weight data will be added to a component as part of soft selection and/or symmetry. Note that this method does not test for the existance of external weight information (e.g. deformer weights stored in separate attributes).

Returns:
True if the component includes weight data, false otherwise
MWeight weight ( int  index,
MStatus ReturnStatus = NULL 
) const

Return the weight data for a given element within this component.

Note that this method does not return external weight data (e.g. deformer weights stored in separate attributes).

Parameters:
[in] index The element to return weight data for (note that this is the linear index between 0 and elementCount())
[out] ReturnStatus Status code
Returns:
The element weight data.
Status Codes:
MFn::Type type ( MStatus ReturnStatus = NULL )

Obsolete & no script support.

This method is obsolete. This method is not available in Python.

Deprecated:
Use the MFnComponent::componentType method instead.
Parameters:
[out] ReturnStatus Return status.

MFnComponent MFnComponent MFnComponent MFnComponent MFnComponent MFnComponent MFnComponent MFnComponent MFnComponent MFnComponent
MFnComponent MFnComponent MFnComponent MFnComponent MFnComponent MFnComponent MFnComponent MFnComponent MFnComponent MFnComponent