>
EdgesGTS Library Reference Manual | |||
---|---|---|---|
<<< Previous Page | Home | Up | Next Page >>> |
#define GTS_EDGE_CLASS(klass) |
Casts klass to GtsEdgeClass.
klass : | a descendant of GtsObjectClass. |
#define GTS_IS_EDGE(obj) |
Evaluates to TRUE if obj is a GtsEdge, FALSE otherwise.
obj : | a pointer to test. |
struct GtsEdge { GtsSegment segment; GSList * triangles; }; |
The edge object.
GtsSegment segment | The parent object. |
List of GtsTriangle using this edge. |
GtsEdge* gts_edge_new (GtsEdgeClass *klass, GtsVertex *v1, GtsVertex *v2); |
klass : | a GtsEdgeClass. |
v1 : | a GtsVertex. |
v2 : | a GtsVertex. |
Returns : | a new GtsEdge linking v1 and v2. |
void gts_edge_replace (GtsEdge *e, GtsEdge *with); |
Replaces e with with. For each triangle which uses e as an edge, e is replaced with with. The with->triangles list is updated appropriately and the e->triangles list is freed and set to NULL.
#define gts_edge_is_unattached(s) ((s)->triangles == NULL ? TRUE : FALSE) |
Evaluates to TRUE if no triangles uses s as an edge, FALSE otherwise.
s : | a GtsEdge. |
GtsFace* gts_edge_has_parent_surface (GtsEdge *e, GtsSurface *surface); |
e : | a GtsEdge. |
surface : | a GtsSurface. |
Returns : | a GtsFace of surface having e as an edge, NULL otherwise. |
GtsFace* gts_edge_is_boundary (GtsEdge *e, GtsSurface *surface); |
e : | a GtsEdge. |
surface : | a GtsSurface or NULL. |
Returns : | the unique GtsFace (which belongs to surface) and which has e as an edge (i.e. e is a boundary edge (of surface)) or NULL if there is more than one or no faces (belonging to surface) and with e as an edge. |
|
e : | a GtsEdge. |
Returns : | the number of sets of connected triangles sharing e as a contact edge. |
|
e : | a GtsEdge. |
Returns : | TRUE if e is used by faces forming a tetrahedron, FALSE otherwise. |
|
e : | a GtsEdge. |
s : | a GtsSurface. |
Returns : | the number of faces using e and belonging to s. |
|
v : | |
e : | |
s : | |
data : | |
Returns : |
GtsVertex* gts_edge_is_encroached (GtsEdge *e, GtsSurface *s, GtsEncroachFunc encroaches, |
e : | a GtsEdge. |
s : | a GtsSurface describing a (constrained) Delaunay triangulation. |
encroaches : | a GtsEncroachFunc. |
data : | user data to be passed to encroaches. |
Returns : | a GtsVertex belonging to s and encroaching upon e (as defined by encroaches) or NULL if there is none. |
|
For each edge in edges check if it is duplicated (as returned by gts_edge_is_duplicate()). If it is replace it by its duplicate, destroy it and remove it from the list.
edges : | a list of GtsEdge. |
Returns : | the updated edges list. |
|
vertices : | a list of GtsVertex. |
parent : | a GtsSurface. |
Returns : | a list of unique GtsEdge which have one of their vertices in vertices and are used by a face of parent. |
void gts_edge_swap (GtsEdge *e, GtsSurface *s); |
Performs an "edge swap" on the two triangles sharing e and belonging to s.
e : | a GtsEdge. |
s : | a GtsSurface. |