Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 78653db2e4148c15abb94d33af2851c6 > files > 46

gts-devel-0.7.6-15.fc15.i686.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Vertices</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="GTS Library Reference Manual"
HREF="book1.html"><LINK
REL="UP"
TITLE="Geometrical Object Hierarchy"
HREF="c2915.html"><LINK
REL="PREVIOUS"
TITLE="Points"
HREF="gts-points.html"><LINK
REL="NEXT"
TITLE="Segments"
HREF="gts-segments.html"><STYLE
TYPE="text/css"
>.synopsis, .classsynopsis {
    background: #eeeeee;
    border: solid 1px #aaaaaa;
    padding: 0.5em;
}
.programlisting {
    background: #eeeeff;
    border: solid 1px #aaaaff;
    padding: 0.5em;
}
.variablelist {
    padding: 4px;
    margin-left: 3em;
}
.navigation {
    background: #ffeeee;
    border: solid 1px #ffaaaa;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}
.navigation a {
    color: #770000;
}
.navigation a:visited {
    color: #550000;
}
.navigation .title {
    font-size: 200%;
}</STYLE
></HEAD
><BODY
CLASS="REFENTRY"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><TABLE
WIDTH="100%"
CLASS="navigation"
SUMMARY="Navigation header"
CELLPADDING="2"
CELLSPACING="2"
><TR
VALIGN="middle"
><TD
><A
ACCESSKEY="p"
HREF="gts-points.html"
><IMG
SRC="left.png"
WIDTH="24"
HEIGHT="24"
BORDER="0"
ALT="Prev"></A
></TD
><TD
><A
ACCESSKEY="u"
HREF="c2915.html"
><IMG
SRC="up.png"
WIDTH="24"
HEIGHT="24"
BORDER="0"
ALT="Up"></A
></TD
><TD
><A
ACCESSKEY="h"
HREF="book1.html"
><IMG
SRC="home.png"
WIDTH="24"
HEIGHT="24"
BORDER="0"
ALT="Home"></A
></TD
><TH
WIDTH="100%"
align="center"
>GTS Library Reference Manual</TH
><TD
><A
ACCESSKEY="n"
HREF="gts-segments.html"
><IMG
SRC="right.png"
WIDTH="24"
HEIGHT="24"
BORDER="0"
ALT="Next"></A
></TD
></TR
></TABLE
><H1
><A
NAME="GTS-VERTICES"
></A
>Vertices</H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN5452"
></A
><H2
>Name</H2
>Vertices&nbsp;--&nbsp;vertex object and related functions.</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN5455"
></A
><H2
>Synopsis</H2
><PRE
CLASS="SYNOPSIS"
>&#13;#include &lt;gts.h&gt;


#define     <A
HREF="gts-vertices.html#GTS-VERTEX-CLASS:CAPS"
>GTS_VERTEX_CLASS</A
>                (klass)
#define     <A
HREF="gts-vertices.html#GTS-VERTEX:CAPS"
>GTS_VERTEX</A
>                      (obj)
#define     <A
HREF="gts-vertices.html#GTS-IS-VERTEX:CAPS"
>GTS_IS_VERTEX</A
>                   (obj)
            <A
HREF="gts-vertices.html#GTSVERTEXCLASS"
>GtsVertexClass</A
>;
            <A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
>;

<A
HREF="gts-vertices.html#GTSVERTEXCLASS"
>GtsVertexClass</A
>* <A
HREF="gts-vertices.html#GTS-VERTEX-CLASS"
>gts_vertex_class</A
>            (void);
<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
>*  <A
HREF="gts-vertices.html#GTS-VERTEX-NEW"
>gts_vertex_new</A
>                  (<A
HREF="gts-vertices.html#GTSVERTEXCLASS"
>GtsVertexClass</A
> *klass,
                                             <GTKDOCLINK
HREF="GDOUBLE"
>gdouble</GTKDOCLINK
> x,
                                             <GTKDOCLINK
HREF="GDOUBLE"
>gdouble</GTKDOCLINK
> y,
                                             <GTKDOCLINK
HREF="GDOUBLE"
>gdouble</GTKDOCLINK
> z);
<GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    <A
HREF="gts-vertices.html#GTS-VERTEX-IS-UNATTACHED"
>gts_vertex_is_unattached</A
>        (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v);
<GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    <A
HREF="gts-vertices.html#GTS-VERTEX-IS-BOUNDARY"
>gts_vertex_is_boundary</A
>          (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <A
HREF="gts-surfaces.html#GTSSURFACE"
>GtsSurface</A
> *surface);
<GTKDOCLINK
HREF="GUINT"
>guint</GTKDOCLINK
>       <A
HREF="gts-vertices.html#GTS-VERTEX-IS-CONTACT"
>gts_vertex_is_contact</A
>           (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
> sever);
<A
HREF="gts-segments.html#GTSSEGMENT"
>GtsSegment</A
>* <A
HREF="gts-vertices.html#GTS-VERTICES-ARE-CONNECTED"
>gts_vertices_are_connected</A
>      (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v1,
                                             <A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v2);
<GTKDOCLINK
HREF="VOID"
>void</GTKDOCLINK
>        <A
HREF="gts-vertices.html#GTS-VERTEX-REPLACE"
>gts_vertex_replace</A
>              (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *with);
<GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
>*     <A
HREF="gts-vertices.html#GTS-VERTEX-NEIGHBORS"
>gts_vertex_neighbors</A
>            (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
> *list,
                                             <A
HREF="gts-surfaces.html#GTSSURFACE"
>GtsSurface</A
> *surface);
<GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
>*     <A
HREF="gts-vertices.html#GTS-VERTEX-TRIANGLES"
>gts_vertex_triangles</A
>            (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
> *list);
<GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
>*     <A
HREF="gts-vertices.html#GTS-VERTEX-FACES"
>gts_vertex_faces</A
>                (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <A
HREF="gts-surfaces.html#GTSSURFACE"
>GtsSurface</A
> *surface,
                                             <GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
> *list);
<GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
>*     <A
HREF="gts-vertices.html#GTS-VERTEX-FAN-ORIENTED"
>gts_vertex_fan_oriented</A
>         (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <A
HREF="gts-surfaces.html#GTSSURFACE"
>GtsSurface</A
> *surface);
<GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    <A
HREF="gts-vertices.html#GTS-VERTEX-ENCROACHES-EDGE"
>gts_vertex_encroaches_edge</A
>      (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <A
HREF="gts-edges.html#GTSEDGE"
>GtsEdge</A
> *e);
<GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
>*     <A
HREF="gts-vertices.html#GTS-VERTICES-FROM-SEGMENTS"
>gts_vertices_from_segments</A
>      (<GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
> *segments);
<GTKDOCLINK
HREF="GLIST"
>GList</GTKDOCLINK
>*      <A
HREF="gts-vertices.html#GTS-VERTICES-MERGE"
>gts_vertices_merge</A
>              (<GTKDOCLINK
HREF="GLIST"
>GList</GTKDOCLINK
> *vertices,
                                             <GTKDOCLINK
HREF="GDOUBLE"
>gdouble</GTKDOCLINK
> epsilon,
                                             <GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
> (*check) (GtsVertex *, GtsVertex *));</PRE
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN5520"
></A
><H2
>Description</H2
><P
>Vertices are points used as endpoints of <A
HREF="gts-segments.html#GTSSEGMENT"
><SPAN
CLASS="TYPE"
>GtsSegment</SPAN
></A
>. They are derived from <A
HREF="gts-points.html#GTSPOINT"
><SPAN
CLASS="TYPE"
>GtsPoint</SPAN
></A
>.</P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN5527"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
NAME="AEN5529"
></A
><H3
><A
NAME="GTS-VERTEX-CLASS:CAPS"
></A
>GTS_VERTEX_CLASS()</H3
><PRE
CLASS="PROGRAMLISTING"
>#define     GTS_VERTEX_CLASS(klass)</PRE
><P
>Casts <CODE
CLASS="PARAMETER"
>klass</CODE
> to <A
HREF="gts-vertices.html#GTSVERTEXCLASS"
><SPAN
CLASS="TYPE"
>GtsVertexClass</SPAN
></A
>.</P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5540"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>klass</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>a descendant of <A
HREF="gts-vertices.html#GTSVERTEXCLASS"
><SPAN
CLASS="TYPE"
>GtsVertexClass</SPAN
></A
>.
&#13;</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5547"
></A
><H3
><A
NAME="GTS-VERTEX:CAPS"
></A
>GTS_VERTEX()</H3
><PRE
CLASS="PROGRAMLISTING"
>#define     GTS_VERTEX(obj)</PRE
><P
>Casts <CODE
CLASS="PARAMETER"
>obj</CODE
> to <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5558"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>obj</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>a descendant of <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.
&#13;</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5565"
></A
><H3
><A
NAME="GTS-IS-VERTEX:CAPS"
></A
>GTS_IS_VERTEX()</H3
><PRE
CLASS="PROGRAMLISTING"
>#define     GTS_IS_VERTEX(obj)</PRE
><P
>Evaluates to <TT
CLASS="LITERAL"
>TRUE</TT
> if <CODE
CLASS="PARAMETER"
>obj</CODE
> is a descendant of <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>, <TT
CLASS="LITERAL"
>FALSE</TT
> otherwise.</P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5578"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>obj</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>a pointer to test.
&#13;</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5583"
></A
><H3
><A
NAME="GTSVERTEXCLASS"
></A
>GtsVertexClass</H3
><PRE
CLASS="PROGRAMLISTING"
>typedef struct {
  GtsPointClass parent_class;

  void        (* intersection_attributes) (GtsVertex *, 
					   GtsObject *, 
					   GtsObject *);
} GtsVertexClass;</PRE
><P
>The vertex class. No virtual functions are associated.</P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5590"
></A
><H3
><A
NAME="GTSVERTEX"
></A
>GtsVertex</H3
><PRE
CLASS="PROGRAMLISTING"
>typedef struct {
  GtsPoint p;
  
  GSList * segments;
} GtsVertex;</PRE
><P
>The vertex object.</P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5598"><SPAN
STYLE="white-space: nowrap"
><A
HREF="gts-points.html#GTSPOINT"
>GtsPoint</A
>&nbsp;<CODE
CLASS="STRUCTFIELD"
>p</CODE
>;</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>The parent object.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5604"><SPAN
STYLE="white-space: nowrap"
><GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
>&nbsp;*<CODE
CLASS="STRUCTFIELD"
>segments</CODE
>;</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>Contains all the <A
HREF="gts-segments.html#GTSSEGMENT"
><SPAN
CLASS="TYPE"
>GtsSegment</SPAN
></A
> using this vertex as one of their endpoints.&#13;</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5612"
></A
><H3
><A
NAME="GTS-VERTEX-CLASS"
></A
>gts_vertex_class ()</H3
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="gts-vertices.html#GTSVERTEXCLASS"
>GtsVertexClass</A
>* gts_vertex_class            (void);</PRE
><P
></P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5622"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> the <A
HREF="gts-vertices.html#GTSVERTEXCLASS"
><SPAN
CLASS="TYPE"
>GtsVertexClass</SPAN
></A
>.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5629"
></A
><H3
><A
NAME="GTS-VERTEX-NEW"
></A
>gts_vertex_new ()</H3
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
>*  gts_vertex_new                  (<A
HREF="gts-vertices.html#GTSVERTEXCLASS"
>GtsVertexClass</A
> *klass,
                                             <GTKDOCLINK
HREF="GDOUBLE"
>gdouble</GTKDOCLINK
> x,
                                             <GTKDOCLINK
HREF="GDOUBLE"
>gdouble</GTKDOCLINK
> y,
                                             <GTKDOCLINK
HREF="GDOUBLE"
>gdouble</GTKDOCLINK
> z);</PRE
><P
></P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5643"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>klass</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-vertices.html#GTSVERTEXCLASS"
><SPAN
CLASS="TYPE"
>GtsVertexClass</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5650"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>x</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> the x-coordinate of the vertex to create.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5655"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>y</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> the y-coordinate of the vertex to create.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5660"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>z</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> the y-coordinate of the vertex to create.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5665"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a new <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
> with <CODE
CLASS="PARAMETER"
>x</CODE
>, <CODE
CLASS="PARAMETER"
>y</CODE
> and <CODE
CLASS="PARAMETER"
>z</CODE
> as coordinates.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5675"
></A
><H3
><A
NAME="GTS-VERTEX-IS-UNATTACHED"
></A
>gts_vertex_is_unattached ()</H3
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    gts_vertex_is_unattached        (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v);</PRE
><P
></P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5686"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>v</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5693"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> <TT
CLASS="LITERAL"
>TRUE</TT
> if <CODE
CLASS="PARAMETER"
>v</CODE
> is not the endpoint of any <A
HREF="gts-segments.html#GTSSEGMENT"
><SPAN
CLASS="TYPE"
>GtsSegment</SPAN
></A
>, 
<TT
CLASS="LITERAL"
>FALSE</TT
> otherwise.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5703"
></A
><H3
><A
NAME="GTS-VERTEX-IS-BOUNDARY"
></A
>gts_vertex_is_boundary ()</H3
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    gts_vertex_is_boundary          (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <A
HREF="gts-surfaces.html#GTSSURFACE"
>GtsSurface</A
> *surface);</PRE
><P
></P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5715"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>v</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5722"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>surface</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-surfaces.html#GTSSURFACE"
><SPAN
CLASS="TYPE"
>GtsSurface</SPAN
></A
> or <TT
CLASS="LITERAL"
>NULL</TT
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5730"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> <TT
CLASS="LITERAL"
>TRUE</TT
> if <CODE
CLASS="PARAMETER"
>v</CODE
> is used by a <A
HREF="gts-edges.html#GTSEDGE"
><SPAN
CLASS="TYPE"
>GtsEdge</SPAN
></A
> boundary of <CODE
CLASS="PARAMETER"
>surface</CODE
> as
determined by <A
HREF="gts-edges.html#GTS-EDGE-IS-BOUNDARY"
><CODE
CLASS="FUNCTION"
>gts_edge_is_boundary()</CODE
></A
>, <TT
CLASS="LITERAL"
>FALSE</TT
> otherwise.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5743"
></A
><H3
><A
NAME="GTS-VERTEX-IS-CONTACT"
></A
>gts_vertex_is_contact ()</H3
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GUINT"
>guint</GTKDOCLINK
>       gts_vertex_is_contact           (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
> sever);</PRE
><P
></P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5755"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>v</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.  </P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5762"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>sever</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> if <TT
CLASS="LITERAL"
>TRUE</TT
> and if <CODE
CLASS="PARAMETER"
>v</CODE
> is a contact vertex between two or more
sets of connected triangles replaces it with as many vertices,
clones of <CODE
CLASS="PARAMETER"
>v</CODE
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5770"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> the number of sets of connected triangles sharing <CODE
CLASS="PARAMETER"
>v</CODE
> as a
contact vertex.  </P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5776"
></A
><H3
><A
NAME="GTS-VERTICES-ARE-CONNECTED"
></A
>gts_vertices_are_connected ()</H3
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="gts-segments.html#GTSSEGMENT"
>GtsSegment</A
>* gts_vertices_are_connected      (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v1,
                                             <A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v2);</PRE
><P
></P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5788"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>v1</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5795"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>v2</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> another <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5802"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> if <CODE
CLASS="PARAMETER"
>v1</CODE
> and <CODE
CLASS="PARAMETER"
>v2</CODE
> are the vertices of the same <A
HREF="gts-segments.html#GTSSEGMENT"
><SPAN
CLASS="TYPE"
>GtsSegment</SPAN
></A
>
this segment else <TT
CLASS="LITERAL"
>NULL</TT
>.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5812"
></A
><H3
><A
NAME="GTS-VERTEX-REPLACE"
></A
>gts_vertex_replace ()</H3
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="VOID"
>void</GTKDOCLINK
>        gts_vertex_replace              (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *with);</PRE
><P
>Replaces vertex <CODE
CLASS="PARAMETER"
>v</CODE
> with vertex <CODE
CLASS="PARAMETER"
>with</CODE
>. <CODE
CLASS="PARAMETER"
>v</CODE
> and <CODE
CLASS="PARAMETER"
>with</CODE
> must be
different.  All the <A
HREF="gts-segments.html#GTSSEGMENT"
><SPAN
CLASS="TYPE"
>GtsSegment</SPAN
></A
> which have <CODE
CLASS="PARAMETER"
>v</CODE
> has one of their
vertices are updated.  The segments list of vertex <CODE
CLASS="PARAMETER"
>v</CODE
> is freed and
<CODE
CLASS="PARAMETER"
>v</CODE
>-&gt;segments is set to <TT
CLASS="LITERAL"
>NULL</TT
>.</P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5834"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>v</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5841"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>with</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> another <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5848"
></A
><H3
><A
NAME="GTS-VERTEX-NEIGHBORS"
></A
>gts_vertex_neighbors ()</H3
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
>*     gts_vertex_neighbors            (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
> *list,
                                             <A
HREF="gts-surfaces.html#GTSSURFACE"
>GtsSurface</A
> *surface);</PRE
><P
>Adds to <CODE
CLASS="PARAMETER"
>list</CODE
> all the <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
> connected to <CODE
CLASS="PARAMETER"
>v</CODE
> by a <A
HREF="gts-segments.html#GTSSEGMENT"
><SPAN
CLASS="TYPE"
>GtsSegment</SPAN
></A
> and not
already in <CODE
CLASS="PARAMETER"
>list</CODE
>. If <CODE
CLASS="PARAMETER"
>surface</CODE
> is not <TT
CLASS="LITERAL"
>NULL</TT
> only the vertices connected to
<CODE
CLASS="PARAMETER"
>v</CODE
> by an edge belonging to <CODE
CLASS="PARAMETER"
>surface</CODE
> are considered.</P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5872"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>v</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5879"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>list</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a list of <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5886"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>surface</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-surfaces.html#GTSSURFACE"
><SPAN
CLASS="TYPE"
>GtsSurface</SPAN
></A
> or <TT
CLASS="LITERAL"
>NULL</TT
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5894"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> the new list of unique <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5901"
></A
><H3
><A
NAME="GTS-VERTEX-TRIANGLES"
></A
>gts_vertex_triangles ()</H3
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
>*     gts_vertex_triangles            (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
> *list);</PRE
><P
>Adds all the <A
HREF="gts-triangles.html#GTSTRIANGLE"
><SPAN
CLASS="TYPE"
>GtsTriangle</SPAN
></A
> which share <CODE
CLASS="PARAMETER"
>v</CODE
> as a vertex and do not
already belong to <CODE
CLASS="PARAMETER"
>list</CODE
>.</P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5917"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>v</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5924"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>list</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a list of <A
HREF="gts-triangles.html#GTSTRIANGLE"
><SPAN
CLASS="TYPE"
>GtsTriangle</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5931"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> the new list of unique <A
HREF="gts-triangles.html#GTSTRIANGLE"
><SPAN
CLASS="TYPE"
>GtsTriangle</SPAN
></A
> which share <CODE
CLASS="PARAMETER"
>v</CODE
> as a
vertex.  </P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5939"
></A
><H3
><A
NAME="GTS-VERTEX-FACES"
></A
>gts_vertex_faces ()</H3
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
>*     gts_vertex_faces                (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <A
HREF="gts-surfaces.html#GTSSURFACE"
>GtsSurface</A
> *surface,
                                             <GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
> *list);</PRE
><P
>Adds all the <A
HREF="gts-faces.html#GTSFACE"
><SPAN
CLASS="TYPE"
>GtsFace</SPAN
></A
> belonging to <CODE
CLASS="PARAMETER"
>surface</CODE
> (if not <TT
CLASS="LITERAL"
>NULL</TT
>) which share 
<CODE
CLASS="PARAMETER"
>v</CODE
> as a vertex and do not already belong to <CODE
CLASS="PARAMETER"
>list</CODE
>.</P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5958"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>v</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5965"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>surface</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-surfaces.html#GTSSURFACE"
><SPAN
CLASS="TYPE"
>GtsSurface</SPAN
></A
> or <TT
CLASS="LITERAL"
>NULL</TT
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5973"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>list</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a list of <A
HREF="gts-faces.html#GTSFACE"
><SPAN
CLASS="TYPE"
>GtsFace</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN5980"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> the new list of unique <A
HREF="gts-faces.html#GTSFACE"
><SPAN
CLASS="TYPE"
>GtsFace</SPAN
></A
> belonging to <CODE
CLASS="PARAMETER"
>surface</CODE
> 
which share <CODE
CLASS="PARAMETER"
>v</CODE
> as a vertex.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN5989"
></A
><H3
><A
NAME="GTS-VERTEX-FAN-ORIENTED"
></A
>gts_vertex_fan_oriented ()</H3
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
>*     gts_vertex_fan_oriented         (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <A
HREF="gts-surfaces.html#GTSSURFACE"
>GtsSurface</A
> *surface);</PRE
><P
></P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN6001"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>v</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN6008"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>surface</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-surfaces.html#GTSSURFACE"
><SPAN
CLASS="TYPE"
>GtsSurface</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN6015"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a list of <A
HREF="gts-edges.html#GTSEDGE"
><SPAN
CLASS="TYPE"
>GtsEdge</SPAN
></A
> describing in counterclockwise order the 
boundary of the fan of summit <CODE
CLASS="PARAMETER"
>v</CODE
>, the faces of the fan belonging to 
<CODE
CLASS="PARAMETER"
>surface</CODE
>.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6024"
></A
><H3
><A
NAME="GTS-VERTEX-ENCROACHES-EDGE"
></A
>gts_vertex_encroaches_edge ()</H3
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
>    gts_vertex_encroaches_edge      (<A
HREF="gts-vertices.html#GTSVERTEX"
>GtsVertex</A
> *v,
                                             <A
HREF="gts-edges.html#GTSEDGE"
>GtsEdge</A
> *e);</PRE
><P
></P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN6036"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>v</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN6043"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>e</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a <A
HREF="gts-edges.html#GTSEDGE"
><SPAN
CLASS="TYPE"
>GtsEdge</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN6050"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> <TT
CLASS="LITERAL"
>TRUE</TT
> if <CODE
CLASS="PARAMETER"
>v</CODE
> is strictly contained in the diametral circle of <CODE
CLASS="PARAMETER"
>e</CODE
>,
<TT
CLASS="LITERAL"
>FALSE</TT
> otherwise.</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6059"
></A
><H3
><A
NAME="GTS-VERTICES-FROM-SEGMENTS"
></A
>gts_vertices_from_segments ()</H3
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
>*     gts_vertices_from_segments      (<GTKDOCLINK
HREF="GSLIST"
>GSList</GTKDOCLINK
> *segments);</PRE
><P
></P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN6070"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>segments</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a list of <A
HREF="gts-segments.html#GTSSEGMENT"
><SPAN
CLASS="TYPE"
>GtsSegment</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN6077"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a list of <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>, vertices of a <A
HREF="gts-segments.html#GTSSEGMENT"
><SPAN
CLASS="TYPE"
>GtsSegment</SPAN
></A
> in <CODE
CLASS="PARAMETER"
>segments</CODE
>.
Each element in the list is unique (no duplicates).</P
></TD
></TR
></TBODY
></TABLE
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN6087"
></A
><H3
><A
NAME="GTS-VERTICES-MERGE"
></A
>gts_vertices_merge ()</H3
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="GLIST"
>GList</GTKDOCLINK
>*      gts_vertices_merge              (<GTKDOCLINK
HREF="GLIST"
>GList</GTKDOCLINK
> *vertices,
                                             <GTKDOCLINK
HREF="GDOUBLE"
>gdouble</GTKDOCLINK
> epsilon,
                                             <GTKDOCLINK
HREF="GBOOLEAN"
>gboolean</GTKDOCLINK
> (*check) (GtsVertex *, GtsVertex *));</PRE
><P
>For each vertex v in <CODE
CLASS="PARAMETER"
>vertices</CODE
> look if there are any vertex of
<CODE
CLASS="PARAMETER"
>vertices</CODE
> contained in a box centered on v of size 2*<CODE
CLASS="PARAMETER"
>epsilon</CODE
>. If
there are and if <CODE
CLASS="PARAMETER"
>check</CODE
> is not <TT
CLASS="LITERAL"
>NULL</TT
> and returns <TT
CLASS="LITERAL"
>TRUE</TT
>, replace
them with v (using <A
HREF="gts-vertices.html#GTS-VERTEX-REPLACE"
><CODE
CLASS="FUNCTION"
>gts_vertex_replace()</CODE
></A
>), destroy them and remove
them from list.  This is done efficiently using Kd-Trees.</P
><P
></P
><P
></P
><TABLE
CLASS="variablelist"
BORDER="0"
CELLSPACING="0"
CELLPADDING="4"
><TBODY
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN6108"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>vertices</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> a list of <A
HREF="gts-vertices.html#GTSVERTEX"
><SPAN
CLASS="TYPE"
>GtsVertex</SPAN
></A
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN6115"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>epsilon</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> half the size of the bounding box to consider for each vertex.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN6120"><SPAN
STYLE="white-space: nowrap"
><CODE
CLASS="PARAMETER"
>check</CODE
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> function called for each pair of vertices about to be merged
or <TT
CLASS="LITERAL"
>NULL</TT
>.</P
></TD
></TR
><TR
><TD
ALIGN="LEFT"
VALIGN="TOP"
><A
NAME="AEN6126"><SPAN
STYLE="white-space: nowrap"
><SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>Returns</I
></SPAN
>&nbsp;:</SPAN
></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
> the updated list of vertices.  </P
></TD
></TR
></TBODY
></TABLE
></DIV
></DIV
><TABLE
CLASS="navigation"
WIDTH="100%"
SUMMARY="Navigation footer"
CELLPADDING="2"
CELLSPACING="2"
><TR
VALIGN="middle"
><TD
ALIGN="left"
><A
ACCESSKEY="p"
HREF="gts-points.html"
><B
>&lt;&lt;&lt;&nbsp;Points</B
></A
></TD
><TD
ALIGN="right"
><A
ACCESSKEY="n"
HREF="gts-segments.html"
><B
>Segments&nbsp;&gt;&gt;&gt;</B
></A
></TD
></TR
></TABLE
></BODY
></HTML
>