Details
GTS_VERTEX_CLASS()
#define GTS_VERTEX_CLASS(klass) |
Casts klass to GtsVertexClass.
GTS_IS_VERTEX()
#define GTS_IS_VERTEX(obj) |
Evaluates to TRUE if obj is a descendant of GtsVertex, FALSE otherwise.
struct GtsVertexClass
The vertex class. No virtual functions are associated.
struct GtsVertex
struct GtsVertex {
GtsPoint p;
GSList * segments;
}; |
The vertex object.
gts_vertex_is_unattached ()
gboolean gts_vertex_is_unattached (GtsVertex *v); |
gts_vertex_is_boundary ()
gts_vertex_is_contact ()
guint gts_vertex_is_contact (GtsVertex *v,
gboolean sever); |
gts_vertices_are_connected ()
gts_vertex_replace ()
Replaces vertex v with vertex with. v and with must be
different. All the GtsSegment which have v has one of their
vertices are updated. The segments list of vertex v is freed and
v->segments is set to NULL.
gts_vertex_neighbors ()
Adds to list all the GtsVertex connected to v by a GtsSegment and not
already in list. If surface is not NULL only the vertices connected to
v by an edge belonging to surface are considered.
gts_vertex_triangles ()
GSList* gts_vertex_triangles (GtsVertex *v,
GSList *list); |
Adds all the GtsTriangle which share v as a vertex and do not
already belong to list.
gts_vertex_faces ()
Adds all the GtsFace belonging to surface (if not NULL) which share
v as a vertex and do not already belong to list.
gts_vertex_fan_oriented ()
gts_vertex_encroaches_edge ()
gts_vertices_from_segments ()
GSList* gts_vertices_from_segments (GSList *segments); |
gts_vertices_merge ()
GList* gts_vertices_merge (GList *vertices,
gdouble epsilon); |
For each vertex v in vertices look if there are any vertex of
vertices contained in a box centered on v of size 2*epsilon. If
there are, replace them with v (using gts_vertex_replace()),
destroy them and remove them from list. This is done efficiently
using Kd-Trees.