Hex Artifact Content
Not logged in

Artifact d08cac6115b9f1853c1a8564c1aa403da1b28090:

Wiki page [topo-intro] by sandro 2012-01-05 11:24:05.
0000: 44 20 32 30 31 32 2d 30 31 2d 30 35 54 31 31 3a  D 2012-01-05T11:
0010: 32 34 3a 30 35 2e 32 31 34 0a 4c 20 74 6f 70 6f  24:05.214.L topo
0020: 2d 69 6e 74 72 6f 0a 50 20 61 61 62 62 35 64 34  -intro.P aabb5d4
0030: 64 66 32 65 33 35 66 37 62 37 64 63 64 35 63 64  df2e35f7b7dcd5cd
0040: 33 63 62 62 31 64 38 65 63 65 35 64 37 31 63 64  3cbb1d8ece5d71cd
0050: 39 0a 55 20 73 61 6e 64 72 6f 0a 57 20 34 31 32  9.U sandro.W 412
0060: 33 0a 3c 74 61 62 6c 65 20 63 65 6c 6c 73 70 61  3.<table cellspa
0070: 63 69 6e 67 3d 22 31 32 22 20 77 69 64 74 68 3d  cing="12" width=
0080: 22 31 30 30 25 22 3e 0d 0a 3c 74 72 3e 3c 74 64  "100%">..<tr><td
0090: 20 63 6f 6c 73 70 61 6e 3d 22 32 22 3e 0d 0a 3c   colspan="2">..<
00a0: 74 61 62 6c 65 20 77 69 64 74 68 3d 22 31 30 30  table width="100
00b0: 25 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 30 66  %" bgcolor="#f0f
00c0: 30 66 38 22 3e 0d 0a 3c 74 72 3e 3c 74 64 20 61  0f8">..<tr><td a
00d0: 6c 69 67 6e 3d 22 63 65 6e 74 65 72 22 3e 0d 0a  lign="center">..
00e0: 3c 68 31 3e 54 6f 70 6f 6c 6f 67 79 3a 20 61 20  <h1>Topology: a 
00f0: 71 75 69 63 6b 20 69 6e 74 72 6f 3c 2f 68 31 3e  quick intro</h1>
0100: 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f 74 61  ..</td></tr></ta
0110: 62 6c 65 3e 0d 0a 3c 74 61 62 6c 65 20 77 69 64  ble>..<table wid
0120: 74 68 3d 22 31 30 30 25 22 3e 3c 74 72 3e 0d 0a  th="100%"><tr>..
0130: 3c 74 64 20 77 69 64 74 68 3d 22 33 33 25 22 20  <td width="33%" 
0140: 61 6c 69 67 6e 3d 22 6c 65 66 74 22 3e 3c 2f 74  align="left"></t
0150: 64 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 63  d>..<td align="c
0160: 65 6e 74 65 72 22 3e 3c 61 20 68 72 65 66 3d 22  enter"><a href="
0170: 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61  https://www.gaia
0180: 2d 67 69 73 2e 69 74 2f 66 6f 73 73 69 6c 2f 6c  -gis.it/fossil/l
0190: 69 62 73 70 61 74 69 61 6c 69 74 65 2f 77 69 6b  ibspatialite/wik
01a0: 69 3f 6e 61 6d 65 3d 6d 69 73 63 2d 64 6f 63 73  i?name=misc-docs
01b0: 22 3e 62 61 63 6b 20 74 6f 20 69 6e 64 65 78 3c  ">back to index<
01c0: 2f 61 3e 3c 2f 74 64 3e 0d 0a 3c 74 64 20 77 69  /a></td>..<td wi
01d0: 64 74 68 3d 22 33 33 25 22 20 61 6c 69 67 6e 3d  dth="33%" align=
01e0: 22 72 69 67 68 74 22 3e 3c 61 20 68 72 65 66 3d  "right"><a href=
01f0: 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69  "https://www.gai
0200: 61 2d 67 69 73 2e 69 74 2f 66 6f 73 73 69 6c 2f  a-gis.it/fossil/
0210: 6c 69 62 73 70 61 74 69 61 6c 69 74 65 2f 77 69  libspatialite/wi
0220: 6b 69 3f 6e 61 6d 65 3d 74 6f 70 6f 2d 6c 61 79  ki?name=topo-lay
0230: 6f 75 74 22 3e 6e 65 78 74 20 70 61 67 65 3c 2f  out">next page</
0240: 61 3e 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 3c 2f  a></td>..</tr></
0250: 74 61 62 6c 65 3e 0d 0a 3c 74 72 3e 3c 74 64 20  table>..<tr><td 
0260: 77 69 64 74 68 3d 22 35 30 25 22 3e 0d 0a 3c 74  width="50%">..<t
0270: 61 62 6c 65 20 77 69 64 74 68 3d 22 31 30 30 25  able width="100%
0280: 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 30 66 30  " bgcolor="#f0f0
0290: 66 38 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d  f8" cellspacing=
02a0: 22 34 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d  "4" cellpadding=
02b0: 22 34 22 3e 0d 0a 3c 74 72 3e 3c 74 64 3e 0d 0a  "4">..<tr><td>..
02c0: 3c 68 34 3e 4f 47 43 2d 53 46 53 20 47 65 6f 6d  <h4>OGC-SFS Geom
02d0: 65 74 72 69 65 73 3c 2f 68 34 3e 0d 0a 41 73 20  etries</h4>..As 
02e0: 79 6f 75 20 61 6c 72 65 61 64 79 20 6b 6e 6f 77  you already know
02f0: 2c 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 72  , the standard r
0300: 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66  epresentation of
0310: 20 47 65 6f 6d 65 74 72 69 65 73 20 73 75 70 70   Geometries supp
0320: 6f 72 74 65 64 20 62 79 20 61 6e 79 20 65 78 69  orted by any exi
0330: 73 74 69 6e 67 20 53 70 61 74 69 61 6c 20 44 42  sting Spatial DB
0340: 4d 53 20 69 73 20 62 61 73 65 64 20 6f 6e 20 74  MS is based on t
0350: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 53 46 53  he following SFS
0360: 20 63 6c 61 73 73 65 73 20 28 6e 6f 6e 2d 74 6f   classes (non-to
0370: 70 6f 6c 6f 67 69 63 61 6c 29 3a 3c 75 6c 3e 0d  pological):<ul>.
0380: 0a 3c 6c 69 3e 28 4d 55 4c 54 49 29 50 4f 49 4e  .<li>(MULTI)POIN
0390: 54 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 28 4d 55 4c  T</li>..<li>(MUL
03a0: 54 49 29 4c 49 4e 45 53 54 52 49 4e 47 3c 2f 6c  TI)LINESTRING</l
03b0: 69 3e 0d 0a 3c 6c 69 3e 28 4d 55 4c 54 49 29 50  i>..<li>(MULTI)P
03c0: 4f 4c 59 47 4f 4e 3c 2f 6c 69 3e 0d 0a 3c 6c 69  OLYGON</li>..<li
03d0: 3e 47 45 4f 4d 45 54 52 59 43 4f 4c 4c 45 43 54  >GEOMETRYCOLLECT
03e0: 49 4f 4e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d  ION</li>..</ul>.
03f0: 0a 3c 68 34 3e 54 6f 70 6f 6c 6f 67 79 3c 2f 68  .<h4>Topology</h
0400: 34 3e 0d 0a 41 6e 20 61 6c 74 65 72 6e 61 74 69  4>..An alternati
0410: 76 65 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f  ve representatio
0420: 6e 20 28 3c 61 20 68 72 65 66 3d 22 68 74 74 70  n (<a href="http
0430: 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e  ://en.wikipedia.
0440: 6f 72 67 2f 77 69 6b 69 2f 50 6c 61 6e 61 72 5f  org/wiki/Planar_
0450: 67 72 61 70 68 22 3e 70 6c 61 6e 61 72 20 67 72  graph">planar gr
0460: 61 70 68 3c 2f 61 3e 29 20 69 73 20 62 61 73 65  aph</a>) is base
0470: 64 20 6f 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69  d on the followi
0480: 6e 67 20 65 6c 65 6d 65 6e 74 73 3a 3c 75 6c 3e  ng elements:<ul>
0490: 0d 0a 3c 6c 69 3e 61 20 3c 62 3e 4e 4f 44 45 3c  ..<li>a <b>NODE<
04a0: 2f 62 3e 20 73 69 6d 70 6c 79 20 69 73 20 61 20  /b> simply is a 
04b0: 6e 6f 74 61 62 6c 65 20 70 6f 69 6e 74 2c 20 61  notable point, a
04c0: 6e 64 20 63 61 6e 20 62 65 20 61 73 73 75 6d 65  nd can be assume
04d0: 64 20 74 6f 0d 0a 62 65 20 65 71 75 69 76 61 6c  d to..be equival
04e0: 65 6e 74 20 74 6f 20 53 46 53 20 50 4f 49 4e 54  ent to SFS POINT
04f0: 2e 0d 0a 3c 69 3e 45 78 61 6d 70 6c 65 73 3c 2f  ...<i>Examples</
0500: 69 3e 3a 20 3c 69 3e 4e 31 3c 2f 69 3e 2c 20 3c  i>: <i>N1</i>, <
0510: 69 3e 4e 32 3c 2f 69 3e 2c 20 3c 69 3e 4e 33 3c  i>N2</i>, <i>N3<
0520: 2f 69 3e 2c 20 3c 69 3e 4e 34 3c 2f 69 3e 2c 20  /i>, <i>N4</i>, 
0530: 3c 69 3e 4e 35 3c 2f 69 3e 0d 0a 3c 2f 6c 69 3e  <i>N5</i>..</li>
0540: 0d 0a 3c 6c 69 3e 61 6e 20 3c 62 3e 45 44 47 45  ..<li>an <b>EDGE
0550: 3c 2f 62 3e 20 69 73 20 61 6e 20 6f 72 69 65 6e  </b> is an orien
0560: 74 65 64 20 70 61 74 68 20 6a 6f 69 6e 69 6e 67  ted path joining
0570: 20 74 77 6f 20 6e 6f 64 65 73 2c 20 61 6e 64 20   two nodes, and 
0580: 63 61 6e 20 0d 0a 62 65 20 61 73 73 75 6d 65 64  can ..be assumed
0590: 20 74 6f 20 62 65 20 65 71 75 69 76 61 6c 65 6e   to be equivalen
05a0: 74 20 74 6f 20 53 46 53 20 4c 49 4e 45 53 54 52  t to SFS LINESTR
05b0: 49 4e 47 2e 3c 62 72 3e 0d 0a 3c 69 3e 45 78 61  ING.<br>..<i>Exa
05c0: 6d 70 6c 65 73 3c 2f 69 3e 3a 20 3c 69 3e 45 31  mples</i>: <i>E1
05d0: 3c 2f 69 3e 2c 20 3c 69 3e 45 32 3c 2f 69 3e 2c  </i>, <i>E2</i>,
05e0: 20 3c 69 3e 45 33 3c 2f 69 3e 2c 20 3c 69 3e 45   <i>E3</i>, <i>E
05f0: 34 3c 2f 69 3e 2c 20 3c 69 3e 45 35 3c 2f 69 3e  4</i>, <i>E5</i>
0600: 2c 0d 0a 3c 69 3e 45 36 3c 2f 69 3e 2c 20 3c 69  ,..<i>E6</i>, <i
0610: 3e 45 37 3c 2f 69 3e 0d 0a 3c 2f 6c 69 3e 0d 0a  >E7</i>..</li>..
0620: 3c 6c 69 3e 61 20 3c 62 3e 46 41 43 45 3c 2f 62  <li>a <b>FACE</b
0630: 3e 20 69 73 20 61 20 70 6f 72 74 69 6f 6e 20 6f  > is a portion o
0640: 66 20 74 68 65 20 70 6c 61 6e 65 20 64 65 6c 69  f the plane deli
0650: 6d 69 74 65 64 20 62 79 20 65 64 67 65 73 2c 0d  mited by edges,.
0660: 0a 61 6e 64 20 63 61 6e 20 62 65 20 61 73 73 75  .and can be assu
0670: 6d 65 64 20 74 6f 20 62 65 20 65 71 75 69 76 61  med to be equiva
0680: 6c 65 6e 74 20 74 6f 20 53 46 53 20 50 4f 4c 59  lent to SFS POLY
0690: 47 4f 4e 2e 3c 62 72 3e 0d 0a 3c 69 3e 45 78 61  GON.<br>..<i>Exa
06a0: 6d 70 6c 65 73 3c 2f 69 3e 3a 20 3c 69 3e 46 31  mples</i>: <i>F1
06b0: 3c 2f 69 3e 2c 20 3c 69 3e 46 32 3c 2f 69 3e 2c  </i>, <i>F2</i>,
06c0: 20 3c 69 3e 46 33 3c 2f 69 3e 2c 20 3c 69 3e 46   <i>F3</i>, <i>F
06d0: 34 3c 2f 69 3e 0d 0a 3c 2f 6c 69 3e 0d 0a 3c 6c  4</i>..</li>..<l
06e0: 69 3e 61 20 3c 62 3e 54 6f 70 6f 43 75 72 76 65  i>a <b>TopoCurve
06f0: 3c 2f 62 3e 20 69 73 20 61 20 63 6f 6c 6c 65 63  </b> is a collec
0700: 74 69 6f 6e 20 6f 66 20 6f 6e 65 20 28 6f 72 20  tion of one (or 
0710: 6d 6f 72 65 29 20 45 64 67 65 73 2c 20 61 6e 64  more) Edges, and
0720: 20 63 61 6e 0d 0a 62 65 20 61 73 73 75 6d 65 64   can..be assumed
0730: 20 74 6f 20 62 65 20 65 71 75 69 76 61 6c 65 6e   to be equivalen
0740: 74 20 74 6f 20 53 46 53 20 4d 55 4c 54 49 4c 49  t to SFS MULTILI
0750: 4e 45 53 54 52 49 4e 47 2e 3c 2f 6c 69 3e 0d 0a  NESTRING.</li>..
0760: 3c 6c 69 3e 61 20 3c 62 3e 54 6f 70 6f 53 75 72  <li>a <b>TopoSur
0770: 66 61 63 65 3c 2f 62 3e 20 69 73 20 61 20 63 6f  face</b> is a co
0780: 6c 6c 65 63 74 69 6f 6e 20 6f 66 20 6f 6e 65 20  llection of one 
0790: 28 6f 72 20 6d 6f 72 65 29 20 46 61 63 65 73 2c  (or more) Faces,
07a0: 20 61 6e 64 20 63 61 6e 0d 0a 62 65 20 61 73 73   and can..be ass
07b0: 75 6d 65 64 20 74 6f 20 62 65 20 65 71 75 69 76  umed to be equiv
07c0: 61 6c 65 6e 74 20 74 6f 20 53 46 53 20 4d 55 4c  alent to SFS MUL
07d0: 54 49 50 4f 4c 59 47 4f 4e 2e 3c 62 72 3e 0d 0a  TIPOLYGON.<br>..
07e0: 3c 69 3e 45 78 61 6d 70 6c 65 3c 2f 69 3e 3a 20  <i>Example</i>: 
07f0: 46 61 63 65 73 20 3c 69 3e 46 32 3c 2f 69 3e 20  Faces <i>F2</i> 
0800: 61 6e 64 20 3c 69 3e 46 34 3c 2f 69 3e 20 62 65  and <i>F4</i> be
0810: 6c 6f 6e 67 73 20 74 6f 20 74 68 65 20 73 61 6d  longs to the sam
0820: 65 20 4d 75 6c 74 69 50 6f 6c 79 67 6f 6e 2e 3c  e MultiPolygon.<
0830: 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 2f 74  /li>..</ul>..</t
0840: 64 3e 3c 2f 74 72 3e 3c 2f 74 61 62 6c 65 3e 0d  d></tr></table>.
0850: 0a 3c 2f 74 64 3e 3c 74 64 3e 0d 0a 3c 74 61 62  .</td><td>..<tab
0860: 6c 65 3e 0d 0a 3c 74 72 3e 3c 74 64 3e 0d 0a 3c  le>..<tr><td>..<
0870: 69 6d 67 20 73 72 63 3d 22 68 74 74 70 3a 2f 2f  img src="http://
0880: 77 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f  www.gaia-gis.it/
0890: 67 61 69 61 2d 73 69 6e 73 2f 74 6f 70 6f 31 2e  gaia-sins/topo1.
08a0: 70 6e 67 22 20 61 6c 74 3d 22 74 6f 70 6f 6c 6f  png" alt="topolo
08b0: 67 79 2d 31 22 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74  gy-1">..</td></t
08c0: 72 3e 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 2f 74 64  r></table>..</td
08d0: 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 3c 74 64 20  ></tr>..<tr><td 
08e0: 63 6f 6c 73 70 61 6e 3d 22 32 22 3e 0d 0a 3c 74  colspan="2">..<t
08f0: 61 62 6c 65 20 77 69 64 74 68 3d 22 31 30 30 25  able width="100%
0900: 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 30 66 30  " bgcolor="#f0f0
0910: 66 38 22 3e 0d 0a 3c 74 72 3e 3c 74 64 3e 0d 0a  f8">..<tr><td>..
0920: 43 6f 6e 73 74 72 61 69 6e 74 73 20 6f 6e 20 4e  Constraints on N
0930: 6f 64 65 73 3a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 74  odes:<ul>..<li>t
0940: 77 6f 20 28 6f 72 20 6d 6f 72 65 29 20 4e 6f 64  wo (or more) Nod
0950: 65 73 20 63 61 6e 20 6e 65 76 65 72 20 6f 76 65  es can never ove
0960: 72 6c 61 70 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e  rlap</li>..</ul>
0970: 0d 0a 43 6f 6e 73 74 72 61 69 6e 74 73 20 6f 6e  ..Constraints on
0980: 20 45 64 67 65 73 3a 3c 75 6c 3e 0d 0a 3c 6c 69   Edges:<ul>..<li
0990: 3e 65 61 63 68 20 45 64 67 65 20 61 6c 77 61 79  >each Edge alway
09a0: 73 20 68 61 73 20 61 20 3c 69 3e 3c 75 3e 6e 6f  s has a <i><u>no
09b0: 64 65 2d 66 72 6f 6d 3c 2f 75 3e 3c 2f 69 3e 20  de-from</u></i> 
09c0: 61 6e 64 20 61 20 3c 69 3e 3c 75 3e 6e 6f 64 65  and a <i><u>node
09d0: 2d 74 6f 3c 2f 75 3e 3c 2f 69 3e 3a 20 74 68 69  -to</u></i>: thi
09e0: 73 20 69 6d 70 6c 69 65 73 20 74 68 61 74 20 61  s implies that a
09f0: 6e 79 20 45 64 67 65 20 69 73 20 3c 69 3e 3c 75  ny Edge is <i><u
0a00: 3e 6f 72 69 65 6e 74 65 64 3c 2f 75 3e 3c 2f 69  >oriented</u></i
0a10: 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 3c  ></li>..<li><i><
0a20: 75 3e 6e 6f 64 65 2d 66 72 6f 6d 3c 2f 75 3e 3c  u>node-from</u><
0a30: 2f 69 3e 20 61 6e 64 20 61 20 3c 69 3e 3c 75 3e  /i> and a <i><u>
0a40: 6e 6f 64 65 2d 74 6f 3c 2f 75 3e 3c 2f 69 3e 20  node-to</u></i> 
0a50: 6d 61 79 20 62 65 20 74 68 65 20 73 61 6d 65 3a  may be the same:
0a60: 20 61 6e 64 20 69 6e 20 74 68 69 73 20 63 61 73   and in this cas
0a70: 65 20 77 65 20 68 61 76 65 20 61 20 3c 69 3e 3c  e we have a <i><
0a80: 75 3e 73 65 6c 66 2d 63 6c 6f 73 65 64 3c 2f 75  u>self-closed</u
0a90: 3e 3c 2f 69 3e 20 45 64 67 65 20 28 61 6b 61 20  ></i> Edge (aka 
0aa0: 52 69 6e 67 29 2e 20 0d 0a 3c 69 3e 45 78 61 6d  Ring). ..<i>Exam
0ab0: 70 6c 65 3c 2f 69 3e 3a 20 3c 69 3e 45 31 3c 2f  ple</i>: <i>E1</
0ac0: 69 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 6e 20  i></li>..<li>an 
0ad0: 45 64 67 65 20 63 61 6e 6e 6f 74 20 63 6f 6e 74  Edge cannot cont
0ae0: 61 69 6e 20 6c 6f 6f 70 73 20 28 6f 72 20 61 6e  ain loops (or an
0af0: 79 20 6f 74 68 65 72 20 6b 69 6e 64 20 6f 66 20  y other kind of 
0b00: 73 65 6c 66 2d 69 6e 74 65 72 73 65 63 74 69 6f  self-intersectio
0b10: 6e 29 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 77 6f  n)</li>..<li>two
0b20: 20 28 6f 72 20 6d 6f 72 65 29 20 45 64 67 65 73   (or more) Edges
0b30: 20 63 61 6e 20 69 6e 74 65 72 73 65 63 74 20 6f   can intersect o
0b40: 6e 6c 79 20 77 68 65 72 65 20 61 20 4e 6f 64 65  nly where a Node
0b50: 20 69 73 20 64 65 66 69 6e 65 64 2e 0d 0a 3c 69   is defined...<i
0b60: 3e 45 78 61 6d 70 6c 65 3c 2f 69 3e 3a 20 45 64  >Example</i>: Ed
0b70: 67 65 73 20 3c 69 3e 45 33 3c 2f 69 3e 2c 20 3c  ges <i>E3</i>, <
0b80: 69 3e 45 34 3c 2f 69 3e 20 61 6e 64 20 3c 69 3e  i>E4</i> and <i>
0b90: 45 35 3c 2f 69 3e 20 69 6e 74 65 72 73 65 63 74  E5</i> intersect
0ba0: 20 65 78 61 63 74 65 6c 79 20 61 74 20 4e 6f 64   exactely at Nod
0bb0: 65 20 3c 69 3e 4e 34 3c 2f 69 3e 3c 2f 6c 69 3e  e <i>N4</i></li>
0bc0: 0d 0a 3c 6c 69 3e 6e 6f 20 4e 6f 64 65 20 63 61  ..<li>no Node ca
0bd0: 6e 20 6f 76 65 72 6c 61 70 20 61 6e 20 45 64 67  n overlap an Edg
0be0: 65 20 65 78 63 65 70 74 20 74 68 61 6e 20 61 74  e except than at
0bf0: 20 69 74 73 20 65 78 74 65 72 6d 69 74 69 65 73   its extermities
0c00: 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 52 65  </li>..</ul>..Re
0c10: 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20  presentation of 
0c20: 46 61 63 65 73 3a 3c 75 6c 3e 0d 0a 3c 6c 69 3e  Faces:<ul>..<li>
0c30: 65 61 63 68 20 46 61 63 65 20 69 73 20 64 65 6c  each Face is del
0c40: 69 6d 69 74 65 64 20 62 79 20 61 20 73 65 74 20  imited by a set 
0c50: 6f 66 20 45 64 67 65 73 3a 20 3c 69 3e 45 78 61  of Edges: <i>Exa
0c60: 6d 70 6c 65 3c 2f 69 3e 3a 20 46 61 63 65 20 3c  mple</i>: Face <
0c70: 69 3e 46 33 3c 2f 69 3e 0d 0a 69 73 20 64 65 6c  i>F3</i>..is del
0c80: 69 6d 69 74 65 64 20 62 79 20 45 64 67 65 73 20  imited by Edges 
0c90: 3c 69 3e 45 32 3c 2f 69 3e 2c 20 3c 69 3e 45 35  <i>E2</i>, <i>E5
0ca0: 3c 2f 69 3e 2c 20 3c 69 3e 45 34 3c 2f 69 3e 20  </i>, <i>E4</i> 
0cb0: 61 6e 64 20 3c 69 3e 45 36 3c 2f 69 3e 3c 2f 6c  and <i>E6</i></l
0cc0: 69 3e 0d 0a 3c 6c 69 3e 61 20 46 61 63 65 20 63  i>..<li>a Face c
0cd0: 61 6e 20 62 65 20 64 65 6c 69 6d 69 74 65 64 20  an be delimited 
0ce0: 62 79 20 61 20 73 69 6e 67 6c 65 20 45 64 67 65  by a single Edge
0cf0: 3a 20 3c 69 3e 45 78 61 6d 70 6c 65 3c 2f 69 3e  : <i>Example</i>
0d00: 3a 20 46 61 63 65 20 3c 69 3e 46 32 3c 2f 69 3e  : Face <i>F2</i>
0d10: 20 0d 0a 69 73 20 64 65 6c 69 6d 69 74 65 64 20   ..is delimited 
0d20: 62 79 20 45 64 67 65 20 3c 69 3e 45 31 3c 2f 69  by Edge <i>E1</i
0d30: 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 20 46 61  ></li>..<li>a Fa
0d40: 63 65 20 6d 75 73 74 20 61 6c 77 61 79 73 20 68  ce must always h
0d50: 61 76 65 20 61 6e 20 3c 69 3e 3c 75 3e 65 78 74  ave an <i><u>ext
0d60: 65 72 69 6f 72 20 62 6f 75 6e 64 61 72 79 3c 2f  erior boundary</
0d70: 69 3e 3c 2f 75 3e 3b 20 62 75 74 20 63 61 6e 20  i></u>; but can 
0d80: 63 61 6e 20 6c 65 67 69 74 69 6d 61 74 65 6c 79  can legitimately
0d90: 20 68 61 76 65 20 6f 6e 65 20 28 6f 72 20 6d 6f   have one (or mo
0da0: 72 65 29 20 3c 69 3e 3c 75 3e 69 6e 74 65 72 69  re) <i><u>interi
0db0: 6f 72 20 62 6f 75 6e 64 61 72 69 65 73 3c 2f 69  or boundaries</i
0dc0: 3e 3c 2f 75 3e 20 0d 0a 28 61 6b 61 20 3c 69 3e  ></u> ..(aka <i>
0dd0: 68 6f 6c 65 73 3c 2f 69 3e 29 20 61 74 20 74 68  holes</i>) at th
0de0: 65 20 73 61 6d 65 20 74 69 6d 65 2e 3c 62 72 3e  e same time.<br>
0df0: 0d 0a 3c 69 3e 45 78 61 6d 70 6c 65 3c 2f 69 3e  ..<i>Example</i>
0e00: 3a 20 46 61 63 65 20 3c 69 3e 46 31 3c 2f 69 3e  : Face <i>F1</i>
0e10: 20 69 73 20 64 65 6c 69 6d 69 74 65 64 20 62 79   is delimited by
0e20: 20 45 64 67 65 73 20 3c 69 3e 45 31 3c 2f 69 3e   Edges <i>E1</i>
0e30: 2c 20 3c 69 3e 45 32 3c 2f 69 3e 2c 0d 0a 3c 69  , <i>E2</i>,..<i
0e40: 3e 45 33 3c 2f 69 3e 20 61 6e 64 20 3c 69 3e 45  >E3</i> and <i>E
0e50: 37 3c 2f 69 3e 3c 75 6c 3e 0d 0a 3c 6c 69 3e 45  7</i><ul>..<li>E
0e60: 64 67 65 73 20 3c 69 3e 45 32 3c 2f 69 3e 2c 20  dges <i>E2</i>, 
0e70: 3c 69 3e 45 33 3c 2f 69 3e 20 61 6e 64 20 3c 69  <i>E3</i> and <i
0e80: 3e 45 37 3c 2f 69 3e 20 72 65 70 72 65 73 65 6e  >E7</i> represen
0e90: 74 20 74 68 65 20 3c 69 3e 3c 75 3e 65 78 74 65  t the <i><u>exte
0ea0: 72 69 6f 72 20 62 6f 75 6e 64 61 72 79 3c 2f 75  rior boundary</u
0eb0: 3e 3c 2f 69 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e  ></i></li>..<li>
0ec0: 45 64 67 65 20 3c 69 3e 45 31 3c 2f 69 3e 20 72  Edge <i>E1</i> r
0ed0: 65 70 72 65 73 65 6e 74 73 20 61 6e 20 3c 69 3e  epresents an <i>
0ee0: 3c 75 3e 69 6e 74 65 72 69 6f 72 20 62 6f 75 6e  <u>interior boun
0ef0: 64 61 72 79 3c 2f 75 3e 3c 2f 69 3e 20 28 3c 69  dary</u></i> (<i
0f00: 3e 68 6f 6c 65 3c 2f 69 3e 29 3c 2f 6c 69 3e 3c  >hole</i>)</li><
0f10: 2f 75 6c 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 2f 74  /ul>..</ul>..</t
0f20: 64 3e 3c 2f 74 72 3e 3c 2f 74 61 62 6c 65 3e 0d  d></tr></table>.
0f30: 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 74 61 62 6c  .</table>..<tabl
0f40: 65 20 77 69 64 74 68 3d 22 31 30 30 25 22 3e 3c  e width="100%"><
0f50: 74 72 3e 0d 0a 3c 74 64 20 77 69 64 74 68 3d 22  tr>..<td width="
0f60: 33 33 25 22 20 61 6c 69 67 6e 3d 22 6c 65 66 74  33%" align="left
0f70: 22 3e 3c 2f 74 64 3e 0d 0a 3c 74 64 20 61 6c 69  "></td>..<td ali
0f80: 67 6e 3d 22 63 65 6e 74 65 72 22 3e 3c 61 20 68  gn="center"><a h
0f90: 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77  ref="https://www
0fa0: 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f 66 6f 73  .gaia-gis.it/fos
0fb0: 73 69 6c 2f 6c 69 62 73 70 61 74 69 61 6c 69 74  sil/libspatialit
0fc0: 65 2f 77 69 6b 69 3f 6e 61 6d 65 3d 6d 69 73 63  e/wiki?name=misc
0fd0: 2d 64 6f 63 73 22 3e 62 61 63 6b 20 74 6f 20 69  -docs">back to i
0fe0: 6e 64 65 78 3c 2f 61 3e 3c 2f 74 64 3e 0d 0a 3c  ndex</a></td>..<
0ff0: 74 64 20 77 69 64 74 68 3d 22 33 33 25 22 20 61  td width="33%" a
1000: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 3c 61 20  lign="right"><a 
1010: 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 77 77  href="https://ww
1020: 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f 66 6f  w.gaia-gis.it/fo
1030: 73 73 69 6c 2f 6c 69 62 73 70 61 74 69 61 6c 69  ssil/libspatiali
1040: 74 65 2f 77 69 6b 69 3f 6e 61 6d 65 3d 74 6f 70  te/wiki?name=top
1050: 6f 2d 6c 61 79 6f 75 74 22 3e 6e 65 78 74 20 70  o-layout">next p
1060: 61 67 65 3c 2f 61 3e 3c 2f 74 64 3e 0d 0a 3c 2f  age</a></td>..</
1070: 74 72 3e 3c 2f 74 61 62 6c 65 3e 0d 0a 0a 5a 20  tr></table>...Z 
1080: 31 35 66 66 35 32 37 65 39 65 32 61 32 38 36 64  15ff527e9e2a286d
1090: 31 62 33 30 39 37 36 63 39 61 62 34 37 64 65 38  1b30976c9ab47de8
10a0: 0a                                               .