- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Examples

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions

# MFnComponent Class Reference
OpenMaya - API module for common classes | FunctionSet classes

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

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:
[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) const
| Returns the number of elements that this component contains.
MFn::Type | componentType (MStatus *ReturnStatus=NULL) const
| 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:
  - MS::kSuccess if the function set is successfully attached
  - MS::kInvalidParameter if the MObject does not represent a valid Maya object or if the function set is not allowed to attach to this MObject

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:
  - MS::kSuccess if the function set is successfully attached
  - MS::kInvalidParameter if the MObject does not represent a valid Maya object or if the function set is not allowed to attach to this MObject

## Member Function Documentation

MFn::Type type | ( |  | ) | const`[virtual]`

Search for all occurrences

Function set type.

Return the class type : MFn::kComponent.

Reimplemented from MFnBase.

Reimplemented in MFnDoubleIndexedComponent, MFnSingleIndexedComponent, MFnTripleIndexedComponent, and MFnUint64SingleIndexedComponent.

const char * className | ( |  | ) | const`[protected, virtual]`

Search for all occurrences

Class name.

Return the class name : "MFnComponent".

Reimplemented in MFnDoubleIndexedComponent, MFnSingleIndexedComponent, MFnTripleIndexedComponent, and MFnUint64SingleIndexedComponent.

int elementCount | ( | MStatus * | ReturnStatus = `NULL` | ) | const

Search for all occurrences

Returns the number of elements that this component contains.

Parameters:

  [out] | ReturnStatus | Status code

Returns:
  The number of elements

Status Codes:
  - MS::kSuccess The operation succeeded
  - MS::kFailure Object error

MFn::Type componentType | ( | MStatus * | ReturnStatus = `NULL` | ) | const

Search for all occurrences

Returns the MFn type of the component.

Parameters:

  [out] | ReturnStatus | Status code

Returns:
  The type

Status Codes:
  - MS::kSuccess The operation succeeded
  - MS::kFailure Object error

bool isEmpty | ( | MStatus * | ReturnStatus = `NULL` | ) | const

Search for all occurrences

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:
  - MS::kSuccess The operation succeeded
  - MS::kFailure Object error

bool isEqual | ( | MObject & | component,
|  | MStatus * | ReturnStatus = `NULL`
| ) |  | const

Search for all occurrences

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:
  - MS::kSuccess The operation succeeded
  - MS::kFailure Object error

bool isComplete | ( | MStatus * | ReturnStatus = `NULL` | ) | const

Search for all occurrences

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:
  - MS::kSuccess The operation succeeded
  - MS::kFailure Object error

MStatus setComplete | ( | bool | complete | ) |

Search for all occurrences

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:
  - MS::kSuccess The operation succeeded
  - MS::kFailure Object error

bool hasWeights | ( |  | ) | const

Search for all occurrences

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

Search for all occurrences

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:
  - MS::kSuccess The operation succeeded
  - MS::kFailure Object error

MFn::Type type | ( | MStatus * | ReturnStatus = `NULL` | ) |

Search for all occurrences

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