Artifact [f9aace1b8b]
Not logged in

Artifact f9aace1b8b8fa7cafcfc5d2deba29238473c9f02:

Wiki page [topo-intro] by bradh 2012-01-18 08:44:16.
D 2012-01-18T08:44:16.274
L topo-intro
P 1ee7356ec55db8c852d4c2019559bc621f23bcdf
U bradh
W 4119
<table cellspacing="12" width="100%">
<tr><td colspan="2">
<table width="100%" bgcolor="#f0f0f8">
<tr><td align="center">
<h1>Topology: a quick intro</h1>
</td></tr></table>
<table width="100%"><tr>
<td width="33%" align="left"></td>
<td align="center"><a href="https://www.gaia-gis.it/fossil/libspatialite/wiki?name=misc-docs">back to index</a></td>
<td width="33%" align="right"><a href="https://www.gaia-gis.it/fossil/libspatialite/wiki?name=topo-start">next page</a></td>
</tr></table>
<tr><td width="50%">
<table width="100%" bgcolor="#f0f0f8" cellspacing="4" cellpadding="4">
<tr><td>
<h4>OGC-SFS Geometries</h4>
As you already know, the standard representation of Geometries supported by any existing Spatial DBMS is based on the following SFS classes (non-topological):<ul>
<li>(MULTI)POINT</li>
<li>(MULTI)LINESTRING</li>
<li>(MULTI)POLYGON</li>
<li>GEOMETRYCOLLECTION</li>
</ul>
<h4>Topology</h4>
An alternative representation (<a href="http://en.wikipedia.org/wiki/Planar_graph">planar graph</a>) is based on the following elements:<ul>
<li>a <b>NODE</b> simply is a notable point, and can be assumed to
be equivalent to SFS POINT.
<i>Examples</i>: <i>N1</i>, <i>N2</i>, <i>N3</i>, <i>N4</i>, <i>N5</i>
</li>
<li>an <b>EDGE</b> is an oriented path joining two nodes, and can 
be assumed to be equivalent to SFS LINESTRING.<br>
<i>Examples</i>: <i>E1</i>, <i>E2</i>, <i>E3</i>, <i>E4</i>, <i>E5</i>,
<i>E6</i>, <i>E7</i>
</li>
<li>a <b>FACE</b> is a portion of the plane delimited by edges,
and can be assumed to be equivalent to SFS POLYGON.<br>
<i>Examples</i>: <i>F1</i>, <i>F2</i>, <i>F3</i>, <i>F4</i>
</li>
<li>a <b>TopoCurve</b> is a collection of one (or more) Edges, and can
be assumed to be equivalent to SFS MULTILINESTRING.</li>
<li>a <b>TopoSurface</b> is a collection of one (or more) Faces, and can
be assumed to be equivalent to SFS MULTIPOLYGON.<br>
<i>Example</i>: Faces <i>F2</i> and <i>F4</i> belong to the same MultiPolygon.</li>
</ul>
</td></tr></table>
</td><td>
<table>
<tr><td>
<img src="http://www.gaia-gis.it/gaia-sins/topo1.png" alt="topology-1">
</td></tr></table>
</td></tr>
<tr><td colspan="2">
<table width="100%" bgcolor="#f0f0f8">
<tr><td>
Constraints on Nodes:<ul>
<li>two (or more) Nodes can never overlap</li>
</ul>
Constraints on Edges:<ul>
<li>each Edge always has a <i><u>node-from</u></i> and a <i><u>node-to</u></i>: this implies that any Edge is <i><u>oriented</u></i></li>
<li><i><u>node-from</u></i> and a <i><u>node-to</u></i> may be the same: and in this case we have a <i><u>self-closed</u></i> Edge (aka Ring). 
<i>Example</i>: <i>E1</i></li>
<li>an Edge cannot contain loops (or any other kind of self-intersection)</li>
<li>two (or more) Edges can intersect only where a Node is defined.
<i>Example</i>: Edges <i>E3</i>, <i>E4</i> and <i>E5</i> intersect exactly at Node <i>N4</i></li>
<li>no Node can overlap an Edge except than at its extremities</li>
</ul>
Representation of Faces:<ul>
<li>each Face is delimited by a set of Edges: <i>Example</i>: Face <i>F3</i>
is delimited by Edges <i>E2</i>, <i>E5</i>, <i>E4</i> and <i>E6</i></li>
<li>a Face can be delimited by a single Edge: <i>Example</i>: Face <i>F2</i> 
is delimited by Edge <i>E1</i></li>
<li>a Face must always have an <i><u>exterior boundary</i></u>; but can can legitimately have one (or more) <i><u>interior boundaries</i></u> 
(aka <i>holes</i>) at the same time.<br>
<i>Example</i>: Face <i>F1</i> is delimited by Edges <i>E1</i>, <i>E2</i>,
<i>E3</i> and <i>E7</i><ul>
<li>Edges <i>E2</i>, <i>E3</i> and <i>E7</i> represent the <i><u>exterior boundary</u></i></li>
<li>Edge <i>E1</i> represents an <i><u>interior boundary</u></i> (<i>hole</i>)</li></ul>
</ul>
</td></tr></table>
</table>
<table width="100%"><tr>
<td width="33%" align="left"></td>
<td align="center"><a href="https://www.gaia-gis.it/fossil/libspatialite/wiki?name=misc-docs">back to index</a></td>
<td width="33%" align="right"><a href="https://www.gaia-gis.it/fossil/libspatialite/wiki?name=topo-start">next page</a></td>
</tr></table>

Z f32d7a15f4fd8f17c00695ff8a893f8e