# I3DExVertex Struct Reference
[External Interfaces]

Inheritance diagram for I3DExVertex:

List of all members.

## Public Member Functions
virtual void MCCOMAPI | GetPosition (TVector3 &position)=0
virtual void MCCOMAPI | SetPosition (TVector3 &position)=0
virtual void MCCOMAPI | SetSelection (boolean selected, boolean autoSelection=true, boolean selectAllUV=true)=0
virtual boolean MCCOMAPI | GetSelection (boolean useSymmetry=false)=0
virtual void MCCOMAPI | Delete (boolean preserveTopology=false)=0
virtual IEdge *MCCOMAPI | CreateEdge (I3DExVertex *v)=0
virtual IPolymesh *MCCOMAPI | GetPolymesh ()=0
virtual int32 MCCOMAPI | GetNbEdges ()=0
virtual IEdge *MCCOMAPI | GetEdge (int32 index)=0
virtual IEdge *MCCOMAPI | FindEdge (I3DExVertex *vertex)=0
| Find if there is an edge between two vertices.
virtual void MCCOMAPI | SetHidden (boolean hidden)=0
virtual boolean MCCOMAPI | GetHidden () const =0
virtual void MCCOMAPI | SetUsed (boolean used)=0
virtual boolean MCCOMAPI | GetUsed ()=0
virtual void MCCOMAPI | MergeEdges ()=0
virtual void MCCOMAPI | SetBooleanClassification (const int32 classification)=0
virtual const int32 MCCOMAPI | GetBooleanClassification ()=0
virtual boolean MCCOMAPI | Weld (I3DExVertex *v, boolean keepUVs)=0
virtual IEdge *MCCOMAPI | Link (I3DExVertex *v)=0
virtual boolean MCCOMAPI | GetBestPlane (TVector3 &ii, TVector3 &jj, TVector3 &kk, TVector3 &center)=0
virtual void MCCOMAPI | GetNeighborVertices (TMCPtrArray< I3DExVertex > &vertices, boolean extended)=0
virtual boolean MCCOMAPI | GetBestPlane2 (TMCPtrArray< I3DExVertex > &vertices, TVector3 &ii, TVector3 &jj, TVector3 &kk, TVector3 &center)=0
virtual I3DExVertex *MCCOMAPI | CloneConjugate ()=0
virtual void MCCOMAPI | GetNormal (TVector3 &normal)=0
virtual void MCCOMAPI | GetNormal (TVector3 &normal, const int32 index)=0
virtual int32 MCCOMAPI | GetNormalCount ()=0
virtual void MCCOMAPI | SetIndex (int32 index)=0
virtual int32 MCCOMAPI | GetIndex ()=0
virtual void MCCOMAPI | GetName (char *name)=0
virtual void MCCOMAPI | SetName (char *name)=0
virtual int32 MCCOMAPI | GetUVCount ()=0
virtual int32 MCCOMAPI | AddUV (const TVector2 &uv)=0
virtual void MCCOMAPI | ClearUV ()=0
virtual int32 MCCOMAPI | RemoveUV (const int32 UVIndex, const int32 UVReplacement=0)=0
virtual const TVector2 &MCCOMAPI | GetUV (int32 index)=0
virtual void MCCOMAPI | SetUV (int32 index, const TVector2 &uv)=0
virtual boolean MCCOMAPI | IsUVSelected (int32 index)=0
virtual boolean MCCOMAPI | IsUVHidden (int32 index)=0
virtual void MCCOMAPI | SelectUV (int32 index, boolean select)=0
virtual void MCCOMAPI | SetCustomUVMode (int32 mode, int32 axis=-1)=0
virtual int32 MCCOMAPI | GetCustomUVMode (int32 axis)=0
virtual TVertexSkinInfo *MCCOMAPI | GetSkiningData () const =0
virtual void MCCOMAPI | SetSkiningData (const TVertexSkinInfo &skinInfo)=0
virtual void MCCOMAPI | SetSpecial (boolean special)=0
virtual void MCCOMAPI | SetUVUnfoldPinning (boolean pinning)=0
virtual boolean MCCOMAPI | GetUVUnfoldPinning () const =0
virtual void MCCOMAPI | SetNonDisplayedSpecial (boolean special)=0
virtual int32 MCCOMAPI | GetMorphAreaIndex () const =0
virtual void MCCOMAPI | SetMorphOffset (const int32 targetIndex, const TVector3 &offset)=0
| Sets the morph offset for a given morph target index for this vertex.
virtual void MCCOMAPI | GetMorphOffset (const int32 targetIndex, TVector3 &offset)=0
| Gets the morph offset for a given morph target index for this vertex.
virtual I3DExVertex *MCCOMAPI | GetSymmetricalVertex ()=0
| Gets the symmetrical vertex if any in the mesh and if the symmetrical modeling is enabled.
virtual void MCCOMAPI | GetPositionWithOptions (TVector3 &outPosition, TVertexPrimSkinInfo *inMeshSkinInfo, const boolean inRecomputeCache) const =0
| Gets the skinned position of the vertex.
virtual const TMCPoint &MCCOMAPI | GetOriginIndexInFigure () const =0
virtual void MCCOMAPI | GetPositionWithMorphs (const TMorphIDList *morphsToApply, boolean showMorphs, TVector3 &outPosition) const =0
| Gets the regular position of the vertex or the morphed position if applicable.

## Detailed Description

This interface can be used to access a vertex inside a vertex primitive.

## Member Function Documentation

virtual int32 MCCOMAPI I3DExVertex::AddUV | ( | const TVector2 & | uv | ) | `[pure virtual]`

Adds new uv coordinates (texture coordinates) on this vertex.

Parameters:

  | uv | Value of the uv to add.

Returns:
  The index of the uv created on this vertex.

virtual void MCCOMAPI I3DExVertex::ClearUV | ( |  | ) | `[pure virtual]`

Clear the UV list on this vertex. Important: this method does not clean the reference to the UV list in the surrounding polygons.

virtual I3DExVertex* MCCOMAPI I3DExVertex::CloneConjugate | ( |  | ) | `[pure virtual]`

virtual IEdge* MCCOMAPI I3DExVertex::CreateEdge | ( | I3DExVertex * | v | ) | `[pure virtual]`

virtual void MCCOMAPI I3DExVertex::Delete | ( | boolean | preserveTopology = `false` | ) | `[pure virtual]`

virtual IEdge* MCCOMAPI I3DExVertex::FindEdge | ( | I3DExVertex * | vertex | ) | `[pure virtual]`

Find if there is an edge between two vertices.

virtual boolean MCCOMAPI I3DExVertex::GetBestPlane | ( | TVector3 & | ii,
|  | TVector3 & | jj,
|  | TVector3 & | kk,
|  | TVector3 & | center |
| ) |  |  | `[pure virtual]`

virtual boolean MCCOMAPI I3DExVertex::GetBestPlane2 | ( | TMCPtrArray< I3DExVertex > & | vertices,
|  | TVector3 & | ii,
|  | TVector3 & | jj,
|  | TVector3 & | kk,
|  | TVector3 & | center |
| ) |  |  | `[pure virtual]`

virtual const int32 MCCOMAPI I3DExVertex::GetBooleanClassification | ( |  | ) | `[pure virtual]`

virtual int32 MCCOMAPI I3DExVertex::GetCustomUVMode | ( | int32 | axis | ) | `[pure virtual]`

Gets the mode for the default uvs (custom or calculated)

virtual IEdge* MCCOMAPI I3DExVertex::GetEdge | ( | int32 | index | ) | `[pure virtual]`

virtual boolean MCCOMAPI I3DExVertex::GetHidden | ( |  | ) | const`[pure virtual]`

virtual int32 MCCOMAPI I3DExVertex::GetIndex | ( |  | ) | `[pure virtual]`

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

virtual void MCCOMAPI I3DExVertex::GetMorphOffset | ( | const int32 | targetIndex,
|  | TVector3 & | offset |
| ) |  |  | `[pure virtual]`

Gets the morph offset for a given morph target index for this vertex.

virtual void MCCOMAPI I3DExVertex::GetName | ( | char * | name | ) | `[pure virtual]`

virtual int32 MCCOMAPI I3DExVertex::GetNbEdges | ( |  | ) | `[pure virtual]`

virtual void MCCOMAPI I3DExVertex::GetNeighborVertices | ( | TMCPtrArray< I3DExVertex > & | vertices,
|  | boolean | extended |
| ) |  |  | `[pure virtual]`

virtual void MCCOMAPI I3DExVertex::GetNormal | ( | TVector3 & | normal,
|  | const int32 | index |
| ) |  |  | `[pure virtual]`

Returns the ieme normal on the vertex.

Parameters:

  | normal | The vector of the normal that is returned.
  | index | The index of the normal (0<= index < GetNormalCount())

virtual void MCCOMAPI I3DExVertex::GetNormal | ( | TVector3 & | normal | ) | `[pure virtual]`

Returns the average of all the normals on this vertex

virtual int32 MCCOMAPI I3DExVertex::GetNormalCount | ( |  | ) | `[pure virtual]`

Returns the number of normals on this vertex ( == smoother count )

virtual const TMCPoint& MCCOMAPI I3DExVertex::GetOriginIndexInFigure | ( |  | ) | const`[pure virtual]`

virtual IPolymesh* MCCOMAPI I3DExVertex::GetPolymesh | ( |  | ) | `[pure virtual]`

virtual void MCCOMAPI I3DExVertex::GetPosition | ( | TVector3 & | position | ) | `[pure virtual]`

Returns the position of the vertex.

virtual void MCCOMAPI I3DExVertex::GetPositionWithMorphs | ( | const TMorphIDList * | morphsToApply,
|  | boolean | showMorphs,
|  | TVector3 & | outPosition |
| ) |  |  | const`[pure virtual]`

Gets the regular position of the vertex or the morphed position if applicable.

virtual void MCCOMAPI I3DExVertex::GetPositionWithOptions | ( | TVector3 & | outPosition,
|  | TVertexPrimSkinInfo * | inMeshSkinInfo,
|  | const boolean | inRecomputeCache |
| ) |  |  | const`[pure virtual]`

Gets the skinned position of the vertex.

virtual boolean MCCOMAPI I3DExVertex::GetSelection | ( | boolean | useSymmetry = `false` | ) | `[pure virtual]`

Returns true if the vertex is selected.

virtual TVertexSkinInfo* MCCOMAPI I3DExVertex::GetSkiningData | ( |  | ) | const`[pure virtual]`

Returns the information related to the skinning of this vertex

virtual I3DExVertex* MCCOMAPI I3DExVertex::GetSymmetricalVertex | ( |  | ) | `[pure virtual]`

Gets the symmetrical vertex if any in the mesh and if the symmetrical modeling is enabled.

virtual boolean MCCOMAPI I3DExVertex::GetUsed | ( |  | ) | `[pure virtual]`

Returns the Used flag status. This flag can be set On or Off with SetUsed

virtual const TVector2& MCCOMAPI I3DExVertex::GetUV | ( | int32 | index | ) | `[pure virtual]`

Returns the value of the uv (texture coordinates) of the vertex

Parameters:

  | index | index of the uv coordinates to set (a vertex can have several)

virtual int32 MCCOMAPI I3DExVertex::GetUVCount | ( |  | ) | `[pure virtual]`

Returns the number of UV stored on this vertex

virtual boolean MCCOMAPI I3DExVertex::GetUVUnfoldPinning | ( |  | ) | const`[pure virtual]`

Gets the value of the flag 'UV unfold pinning point' of the vertex

virtual boolean MCCOMAPI I3DExVertex::IsUVHidden | ( | int32 | index | ) | `[pure virtual]`

Returns the visibility state of the given uv.

virtual boolean MCCOMAPI I3DExVertex::IsUVSelected | ( | int32 | index | ) | `[pure virtual]`

Returns the selection state of the given uv.

virtual IEdge* MCCOMAPI I3DExVertex::Link | ( | I3DExVertex * | v | ) | `[pure virtual]`

virtual void MCCOMAPI I3DExVertex::MergeEdges | ( |  | ) | `[pure virtual]`

virtual int32 MCCOMAPI I3DExVertex::RemoveUV | ( | const int32 | UVIndex,
|  | const int32 | UVReplacement = `0` |
| ) |  |  | `[pure virtual]`

Removes an UV from the list. The last element of the list will be copy in place of the removed UV => order in the UV list is modified. The references to the removed index in the polygons arround are set to the UVReplacement index.

Parameters:

  | UVIndex | the UV to be removed
  | UVReplacement | the new index for the surrounding polygons.

Returns:
  -1 if could perform the removal ( index out of range, or UVIndex == UVReplacement), else return the new UVReplacement index

virtual void MCCOMAPI I3DExVertex::SelectUV | ( | int32 | index,
|  | boolean | select |
| ) |  |  | `[pure virtual]`

Selects the uv.

virtual void MCCOMAPI I3DExVertex::SetBooleanClassification | ( | const int32 | classification | ) | `[pure virtual]`

virtual void MCCOMAPI I3DExVertex::SetCustomUVMode | ( | int32 | mode,
|  | int32 | axis = `-1` |
| ) |  |  | `[pure virtual]`

Sets the mode for the default uvs (custom or calculated)

Parameters:

  | mode | the new uv mode
  | axis | the axis (-1 means both)

virtual void MCCOMAPI I3DExVertex::SetHidden | ( | boolean | hidden | ) | `[pure virtual]`

virtual void MCCOMAPI I3DExVertex::SetIndex | ( | int32 | index | ) | `[pure virtual]`

virtual void MCCOMAPI I3DExVertex::SetMorphOffset | ( | const int32 | targetIndex,
|  | const TVector3 & | offset |
| ) |  |  | `[pure virtual]`

Sets the morph offset for a given morph target index for this vertex.

virtual void MCCOMAPI I3DExVertex::SetName | ( | char * | name | ) | `[pure virtual]`

virtual void MCCOMAPI I3DExVertex::SetNonDisplayedSpecial | ( | boolean | special | ) | `[pure virtual]`

Sets the value of the flag 'special non-displayed' of the vertex. The non- displayed special vertex is a vertex that can be found at the primitive level and that's not visible on the screen ( as opposed to the special vertex who appears yellow on the mesh )

virtual void MCCOMAPI I3DExVertex::SetPosition | ( | TVector3 & | position | ) | `[pure virtual]`

Sets the position of the vertex.

virtual void MCCOMAPI I3DExVertex::SetSelection | ( | boolean | selected,
|  | boolean | autoSelection = `true`,
|  | boolean | selectAllUV = `true` |
| ) |  |  | `[pure virtual]`

Select or unselect the vertex. Depending on the mode used, edges around can be selected

Parameters:

  | selected | True to select, false to deselect
  | autoSelection | True to complete the selection
  | selectAllUV | True is all uv should be selected

virtual void MCCOMAPI I3DExVertex::SetSkiningData | ( | const TVertexSkinInfo & | skinInfo | ) | `[pure virtual]`

Sets the skining info on a vertex. The vertex primitive is supposed to be attached to a skeleton

virtual void MCCOMAPI I3DExVertex::SetSpecial | ( | boolean | special | ) | `[pure virtual]`

Sets the value of the flag 'special' of the vertex

Parameters:

  | special | Value to be set.

virtual void MCCOMAPI I3DExVertex::SetUsed | ( | boolean | used | ) | `[pure virtual]`

Set On or Off a flag in the vertex. The flag status can then be checked with GetUsed

virtual void MCCOMAPI I3DExVertex::SetUV | ( | int32 | index,
|  | const TVector2 & | uv |
| ) |  |  | `[pure virtual]`

Sets the value of the uv (texture coordinates) of the vertex

Parameters:

  | index | index of the uv coordinates to set (a vertex can have several)
  | uv | The new uv coordinates.

virtual void MCCOMAPI I3DExVertex::SetUVUnfoldPinning | ( | boolean | pinning | ) | `[pure virtual]`

Sets the value of the flag 'UV unfold pinning point' of the vertex

Parameters:

  | special | Value to be set.

virtual boolean MCCOMAPI I3DExVertex::Weld | ( | I3DExVertex * | v,
|  | boolean | keepUVs |
| ) |  |  | `[pure virtual]`

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

- I3DExVertex.h