# IMorphArea Struct Reference
[External Interfaces]

Inheritance diagram for IMorphArea:

List of all members.

## Public Member Functions
virtual TMCString &MCCOMAPI | GetMorphAreaName ()=0
virtual void MCCOMAPI | SetMorphAreaName (const TMCString &morphAreaName)=0
| sets the name of an area
virtual int32 MCCOMAPI | GetMorphTargetCount ()=0
virtual void MCCOMAPI | GetMorphTargetName (const int32 targetIndex, TMCString &morphTargetName)=0
virtual void MCCOMAPI | SetMorphTargetName (const int32 targetIndex, const TMCString &morphTargetName)=0
virtual real32 MCCOMAPI | GetMorphTargetCoef (const int32 targetIndex)=0
virtual void MCCOMAPI | SetMorphTargetCoef (const int32 targetIndex, const real32 coef)=0
virtual void MCCOMAPI | GetMorphTargetMinMaxCoef (const int32 targetIndex, real &outMin, real &outMax)=0
virtual void MCCOMAPI | SetMorphTargetMinMaxCoef (const int32 targetIndex, real min, real max)=0
virtual boolean MCCOMAPI | LinkToMetaMorphTarget (const int32 morphAreaIndex, const int32 targetIndex, const int32 metaMorphAreaIndex, const int32 metaMorphTargetIndex, real multiplier=1.0f)=0
virtual const TMCArray < TMetaMorphTargetLink > &MCCOMAPI | GetLinkedMetaMorphTarget (const int32 targetIndex)=0
virtual boolean MCCOMAPI | IsMetaMorphArea () const =0
virtual int32 MCCOMAPI | GetMorphAreaIndex ()=0
virtual IMorphTargetGroup *MCCOMAPI | CreateMorphTargetGroup (IMorphTargetGroup *parentGroup, const TMCString &name)=0
virtual IMorphTargetGroup *MCCOMAPI | GetMorphTargetGroupRoot () const =0
virtual void MCCOMAPI | AddMorphTargetToGroup (IMorphTargetGroup *group, int32 index)=0
virtual I3DShParamInfo *MCCOMAPI | GetMorphTargetParamInfo (int32 morphTargetIndex)=0
| Gets the param info corresponding to the morph target value.
virtual int32 MCCOMAPI | FindTargetIndexFromAnimation (I3DShParamInfo *paramInfo)=0
| Gets the morph target index corresponding to the param info value.
virtual int32 MCCOMAPI | GetTargetCount ()=0
| Returns the number of Morph Targets.
virtual void MCCOMAPI | EnableGlobalDeformer (int32 deformerIndex, boolean enable)=0
| Enables a deformer on the morph area.
virtual void MCCOMAPI | SetGlobalDeformerStrength (int32 deformerIndex, real32 strength)=0
| Sets the strength of a deformer on the morph area.
virtual real32 MCCOMAPI | GetGlobalDeformerStrength (int32 deformerIndex)=0
virtual I3DShParamInfo *MCCOMAPI | GetGlobalDeformerStrengthParamInfo (int32 deformerIndex)=0
| Gets the param info cooresponding to the deformer strength.

## Detailed Description

Interface for accessing and modifying the data contained in a MorphArea. A MorphArea is a group of vertices that are under the influence of morph targets. This interface allows you to access some of the Morph Target parameters. To create or to set the vertex positions of a Morph Target, use I3DExVertexPrimitive and its methods, such as CreateMorphTarget or SetEditMorph.

## Member Function Documentation

virtual void MCCOMAPI IMorphArea::AddMorphTargetToGroup | ( | IMorphTargetGroup * | group,
|  | int32 | index |
| ) |  |  | `[pure virtual]`

Add a morph target to a group (note that if this morph target already belong the a group, the target will be removed from it).

Parameters:

  | group | the group where you want to add the target (NULL if a the top level).
  | index | index of the morph target.

virtual IMorphTargetGroup* MCCOMAPI IMorphArea::CreateMorphTargetGroup | ( | IMorphTargetGroup * | parentGroup,
|  | const TMCString & | name |
| ) |  |  | `[pure virtual]`

Parameters:

  | parentGroup | parent group (NULL if a the top level).

Returns:
  the morph target group created.

virtual void MCCOMAPI IMorphArea::EnableGlobalDeformer | ( | int32 | deformerIndex,
|  | boolean | enable |
| ) |  |  | `[pure virtual]`

Enables a deformer on the morph area.

Parameters:

  | deformer | the deformer (should be attached to the primitive).
  | enable | enable or disable.

virtual int32 MCCOMAPI IMorphArea::FindTargetIndexFromAnimation | ( | I3DShParamInfo * | paramInfo | ) | `[pure virtual]`

Gets the morph target index corresponding to the param info value.

Parameters:

  | paramInfo | the param info from the animation.

virtual real32 MCCOMAPI IMorphArea::GetGlobalDeformerStrength | ( | int32 | deformerIndex | ) | `[pure virtual]`

Gets the strength of a deformer on the morph area (NOTE the function returns 0 if the deformer is not enabled for ths morph area).

Parameters:

  | deformer | the deformer (should be attached to the primitive).

virtual I3DShParamInfo* MCCOMAPI IMorphArea::GetGlobalDeformerStrengthParamInfo | ( | int32 | deformerIndex | ) | `[pure virtual]`

Gets the param info cooresponding to the deformer strength.

Parameters:

  | deformer | the deformer (should be attached to the primitive).

virtual const TMCArray<TMetaMorphTargetLink>& MCCOMAPI IMorphArea::GetLinkedMetaMorphTarget | ( | const int32 | targetIndex | ) | `[pure virtual]`

Get the meta morph target linked to this morph target.

Parameters:

  | targetIndex | Index of the target. Must be < GetMorphTargetCount()

Returns:
  an array that contains the information

virtual int32 MCCOMAPI IMorphArea::GetMorphAreaIndex | ( |  | ) | `[pure virtual]`

Returns:
  the index of the morph area.

virtual TMCString& MCCOMAPI IMorphArea::GetMorphAreaName | ( |  | ) | `[pure virtual]`

Returns:
  the name of the area

virtual real32 MCCOMAPI IMorphArea::GetMorphTargetCoef | ( | const int32 | targetIndex | ) | `[pure virtual]`

Gets the coefficient of a specific morph target. This coefficient is animated, so the returned value depends on the current time. It determines the degree to which this morph target applies to the model.

Parameters:

  | targetIndex | Index of the target. Must be < GetMorphTargetCount()

Returns:
  the coefficient

virtual int32 MCCOMAPI IMorphArea::GetMorphTargetCount | ( |  | ) | `[pure virtual]`

Returns:
  the number of target countained in this area

virtual IMorphTargetGroup* MCCOMAPI IMorphArea::GetMorphTargetGroupRoot | ( |  | ) | const`[pure virtual]`

Returns:
  the morph target group root.

virtual void MCCOMAPI IMorphArea::GetMorphTargetMinMaxCoef | ( | const int32 | targetIndex,
|  | real & | outMin,
|  | real & | outMax |
| ) |  |  | `[pure virtual]`

Gets the minimum and maximum coefficient of a specific morph target.

Parameters:

  | targetIndex | Index of the target. Must be < GetMorphTargetCount()
  | outMin | Minimum coef.
  | outMax | Maximum coef.

virtual void MCCOMAPI IMorphArea::GetMorphTargetName | ( | const int32 | targetIndex,
|  | TMCString & | morphTargetName |
| ) |  |  | `[pure virtual]`

Returns the name of a specific target

Parameters:

  | targetIndex | Index of the target. Must be < GetMorphTargetCount()
  | morphTargetName | Returns the name

virtual I3DShParamInfo* MCCOMAPI IMorphArea::GetMorphTargetParamInfo | ( | int32 | morphTargetIndex | ) | `[pure virtual]`

Gets the param info corresponding to the morph target value.

Parameters:

  | morphTargetIndex | index of the morph target.

virtual int32 MCCOMAPI IMorphArea::GetTargetCount | ( |  | ) | `[pure virtual]`

Returns the number of Morph Targets.

virtual boolean MCCOMAPI IMorphArea::IsMetaMorphArea | ( |  | ) | const`[pure virtual]`

Returns:
  true if this morph area is a meta morph

virtual boolean MCCOMAPI IMorphArea::LinkToMetaMorphTarget | ( | const int32 | morphAreaIndex,
|  | const int32 | targetIndex,
|  | const int32 | metaMorphAreaIndex,
|  | const int32 | metaMorphTargetIndex,
|  | real | multiplier = `1.0f` |
| ) |  |  | `[pure virtual]`

Link a morph target to another morph target of a meta morph area.

Parameters:

  | morphAreaIndex | Index of this morph area
  | targetIndex | Index of the target. Must be < GetMorphTargetCount()
  | metaMorphAreaIndex | The index of meta morph area
  | metaMorphTargetIndex | The index of morph target in the meta morph area

Returns:
  false if an error occured

virtual void MCCOMAPI IMorphArea::SetGlobalDeformerStrength | ( | int32 | deformerIndex,
|  | real32 | strength |
| ) |  |  | `[pure virtual]`

Sets the strength of a deformer on the morph area.

Parameters:

  | deformer | the deformer (should be attached to the primitive).
  | strength | the strength.

virtual void MCCOMAPI IMorphArea::SetMorphAreaName | ( | const TMCString & | morphAreaName | ) | `[pure virtual]`

sets the name of an area

virtual void MCCOMAPI IMorphArea::SetMorphTargetCoef | ( | const int32 | targetIndex,
|  | const real32 | coef |
| ) |  |  | `[pure virtual]`

Sets the coefficient of a specific morph target. This coefficient is animated, so depending on the time, a keyframe will be created. This coefficient determines how much the morph target will affect the model. A coefficient of 0 won't cause any deformation from this morph target, while a coefficient of 1 will apply the morph target fully. The coefficient can be greater than 1 or smaller than 0, and the target will be applied correspondingly.

Parameters:

  | targetIndex | Index of the target. Must be < GetMorphTargetCount()
  | coef | the coefficient to set

virtual void MCCOMAPI IMorphArea::SetMorphTargetMinMaxCoef | ( | const int32 | targetIndex,
|  | real | min,
|  | real | max |
| ) |  |  | `[pure virtual]`

Sets the minimum and maximum coefficient of a specific morph target.

Parameters:

  | targetIndex | Index of the target. Must be < GetMorphTargetCount()
  | min | Minimum coef.
  | max | Maximum coef.

virtual void MCCOMAPI IMorphArea::SetMorphTargetName | ( | const int32 | targetIndex,
|  | const TMCString & | morphTargetName |
| ) |  |  | `[pure virtual]`

Set the name of a specific target

Parameters:

  | targetIndex | Index of the target. Must be < GetMorphTargetCount()
  | morphTargetName | Name to set.

The documentation for this struct was generated from the following file:

- IMorphArea.h