<para><xref linkend="CreateTopology"/>, <xref linkend="CreateTopoGeom"/></para>
</refsection>
</refentry>
+ <refentry id="DropTopology">
+ <refnamediv>
+ <refname>DropTopology</refname>
+
+ <refpurpose>Use with caution: Drops a topology schema and deletes its reference from topology.topology table and references to tables in that schema from the geometry_columns table.</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>integer <function>DropTopology</function></funcdef>
+ <paramdef><type>varchar </type> <parameter>topology_schema_name</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>Drops a topology schema and deletes its reference from topology.topology table and references to tables in that schema from the geometry_columns table.
+ This function should be USED WITH CAUTION, as it could destroy data you care about. If the schema does not exist, it just removes reference entries the named schema.</para>
+
+ <!-- use this format if new function -->
+ <para>Availability: 1.?</para>
+ </refsection>
+
+
+ <refsection>
+ <title>Examples</title>
+ <para>Cascade drops the ma_topo schema and removes all references to it in topology.topology and geometry_columns.</para>
+ <programlisting>SELECT topology.DropTopology('ma_topo');</programlisting>
+ </refsection>
+
+ <!-- Optionally add a "See Also" section -->
+ <refsection>
+ <title>See Also</title>
+ <para></para>
+ </refsection>
+ </refentry>
+ <refentry id="DropTopoGeometryColumn">
+ <refnamediv>
+ <refname>DropTopoGeometryColumn</refname>
+
+ <refpurpose>Drops the topogeometry column from the table named <varname>table_name</varname> in schema <varname>schema_name</varname> and unregisters the columns from topology.layer table.</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>text <function>DropTopoGeometryColumn</function></funcdef>
+ <paramdef><type>varchar </type> <parameter>schema_name</parameter></paramdef>
+ <paramdef><type>varchar </type> <parameter>table_name</parameter></paramdef>
+ <paramdef><type>varchar </type> <parameter>column_name</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>Drops the topogeometry column from the table named <varname>table_name</varname> in schema <varname>schema_name</varname> and unregisters the columns from topology.layer table. Returns summary
+ of drop status. NOTE: it first sets all values to NULL before dropping to bypass referential integrity checks.</para>
+
+ <!-- use this format if new function -->
+ <para>Availability: 1.?</para>
+ </refsection>
+
+
+ <refsection>
+ <title>Examples</title>
+ <programlisting>SELECT topology.DropTopoGeometryColumn('ma_topo', 'parcel_topo', 'topo');</programlisting>
+ </refsection>
+
+ <!-- Optionally add a "See Also" section -->
+ <refsection>
+ <title>See Also</title>
+ <para><xref linkend="AddTopoGeometryColumn"/></para>
+ </refsection>
+ </refentry>
+
+ <refentry id="TopologySummary">
+ <refnamediv>
+ <refname>TopologySummary</refname>
+
+ <refpurpose>Takes a topology name and provides summary totals of types of objects in topology</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>text <function>TopologySummary</function></funcdef>
+ <paramdef><type>varchar </type> <parameter>topology_schema_name</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>Takes a topology name and provides summary totals of types of objects in topology.</para>
+
+ <!-- use this format if new function -->
+ <para>Availability: 2.0.0</para>
+ </refsection>
+
+
+ <refsection>
+ <title>Examples</title>
+ <programlisting>SELECT topology.topologysummary('city_data');
+ topologysummary
+--------------------------------------------------------
+ Topology city_data (329), SRID 4326, precision: 0
+ 22 nodes, 24 edges, 10 faces, 29 topogeoms in 5 layers
+ Layer 1, type Polygonal (3), 9 topogeoms
+ Deploy: features.land_parcels.feature
+ Layer 2, type Puntal (1), 8 topogeoms
+ Deploy: features.traffic_signs.feature
+ Layer 3, type Lineal (2), 8 topogeoms
+ Deploy: features.city_streets.feature
+ Layer 4, type Polygonal (3), 3 topogeoms
+ Hierarchy level 1, child layer 1
+ Deploy: features.big_parcels.feature
+ Layer 5, type Puntal (1), 1 topogeoms
+ Hierarchy level 1, child layer 2
+ Deploy: features.big_signs.feature</programlisting>
+ </refsection>
+ <!-- Optionally add a "See Also" section -->
+ <refsection>
+ <title>See Also</title>
+ <para><xref linkend="Topology_Load_Tiger" /></para>
+ </refsection>
+ </refentry>
+
+ <refentry id="ValidateTopology">
+ <refnamediv>
+ <refname>ValidateTopology</refname>
+
+ <refpurpose>Returns a set of validatetopology_returntype objects detailing issues with topology</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>setof validatetopology_returntype <function>ValidateTopology</function></funcdef>
+ <paramdef><type>varchar </type> <parameter>topology_schema_name</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>Returns a set of <xref linkend="validatetopology_returntype"/> objects detailing issues with topology. Refer to
+ <xref linkend="validatetopology_returntype"/> for listing of possible errors.</para>
+
+ <!-- use this format if new function -->
+ <para>Availability: 1.?</para>
+ <!-- use this format if not a new function but functionality enhanced -->
+ <para>Enhanced: 2.0.0 more efficient edge crossing detection and fixes for false positives that were existent in prior versions.</para>
+ </refsection>
+
+
+ <refsection>
+ <title>Examples</title>
+ <programlisting>SELECT * FROM topology.ValidateTopology('ma_topo');
+ error | id1 | id2
+-------------------+-----+-----
+face without edges | 0 |
+ </programlisting>
+ </refsection>
+
+ <!-- Optionally add a "See Also" section -->
+ <refsection>
+ <title>See Also</title>
+ <para><xref linkend="validatetopology_returntype"/>, <xref linkend="Topology_Load_Tiger" /></para>
+ </refsection>
+ </refentry>
+ </sect1>
+
+ <sect1 id="Topology_Constructors">
+ <sect1info>
+ <abstract>
+ <para>This section covers the topology functions for creating new topologies.</para>
+ </abstract>
+ </sect1info>
+ <title>Topology Constructors</title>
+
<refentry id="CreateTopology">
<refnamediv>
<refname>CreateTopology</refname>
<para><xref linkend="spatial_ref_sys"/>, <xref linkend="ST_InitTopoGeo" />, <xref linkend="Topology_Load_Tiger" /></para>
</refsection>
</refentry>
- <refentry id="DropTopology">
- <refnamediv>
- <refname>DropTopology</refname>
-
- <refpurpose>Use with caution: Drops a topology schema and deletes its reference from topology.topology table and references to tables in that schema from the geometry_columns table.</refpurpose>
- </refnamediv>
-
- <refsynopsisdiv>
- <funcsynopsis>
- <funcprototype>
- <funcdef>integer <function>DropTopology</function></funcdef>
- <paramdef><type>varchar </type> <parameter>topology_schema_name</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- </refsynopsisdiv>
-
- <refsection>
- <title>Description</title>
-
- <para>Drops a topology schema and deletes its reference from topology.topology table and references to tables in that schema from the geometry_columns table.
- This function should be USED WITH CAUTION, as it could destroy data you care about. If the schema does not exist, it just removes reference entries the named schema.</para>
-
- <!-- use this format if new function -->
- <para>Availability: 1.?</para>
- </refsection>
-
-
- <refsection>
- <title>Examples</title>
- <para>Cascade drops the ma_topo schema and removes all references to it in topology.topology and geometry_columns.</para>
- <programlisting>SELECT topology.DropTopology('ma_topo');</programlisting>
- </refsection>
-
- <!-- Optionally add a "See Also" section -->
- <refsection>
- <title>See Also</title>
- <para></para>
- </refsection>
- </refentry>
+
<refentry id="CopyTopology">
<refnamediv>
<refname>CopyTopology</refname>
<para><xref linkend="spatial_ref_sys"/>, <xref linkend="CreateTopology" /></para>
</refsection>
</refentry>
- <refentry id="DropTopoGeometryColumn">
+
+ <refentry id="ST_InitTopoGeo">
<refnamediv>
- <refname>DropTopoGeometryColumn</refname>
-
- <refpurpose>Drops the topogeometry column from the table named <varname>table_name</varname> in schema <varname>schema_name</varname> and unregisters the columns from topology.layer table.</refpurpose>
+ <refname>ST_InitTopoGeo</refname>
+ <refpurpose>Creates a new topology schema and registers this new schema in the topology.topology table and details summary of process.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<funcsynopsis>
<funcprototype>
- <funcdef>text <function>DropTopoGeometryColumn</function></funcdef>
- <paramdef><type>varchar </type> <parameter>schema_name</parameter></paramdef>
- <paramdef><type>varchar </type> <parameter>table_name</parameter></paramdef>
- <paramdef><type>varchar </type> <parameter>column_name</parameter></paramdef>
+ <funcdef>text <function>ST_InitTopoGeo</function></funcdef>
+ <paramdef><type>varchar </type> <parameter>topology_schema_name</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<refsection>
<title>Description</title>
- <para>Drops the topogeometry column from the table named <varname>table_name</varname> in schema <varname>schema_name</varname> and unregisters the columns from topology.layer table. Returns summary
- of drop status. NOTE: it first sets all values to NULL before dropping to bypass referential integrity checks.</para>
+ <para>This is an SQL-MM equivalent of CreateTopology but lacks the spatial reference and tolerance options of CreateTopology and outputs a text description of creation instead of topology id.</para>
<!-- use this format if new function -->
<para>Availability: 1.?</para>
+ <para>&sqlmm_compliant; SQL-MM 3 Topo-Geo and Topo-Net 3: Routine Details: X.3.17</para>
</refsection>
<refsection>
<title>Examples</title>
- <programlisting>SELECT topology.DropTopoGeometryColumn('ma_topo', 'parcel_topo', 'topo');</programlisting>
+ <programlisting>SELECT topology.ST_InitTopoGeo('topo_schema_to_create') AS topocreation;
+ astopocreation
+------------------------------------------------------------
+ Topology-Geometry 'topo_schema_to_create' (id:7) created.
+ </programlisting>
</refsection>
<!-- Optionally add a "See Also" section -->
<refsection>
<title>See Also</title>
- <para><xref linkend="AddTopoGeometryColumn"/></para>
+
+ <para><xref linkend="CreateTopology"/></para>
</refsection>
</refentry>
- <refentry id="ST_InitTopoGeo">
+
+ <refentry id="ST_CreateTopoGeo">
<refnamediv>
- <refname>ST_InitTopoGeo</refname>
- <refpurpose>Creates a new topology schema and registers this new schema in the topology.topology table and details summary of process.</refpurpose>
+ <refname>ST_CreateTopoGeo</refname>
+
+ <refpurpose>
+Adds a collection of geometries to a given empty topology and returns a message detailing success.
+ </refpurpose>
</refnamediv>
<refsynopsisdiv>
<funcsynopsis>
<funcprototype>
- <funcdef>text <function>ST_InitTopoGeo</function></funcdef>
- <paramdef><type>varchar </type> <parameter>topology_schema_name</parameter></paramdef>
+ <funcdef>text <function>ST_CreateTopoGeo</function></funcdef>
+ <paramdef><type>varchar </type> <parameter>atopology</parameter></paramdef>
+ <paramdef><type>geometry </type> <parameter>acollection</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<refsection>
<title>Description</title>
- <para>This is an SQL-MM equivalent of CreateTopology but lacks the spatial reference and tolerance options of CreateTopology and outputs a text description of creation instead of topology id.</para>
-
+ <para>
+Adds a collection of geometries to a given empty topology and returns a message detailing success.
+ </para>
+
+ <para>Useful for populating an empty topology.</para>
+
+
<!-- use this format if new function -->
- <para>Availability: 1.?</para>
- <para>&sqlmm_compliant; SQL-MM 3 Topo-Geo and Topo-Net 3: Routine Details: X.3.17</para>
+ <para>Availability: 2.0 </para>
+ <para>&sqlmm_compliant; SQL-MM: Topo-Geo and Topo-Net 3: Routine Details -- X.3.18</para>
</refsection>
<refsection>
<title>Examples</title>
- <programlisting>SELECT topology.ST_InitTopoGeo('topo_schema_to_create') AS topocreation;
- astopocreation
-------------------------------------------------------------
- Topology-Geometry 'topo_schema_to_create' (id:7) created.
+ <programlisting>
+-- Populate topology --
+SELECT topology.ST_CreateTopoGeo('ri_topo',
+ ST_GeomFromText('MULTILINESTRING((384744 236928,384750 236923,384769 236911,384799 236895,384811 236890,384833 236884,
+ 384844 236882,384866 236881,384879 236883,384954 236898,385087 236932,385117 236938,
+ 385167 236938,385203 236941,385224 236946,385233 236950,385241 236956,385254 236971,
+ 385260 236979,385268 236999,385273 237018,385273 237037,385271 237047,385267 237057,
+ 385225 237125,385210 237144,385192 237161,385167 237192,385162 237202,385159 237214,
+ 385159 237227,385162 237241,385166 237256,385196 237324,385209 237345,385234 237375,
+ 385237 237383,385238 237399,385236 237407,385227 237419,385213 237430,385193 237439,
+ 385174 237451,385170 237455,385169 237460,385171 237475,385181 237503,385190 237521,
+ 385200 237533,385206 237538,385213 237541,385221 237542,385235 237540,385242 237541,
+ 385249 237544,385260 237555,385270 237570,385289 237584,385292 237589,385291 237596,385284 237630))',3438)
+ );
+
+ st_createtopogeo
+----------------------------
+ Topology ri_topo populated
+
+
+-- create tables and topo geometries --
+CREATE TABLE ri.roads(gid serial PRIMARY KEY, road_name text);
+
+SELECT topology.AddTopoGeometryColumn('ri_topo', 'ri', 'roads', 'topo', 'LINE');
</programlisting>
</refsection>
<!-- Optionally add a "See Also" section -->
<refsection>
<title>See Also</title>
-
- <para><xref linkend="CreateTopology"/></para>
+ <para><xref linkend="AddTopoGeometryColumn"/>, <xref linkend="CreateTopology"/>, <xref linkend="DropTopology"/></para>
</refsection>
</refentry>
-
- <refentry id="TopologySummary">
+
+ <refentry id="TopoGeo_AddPoint">
<refnamediv>
- <refname>TopologySummary</refname>
+ <refname>TopoGeo_AddPoint</refname>
- <refpurpose>Takes a topology name and provides summary totals of types of objects in topology</refpurpose>
+ <refpurpose>
+Adds a point to an existing topology using a tolerance and possibly splitting an existing edge.
+ </refpurpose>
</refnamediv>
<refsynopsisdiv>
<funcsynopsis>
<funcprototype>
- <funcdef>text <function>TopologySummary</function></funcdef>
- <paramdef><type>varchar </type> <parameter>topology_schema_name</parameter></paramdef>
+ <funcdef>integer <function>TopoGeo_AddPoint</function></funcdef>
+ <paramdef><type>varchar </type> <parameter>toponame</parameter></paramdef>
+ <paramdef><type>geometry </type> <parameter>apoint</parameter></paramdef>
+ <paramdef choice="opt"><type>float8 </type> <parameter>tolerance</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<refsection>
<title>Description</title>
- <para>Takes a topology name and provides summary totals of types of objects in topology.</para>
-
+ <para>
+Adds a point to an existing topology and return its identifier.
+The given point will snap to existing nodes or edges within given tolerance.
+An existing edge may be split by the snapped point.
+ </para>
+
<!-- use this format if new function -->
<para>Availability: 2.0.0</para>
</refsection>
- <refsection>
- <title>Examples</title>
- <programlisting>SELECT topology.topologysummary('city_data');
- topologysummary
---------------------------------------------------------
- Topology city_data (329), SRID 4326, precision: 0
- 22 nodes, 24 edges, 10 faces, 29 topogeoms in 5 layers
- Layer 1, type Polygonal (3), 9 topogeoms
- Deploy: features.land_parcels.feature
- Layer 2, type Puntal (1), 8 topogeoms
- Deploy: features.traffic_signs.feature
- Layer 3, type Lineal (2), 8 topogeoms
- Deploy: features.city_streets.feature
- Layer 4, type Polygonal (3), 3 topogeoms
- Hierarchy level 1, child layer 1
- Deploy: features.big_parcels.feature
- Layer 5, type Puntal (1), 1 topogeoms
- Hierarchy level 1, child layer 2
- Deploy: features.big_signs.feature</programlisting>
- </refsection>
<!-- Optionally add a "See Also" section -->
<refsection>
<title>See Also</title>
- <para><xref linkend="Topology_Load_Tiger" /></para>
+ <para>
+<xref linkend="TopoGeo_AddLineString"/>,
+<xref linkend="TopoGeo_AddPolygon"/>,
+<xref linkend="AddNode"/>,
+<xref linkend="CreateTopology"/>
+</para>
</refsection>
</refentry>
-
- <refentry id="ValidateTopology">
+
+ <refentry id="TopoGeo_AddLineString">
<refnamediv>
- <refname>ValidateTopology</refname>
+ <refname>TopoGeo_AddLineString</refname>
- <refpurpose>Returns a set of validatetopology_returntype objects detailing issues with topology</refpurpose>
+ <refpurpose>
+Adds a linestring to an existing topology using a tolerance and possibly splitting existing edges/faces.
+ </refpurpose>
</refnamediv>
<refsynopsisdiv>
<funcsynopsis>
<funcprototype>
- <funcdef>setof validatetopology_returntype <function>ValidateTopology</function></funcdef>
- <paramdef><type>varchar </type> <parameter>topology_schema_name</parameter></paramdef>
+ <funcdef>integer <function>TopoGeo_AddLineString</function></funcdef>
+ <paramdef><type>varchar </type> <parameter>toponame</parameter></paramdef>
+ <paramdef><type>geometry </type> <parameter>aline</parameter></paramdef>
+ <paramdef choice="opt"><type>float8 </type> <parameter>tolerance</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<refsection>
<title>Description</title>
- <para>Returns a set of <xref linkend="validatetopology_returntype"/> objects detailing issues with topology. Refer to
- <xref linkend="validatetopology_returntype"/> for listing of possible errors.</para>
-
+ <para>
+Adds a linestring to an existing topology and return a set of edge identifiers forming it up.
+The given line will snap to existing nodes or edges within given tolerance.
+Existing edges and faces may be split by the line.
+ </para>
+
<!-- use this format if new function -->
- <para>Availability: 1.?</para>
- <!-- use this format if not a new function but functionality enhanced -->
- <para>Enhanced: 2.0.0 more efficient edge crossing detection and fixes for false positives that were existent in prior versions.</para>
+ <para>Availability: 2.0.0</para>
</refsection>
- <refsection>
- <title>Examples</title>
- <programlisting>SELECT * FROM topology.ValidateTopology('ma_topo');
- error | id1 | id2
--------------------+-----+-----
-face without edges | 0 |
- </programlisting>
- </refsection>
-
<!-- Optionally add a "See Also" section -->
<refsection>
<title>See Also</title>
- <para><xref linkend="validatetopology_returntype"/>, <xref linkend="Topology_Load_Tiger" /></para>
+ <para>
+<xref linkend="TopoGeo_AddPoint"/>,
+<xref linkend="TopoGeo_AddPolygon"/>,
+<xref linkend="AddEdge"/>,
+<xref linkend="CreateTopology"/>
+ </para>
</refsection>
</refentry>
- </sect1>
- <sect1 id="Topology_Constructors">
- <sect1info>
- <abstract>
- <para>This section covers the topology functions for creating new topologies.</para>
- </abstract>
- </sect1info>
- <title>Topology Constructors</title>
- <refentry id="ST_CreateTopoGeo">
+ <refentry id="TopoGeo_AddPolygon">
<refnamediv>
- <refname>ST_CreateTopoGeo</refname>
+ <refname>TopoGeo_AddPolygon</refname>
<refpurpose>
-Adds a collection of geometries to a given empty topology and returns a message detailing success.
+Adds a polygon to an existing topology using a tolerance and possibly splitting existing edges/faces.
</refpurpose>
</refnamediv>
<refsynopsisdiv>
<funcsynopsis>
<funcprototype>
- <funcdef>text <function>ST_CreateTopoGeo</function></funcdef>
- <paramdef><type>varchar </type> <parameter>atopology</parameter></paramdef>
- <paramdef><type>geometry </type> <parameter>acollection</parameter></paramdef>
+ <funcdef>integer <function>TopoGeo_AddPolygon</function></funcdef>
+ <paramdef><type>varchar </type> <parameter>atopology</parameter></paramdef>
+ <paramdef><type>geometry </type> <parameter>aline</parameter></paramdef>
+ <paramdef choice="opt"><type>float8 </type> <parameter>atolerance</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<title>Description</title>
<para>
-Adds a collection of geometries to a given empty topology and returns a message detailing success.
+Adds a polygon to an existing topology and return a set of face identifiers forming it up.
+The boundary of the given polygon will snap to existing nodes or edges within given tolerance.
+Existing edges and faces may be split by the boundary of the new polygon.
</para>
-
- <para>Useful for populating an empty topology.</para>
-
-
+
<!-- use this format if new function -->
- <para>Availability: 2.0 </para>
- <para>&sqlmm_compliant; SQL-MM: Topo-Geo and Topo-Net 3: Routine Details -- X.3.18</para>
+ <para>Availability: 2.0.0</para>
</refsection>
- <refsection>
- <title>Examples</title>
- <programlisting>
--- Populate topology --
-SELECT topology.ST_CreateTopoGeo('ri_topo',
- ST_GeomFromText('MULTILINESTRING((384744 236928,384750 236923,384769 236911,384799 236895,384811 236890,384833 236884,
- 384844 236882,384866 236881,384879 236883,384954 236898,385087 236932,385117 236938,
- 385167 236938,385203 236941,385224 236946,385233 236950,385241 236956,385254 236971,
- 385260 236979,385268 236999,385273 237018,385273 237037,385271 237047,385267 237057,
- 385225 237125,385210 237144,385192 237161,385167 237192,385162 237202,385159 237214,
- 385159 237227,385162 237241,385166 237256,385196 237324,385209 237345,385234 237375,
- 385237 237383,385238 237399,385236 237407,385227 237419,385213 237430,385193 237439,
- 385174 237451,385170 237455,385169 237460,385171 237475,385181 237503,385190 237521,
- 385200 237533,385206 237538,385213 237541,385221 237542,385235 237540,385242 237541,
- 385249 237544,385260 237555,385270 237570,385289 237584,385292 237589,385291 237596,385284 237630))',3438)
- );
-
- st_createtopogeo
-----------------------------
- Topology ri_topo populated
-
-
--- create tables and topo geometries --
-CREATE TABLE ri.roads(gid serial PRIMARY KEY, road_name text);
-
-SELECT topology.AddTopoGeometryColumn('ri_topo', 'ri', 'roads', 'topo', 'LINE');
- </programlisting>
- </refsection>
-
<!-- Optionally add a "See Also" section -->
<refsection>
<title>See Also</title>
- <para><xref linkend="AddTopoGeometryColumn"/>, <xref linkend="CreateTopology"/>, <xref linkend="DropTopology"/></para>
+ <para>
+<xref linkend="TopoGeo_AddPoint"/>,
+<xref linkend="TopoGeo_AddLineString"/>,
+<xref linkend="AddFace"/>,
+<xref linkend="CreateTopology"/>
+ </para>
</refsection>
</refentry>
+
</sect1>
</abstract>
</sect1info>
<title>Topology Processing</title>
- <refentry id="TopoGeo_AddPoint">
- <refnamediv>
- <refname>TopoGeo_AddPoint</refname>
-
- <refpurpose>
-Adds a point to an existing topology using a tolerance and possibly splitting an existing edge.
- </refpurpose>
- </refnamediv>
-
- <refsynopsisdiv>
- <funcsynopsis>
- <funcprototype>
- <funcdef>integer <function>TopoGeo_AddPoint</function></funcdef>
- <paramdef><type>varchar </type> <parameter>toponame</parameter></paramdef>
- <paramdef><type>geometry </type> <parameter>apoint</parameter></paramdef>
- <paramdef choice="opt"><type>float8 </type> <parameter>tolerance</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- </refsynopsisdiv>
-
- <refsection>
- <title>Description</title>
-
- <para>
-Adds a point to an existing topology and return its identifier.
-The given point will snap to existing nodes or edges within given tolerance.
-An existing edge may be split by the snapped point.
- </para>
-
- <!-- use this format if new function -->
- <para>Availability: 2.0.0</para>
- </refsection>
-
-
- <!-- Optionally add a "See Also" section -->
- <refsection>
- <title>See Also</title>
- <para>
-<xref linkend="TopoGeo_AddLineString"/>,
-<xref linkend="TopoGeo_AddPolygon"/>,
-<xref linkend="AddNode"/>,
-<xref linkend="CreateTopology"/>
-</para>
- </refsection>
- </refentry>
-
- <refentry id="TopoGeo_AddLineString">
- <refnamediv>
- <refname>TopoGeo_AddLineString</refname>
-
- <refpurpose>
-Adds a linestring to an existing topology using a tolerance and possibly splitting existing edges.
- </refpurpose>
- </refnamediv>
-
- <refsynopsisdiv>
- <funcsynopsis>
- <funcprototype>
- <funcdef>integer <function>TopoGeo_AddLineString</function></funcdef>
- <paramdef><type>varchar </type> <parameter>toponame</parameter></paramdef>
- <paramdef><type>geometry </type> <parameter>aline</parameter></paramdef>
- <paramdef choice="opt"><type>float8 </type> <parameter>tolerance</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- </refsynopsisdiv>
-
- <refsection>
- <title>Description</title>
-
- <para>
-Adds a linestring to an existing topology and return a set of edge identifiers forming it up.
-The given line will snap to existing nodes or edges within given tolerance.
-Existing edges may be split by the line.
- </para>
-
- <!-- use this format if new function -->
- <para>Availability: 2.0.0</para>
- </refsection>
-
-
- <!-- Optionally add a "See Also" section -->
- <refsection>
- <title>See Also</title>
- <para>
-<xref linkend="TopoGeo_AddPoint"/>,
-<xref linkend="TopoGeo_AddPolygon"/>,
-<xref linkend="AddEdge"/>,
-<xref linkend="CreateTopology"/>
- </para>
- </refsection>
- </refentry>
-
- <refentry id="TopoGeo_AddPolygon">
- <refnamediv>
- <refname>TopoGeo_AddPolygon</refname>
-
- <refpurpose>
-Adds a polygon to an existing topology using a tolerance and possibly splitting existing edges/faces.
- </refpurpose>
- </refnamediv>
-
- <refsynopsisdiv>
- <funcsynopsis>
- <funcprototype>
- <funcdef>integer <function>TopoGeo_AddPolygon</function></funcdef>
- <paramdef><type>varchar </type> <parameter>atopology</parameter></paramdef>
- <paramdef><type>geometry </type> <parameter>aline</parameter></paramdef>
- <paramdef choice="opt"><type>float8 </type> <parameter>atolerance</parameter></paramdef>
- </funcprototype>
- </funcsynopsis>
- </refsynopsisdiv>
-
- <refsection>
- <title>Description</title>
-
- <para>
-Adds a polygon to an existing topology and return a set of face identifiers forming it up.
-The boundary of the given polygon will snap to existing nodes or edges within given tolerance.
-Existing edges and faces may be split by the boundary of the new polygon.
- </para>
-
- <!-- use this format if new function -->
- <para>Availability: 2.0.0</para>
- </refsection>
-
-
- <!-- Optionally add a "See Also" section -->
- <refsection>
- <title>See Also</title>
- <para>
-<xref linkend="TopoGeo_AddPoint"/>,
-<xref linkend="TopoGeo_AddLineString"/>,
-<xref linkend="AddFace"/>,
-<xref linkend="CreateTopology"/>
- </para>
- </refsection>
- </refentry>
-
<refentry id="TopologyPolygonize">
<refnamediv>
<refname>Polygonize</refname>