HM_FaceLoop

Contains information about individual face loops in the topology of mesh areas defined by the HM_Topology structure.

Syntax

struct HM_FaceLoop {
int size;
int num_edges;
int* edges;
bool* edge_dirs;
};

Type

HyperMesh Ext API Function

Description

This structure contains information about individual face loops in the topology of mesh areas defined by the HM_Topology structure.

Each face in the set of mesh areas specified by the HM_Topology structure is assumed to have two sides. Of those two sides, the upper side is defined in such a way that in the view from above the face area is located on the left side from each of its loops.

Figure 1.


Different loops of the same face must have consistent directions. Inconsistent directions may result in a failure to resolve topology mapping to actual geometry of the model.

The structure information is declared in hm_extapi.h.

The members are: size, num_edges, edges, edge_dirs

Inputs

size
Specifies the length, in bytes, of the structure. Use sizeof(HM_FaceLoop) for this member. This is used to distinguish the current version of HM_FaceLoop from possible future extended versions with additional members.
num_edges
The number of edge occurrences in the face loop specified by this HM_FaceLoop structure Each edge occurrence is defined by a reference to an edge included into an array pointed to by the edges member of the HM_Topology structure, and by the direction of this edge with the respect to the loop direction.
edges
Pointer to an array of edge references. The number of values in the array must not be smaller than the value specified by the num_edges member of this HM_FaceLoop structure.
Each number in the array pointed to by edges represents a zero-based index in the array of the HM_Edge structures pointed to by the edges member of the HM_Topology structure that contains this HM_FaceLoop structure in its loops array.
edge_dirs
Pointer to an array of flags specifying the direction of each edge within the loop. The number of values in the array must not be smaller than the value specified by the num_edges member of this HM_FaceLoop structure.
A value of true indicates that the direction of the edge referenced by the corresponding edge occurrence coincides with the direction of the loop. A value of false indicates that the direction of the loop is opposite to the direction of the loop.

Errors

None.