Wiki page
[VirtualRouting] by
sandro
2018-04-07 15:15:00.
0000: 44 20 32 30 31 38 2d 30 34 2d 30 37 54 31 35 3a D 2018-04-07T15:
0010: 31 35 3a 30 30 2e 33 39 38 0a 4c 20 56 69 72 74 15:00.398.L Virt
0020: 75 61 6c 52 6f 75 74 69 6e 67 0a 50 20 34 39 64 ualRouting.P 49d
0030: 65 39 61 35 31 30 63 39 32 30 30 66 31 33 30 66 e9a510c9200f130f
0040: 32 39 34 34 39 34 61 35 30 38 39 38 37 65 65 61 294494a508987eea
0050: 64 66 61 30 63 0a 55 20 73 61 6e 64 72 6f 0a 57 dfa0c.U sandro.W
0060: 20 38 33 39 37 36 0a 3c 61 20 68 72 65 66 3d 22 83976.<a href="
0070: 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 https://www.gaia
0080: 2d 67 69 73 2e 69 74 2f 66 6f 73 73 69 6c 2f 6c -gis.it/fossil/l
0090: 69 62 73 70 61 74 69 61 6c 69 74 65 2f 77 69 6b ibspatialite/wik
00a0: 69 3f 6e 61 6d 65 3d 34 2e 33 2e 30 2d 64 6f 63 i?name=4.3.0-doc
00b0: 22 3e 62 61 63 6b 3c 2f 61 3e 3c 68 72 3e 3c 62 ">back</a><hr><b
00c0: 72 3e 0d 0a 3c 68 31 3e 54 61 62 6c 65 20 6f 66 r>..<h1>Table of
00d0: 20 43 6f 6e 74 65 6e 74 73 3c 2f 68 31 3e 0d 0a Contents</h1>..
00e0: 31 20 2d 20 3c 61 20 68 72 65 66 3d 22 23 69 6e 1 - <a href="#in
00f0: 74 72 6f 22 3e 49 6e 74 72 6f 64 75 63 74 69 6f tro">Introductio
0100: 6e 3c 2f 61 3e 3c 62 72 3e 0d 0a 32 20 2d 20 3c n</a><br>..2 - <
0110: 61 20 68 72 65 66 3d 22 23 73 61 6d 70 6c 65 22 a href="#sample"
0120: 3e 54 68 65 20 73 61 6d 70 6c 65 2f 74 65 73 74 >The sample/test
0130: 20 44 42 3c 2f 61 3e 3c 62 72 3e 0d 0a 33 20 2d DB</a><br>..3 -
0140: 20 3c 61 20 68 72 65 66 3d 22 23 63 72 65 61 74 <a href="#creat
0150: 65 22 3e 43 72 65 61 74 69 6e 67 20 56 69 72 74 e">Creating Virt
0160: 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 ualRouting Table
0170: 73 3c 2f 61 3e 3c 62 72 3e 0d 0a 34 20 2d 20 3c s</a><br>..4 - <
0180: 61 20 68 72 65 66 3d 22 23 66 72 6f 6d 5f 74 6f a href="#from_to
0190: 22 3e 53 6f 6c 76 69 6e 67 20 63 6c 61 73 73 69 ">Solving classi
01a0: 63 20 53 68 6f 72 74 65 73 74 20 50 61 74 68 20 c Shortest Path
01b0: 70 72 6f 62 6c 65 6d 73 3c 2f 61 3e 3c 62 72 3e problems</a><br>
01c0: 0d 0a 35 20 2d 20 3c 61 20 68 72 65 66 3d 22 23 ..5 - <a href="#
01d0: 6d 75 6c 74 69 22 3e 53 6f 6c 76 69 6e 67 20 6d multi">Solving m
01e0: 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e ulti-destination
01f0: 20 53 68 6f 72 74 65 73 74 20 50 61 74 68 20 70 Shortest Path p
0200: 72 6f 62 6c 65 6d 73 3c 2f 61 3e 3c 62 72 3e 0d roblems</a><br>.
0210: 0a 36 20 2d 20 3c 61 20 68 72 65 66 3d 22 23 74 .6 - <a href="#t
0220: 73 70 22 3e 53 6f 6c 76 69 6e 67 20 54 53 50 20 sp">Solving TSP
0230: 28 74 72 61 76 65 6c 69 6e 67 20 73 61 6c 65 73 (traveling sales
0240: 6d 61 6e 29 20 70 72 6f 62 6c 65 6d 73 3c 2f 61 man) problems</a
0250: 3e 3c 62 72 3e 0d 0a 3c 62 72 3e 3c 68 72 3e 0d ><br>..<br><hr>.
0260: 0a 3c 68 31 3e 3c 61 20 6e 61 6d 65 3d 22 69 6e .<h1><a name="in
0270: 74 72 6f 22 3e 31 20 2d 20 49 6e 74 72 6f 64 75 tro">1 - Introdu
0280: 63 74 69 6f 6e 3c 2f 61 3e 3c 2f 68 31 3e 0d 0a ction</a></h1>..
0290: 50 72 65 76 69 6f 75 73 20 76 65 72 73 69 6f 6e Previous version
02a0: 73 20 6f 66 20 53 70 61 74 69 61 4c 69 74 65 20 s of SpatiaLite
02b0: 74 72 61 64 69 74 69 6f 6e 61 6c 6c 79 20 73 75 traditionally su
02c0: 70 70 6f 72 74 65 64 20 61 20 3c 62 3e 70 75 72 pported a <b>pur
02d0: 65 20 53 51 4c 20 72 6f 75 74 69 6e 67 20 6d 6f e SQL routing mo
02e0: 64 75 6c 65 3c 2f 62 3e 20 74 68 61 74 20 77 61 dule</b> that wa
02f0: 73 20 6e 61 6d 65 64 20 3c 61 20 68 72 65 66 3d s named <a href=
0300: 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 "https://www.gai
0310: 61 2d 67 69 73 2e 69 74 2f 66 6f 73 73 69 6c 2f a-gis.it/fossil/
0320: 6c 69 62 73 70 61 74 69 61 6c 69 74 65 2f 77 69 libspatialite/wi
0330: 6b 69 3f 6e 61 6d 65 3d 56 69 72 74 75 61 6c 4e ki?name=VirtualN
0340: 65 74 77 6f 72 6b 2b 72 65 6c 6f 61 64 65 64 22 etwork+reloaded"
0350: 3e 56 69 72 74 75 61 6c 4e 65 74 77 6f 72 6b 3c >VirtualNetwork<
0360: 2f 61 3e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 53 69 /a>.<br><br>..Si
0370: 6e 63 65 20 76 65 72 73 69 6f 6e 20 3c 62 3e 35 nce version <b>5
0380: 2e 30 2e 30 3c 2f 62 3e 20 61 20 62 72 61 6e 64 .0.0</b> a brand
0390: 20 6e 65 77 20 3c 62 3e 72 6f 75 74 69 6e 67 20 new <b>routing
03a0: 6d 6f 64 75 6c 65 3c 2f 62 3e 20 28 6d 6f 72 65 module</b> (more
03b0: 20 61 64 76 61 6e 63 65 64 20 61 6e 64 20 73 6f advanced and so
03c0: 70 68 69 73 74 69 63 61 74 65 64 29 20 69 73 20 phisticated) is
03d0: 61 76 61 69 6c 61 62 6c 65 2c 20 74 68 61 74 20 available, that
03e0: 69 73 20 63 61 6c 6c 65 64 20 3c 62 3e 56 69 72 is called <b>Vir
03f0: 74 75 61 6c 52 6f 75 74 69 6e 67 3c 2f 62 3e 2e tualRouting</b>.
0400: 3c 62 72 3e 0d 0a 54 68 65 20 6e 6f 77 20 6f 62 <br>..The now ob
0410: 73 6f 6c 65 74 65 20 3c 62 3e 56 69 72 74 75 61 solete <b>Virtua
0420: 6c 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 69 73 20 lNetwork</b> is
0430: 73 74 69 6c 6c 20 73 75 70 70 6f 72 74 65 64 20 still supported
0440: 62 79 20 76 65 72 73 69 6f 6e 20 3c 62 3e 35 2e by version <b>5.
0450: 30 2e 30 3c 2f 62 3e 20 73 6f 20 61 73 20 74 6f 0.0</b> so as to
0460: 20 6e 6f 74 20 63 61 75 73 65 20 61 6e 20 61 62 not cause an ab
0470: 72 75 70 74 20 62 72 65 61 6b 20 74 6f 20 61 6c rupt break to al
0480: 72 65 61 64 79 20 65 78 69 73 74 69 6e 67 20 61 ready existing a
0490: 70 70 6c 69 63 61 74 69 6f 6e 73 2c 20 62 75 74 pplications, but
04a0: 20 77 69 6c 6c 20 70 72 65 73 75 6d 61 62 6c 79 will presumably
04b0: 20 62 65 20 64 69 73 63 6f 6e 74 69 6e 75 65 64 be discontinued
04c0: 20 69 6e 20 66 75 74 75 72 65 20 76 65 72 73 69 in future versi
04d0: 6f 6e 73 2e 3c 62 72 3e 0d 0a 55 73 69 6e 67 20 ons.<br>..Using
04e0: 3c 62 3e 56 69 72 74 75 61 6c 52 6f 75 74 69 6e <b>VirtualRoutin
04f0: 67 3c 2f 62 3e 20 69 6e 73 74 65 61 64 20 6f 66 g</b> instead of
0500: 20 3c 62 3e 56 69 72 74 75 61 6c 4e 65 74 77 69 <b>VirtualNetwi
0510: 72 6b 3c 2f 62 3e 20 69 73 20 77 61 72 6d 6c 79 rk</b> is warmly
0520: 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 66 6f 72 recommended for
0530: 20 61 6e 79 20 6e 65 77 20 64 65 76 65 6c 6f 70 any new develop
0540: 6d 65 6e 74 2e 20 0d 0a 3c 68 32 3e 54 68 65 6f ment. ..<h2>Theo
0550: 72 65 74 69 63 61 6c 20 66 6f 75 6e 64 61 74 69 retical foundati
0560: 6f 6e 73 20 2d 20 61 6e 20 75 6c 74 72 61 2d 71 ons - an ultra-q
0570: 75 69 63 6b 20 72 65 63 61 6c 6c 3c 2f 68 32 3e uick recall</h2>
0580: 0d 0a 41 6c 6c 20 3c 62 3e 52 6f 75 74 69 6e 67 ..All <b>Routing
0590: 20 61 6c 67 6f 72 69 74 68 6d 73 3c 2f 62 3e 20 algorithms</b>
05a0: 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 53 (<i>aka</i> <b>S
05b0: 68 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 62 3e hortest Path</b>
05c0: 20 61 6c 67 6f 72 69 74 68 6d 73 29 20 61 72 65 algorithms) are
05d0: 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 6d 61 based on the ma
05e0: 74 68 65 6d 61 74 69 63 73 20 6f 66 20 74 68 65 thematics of the
05f0: 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a <a href="https:
0600: 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f //en.wikipedia.o
0610: 72 67 2f 77 69 6b 69 2f 47 72 61 70 68 5f 74 68 rg/wiki/Graph_th
0620: 65 6f 72 79 22 3e 47 72 61 70 68 20 74 68 65 6f eory">Graph theo
0630: 72 79 3c 2f 61 3e 20 6f 72 20 74 6f 20 62 65 20 ry</a> or to be
0640: 6d 6f 72 65 20 70 72 65 63 69 73 65 3a 20 6f 6e more precise: on
0650: 20 3c 62 3e 57 65 69 67 68 74 65 64 20 47 72 61 <b>Weighted Gra
0660: 70 68 73 3c 2f 62 3e 2e 0d 0a 3c 62 72 3e 0d 0a phs</b>...<br>..
0670: 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 70 73 3a <img src="https:
0680: 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 //www.gaia-gis.i
0690: 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 6f 75 74 t/gaia-sins/rout
06a0: 69 6e 67 2d 66 69 67 73 2f 6e 65 74 77 6f 72 6b ing-figs/network
06b0: 2e 70 6e 67 22 20 61 6c 74 3d 22 6e 65 74 77 6f .png" alt="netwo
06c0: 72 6b 22 3e 0d 0a 3c 62 72 3e 0d 0a 41 20 74 6f rk">..<br>..A to
06d0: 70 6f 6c 6f 67 69 63 61 6c 6c 79 20 76 61 6c 69 pologically vali
06e0: 64 20 3c 62 3e 4e 65 74 77 6f 72 6b 3c 2f 62 3e d <b>Network</b>
06f0: 20 69 73 20 61 20 64 61 74 61 73 65 74 20 74 68 is a dataset th
0700: 61 74 20 66 75 6c 66 69 6c 6c 73 20 74 68 65 20 at fulfills the
0710: 66 6f 6c 6c 6f 77 69 6e 67 20 72 65 71 75 69 72 following requir
0720: 65 6d 65 6e 74 73 3a 0d 0a 3c 75 6c 3e 0d 0a 3c ements:..<ul>..<
0730: 6c 69 3e 41 6c 6c 20 69 74 65 6d 73 20 69 6e 20 li>All items in
0740: 74 68 65 20 64 61 74 61 73 65 74 20 61 72 65 20 the dataset are
0750: 63 61 6c 6c 65 64 20 3c 62 3e 4c 69 6e 6b 73 3c called <b>Links<
0760: 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 /b> (<i>aka</i>
0770: 3c 62 3e 41 72 63 73 3c 2f 62 3e 29 2c 20 61 6e <b>Arcs</b>), an
0780: 64 20 61 72 65 20 65 78 70 65 63 74 65 64 20 74 d are expected t
0790: 6f 20 72 65 70 72 65 73 65 6e 74 20 73 6f 6d 65 o represent some
07a0: 20 6f 72 69 65 6e 74 65 64 20 63 6f 6e 6e 65 63 oriented connec
07b0: 74 69 6f 6e 20 6a 6f 69 6e 69 6e 67 20 74 77 6f tion joining two
07c0: 20 3c 62 3e 4e 6f 64 65 73 3c 2f 62 3e 2e 3c 62 <b>Nodes</b>.<b
07d0: 72 3e 0d 0a 3c 75 3e 45 78 61 6d 70 6c 65 3c 2f r>..<u>Example</
07e0: 75 3e 3a 20 69 6e 20 74 68 65 20 61 62 6f 76 65 u>: in the above
07f0: 20 66 69 67 75 72 65 20 4c 69 6e 6b 20 3c 62 3e figure Link <b>
0800: 4c 33 3c 2f 62 3e 20 63 6f 6e 6e 65 63 74 73 20 L3</b> connects
0810: 4e 6f 64 65 73 20 3c 62 3e 4e 32 3c 2f 62 3e 20 Nodes <b>N2</b>
0820: 61 6e 64 20 3c 62 3e 4e 35 3c 2f 62 3e 2e 3c 2f and <b>N5</b>.</
0830: 6c 69 3e 0d 0a 3c 6c 69 3e 53 6f 20 61 6c 6c 20 li>..<li>So all
0840: 3c 62 3e 4c 69 6e 6b 73 3c 2f 62 3e 20 61 72 65 <b>Links</b> are
0850: 20 61 6c 77 61 79 73 20 65 78 70 65 63 74 65 64 always expected
0860: 20 74 6f 20 65 78 70 6c 69 63 69 74 6c 79 20 72 to explicitly r
0870: 65 66 65 72 65 6e 63 65 20 61 20 3c 62 3e 53 74 eference a <b>St
0880: 61 72 74 2d 4e 6f 64 65 3c 2f 62 3e 20 28 3c 69 art-Node</b> (<i
0890: 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 4e 6f 64 65 >aka</i> <b>Node
08a0: 2d 46 72 6f 6d 3c 2f 62 3e 29 20 61 6e 64 20 61 -From</b>) and a
08b0: 6e 20 3c 62 3e 45 6e 64 2d 4e 6f 64 65 3c 2f 62 n <b>End-Node</b
08c0: 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 > (<i>aka</i> <b
08d0: 3e 4e 6f 64 65 2d 54 6f 3c 2f 62 3e 29 2e 0d 0a >Node-To</b>)...
08e0: 3c 75 6c 3e 0d 0a 3c 6c 69 3e 4c 69 6e 6b 73 20 <ul>..<li>Links
08f0: 61 72 65 20 61 6c 77 61 79 73 20 3c 62 3e 6f 72 are always <b>or
0900: 69 65 6e 74 65 64 3c 2f 62 3e 2c 20 61 6e 64 20 iented</b>, and
0910: 74 68 65 69 72 20 6e 61 74 75 72 61 6c 20 64 69 their natural di
0920: 72 65 63 74 69 6f 6e 20 69 73 20 3c 62 3e 46 72 rection is <b>Fr
0930: 6f 6d 2d 54 6f 3c 2f 62 3e 3a 0d 0a 3c 75 6c 3e om-To</b>:..<ul>
0940: 0d 0a 3c 6c 69 3e 69 6e 20 61 6e 20 3c 62 3e 75 ..<li>in an <b>u
0950: 6e 69 64 69 72 65 63 74 69 6f 6e 61 6c 3c 2f 62 nidirectional</b
0960: 3e 20 4e 65 74 77 6f 72 6b 20 65 61 63 68 20 4c > Network each L
0970: 69 6e 6b 20 69 73 20 61 6e 20 3c 62 3e 6f 6e 65 ink is an <b>one
0980: 2d 77 61 79 3c 2f 62 3e 20 63 6f 6e 6e 65 63 74 -way</b> connect
0990: 69 6f 6e 2e 3c 62 72 3e 0d 0a 49 66 20 74 68 65 ion.<br>..If the
09a0: 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 69 73 20 61 connection is a
09b0: 76 61 69 6c 61 62 6c 65 20 69 6e 20 74 68 65 20 vailable in the
09c0: 6f 70 70 6f 73 69 74 65 20 64 69 72 65 63 74 69 opposite directi
09d0: 6f 6e 20 61 20 73 65 63 6f 6e 64 20 4c 69 6e 6b on a second Link
09e0: 20 6d 75 73 74 20 62 65 20 65 78 70 6c 69 63 69 must be explici
09f0: 74 6c 79 20 64 65 63 6c 61 72 65 64 2e 3c 62 72 tly declared.<br
0a00: 3e 0d 0a 3c 75 3e 45 78 61 6d 70 6c 65 3c 2f 75 >..<u>Example</u
0a10: 3e 3a 20 4c 69 6e 6b 20 3c 62 3e 58 31 3c 2f 62 >: Link <b>X1</b
0a20: 3e 20 67 6f 65 73 20 66 72 6f 6d 20 4e 6f 64 65 > goes from Node
0a30: 20 3c 62 3e 41 3c 2f 62 3e 20 74 6f 20 4e 6f 64 <b>A</b> to Nod
0a40: 65 20 3c 62 3e 42 3c 2f 62 3e 2c 20 61 6e 64 20 e <b>B</b>, and
0a50: 4c 69 6e 6b 20 3c 62 3e 58 32 3c 2f 62 3e 20 67 Link <b>X2</b> g
0a60: 6f 65 73 20 66 72 6f 6d 20 4e 6f 64 65 20 3c 62 oes from Node <b
0a70: 3e 42 3c 2f 62 3e 20 74 6f 20 4e 6f 64 65 20 3c >B</b> to Node <
0a80: 62 3e 41 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c b>A</b>.</li>..<
0a90: 6c 69 3e 69 6e 20 61 20 3c 62 3e 62 69 64 69 72 li>in a <b>bidir
0aa0: 65 63 74 69 6f 6e 61 6c 3c 2f 62 3e 20 4e 65 74 ectional</b> Net
0ab0: 77 6f 72 6b 20 61 6c 6c 20 4c 69 6e 6b 73 20 61 work all Links a
0ac0: 72 65 20 61 73 73 75 6d 65 64 20 74 6f 20 65 73 re assumed to es
0ad0: 74 61 62 6c 69 73 68 20 61 20 63 6f 6e 6e 65 63 tablish a connec
0ae0: 74 69 6f 6e 20 69 6e 20 62 6f 74 68 20 64 69 72 tion in both dir
0af0: 65 63 74 69 6f 6e 73 2e 3c 62 72 3e 0d 0a 44 65 ections.<br>..De
0b00: 66 69 6e 69 74 69 6e 67 20 61 6e 20 3c 62 3e 6f finiting an <b>o
0b10: 6e 65 2d 77 61 79 20 63 6f 6e 6e 65 63 74 69 6f ne-way connectio
0b20: 6e 3c 2f 62 3e 20 72 65 71 75 69 72 65 73 20 61 n</b> requires a
0b30: 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 61 74 n appropriate at
0b40: 74 72 69 62 75 74 65 20 74 6f 20 62 65 20 73 65 tribute to be se
0b50: 74 20 28 73 65 65 20 62 65 6c 6f 77 29 2e 3c 2f t (see below).</
0b60: 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d li>..</ul></li>.
0b70: 0a 3c 6c 69 3e 54 68 65 20 3c 62 3e 53 74 61 72 .<li>The <b>Star
0b80: 74 2d 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 45 6e t-</b> and <b>En
0b90: 64 2d 4e 6f 64 65 3c 2f 62 3e 20 63 6f 75 6c 64 d-Node</b> could
0ba0: 20 65 76 65 6e 74 75 61 6c 6c 79 20 62 65 20 74 eventually be t
0bb0: 68 65 20 73 61 6d 65 2c 20 61 6e 64 20 69 6e 20 he same, and in
0bc0: 74 68 69 73 20 63 61 73 65 20 77 65 27 6c 6c 20 this case we'll
0bd0: 68 61 76 65 20 61 20 3c 62 3e 73 65 6c 66 2d 63 have a <b>self-c
0be0: 6c 6f 73 65 64 3c 2f 62 3e 20 4c 69 6e 6b 2e 3c losed</b> Link.<
0bf0: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 4e 65 74 77 6f 72 /li>..<li>Networ
0c00: 6b 27 73 20 4c 69 6e 6b 73 20 3c 62 3e 63 61 6e k's Links <b>can
0c10: 3c 2f 62 3e 20 65 76 65 6e 74 75 61 6c 6c 79 20 </b> eventually
0c20: 64 65 66 69 6e 65 20 61 20 6c 69 6e 65 61 72 20 define a linear
0c30: 47 65 6f 6d 65 74 72 79 20 28 3c 62 3e 4c 49 4e Geometry (<b>LIN
0c40: 45 53 54 52 49 4e 47 3c 2f 62 3e 29 20 67 6f 69 ESTRING</b>) goi
0c50: 6e 67 20 66 72 6f 6d 20 74 68 65 20 3c 62 3e 53 ng from the <b>S
0c60: 74 61 72 74 2d 4e 6f 64 65 3c 2f 62 3e 20 74 6f tart-Node</b> to
0c70: 20 74 68 65 20 3c 62 3e 45 6e 64 2d 4e 6f 64 65 the <b>End-Node
0c80: 3c 2f 62 3e 2c 20 62 75 74 20 74 68 69 73 20 69 </b>, but this i
0c90: 73 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 66 65 s an optional fe
0ca0: 61 74 75 72 65 2c 20 6e 6f 74 20 61 20 6d 61 6e ature, not a man
0cb0: 64 61 74 6f 72 79 20 72 65 71 75 69 72 65 6d 65 datory requireme
0cc0: 6e 74 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 57 68 nt.</li>..<li>Wh
0cd0: 61 74 20 69 73 20 61 62 73 6f 6c 75 74 65 6c 79 at is absolutely
0ce0: 20 6d 61 6e 64 61 74 6f 72 79 20 69 73 20 74 68 mandatory is th
0cf0: 61 74 20 65 61 63 68 20 3c 62 3e 4c 69 6e 6b 3c at each <b>Link<
0d00: 2f 62 3e 20 6d 75 73 74 20 65 78 70 6c 69 63 69 /b> must explici
0d10: 74 6c 79 20 72 65 66 65 72 65 6e 63 65 20 69 74 tly reference it
0d20: 73 20 3c 62 3e 4e 6f 64 65 73 3c 2f 62 3e 2e 3c s <b>Nodes</b>.<
0d30: 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e /li>..</ul></li>
0d40: 0d 0a 3c 6c 69 3e 41 20 4e 65 74 77 6f 72 6b 20 ..<li>A Network
0d50: 73 75 70 70 6f 72 74 69 6e 67 20 47 65 6f 6d 65 supporting Geome
0d60: 74 72 69 65 73 20 69 73 20 61 20 3c 62 3e 53 70 tries is a <b>Sp
0d70: 61 74 69 61 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 atial Network</b
0d80: 3e 3b 20 6f 74 68 65 72 77 69 73 65 20 61 20 4e >; otherwise a N
0d90: 65 74 77 6f 72 6b 20 6c 61 63 6b 69 6e 67 20 61 etwork lacking a
0da0: 6e 79 20 47 65 6f 6d 65 74 72 79 20 69 73 20 61 ny Geometry is a
0db0: 20 3c 62 3e 4c 6f 67 69 63 61 6c 20 4e 65 74 77 <b>Logical Netw
0dc0: 6f 72 6b 3c 2f 62 3e 2e 0d 0a 3c 75 6c 3e 0d 0a ork</b>...<ul>..
0dd0: 3c 6c 69 3e 49 6e 20 61 20 3c 62 3e 53 70 61 74 <li>In a <b>Spat
0de0: 69 61 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 ial Network</b>
0df0: 61 6c 6c 20 4c 69 6e 6b 73 20 3c 62 3e 6d 75 73 all Links <b>mus
0e00: 74 3c 2f 62 3e 20 68 61 76 65 20 61 20 63 6f 72 t</b> have a cor
0e10: 72 65 73 70 6f 6e 64 69 6e 67 20 47 65 6f 6d 65 responding Geome
0e20: 74 72 79 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 49 try.</li>..<li>I
0e30: 6e 20 61 20 3c 62 3e 4c 6f 67 69 63 61 6c 20 4e n a <b>Logical N
0e40: 65 74 77 6f 72 6b 3c 2f 62 3e 20 61 6c 6c 20 4c etwork</b> all L
0e50: 69 6e 6b 73 20 3c 62 3e 61 72 65 20 73 74 72 69 inks <b>are stri
0e60: 63 74 6c 79 20 66 6f 72 62 69 64 64 65 6e 3c 2f ctly forbidden</
0e70: 62 3e 20 74 6f 20 68 61 76 65 20 61 6e 79 20 47 b> to have any G
0e80: 65 6f 6d 65 74 72 79 2e 3c 2f 6c 69 3e 0d 0a 3c eometry.</li>..<
0e90: 6c 69 3e 49 6e 20 61 20 3c 62 3e 53 70 61 74 69 li>In a <b>Spati
0ea0: 61 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 62 al Network</b> b
0eb0: 6f 74 68 20 74 68 65 20 3c 62 3e 53 74 61 72 74 oth the <b>Start
0ec0: 50 6f 69 6e 74 3c 2f 62 3e 20 61 6e 64 20 3c 62 Point</b> and <b
0ed0: 3e 45 6e 64 50 6f 69 6e 74 3c 2f 62 3e 20 6f 66 >EndPoint</b> of
0ee0: 20 65 61 63 68 20 4c 69 6e 6b 27 73 20 3c 62 3e each Link's <b>
0ef0: 4c 49 4e 45 53 54 52 49 4e 47 3c 2f 62 3e 20 61 LINESTRING</b> a
0f00: 72 65 20 61 6c 77 61 79 73 20 65 78 70 65 63 74 re always expect
0f10: 65 64 20 74 6f 20 65 78 61 63 74 6c 79 20 63 6f ed to exactly co
0f20: 69 6e 63 69 64 65 20 77 69 74 68 20 74 68 65 20 incide with the
0f30: 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 3c 62 corresponding <b
0f40: 3e 4e 6f 64 65 73 3c 2f 62 3e 2e 3c 2f 6c 69 3e >Nodes</b>.</li>
0f50: 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c ..</ul></li>..<l
0f60: 69 3e 49 6e 20 61 20 3c 62 3e 53 70 61 74 69 61 i>In a <b>Spatia
0f70: 6c 20 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 61 6c l Network</b> al
0f80: 6c 20 72 65 66 65 72 65 6e 63 65 73 20 74 6f 20 l references to
0f90: 74 68 65 20 73 61 6d 65 20 3c 62 3e 4e 6f 64 65 the same <b>Node
0fa0: 3c 2f 62 3e 20 62 79 20 64 69 66 66 65 72 65 6e </b> by differen
0fb0: 74 20 4c 69 6e 6b 73 20 3c 62 3e 6d 75 73 74 3c t Links <b>must<
0fc0: 2f 62 3e 20 62 65 20 61 6e 20 65 78 61 63 74 20 /b> be an exact
0fd0: 6d 61 74 63 68 2e 3c 62 72 3e 0d 0a 3c 75 3e 45 match.<br>..<u>E
0fe0: 78 61 6d 70 6c 65 3c 2f 75 3e 3a 20 4e 6f 64 65 xample</u>: Node
0ff0: 20 3c 62 3e 4e 35 3c 2f 62 3e 20 69 73 20 73 68 <b>N5</b> is sh
1000: 61 72 65 64 20 62 79 20 4c 69 6e 6b 73 20 3c 62 ared by Links <b
1010: 3e 4c 33 3c 2f 62 3e 2c 20 3c 62 3e 4c 36 3c 2f >L3</b>, <b>L6</
1020: 62 3e 2c 20 3c 62 3e 4c 37 3c 2f 62 3e 2c 20 3c b>, <b>L7</b>, <
1030: 62 3e 4c 39 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e b>L9</b> and <b>
1040: 4c 31 30 3c 2f 62 3e 2c 20 73 6f 20 61 6c 6c 20 L10</b>, so all
1050: 74 68 65 69 72 20 63 6f 72 72 65 73 70 6f 6e 64 their correspond
1060: 69 6e 67 20 4c 49 4e 45 53 54 52 49 4e 47 53 20 ing LINESTRINGS
1070: 61 72 65 20 65 78 70 65 63 74 65 64 20 74 6f 20 are expected to
1080: 68 61 76 65 20 74 68 65 20 63 6f 72 72 65 73 70 have the corresp
1090: 6f 6e 64 69 6e 67 20 65 78 74 72 65 6d 69 74 79 onding extremity
10a0: 20 28 3c 62 3e 53 74 61 72 74 2d 3c 2f 62 3e 20 (<b>Start-</b>
10b0: 6f 72 20 3c 62 3e 45 6e 64 2d 3c 2f 62 3e 2c 20 or <b>End-</b>,
10c0: 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 depending on the
10d0: 20 6f 72 69 65 6e 74 61 74 69 6f 6e 29 20 70 6f orientation) po
10e0: 69 6e 74 73 20 74 68 61 74 20 6d 75 73 74 20 65 ints that must e
10f0: 78 61 63 74 6c 79 20 6d 61 74 63 68 20 74 68 65 xactly match the
1100: 20 6f 74 68 65 72 2e 3c 62 72 3e 0d 0a 41 20 3c other.<br>..A <
1110: 62 3e 74 6f 70 6f 6c 6f 67 69 63 61 6c 20 69 6e b>topological in
1120: 63 6f 6e 73 69 73 74 65 6e 63 79 3c 2f 62 3e 20 consistency</b>
1130: 65 78 69 73 74 73 20 69 66 20 61 6e 79 20 6f 66 exists if any of
1140: 20 74 68 65 73 65 20 63 6f 6e 64 69 74 69 6f 6e these condition
1150: 73 20 61 72 65 20 6e 6f 74 20 73 61 74 69 73 66 s are not satisf
1160: 69 65 64 2c 20 77 68 69 63 68 20 6c 65 61 64 73 ied, which leads
1170: 20 74 6f 20 61 6e 20 3c 62 3e 69 6e 76 61 6c 69 to an <b>invali
1180: 64 3c 2f 62 3e 20 4e 65 74 77 6f 72 6b 2e 3c 2f d</b> Network.</
1190: 6c 69 3e 0d 0a 3c 6c 69 3e 49 6e 20 61 20 3c 62 li>..<li>In a <b
11a0: 3e 53 70 61 74 69 61 6c 20 4e 65 74 77 6f 72 6b >Spatial Network
11b0: 3c 2f 62 3e 20 74 77 6f 0d 0a 3c 6c 69 3e 41 63 </b> two..<li>Ac
11c0: 63 6f 72 64 69 6e 67 6c 79 20 74 6f 20 74 68 65 cordingly to the
11d0: 20 61 62 6f 76 65 20 70 72 65 6d 69 73 65 73 2c above premises,
11e0: 20 3c 62 3e 4e 6f 64 65 73 3c 2f 62 3e 20 61 72 <b>Nodes</b> ar
11f0: 65 20 6e 65 76 65 72 20 65 78 70 65 63 74 65 64 e never expected
1200: 20 74 6f 20 62 65 20 65 78 70 6c 69 63 69 74 6c to be explicitl
1210: 79 20 64 65 63 6c 61 72 65 64 20 69 6e 20 61 20 y declared in a
1220: 73 65 70 61 72 61 74 65 20 54 61 62 6c 65 2e 3c separate Table.<
1230: 62 72 3e 0d 0a 4a 75 73 74 20 61 20 73 69 6e 67 br>..Just a sing
1240: 6c 65 20 54 61 62 6c 65 20 64 65 63 6c 61 72 69 le Table declari
1250: 6e 67 20 61 6c 6c 20 3c 62 3e 4c 69 6e 6b 73 3c ng all <b>Links<
1260: 2f 62 3e 20 69 73 20 72 65 71 75 69 72 65 64 20 /b> is required
1270: 69 6e 20 6f 72 64 65 72 20 74 6f 20 66 75 6c 6c in order to full
1280: 79 20 64 65 66 69 6e 65 20 61 20 74 6f 70 6f 6c y define a topol
1290: 6f 67 69 63 61 6c 6c 79 20 76 61 6c 69 64 20 4e ogically valid N
12a0: 65 74 77 6f 72 6b 2e 3c 62 72 3e 0d 0a 41 6c 6c etwork.<br>..All
12b0: 20 74 68 65 20 4e 6f 64 65 73 20 63 61 6e 20 74 the Nodes can t
12c0: 68 65 6e 20 62 65 20 65 61 73 69 6c 79 20 65 78 hen be easily ex
12d0: 74 72 61 63 74 65 64 20 66 72 6f 6d 20 74 68 65 tracted from the
12e0: 20 4c 69 6e 6b 73 27 20 64 65 66 69 6e 69 74 69 Links' definiti
12f0: 6f 6e 73 20 61 6e 64 20 74 68 65 20 63 6f 6f 72 ons and the coor
1300: 64 69 6e 61 74 65 73 20 66 6f 72 20 65 61 63 68 dinates for each
1310: 20 4e 6f 64 65 20 63 61 6e 20 62 65 20 64 69 72 Node can be dir
1320: 65 63 74 6c 79 20 73 65 74 20 62 79 20 65 78 74 ectly set by ext
1330: 72 61 63 74 69 6e 67 20 74 68 65 20 65 78 74 72 racting the extr
1340: 65 6d 65 20 50 6f 69 6e 74 20 6f 66 20 74 68 65 eme Point of the
1350: 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 4c corresponding L
1360: 69 6e 65 73 74 72 69 6e 67 73 2e 3c 62 72 3e 0d inestrings.<br>.
1370: 0a 49 66 20 61 6e 79 20 6d 69 73 6d 61 74 63 68 .If any mismatch
1380: 20 69 73 20 64 65 74 65 63 74 65 64 20 74 68 69 is detected thi
1390: 73 20 73 75 72 65 6c 79 20 6d 65 61 6e 73 20 74 s surely means t
13a0: 68 61 74 20 74 68 65 20 4e 65 74 77 6f 72 6b 20 hat the Network
13b0: 69 73 20 69 6e 76 61 6c 69 64 2e 3c 2f 6c 69 3e is invalid.</li>
13c0: 0d 0a 3c 6c 69 3e 41 20 3c 62 3e 4c 69 6e 6b 3c ..<li>A <b>Link<
13d0: 2f 62 3e 20 6d 61 79 20 6c 65 67 69 74 69 6d 61 /b> may legitima
13e0: 74 65 6c 79 20 73 65 6c 66 2d 69 6e 74 65 72 73 tely self-inters
13f0: 65 63 74 20 69 74 73 65 6c 66 20 28 65 2e 67 2e ect itself (e.g.
1400: 20 66 6f 72 6d 69 6e 67 20 61 20 6c 6f 6f 70 29 forming a loop)
1410: 2c 20 61 73 20 73 68 6f 77 6e 20 69 6e 20 74 68 , as shown in th
1420: 65 20 61 62 6f 76 65 20 66 69 67 75 72 65 20 62 e above figure b
1430: 79 20 4c 69 6e 6b 20 3c 62 3e 4c 31 35 3c 2f 62 y Link <b>L15</b
1440: 3e 20 28 6f 72 61 6e 67 65 20 73 70 6f 74 29 2e > (orange spot).
1450: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 54 77 6f 20 3c </li>..<li>Two <
1460: 62 3e 4c 69 6e 6b 73 3c 2f 62 3e 20 6d 61 79 20 b>Links</b> may
1470: 6c 65 67 69 74 69 6d 61 74 65 6c 79 20 69 6e 74 legitimately int
1480: 65 72 73 65 63 74 20 77 68 65 72 65 20 6e 6f 20 ersect where no
1490: 4e 6f 64 65 20 65 78 69 73 74 73 2c 20 61 73 20 Node exists, as
14a0: 65 78 65 6d 70 6c 69 66 69 65 64 20 6f 6e 20 74 exemplified on t
14b0: 68 65 20 61 62 6f 76 65 20 66 69 67 75 72 65 20 he above figure
14c0: 62 79 20 4c 69 6e 6b 73 20 3c 62 3e 4c 34 3c 2f by Links <b>L4</
14d0: 62 3e 20 61 6e 64 20 3c 62 3e 4c 37 3c 2f 62 3e b> and <b>L7</b>
14e0: 20 28 67 72 65 65 6e 20 73 70 6f 74 29 2e 3c 62 (green spot).<b
14f0: 72 3e 0d 0a 54 68 69 73 20 75 73 75 61 6c 6c 79 r>..This usually
1500: 20 68 61 70 70 65 6e 73 20 77 68 65 6e 20 6f 6e happens when on
1510: 65 20 6f 66 20 74 68 65 20 74 77 6f 20 4c 69 6e e of the two Lin
1520: 6b 73 20 6f 76 65 72 70 61 73 73 65 73 20 74 68 ks overpasses th
1530: 65 20 6f 74 68 65 72 2c 20 6f 72 20 77 68 65 72 e other, or wher
1540: 65 20 73 6f 6d 65 20 74 65 63 68 6e 69 63 61 6c e some technical
1550: 20 72 65 73 74 72 69 63 74 69 6f 6e 20 65 78 69 restriction exi
1560: 73 74 73 20 28 65 2e 67 2e 20 74 77 6f 20 69 6e sts (e.g. two in
1570: 73 75 6c 61 74 65 64 20 77 69 72 65 73 20 69 6e sulated wires in
1580: 20 61 6e 20 45 6c 65 63 74 72 69 63 61 6c 20 4e an Electrical N
1590: 65 74 77 6f 72 6b 29 2e 3c 2f 6c 69 3e 0d 0a 3c etwork).</li>..<
15a0: 6c 69 3e 3c 62 3e 4c 69 6e 6b 73 3c 2f 62 3e 20 li><b>Links</b>
15b0: 61 72 65 6e 27 74 20 73 74 72 69 63 74 6c 79 20 aren't strictly
15c0: 72 65 71 75 69 72 65 64 20 74 6f 20 62 65 20 61 required to be a
15d0: 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 61 ssociated with a
15e0: 6e 79 20 73 70 65 63 69 66 69 63 20 61 74 74 72 ny specific attr
15f0: 69 62 75 74 65 2c 20 62 75 74 20 74 68 65 20 66 ibute, but the f
1600: 6f 6c 6c 6f 77 69 6e 67 20 61 74 74 72 69 62 75 ollowing attribu
1610: 74 65 73 20 61 72 65 20 61 6c 6d 6f 73 74 20 75 tes are almost u
1620: 6e 69 76 65 72 73 61 6c 6c 79 20 73 75 70 70 6f niversally suppo
1630: 72 74 65 64 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 rted:..<ul>..<li
1640: 3e 61 20 3c 62 3e 6e 61 6d 65 3c 2f 62 3e 20 69 >a <b>name</b> i
1650: 64 65 6e 74 69 66 79 69 6e 67 20 74 68 65 20 4c dentifying the L
1660: 69 6e 6b 2e 3c 62 72 3e 0d 0a 3c 75 3e 45 78 61 ink.<br>..<u>Exa
1670: 6d 70 6c 65 73 3c 2f 75 3e 3a 20 74 68 65 20 3c mples</u>: the <
1680: 69 3e 72 6f 61 64 20 74 6f 70 6f 6e 79 6d 3c 2f i>road toponym</
1690: 69 3e 20 69 6e 20 61 20 3c 62 3e 72 6f 61 64 20 i> in a <b>road
16a0: 6e 65 74 77 6f 72 6b 3c 2f 62 3e 2c 20 6f 72 20 network</b>, or
16b0: 74 68 65 20 3c 69 3e 72 69 76 65 72 20 6e 61 6d the <i>river nam
16c0: 65 3c 2f 69 3e 20 69 6e 20 61 6e 20 3c 62 3e 68 e</i> in an <b>h
16d0: 79 64 72 6f 67 72 61 70 68 69 63 20 6e 65 74 77 ydrographic netw
16e0: 6f 72 6b 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c ork</b>.</li>..<
16f0: 6c 69 3e 6f 6e 65 20 28 6f 72 20 65 76 65 6e 20 li>one (or even
1700: 6d 6f 72 65 29 20 61 70 70 72 6f 70 72 69 61 74 more) appropriat
1710: 65 20 3c 62 3e 63 6f 73 74 20 76 61 6c 75 65 3c e <b>cost value<
1720: 2f 62 3e 28 73 29 2e 3c 62 72 3e 0d 0a 3c 75 3e /b>(s).<br>..<u>
1730: 45 78 61 6d 70 6c 65 3c 2f 75 3e 3a 20 74 68 65 Example</u>: the
1740: 20 3c 69 3e 74 69 6d 65 3c 2f 69 3e 20 72 65 71 <i>time</i> req
1750: 75 69 72 65 64 20 74 6f 20 74 72 61 76 65 72 73 uired to travers
1760: 65 20 74 68 65 20 4c 69 6e 6b 20 28 6d 61 79 20 e the Link (may
1770: 62 65 20 64 69 73 74 69 6e 67 75 69 73 68 65 64 be distinguished
1780: 20 62 65 74 77 65 65 6e 20 70 65 64 65 73 74 72 between pedestr
1790: 69 61 6e 73 2c 20 62 69 63 79 63 6c 65 73 2c 20 ians, bicycles,
17a0: 63 61 72 73 2c 20 6c 6f 72 72 69 65 73 20 61 6e cars, lorries an
17b0: 64 20 73 6f 20 6f 6e 29 2e 3c 2f 6c 69 3e 0d 0a d so on).</li>..
17c0: 3c 6c 69 3e 61 20 70 61 69 72 20 6f 66 20 3c 62 <li>a pair of <b
17d0: 3e 62 6f 6f 6c 65 61 6e 20 66 6c 61 67 73 3c 2f >boolean flags</
17e0: 62 3e 20 28 3c 62 3e 66 72 6f 6d 2d 74 6f 3c 2f b> (<b>from-to</
17f0: 62 3e 20 61 6e 64 20 3c 62 3e 74 6f 2d 66 72 6f b> and <b>to-fro
1800: 6d 3c 2f 62 3e 29 20 61 72 65 20 69 6e 74 65 6e m</b>) are inten
1810: 64 65 6e 64 20 74 6f 20 73 70 65 63 69 66 79 20 dend to specify
1820: 69 66 20 74 68 65 20 4c 69 6e 6b 20 63 61 6e 20 if the Link can
1830: 62 65 20 74 72 61 76 65 72 73 65 64 20 6f 6e 20 be traversed on
1840: 62 6f 74 68 20 64 69 72 65 63 74 69 6f 6e 73 20 both directions
1850: 6f 72 20 6a 75 73 74 20 69 6e 20 6f 6e 65 20 28 or just in one (
1860: 3c 62 3e 6f 6e 65 2d 77 61 79 3c 2f 62 3e 29 2e <b>one-way</b>).
1870: 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 </li>..</ul></li
1880: 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 68 34 3e 4c 6f >..</ul>..<h4>Lo
1890: 67 69 63 61 6c 20 63 6f 6e 63 6c 75 73 69 6f 6e gical conclusion
18a0: 73 3c 2f 68 34 3e 0d 0a 41 6e 79 20 74 6f 70 6f s</h4>..Any topo
18b0: 6c 6f 67 69 63 61 6c 6c 79 20 76 61 6c 69 64 20 logically valid
18c0: 3c 62 3e 4e 65 74 77 6f 72 6b 3c 2f 62 3e 20 28 <b>Network</b> (
18d0: 69 72 72 65 73 70 65 63 74 69 76 65 20 6f 66 20 irrespective of
18e0: 77 68 65 74 68 65 72 20 69 74 20 69 73 20 61 20 whether it is a
18f0: 3c 62 3e 53 70 61 74 69 61 6c 3c 2f 62 3e 20 6f <b>Spatial</b> o
1900: 72 20 3c 62 3e 4c 6f 67 69 63 61 6c 3c 2f 62 3e r <b>Logical</b>
1910: 20 74 79 70 65 29 20 69 73 20 61 20 76 61 6c 69 type) is a vali
1920: 64 20 3c 62 3e 47 72 61 70 68 3c 2f 62 3e 2e 3c d <b>Graph</b>.<
1930: 62 72 3e 0d 0a 41 20 4e 65 74 77 6f 72 6b 20 61 br>..A Network a
1940: 6c 6c 6f 77 69 6e 67 20 74 68 65 20 73 75 70 70 llowing the supp
1950: 6f 72 74 20 28 64 69 72 65 63 74 20 6f 72 20 69 ort (direct or i
1960: 6e 64 69 72 65 63 74 29 20 6f 66 20 73 6f 6d 65 ndirect) of some
1970: 20 61 70 70 72 6f 70 72 69 61 74 65 20 3c 62 3e appropriate <b>
1980: 63 6f 73 74 20 76 61 6c 75 65 3c 2f 62 3e 20 69 cost value</b> i
1990: 73 20 61 20 76 61 6c 69 64 20 3c 62 3e 57 65 69 s a valid <b>Wei
19a0: 67 68 74 65 64 20 47 72 61 70 68 3c 2f 62 3e 2c ghted Graph</b>,
19b0: 20 61 6e 64 20 63 61 6e 20 63 6f 6e 73 65 71 75 and can consequ
19c0: 65 6e 74 6c 79 20 73 75 70 70 6f 72 74 20 3c 62 ently support <b
19d0: 3e 52 6f 75 74 69 6e 67 20 61 6c 67 6f 72 69 74 >Routing algorit
19e0: 68 6d 73 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 41 6c hms</b>.<br>..Al
19f0: 6c 20 52 6f 75 74 69 6e 67 20 61 6c 67 6f 72 69 l Routing algori
1a00: 74 68 6d 73 20 61 72 65 20 69 6e 74 65 6e 64 65 thms are intende
1a10: 64 20 74 6f 20 69 64 65 6e 74 69 66 79 20 74 68 d to identify th
1a20: 65 20 3c 62 3e 53 68 6f 72 74 65 73 74 20 50 61 e <b>Shortest Pa
1a30: 74 68 3c 2f 62 3e 20 73 6f 6c 75 74 69 6f 6e 20 th</b> solution
1a40: 63 6f 6e 6e 65 63 74 69 6e 67 20 74 77 6f 20 3c connecting two <
1a50: 62 3e 4e 6f 64 65 73 3c 2f 62 3e 20 69 6e 20 61 b>Nodes</b> in a
1a60: 20 3c 62 3e 77 65 69 67 68 74 65 64 20 67 72 61 <b>weighted gra
1a70: 70 68 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f ph</b> (<i>aka</
1a80: 69 3e 20 3c 62 3e 4e 65 74 77 6f 72 6b 3c 2f 62 i> <b>Network</b
1a90: 3e 29 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 62 3e >).<br><br>..<b>
1aa0: 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3c 2f 62 3e 3a <u>Note</u></b>:
1ab0: 20 74 68 65 20 74 65 72 6d 20 3c 62 3e 3c 69 3e the term <b><i>
1ac0: 53 68 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 69 Shortest Path</i
1ad0: 3e 3c 2f 62 3e 20 63 61 6e 20 62 65 20 65 61 73 ></b> can be eas
1ae0: 69 6c 79 20 6d 69 73 75 6e 64 65 72 73 74 6f 6f ily misunderstoo
1af0: 64 2e 3c 62 72 3e 0d 0a 44 75 65 20 74 6f 20 68 d.<br>..Due to h
1b00: 69 73 74 6f 72 69 63 61 6c 20 72 65 61 73 6f 6e istorical reason
1b10: 73 20 74 68 65 20 6d 6f 73 74 20 63 6f 6d 6d 6f s the most commo
1b20: 6e 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 66 69 n application fi
1b30: 65 6c 64 20 66 6f 72 20 52 6f 75 74 69 6e 67 20 eld for Routing
1b40: 61 6c 67 6f 72 69 74 68 6d 73 20 69 73 20 72 65 algorithms is re
1b50: 6c 61 74 65 64 20 74 6f 20 3c 62 3e 52 6f 61 64 lated to <b>Road
1b60: 20 4e 65 74 77 6f 72 6b 73 3c 2f 62 3e 2c 20 62 Networks</b>, b
1b70: 75 74 20 61 6c 73 6f 20 6d 61 6e 79 20 6f 74 68 ut also many oth
1b80: 65 72 20 6b 69 6e 64 73 20 6f 66 20 4e 65 74 77 er kinds of Netw
1b90: 6f 72 6b 73 20 65 78 69 73 74 3a 0d 0a 3c 75 6c orks exist:..<ul
1ba0: 3e 0d 0a 3c 6c 69 3e 48 79 64 72 6f 67 72 61 70 >..<li>Hydrograp
1bb0: 68 69 63 20 4e 65 74 77 6f 72 6b 73 2e 3c 2f 6c hic Networks.</l
1bc0: 69 3e 0d 0a 3c 6c 69 3e 47 61 73 20 2f 20 57 61 i>..<li>Gas / Wa
1bd0: 74 65 72 20 2f 20 4f 69 6c 20 4e 65 74 77 6f 72 ter / Oil Networ
1be0: 6b 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 45 6c ks.</li>..<li>El
1bf0: 65 63 74 72 69 63 61 6c 20 4e 65 74 77 6f 72 6b ectrical Network
1c00: 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 54 65 6c s.</li>..<li>Tel
1c10: 65 63 6f 6d 75 6e 69 63 61 74 69 6f 6e 20 4e 65 ecomunication Ne
1c20: 74 77 6f 72 6b 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c tworks.</li>..<l
1c30: 69 3e 53 6f 63 69 61 6c 20 6f 72 20 45 63 6f 6e i>Social or Econ
1c40: 6f 6d 69 63 61 6c 20 4e 65 74 77 6f 72 6b 73 20 omical Networks
1c50: 72 65 70 72 65 73 65 6e 74 69 6e 67 20 72 65 6c representing rel
1c60: 61 74 69 6f 6e 73 68 69 70 73 20 62 65 74 77 65 ationships betwe
1c70: 65 6e 20 69 6e 64 69 76 69 64 75 61 6c 73 20 6f en individuals o
1c80: 72 20 63 6f 6d 70 61 6e 69 65 73 2e 3c 2f 6c 69 r companies.</li
1c90: 3e 0d 0a 3c 6c 69 3e 45 70 69 64 65 6d 69 6f 6c >..<li>Epidemiol
1ca0: 6f 67 69 63 61 6c 20 4e 65 74 77 6f 72 6b 73 20 ogical Networks
1cb0: 72 65 70 72 65 73 65 6e 74 69 6e 67 20 74 68 65 representing the
1cc0: 20 70 72 6f 70 61 67 61 74 69 6f 6e 20 6f 66 20 propagation of
1cd0: 69 6e 66 65 63 74 69 76 65 20 64 69 73 65 61 73 infective diseas
1ce0: 65 73 20 62 65 74 77 65 65 6e 20 69 6e 64 69 76 es between indiv
1cf0: 69 64 75 61 6c 73 20 6f 72 20 67 72 6f 75 70 73 iduals or groups
1d00: 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c .</li>..</ul></l
1d10: 69 3e 20 0d 0a 3c 62 72 3e 0d 0a 49 6e 20 61 6c i> ..<br>..In al
1d20: 6c 20 74 68 65 20 61 62 6f 76 65 20 63 61 73 65 l the above case
1d30: 73 20 77 65 20 63 65 72 74 61 69 6e 6c 79 20 68 s we certainly h
1d40: 61 76 65 20 76 61 6c 69 64 20 4e 65 74 77 6f 72 ave valid Networ
1d50: 6b 73 20 73 75 70 70 6f 72 74 69 6e 67 20 52 6f ks supporting Ro
1d60: 75 74 69 6e 67 20 61 6c 67 6f 72 69 74 68 6e 73 uting algorithns
1d70: 2c 20 62 75 74 20 6e 6f 74 20 61 6c 6c 20 6f 66 , but not all of
1d80: 20 74 68 65 6d 20 63 61 6e 20 69 6d 70 6c 79 20 them can imply
1d90: 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 20 61 something like a
1da0: 20 3c 69 3e 73 70 61 74 69 61 6c 20 64 69 73 74 <i>spatial dist
1db0: 61 6e 63 65 3c 2f 69 3e 20 28 3c 69 3e 67 65 6f ance</i> (<i>geo
1dc0: 6d 65 74 72 69 63 20 6c 65 6e 67 74 68 3c 2f 69 metric length</i
1dd0: 3e 29 20 6f 72 20 61 20 3c 69 3e 74 72 61 76 65 >) or a <i>trave
1de0: 6c 20 74 69 6d 65 3c 2f 69 3e 2e 3c 62 72 3e 0d l time</i>.<br>.
1df0: 0a 49 6e 20 74 68 65 20 6d 6f 73 74 20 67 65 6e .In the most gen
1e00: 65 72 61 6c 20 61 63 63 65 70 74 69 6f 6e 20 3c eral acception <
1e10: 62 3e 63 6f 73 74 73 3c 2f 62 3e 20 63 61 6e 20 b>costs</b> can
1e20: 62 65 20 72 65 70 72 65 73 65 6e 74 65 64 20 62 be represented b
1e30: 79 20 61 6e 79 20 72 65 61 73 6f 6e 61 62 6c 65 y any reasonable
1e40: 20 70 68 79 73 69 63 61 6c 20 71 75 61 6e 74 69 physical quanti
1e50: 74 79 2e 3c 62 72 3e 0d 0a 53 6f 20 61 20 6d 6f ty.<br>..So a mo
1e60: 72 65 20 67 65 6e 65 72 61 6c 69 7a 65 64 20 64 re generalized d
1e70: 65 66 69 6e 69 74 69 6f 6e 20 69 73 20 61 73 73 efinition is ass
1e80: 75 6d 69 6e 67 20 74 68 61 74 20 52 6f 75 74 69 uming that Routi
1e90: 6e 67 20 61 6c 67 6f 72 69 74 68 6d 73 20 61 72 ng algorithms ar
1ea0: 65 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 69 64 e intended to id
1eb0: 65 6e 74 69 66 79 20 3c 62 3e 6c 65 73 73 65 72 entify <b>lesser
1ec0: 20 63 6f 73 74 3c 2f 62 3e 20 73 6f 6c 75 74 69 cost</b> soluti
1ed0: 6f 6e 73 20 6f 6e 20 61 20 3c 62 3e 77 65 69 67 ons on a <b>weig
1ee0: 68 74 65 64 20 67 72 61 70 68 3c 2f 62 3e 2e 3c hted graph</b>.<
1ef0: 62 72 3e 0d 0a 54 68 65 20 65 78 61 63 74 20 69 br>..The exact i
1f00: 6e 74 65 72 70 72 65 74 61 74 69 6f 6e 20 6f 66 nterpretation of
1f10: 20 74 68 65 20 69 6e 76 6f 6c 76 65 64 20 3c 62 the involved <b
1f20: 3e 63 6f 73 74 73 3c 2f 62 3e 20 28 3c 69 3e 61 >costs</b> (<i>a
1f30: 6b 61 3c 2f 69 3e 20 3c 62 3e 77 65 69 67 68 74 ka</i> <b>weight
1f40: 73 3c 2f 62 3e 29 20 73 74 72 69 63 74 6c 79 20 s</b>) strictly
1f50: 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 76 depends on the v
1f60: 65 72 79 20 73 70 65 63 69 66 69 63 20 6e 61 74 ery specific nat
1f70: 75 72 65 20 6f 66 20 65 61 63 68 20 4e 65 74 77 ure of each Netw
1f80: 6f 72 6b 2e 0d 0a 3c 68 33 3e 54 68 65 20 44 69 ork...<h3>The Di
1f90: 6a 6b 73 74 72 61 27 73 20 61 6c 67 6f 72 69 74 jkstra's algorit
1fa0: 68 6d 3c 2f 68 33 3e 0d 0a 54 68 69 73 20 77 65 hm</h3>..This we
1fb0: 6c 6c 20 6b 6e 6f 77 6e 20 3c 61 20 68 72 65 66 ll known <a href
1fc0: 3d 22 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 6b ="https://en.wik
1fd0: 69 70 65 64 69 61 2e 6f 72 67 2f 77 69 6b 69 2f ipedia.org/wiki/
1fe0: 44 69 6a 6b 73 74 72 61 25 32 37 73 5f 61 6c 67 Dijkstra%27s_alg
1ff0: 6f 72 69 74 68 6d 22 3e 61 6c 67 6f 72 69 74 68 orithm">algorith
2000: 6d 3c 2f 61 3e 20 69 73 6e 27 74 20 6e 65 63 65 m</a> isn't nece
2010: 73 73 61 72 69 6c 79 20 74 68 65 20 66 61 73 74 ssarily the fast
2020: 65 73 74 20 6f 6e 65 2c 20 62 75 74 20 69 74 20 est one, but it
2030: 61 6c 77 61 79 73 20 65 6e 73 75 72 65 73 20 3c always ensures <
2040: 62 3e 66 75 6c 6c 20 63 6f 72 72 65 63 74 6e 65 b>full correctne
2050: 73 73 3c 2f 62 3e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c ss</b>:..<ul>..<
2060: 6c 69 3e 41 6e 79 20 4e 6f 64 65 2d 74 6f 2d 4e li>Any Node-to-N
2070: 6f 64 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 69 ode connection i
2080: 64 65 6e 74 69 66 69 65 64 20 62 79 20 44 69 6a dentified by Dij
2090: 6b 73 74 72 61 27 73 20 69 73 20 63 65 72 74 61 kstra's is certa
20a0: 69 6e 6c 79 20 65 6e 73 75 72 65 64 20 74 6f 20 inly ensured to
20b0: 62 65 20 3c 62 3e 6f 70 74 69 6d 61 6c 3c 2f 62 be <b>optimal</b
20c0: 3e 2e 3c 62 72 3e 0d 0a 49 6e 20 6f 74 68 65 72 >.<br>..In other
20d0: 20 77 6f 72 64 73 2c 20 6e 6f 20 63 6f 6e 6e 65 words, no conne
20e0: 74 63 74 69 6f 6e 20 70 72 65 73 65 6e 74 69 6e tction presentin
20f0: 67 20 61 20 6c 6f 77 65 72 20 63 6f 73 74 20 63 g a lower cost c
2100: 61 6e 20 63 6f 6e 63 65 70 74 75 61 6c 6c 79 20 an conceptually
2110: 65 78 69 73 74 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 exist.</li>..<li
2120: 3e 57 68 65 6e 20 44 69 6a 73 6a 74 72 61 27 73 >When Dijsjtra's
2130: 20 66 61 69 6c 73 20 74 6f 20 69 64 65 6e 74 69 fails to identi
2140: 66 79 20 61 20 73 6f 6c 75 74 69 6f 6e 20 74 68 fy a solution th
2150: 69 73 20 73 75 72 65 6c 79 20 6d 65 61 6e 73 20 is surely means
2160: 74 68 61 74 20 6e 6f 20 73 6f 6c 75 74 69 6f 6e that no solution
2170: 20 69 73 20 70 6f 73 73 69 62 6c 65 2e 3c 2f 6c is possible.</l
2180: 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 68 33 3e 54 i>..</ul>..<h3>T
2190: 68 65 20 41 2a 20 61 6c 67 6f 72 69 74 68 6d 3c he A* algorithm<
21a0: 2f 68 33 3e 0d 0a 4d 61 6e 79 20 61 6c 74 65 72 /h3>..Many alter
21b0: 6e 61 74 69 76 65 20 52 6f 75 74 69 6e 67 20 61 native Routing a
21c0: 6c 67 6f 72 69 74 68 6d 73 20 68 61 76 65 20 62 lgorithms have b
21d0: 65 65 6e 20 69 6e 76 65 6e 74 65 64 20 64 75 72 een invented dur
21e0: 69 6e 67 20 74 68 65 20 79 65 61 72 73 2e 3c 62 ing the years.<b
21f0: 72 3e 0d 0a 41 6c 6c 20 74 68 65 6d 20 61 72 65 r>..All them are
2200: 20 62 61 73 65 64 20 6f 6e 20 68 65 75 72 69 73 based on heuris
2210: 74 69 63 20 61 73 73 75 6d 70 74 69 6f 6e 73 20 tic assumptions
2220: 61 6e 64 20 61 72 65 20 69 6e 74 65 6e 64 65 64 and are intended
2230: 20 74 6f 20 62 65 20 66 61 73 74 65 72 20 74 68 to be faster th
2240: 61 6e 20 44 69 6a 6b 73 74 72 61 27 73 2c 20 62 an Dijkstra's, b
2250: 75 74 20 6e 6f 6e 65 20 6f 66 20 74 68 65 6d 20 ut none of them
2260: 63 61 6e 20 65 6e 73 75 72 65 20 3c 62 3e 66 75 can ensure <b>fu
2270: 6c 6c 20 63 6f 72 72 65 63 74 6e 65 73 73 3c 2f ll correctness</
2280: 62 3e 20 61 73 20 44 69 6a 6b 73 74 72 61 27 73 b> as Dijkstra's
2290: 20 64 6f 65 73 2e 3c 62 72 3e 0d 0a 54 68 65 20 does.<br>..The
22a0: 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f <a href="https:/
22b0: 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 /en.wikipedia.or
22c0: 67 2f 77 69 6b 69 2f 41 2a 5f 73 65 61 72 63 68 g/wiki/A*_search
22d0: 5f 61 6c 67 6f 72 69 74 68 6d 22 3e 41 2a 20 61 _algorithm">A* a
22e0: 6c 67 6f 72 69 74 68 6d 3c 2f 61 3e 20 61 70 70 lgorithm</a> app
22f0: 6c 69 65 73 20 61 20 6d 69 6c 64 20 68 65 75 72 lies a mild heur
2300: 69 73 74 69 63 20 6f 70 74 69 6d 69 7a 61 74 69 istic optimizati
2310: 6f 6e 2c 20 61 6e 64 20 63 61 6e 20 62 65 20 61 on, and can be a
2320: 20 72 65 61 6c 69 73 74 69 63 20 61 6c 74 65 72 realistic alter
2330: 6e 61 74 69 76 65 20 74 6f 20 44 69 6a 6b 73 74 native to Dijkst
2340: 72 61 27 73 20 69 6e 20 6d 61 6e 79 20 63 61 73 ra's in many cas
2350: 65 73 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 68 72 es.<br><br>..<hr
2360: 3e 0d 0a 3c 68 31 3e 32 20 2d 20 54 68 65 20 73 >..<h1>2 - The s
2370: 61 6d 70 6c 65 2f 74 65 73 74 20 44 42 3c 2f 68 ample/test DB</h
2380: 31 3e 0d 0a 59 6f 75 20 61 72 65 20 65 78 70 65 1>..You are expe
2390: 63 74 65 64 20 74 6f 20 66 6f 6c 6c 6f 77 20 74 cted to follow t
23a0: 68 65 20 63 75 72 72 65 6e 74 20 74 75 74 6f 72 he current tutor
23b0: 69 61 6c 20 61 62 6f 75 74 20 3c 62 3e 56 69 72 ial about <b>Vir
23c0: 74 75 61 6c 52 6f 75 74 69 6e 67 3c 2f 62 3e 20 tualRouting</b>
23d0: 62 79 20 64 69 72 65 63 74 6c 79 20 74 65 73 74 by directly test
23e0: 69 6e 67 20 61 6c 6c 20 53 51 4c 20 71 75 65 72 ing all SQL quer
23f0: 69 65 73 20 64 69 73 63 75 73 73 65 64 20 62 65 ies discussed be
2400: 6c 6f 77 20 6f 6e 20 62 65 68 61 6c 66 20 6f 66 low on behalf of
2410: 20 74 68 65 20 3c 61 20 68 72 65 66 3d 22 68 74 the <a href="ht
2420: 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 tps://www.gaia-g
2430: 69 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f is.it/gaia-sins/
2440: 72 6f 75 74 69 6e 67 2d 73 61 6d 70 6c 65 2d 35 routing-sample-5
2450: 2e 30 2e 30 2e 37 7a 22 3e 73 61 6d 70 6c 65 2f .0.0.7z">sample/
2460: 74 65 73 74 20 44 42 20 74 68 61 74 20 79 6f 75 test DB that you
2470: 20 63 61 6e 20 64 6f 77 6e 6c 6f 61 64 20 66 72 can download fr
2480: 6f 6d 20 68 65 72 65 3c 2f 61 3e 3c 62 72 3e 3c om here</a><br><
2490: 62 72 3e 0d 0a 54 68 65 20 73 61 6d 70 6c 65 20 br>..The sample
24a0: 44 42 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 DB contains the
24b0: 66 75 6c 6c 20 3c 62 3e 72 6f 61 64 20 6e 65 74 full <b>road net
24c0: 77 6f 72 6b 3c 2f 62 3e 20 6f 66 20 3c 62 3e 54 work</b> of <b>T
24d0: 75 73 63 61 6e 79 20 52 65 67 69 6f 6e 20 28 49 uscany Region (I
24e0: 74 61 6c 79 29 3c 2f 62 3e 20 28 3c 61 20 68 72 taly)</b> (<a hr
24f0: 65 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 35 30 ef="http://www50
2500: 32 2e 72 65 67 69 6f 6e 65 2e 74 6f 73 63 61 6e 2.regione.toscan
2510: 61 2e 69 74 2f 67 65 6f 73 63 6f 70 69 6f 2f 64 a.it/geoscopio/d
2520: 6f 77 6e 6c 6f 61 64 2f 67 72 61 66 6f 5f 73 74 ownload/grafo_st
2530: 72 61 64 61 6c 65 2f 69 74 65 72 6e 65 74 2e 7a radale/iternet.z
2540: 69 70 22 3e 49 74 65 72 2e 4e 65 74 20 64 61 74 ip">Iter.Net dat
2550: 61 73 65 74 3c 2f 61 3e 29 20 6b 69 6e 64 6c 79 aset</a>) kindly
2560: 20 72 65 6c 65 61 73 65 64 20 75 6e 64 65 72 20 released under
2570: 74 68 65 20 3c 62 3e 43 43 2d 42 59 2d 53 41 20 the <b>CC-BY-SA
2580: 34 2e 30 3c 2f 62 3e 20 6c 69 63 65 6e 63 65 20 4.0</b> licence
2590: 74 65 72 6d 73 2e 3c 62 72 3e 0d 0a 54 68 65 20 terms.<br>..The
25a0: 63 6f 6e 74 65 6e 74 73 20 73 74 6f 72 65 64 20 contents stored
25b0: 69 6e 74 6f 20 74 68 65 20 73 61 6d 70 6c 65 20 into the sample
25c0: 64 61 74 61 62 61 73 65 20 77 65 72 65 20 6f 70 database were op
25d0: 70 6f 72 74 75 6e 65 6c 79 20 72 65 61 72 72 61 portunely rearra
25e0: 6e 67 65 64 2c 20 61 6e 64 20 61 72 65 20 73 74 nged, and are st
25f0: 69 6c 6c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 ill subject to t
2600: 68 65 20 69 6e 69 74 69 61 6c 20 3c 62 3e 43 43 he initial <b>CC
2610: 2d 42 59 2d 53 41 20 34 2e 30 3c 2f 62 3e 20 63 -BY-SA 4.0</b> c
2620: 6c 61 75 73 65 73 20 28 3c 69 3e 64 65 72 69 76 lauses (<i>deriv
2630: 65 64 20 77 6f 72 6b 3c 2f 69 3e 29 2e 0d 0a 3c ed work</i>)...<
2640: 62 72 3e 3c 62 72 3e 0d 0a 3c 75 6c 3e 0d 0a 3c br><br>..<ul>..<
2650: 6c 69 3e 61 6c 6c 20 72 6f 61 64 20 6e 61 6d 65 li>all road name
2660: 73 20 61 72 65 20 73 74 6f 72 65 64 20 77 69 74 s are stored wit
2670: 68 69 6e 20 74 68 65 20 3c 62 3e 74 6f 70 6f 6e hin the <b>topon
2680: 79 6d 73 3c 2f 62 3e 20 54 61 62 6c 65 2e 3c 62 yms</b> Table.<b
2690: 72 3e 0d 0a 74 68 65 20 73 61 6d 65 20 72 6f 61 r>..the same roa
26a0: 64 20 6e 61 6d 65 20 63 6f 75 6c 64 20 62 65 20 d name could be
26b0: 75 73 65 64 20 69 6e 20 64 69 66 66 65 72 65 6e used in differen
26c0: 74 20 4d 75 6e 69 63 69 70 61 6c 69 74 69 65 73 t Municipalities
26d0: 2c 20 73 6f 20 74 68 65 20 3c 62 3e 74 6f 70 6f , so the <b>topo
26e0: 6e 79 6d 73 3c 2f 62 3e 20 54 61 62 6c 65 20 72 nyms</b> Table r
26f0: 65 6c 61 74 69 6f 6e 61 6c 6c 79 20 72 65 66 65 elationally refe
2700: 72 65 6e 63 65 73 20 74 68 65 20 3c 62 3e 6d 75 rences the <b>mu
2710: 6e 69 63 69 70 61 6c 69 74 69 65 73 3c 2f 62 3e nicipalities</b>
2720: 20 54 61 62 6c 65 20 28 76 69 61 20 3c 62 3e 50 Table (via <b>P
2730: 52 49 4d 41 52 59 3c 2f 62 3e 20 2f 20 3c 62 3e RIMARY</b> / <b>
2740: 46 4f 52 45 49 47 4e 20 4b 45 59 3c 2f 62 3e 20 FOREIGN KEY</b>
2750: 72 65 6c 61 74 69 6f 6e 73 68 69 70 73 29 2e 3c relationships).<
2760: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 20 3c 62 /li>..<li>the <b
2770: 3e 72 6f 61 64 73 3c 2f 62 3e 20 53 70 61 74 69 >roads</b> Spati
2780: 61 6c 20 54 61 62 6c 65 20 63 6f 6e 74 61 69 6e al Table contain
2790: 73 20 61 62 6f 75 74 20 3c 62 3e 33 38 30 2c 30 s about <b>380,0
27a0: 30 30 3c 2f 62 3e 20 4c 69 6e 6b 73 2c 20 61 6e 00</b> Links, an
27b0: 64 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 d has the follow
27c0: 69 6e 67 20 63 6f 6c 75 6d 6e 73 3a 0d 0a 3c 75 ing columns:..<u
27d0: 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 69 64 3c 2f 62 l>..<li><b>id</b
27e0: 3e 3a 20 75 6e 69 71 75 65 20 69 64 65 6e 74 69 >: unique identi
27f0: 66 69 65 72 20 6f 66 20 65 61 63 68 20 4c 69 6e fier of each Lin
2800: 6b 20 28 3c 62 3e 50 52 49 4d 41 52 59 20 4b 45 k (<b>PRIMARY KE
2810: 59 3c 2f 62 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c Y</b>).</li>..<l
2820: 69 3e 3c 62 3e 6e 6f 64 65 5f 66 72 6f 6d 3c 2f i><b>node_from</
2830: 62 3e 20 61 6e 64 20 3c 62 3e 6e 6f 64 65 5f 74 b> and <b>node_t
2840: 6f 3c 2f 62 3e 3a 20 4e 6f 64 65 20 69 64 65 6e o</b>: Node iden
2850: 74 69 66 69 65 72 73 2e 0d 0a 54 68 65 20 6f 72 tifiers...The or
2860: 69 67 69 6e 61 6c 20 49 74 65 72 2e 4e 65 74 20 iginal Iter.Net
2870: 64 61 74 61 73 65 74 20 61 64 6f 70 74 73 20 76 dataset adopts v
2880: 65 72 79 20 6c 6f 6e 67 20 61 6e 20 63 6f 6d 70 ery long an comp
2890: 6c 65 78 20 61 6c 70 68 61 6e 75 6d 65 72 69 63 lex alphanumeric
28a0: 20 4e 6f 64 65 20 63 6f 64 65 73 3b 20 74 68 65 Node codes; the
28b0: 20 69 6e 74 65 67 65 72 20 4e 6f 64 65 20 49 44 integer Node ID
28c0: 73 20 77 65 72 65 20 6f 62 74 61 69 6e 65 64 20 s were obtained
28d0: 62 79 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 3c by calling the <
28e0: 62 3e 43 72 65 61 74 65 52 6f 75 74 69 6e 67 4e b>CreateRoutingN
28f0: 6f 64 65 73 28 29 3c 2f 62 3e 20 53 51 4c 20 66 odes()</b> SQL f
2900: 75 6e 63 74 69 6f 6e 20 64 69 73 63 75 73 73 65 unction discusse
2910: 64 20 69 6e 20 61 20 66 6f 6c 6c 6f 77 69 6e 67 d in a following
2920: 20 73 65 63 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a section.</li>..
2930: 3c 6c 69 3e 3c 62 3e 69 64 5f 74 6f 70 6f 6e 79 <li><b>id_topony
2940: 6d 3c 2f 62 3e 3a 20 72 65 6c 61 74 69 6f 6e 61 m</b>: relationa
2950: 6c 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74 l reference to t
2960: 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 he corresponding
2970: 20 72 6f 61 64 20 6e 61 6d 65 20 63 6f 6e 74 61 road name conta
2980: 69 6e 65 64 20 69 6e 74 6f 20 74 68 65 20 3c 62 ined into the <b
2990: 3e 74 6f 70 6f 6e 79 6d 73 3c 2f 62 3e 20 54 61 >toponyms</b> Ta
29a0: 62 6c 65 20 28 3c 62 3e 46 4f 52 45 49 47 4e 20 ble (<b>FOREIGN
29b0: 4b 45 59 3c 2f 62 3e 29 2e 3c 2f 6c 69 3e 0d 0a KEY</b>).</li>..
29c0: 3c 6c 69 3e 3c 62 3e 73 70 65 65 64 5f 6b 6d 68 <li><b>speed_kmh
29d0: 3c 2f 62 3e 3a 20 74 68 65 20 65 73 74 69 6d 61 </b>: the estima
29e0: 74 65 64 20 61 76 65 72 61 67 65 20 73 70 65 65 ted average spee
29f0: 64 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 74 d supported by t
2a00: 68 65 20 4c 69 6e 6b 2c 20 65 78 70 72 65 73 73 he Link, express
2a10: 65 64 20 69 6e 20 3c 62 3e 6b 6d 2f 68 3c 2f 62 ed in <b>km/h</b
2a20: 3e 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c >.<br>..<u>Note<
2a30: 2f 75 3e 3a 20 3c 62 3e 6e 65 67 61 74 69 76 65 /u>: <b>negative
2a40: 3c 2f 62 3e 20 73 70 65 65 64 73 20 69 6e 74 65 </b> speeds inte
2a50: 6e 64 20 61 20 66 6f 72 62 69 64 64 65 6e 20 4c nd a forbidden L
2a60: 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c ink.</li>..<li><
2a70: 62 3e 6f 6e 65 77 61 79 5f 66 72 6f 6d 74 6f 3c b>oneway_fromto<
2a80: 2f 62 3e 20 61 6e 64 20 3c 62 3e 6f 6e 65 77 61 /b> and <b>onewa
2a90: 79 5f 74 6f 66 72 6f 6d 3c 2f 62 3e 3a 20 62 6f y_tofrom</b>: bo
2aa0: 6f 6c 65 61 6e 20 66 6c 61 67 73 20 69 6e 74 65 olean flags inte
2ab0: 6e 64 65 64 20 74 6f 20 73 74 61 74 65 20 69 66 nded to state if
2ac0: 20 61 20 4c 69 6e 6b 20 63 61 6e 20 62 65 20 74 a Link can be t
2ad0: 72 61 76 65 72 73 65 64 20 69 6e 20 62 6f 74 68 raversed in both
2ae0: 20 64 69 72 65 63 74 69 6f 6e 73 20 6f 72 20 6a directions or j
2af0: 75 73 74 20 69 6e 20 61 20 73 69 6e 67 6c 65 20 ust in a single
2b00: 64 69 72 65 63 74 69 6f 6e 20 28 3c 62 3e 6f 6e direction (<b>on
2b10: 65 2d 77 61 79 3c 2f 62 3e 29 2e 3c 62 72 3e 0d e-way</b>).<br>.
2b20: 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 61 6c .<u>Note</u>: al
2b30: 6c 20 4c 69 6e 6b 73 20 64 65 63 6c 61 72 69 6e l Links declarin
2b40: 67 20 3c 62 3e 6f 6e 65 77 61 79 5f 66 72 6f 6d g <b>oneway_from
2b50: 74 6f 3d 30 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e to=0</b> and <b>
2b60: 6f 6e 65 77 61 79 5f 74 6f 66 72 6f 6d 3d 30 3c oneway_tofrom=0<
2b70: 2f 62 3e 20 61 72 65 20 69 6e 74 65 6e 64 65 64 /b> are intended
2b80: 20 74 6f 20 62 65 20 61 6c 77 61 79 73 20 66 6f to be always fo
2b90: 72 62 69 64 64 65 6e 2e 3c 2f 6c 69 3e 0d 0a 3c rbidden.</li>..<
2ba0: 6c 69 3e 3c 62 3e 63 6f 73 74 3c 2f 62 3e 3a 20 li><b>cost</b>:
2bb0: 74 68 65 20 3c 62 3e 74 69 6d 65 3c 2f 62 3e 20 the <b>time</b>
2bc0: 65 78 70 72 65 73 73 65 64 20 69 6e 20 3c 62 3e expressed in <b>
2bd0: 73 65 63 6f 6e 64 73 3c 2f 62 3e 20 72 65 71 75 seconds</b> requ
2be0: 69 72 65 64 20 74 6f 20 74 72 61 76 65 72 73 65 ired to traverse
2bf0: 20 65 61 63 68 20 4c 69 6e 6b 2e 3c 62 72 3e 0d each Link.<br>.
2c00: 0a 3c 75 3e 4e 6f 74 65 20 23 31 3c 2f 75 3e 20 .<u>Note #1</u>
2c10: 61 6c 6c 20 63 6f 73 74 73 20 77 65 72 65 20 63 all costs were c
2c20: 61 6c 63 75 6c 61 74 65 64 20 61 63 63 6f 72 64 alculated accord
2c30: 69 6e 67 6c 79 20 74 6f 20 74 68 65 20 66 6f 6c ingly to the fol
2c40: 6c 6f 77 69 6e 67 20 66 6f 72 6d 75 6c 61 3a 20 lowing formula:
2c50: 3c 62 3e 63 6f 73 74 20 3d 20 28 28 53 54 5f 4c <b>cost = ((ST_L
2c60: 65 6e 67 74 68 28 67 65 6f 6d 29 20 2f 20 31 30 ength(geom) / 10
2c70: 30 30 2e 30 29 20 2f 20 73 70 65 65 64 5f 6b 6d 00.0) / speed_km
2c80: 68 29 20 2a 20 33 36 30 30 2e 30 3c 2f 62 3e 3c h) * 3600.0</b><
2c90: 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 32 3c br>..<u>Note #2<
2ca0: 2f 75 3e 20 61 6c 6c 20 3c 62 3e 38 36 2c 34 30 /u> all <b>86,40
2cb0: 30 2e 30 3c 2f 62 3e 20 63 6f 73 74 20 76 61 6c 0.0</b> cost val
2cc0: 75 65 73 20 28 65 71 75 69 76 61 6c 65 6e 74 20 ues (equivalent
2cd0: 74 6f 20 31 20 64 61 79 29 20 61 70 70 72 6f 78 to 1 day) approx
2ce0: 69 6d 61 74 65 20 61 6e 20 3c 62 3e 69 6e 66 69 imate an <b>infi
2cf0: 6e 69 74 69 76 65 20 63 6f 73 74 3c 2f 62 3e 20 nitive cost</b>
2d00: 74 68 75 73 20 69 6e 74 65 6e 64 69 6e 67 20 61 thus intending a
2d10: 20 3c 62 3e 66 6f 72 62 69 64 64 65 6e 3c 2f 62 <b>forbidden</b
2d20: 3e 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 6c > Link.</li>..<l
2d30: 69 3e 3c 62 3e 67 65 6f 6d 3c 2f 62 3e 3a 20 61 i><b>geom</b>: a
2d40: 20 3c 62 3e 33 44 20 4c 69 6e 65 73 74 72 69 6e <b>3D Linestrin
2d50: 67 3c 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 69 g</b> representi
2d60: 6e 67 20 74 68 65 20 47 65 6f 6d 65 74 72 79 20 ng the Geometry
2d70: 6f 66 20 65 61 63 68 20 4c 69 6e 6b 2e 3c 62 72 of each Link.<br
2d80: 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 >..<u>Note</u>:
2d90: 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 3c 62 3e the original <b>
2da0: 49 74 65 72 2e 4e 65 74 3c 2f 62 3e 20 64 61 74 Iter.Net</b> dat
2db0: 61 73 65 74 20 69 73 20 6a 75 73 74 20 3c 62 3e aset is just <b>
2dc0: 32 44 3c 2f 62 3e 3b 20 65 6c 65 76 61 74 69 6f 2D</b>; elevatio
2dd0: 6e 73 20 28 3c 62 3e 5a 3c 2f 62 3e 20 63 6f 6f ns (<b>Z</b> coo
2de0: 72 64 69 6e 61 74 65 73 29 20 77 65 72 65 20 69 rdinates) were i
2df0: 6e 74 65 72 70 6f 6c 61 74 65 64 20 62 79 20 64 nterpolated by d
2e00: 72 61 70 69 6e 67 20 74 68 65 20 64 61 74 61 73 raping the datas
2e10: 65 74 20 6f 76 65 72 20 61 6e 20 3c 61 20 68 72 et over an <a hr
2e20: 65 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 35 30 ef="http://www50
2e30: 32 2e 72 65 67 69 6f 6e 65 2e 74 6f 73 63 61 6e 2.regione.toscan
2e40: 61 2e 69 74 2f 67 65 6f 73 63 6f 70 69 6f 2f 64 a.it/geoscopio/d
2e50: 6f 77 6e 6c 6f 61 64 2f 61 6c 74 69 6d 65 74 72 ownload/altimetr
2e60: 69 61 2f 64 61 5f 63 74 72 31 30 6b 2f 67 62 2f ia/da_ctr10k/gb/
2e70: 44 54 4d 5f 4f 72 6f 67 72 61 66 69 63 6f 2e 37 DTM_Orografico.7
2e80: 7a 22 3e 6f 72 6f 67 72 61 70 68 69 63 20 44 45 z">orographic DE
2e90: 4d 20 28 31 30 6d 20 58 20 31 30 6d 20 63 65 6c M (10m X 10m cel
2ea0: 6c 73 29 3c 2f 61 3e 3c 2f 6c 69 3e 0d 0a 3c 2f ls)</a></li>..</
2eb0: 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 ul></li>..<li>th
2ec0: 65 20 3c 62 3e 72 6f 61 64 73 5f 76 77 3c 2f 62 e <b>roads_vw</b
2ed0: 3e 20 53 70 61 74 69 61 6c 20 56 69 65 77 20 69 > Spatial View i
2ee0: 73 20 6a 75 73 74 20 69 6e 74 65 6e 64 65 64 20 s just intended
2ef0: 74 6f 20 66 75 6c 6c 79 20 72 65 73 6f 6c 76 65 to fully resolve
2f00: 20 61 6c 6c 20 72 65 6c 61 74 69 6f 6e 61 6c 20 all relational
2f10: 72 65 66 65 72 65 6e 63 65 73 20 62 65 74 77 65 references betwe
2f20: 65 6e 20 3c 62 3e 72 6f 61 64 73 3c 2f 62 3e 2c en <b>roads</b>,
2f30: 20 3c 62 3e 74 6f 70 6f 6e 79 6d 73 3c 2f 62 3e <b>toponyms</b>
2f40: 20 61 6e 64 20 3c 62 3e 6d 75 6e 69 63 69 70 61 and <b>municipa
2f50: 6c 69 74 69 65 73 3c 2f 62 3e 2c 20 74 68 75 73 lities</b>, thus
2f60: 20 61 6c 6c 6f 77 69 6e 67 20 66 6f 72 20 65 61 allowing for ea
2f70: 73 69 65 72 20 53 51 4c 20 71 75 65 72 69 65 73 sier SQL queries
2f80: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 20 .</li>..<li>the
2f90: 3c 62 3e 68 6f 75 73 65 5f 6e 72 3c 2f 62 3e 20 <b>house_nr</b>
2fa0: 53 70 61 74 69 61 6c 20 54 61 62 6c 65 20 63 6f Spatial Table co
2fb0: 6e 74 61 69 6e 73 20 61 62 6f 75 74 20 3c 62 3e ntains about <b>
2fc0: 31 2c 34 38 30 2c 30 30 30 3c 2f 62 3e 20 48 6f 1,480,000</b> Ho
2fd0: 75 73 65 20 4e 75 6d 62 65 72 73 2c 20 61 6e 64 use Numbers, and
2fe0: 20 68 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 has the followi
2ff0: 6e 67 20 63 6f 6c 75 6d 6e 73 3a 0d 0a 3c 75 6c ng columns:..<ul
3000: 3e 0d 0a 3c 6c 69 3e 3c 62 3e 69 64 3c 2f 62 3e >..<li><b>id</b>
3010: 3a 20 75 6e 69 71 75 65 20 69 64 65 6e 74 69 66 : unique identif
3020: 69 65 72 20 6f 66 20 65 61 63 68 20 48 6f 75 73 ier of each Hous
3030: 65 20 4e 75 6d 62 65 72 20 28 3c 62 3e 50 52 49 e Number (<b>PRI
3040: 4d 41 52 59 20 4b 45 59 3c 2f 62 3e 29 2e 3c 2f MARY KEY</b>).</
3050: 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 69 64 5f 72 li>..<li><b>id_r
3060: 6f 61 64 3c 2f 62 3e 3a 20 72 65 6c 61 74 69 6f oad</b>: relatio
3070: 6e 61 6c 20 72 65 66 65 72 65 6e 63 65 20 74 6f nal reference to
3080: 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 the correspondi
3090: 6e 67 20 4c 69 6e 6b 20 63 6f 6e 74 61 69 6e 65 ng Link containe
30a0: 64 20 69 6e 74 6f 20 74 68 65 20 3c 62 3e 72 6f d into the <b>ro
30b0: 61 64 73 3c 2f 62 3e 20 54 61 62 6c 65 20 28 3c ads</b> Table (<
30c0: 62 3e 46 4f 52 45 49 47 4e 20 4b 45 59 3c 2f 62 b>FOREIGN KEY</b
30d0: 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 >).</li>..<li><b
30e0: 3e 6c 61 62 65 6c 3c 2f 62 3e 3a 20 74 68 65 20 >label</b>: the
30f0: 74 65 78 74 75 61 6c 20 6c 61 62 65 6c 20 66 75 textual label fu
3100: 6c 6c 79 20 71 75 61 6c 69 66 79 69 6e 67 20 65 lly qualifying e
3110: 61 63 68 20 48 6f 75 73 65 20 4e 75 6d 62 65 72 ach House Number
3120: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 67 .</li>..<li><b>g
3130: 65 6f 6d 3c 2f 62 3e 3a 20 61 20 3c 62 3e 33 44 eom</b>: a <b>3D
3140: 20 50 6f 69 6e 74 3c 2f 62 3e 20 72 65 70 72 65 Point</b> repre
3150: 73 65 6e 74 69 6e 67 20 74 68 65 20 47 65 6f 6d senting the Geom
3160: 65 74 72 79 20 6f 66 20 65 61 63 68 20 48 6f 75 etry of each Hou
3170: 73 65 20 4e 75 6d 62 65 72 2e 3c 62 72 3e 0d 0a se Number.<br>..
3180: 3c 75 3e 4e 6f 74 65 20 23 31 3c 2f 75 3e 3a 20 <u>Note #1</u>:
3190: 61 6c 73 6f 20 69 6e 20 74 68 69 73 20 63 61 73 also in this cas
31a0: 65 20 61 6c 6c 20 65 6c 65 76 61 74 69 6f 6e 73 e all elevations
31b0: 20 28 3c 62 3e 5a 3c 2f 62 3e 20 63 6f 6f 72 64 (<b>Z</b> coord
31c0: 69 6e 61 74 65 73 29 20 77 65 72 65 20 69 6e 74 inates) were int
31d0: 65 72 70 6f 6c 61 74 65 64 20 62 79 20 64 72 61 erpolated by dra
31e0: 70 69 6e 67 20 74 68 65 20 64 61 74 61 73 65 74 ping the dataset
31f0: 20 6f 76 65 72 20 74 68 65 20 73 61 6d 65 20 44 over the same D
3200: 45 4d 20 61 73 20 61 62 6f 76 65 2e 3c 62 72 3e EM as above.<br>
3210: 0d 0a 3c 75 3e 4e 6f 74 65 20 23 32 3c 2f 75 3e ..<u>Note #2</u>
3220: 3a 20 73 74 72 69 63 74 6c 79 20 73 70 65 63 6b : strictly speck
3230: 69 6e 67 20 74 68 65 20 48 6f 75 73 65 20 4e 75 ing the House Nu
3240: 6d 62 65 72 73 20 61 72 65 20 6e 6f 74 20 70 61 mbers are not pa
3250: 72 74 20 6f 66 20 74 68 65 20 52 6f 61 64 20 4e rt of the Road N
3260: 65 74 77 6f 72 6b 3b 20 74 68 65 79 20 61 72 65 etwork; they are
3270: 20 69 6e 63 6c 75 64 65 20 69 6e 74 6f 20 74 68 include into th
3280: 65 20 73 61 6d 70 6c 65 2f 74 65 73 74 20 64 61 e sample/test da
3290: 74 61 62 61 73 65 20 6a 75 73 74 20 62 65 63 61 tabase just beca
32a0: 75 73 65 20 74 68 65 79 27 6c 6c 20 62 65 20 75 use they'll be u
32b0: 73 65 66 75 6c 20 69 6e 20 73 6f 6d 65 20 6f 66 seful in some of
32c0: 20 74 68 65 20 65 78 61 6d 70 6c 65 73 20 65 78 the examples ex
32d0: 70 6c 61 69 6e 65 64 20 69 6e 20 62 65 6c 6f 77 plained in below
32e0: 20 70 61 72 61 67 72 61 70 68 73 2e 3c 2f 6c 69 paragraphs.</li
32f0: 3e 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c >..</ul></li>..<
3300: 6c 69 3e 74 68 65 20 3c 62 3e 68 6f 75 73 65 5f li>the <b>house_
3310: 6e 72 5f 76 77 3c 2f 62 3e 20 53 70 61 74 69 61 nr_vw</b> Spatia
3320: 6c 20 56 69 65 77 20 69 73 20 6a 75 73 74 20 69 l View is just i
3330: 6e 74 65 6e 64 65 64 20 74 6f 20 66 75 6c 6c 79 ntended to fully
3340: 20 72 65 73 6f 6c 76 65 20 61 6c 6c 20 72 65 6c resolve all rel
3350: 61 74 69 6f 6e 61 6c 20 72 65 66 65 72 65 6e 63 ational referenc
3360: 65 73 20 62 65 74 77 65 65 6e 20 3c 62 3e 68 6f es between <b>ho
3370: 75 73 65 5f 6e 72 3c 2f 62 3e 2c 20 3c 62 3e 72 use_nr</b>, <b>r
3380: 6f 61 64 73 3c 2f 62 3e 2c 20 3c 62 3e 74 6f 70 oads</b>, <b>top
3390: 6f 6e 79 6d 73 3c 2f 62 3e 20 61 6e 64 20 3c 62 onyms</b> and <b
33a0: 3e 6d 75 6e 69 63 69 70 61 6c 69 74 69 65 73 3c >municipalities<
33b0: 2f 62 3e 2c 20 74 68 75 73 20 61 6c 6c 6f 77 69 /b>, thus allowi
33c0: 6e 67 20 66 6f 72 20 65 61 73 69 65 72 20 53 51 ng for easier SQ
33d0: 4c 20 71 75 65 72 69 65 73 2e 3c 2f 6c 69 3e 0d L queries.</li>.
33e0: 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a 20 3c .</ul>..<br>.. <
33f0: 68 72 3e 0d 0a 3c 68 31 3e 3c 61 20 6e 61 6d 65 hr>..<h1><a name
3400: 3d 22 63 72 65 61 74 65 22 3e 33 20 2d 20 43 72 ="create">3 - Cr
3410: 65 61 74 69 6e 67 20 56 69 72 74 75 61 6c 52 6f eating VirtualRo
3420: 75 74 69 6e 67 20 54 61 62 6c 65 73 3c 2f 61 3e uting Tables</a>
3430: 3c 2f 68 31 3e 0d 0a 41 6c 6c 20 56 69 72 74 75 </h1>..All Virtu
3440: 61 6c 52 6f 75 74 69 6e 67 20 71 75 65 72 69 65 alRouting querie
3450: 73 20 61 72 65 20 62 61 73 65 64 20 6f 6e 20 73 s are based on s
3460: 6f 6d 65 20 3c 62 3e 56 69 72 74 75 61 6c 52 6f ome <b>VirtualRo
3470: 75 74 69 6e 67 20 54 61 62 6c 65 3c 2f 62 3e 2c uting Table</b>,
3480: 20 61 6e 64 20 69 6e 20 74 75 72 6e 20 61 6e 79 and in turn any
3490: 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 VirtualRouting
34a0: 54 61 62 6c 65 20 69 73 20 62 61 73 65 64 20 6f Table is based o
34b0: 6e 20 73 6f 6d 65 20 61 70 70 72 6f 70 72 69 61 n some appropria
34c0: 74 65 20 3c 62 3e 42 69 6e 61 72 79 20 44 61 74 te <b>Binary Dat
34d0: 61 20 54 61 62 6c 65 3c 2f 62 3e 20 73 75 70 70 a Table</b> supp
34e0: 6f 72 74 69 6e 67 20 61 6e 20 65 66 66 69 63 69 orting an effici
34f0: 65 6e 74 20 72 65 70 72 65 73 65 6e 74 61 74 69 ent representati
3500: 6f 6e 20 6f 66 20 74 68 65 20 75 6e 64 65 72 6c on of the underl
3510: 79 69 6e 67 20 4e 65 74 77 6f 72 6b 2e 3c 62 72 ying Network.<br
3520: 3e 0d 0a 53 6f 20 77 65 27 6c 6c 20 73 74 61 72 >..So we'll star
3530: 74 20 66 69 72 73 74 20 62 79 20 63 72 65 61 74 t first by creat
3540: 69 6e 67 20 73 75 63 68 20 74 61 62 6c 65 73 2e ing such tables.
3550: 3c 62 72 3e 3c 62 72 3e 0d 0a 54 68 65 20 6f 6c <br><br>..The ol
3560: 64 20 61 6e 64 20 6e 6f 77 20 73 75 70 65 72 73 d and now supers
3570: 65 64 65 64 20 3c 62 3e 56 69 72 74 75 61 6c 4e eded <b>VirtualN
3580: 65 74 77 6f 72 6b 3c 2f 62 3e 20 72 65 71 75 69 etwork</b> requi
3590: 72 65 64 20 75 73 69 6e 67 20 61 20 73 65 70 61 red using a sepa
35a0: 72 61 74 65 20 43 4c 49 20 74 6f 6f 6c 20 28 3c rate CLI tool (<
35b0: 62 3e 73 70 61 74 69 61 6c 69 74 65 5f 6e 65 74 b>spatialite_net
35c0: 77 6f 72 6b 3c 2f 62 3e 29 20 69 6e 20 6f 72 64 work</b>) in ord
35d0: 65 72 20 74 6f 20 70 72 6f 70 65 72 6c 79 20 69 er to properly i
35e0: 6e 69 74 69 61 6c 69 7a 65 20 61 20 56 69 72 74 nitialize a Virt
35f0: 75 61 6c 4e 65 74 77 6f 72 6b 20 54 61 62 6c 65 ualNetwork Table
3600: 20 61 6e 64 20 69 74 73 20 63 6f 6d 70 61 6e 69 and its compani
3610: 6f 6e 20 42 69 6e 61 72 79 20 44 61 74 61 20 54 on Binary Data T
3620: 61 62 6c 65 3b 0d 0a 61 6c 74 65 72 6e 61 74 69 able;..alternati
3630: 76 65 6c 79 20 3c 62 3e 73 70 61 74 69 61 6c 69 vely <b>spatiali
3640: 74 65 5f 67 75 69 3c 2f 62 3e 20 73 75 70 70 6f te_gui</b> suppo
3650: 72 74 65 64 20 61 20 3c 62 3e 47 55 49 20 77 69 rted a <b>GUI wi
3660: 7a 61 72 64 3c 2f 62 3e 20 66 6f 72 20 74 68 65 zard</b> for the
3670: 20 73 61 6d 65 20 74 61 73 6b 2e 20 53 69 6e 63 same task. Sinc
3680: 65 20 76 65 72 73 69 6f 6e 20 3c 62 3e 35 2e 30 e version <b>5.0
3690: 2e 30 3c 2f 62 3e 20 6e 6f 77 20 53 70 61 74 69 .0</b> now Spati
36a0: 61 4c 69 74 65 20 64 69 72 65 63 74 6c 79 20 73 aLite directly s
36b0: 75 70 70 6f 72 74 73 20 61 20 73 70 65 63 69 66 upports a specif
36c0: 69 63 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 ic <b>CreateRout
36d0: 69 6e 67 28 29 3c 2f 62 3e 20 53 51 4c 20 66 75 ing()</b> SQL fu
36e0: 6e 63 74 69 6f 6e 2e 0d 0a 3c 76 65 72 62 61 74 nction...<verbat
36f0: 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 43 72 65 61 im>..SELECT Crea
3700: 74 65 52 6f 75 74 69 6e 67 28 27 62 79 66 6f 6f teRouting('byfoo
3710: 74 5f 64 61 74 61 27 2c 20 27 62 79 66 6f 6f 74 t_data', 'byfoot
3720: 27 2c 20 27 72 6f 61 64 73 5f 76 77 27 2c 20 27 ', 'roads_vw', '
3730: 6e 6f 64 65 5f 66 72 6f 6d 27 2c 20 27 6e 6f 64 node_from', 'nod
3740: 65 74 6f 27 2c 20 27 67 65 6f 6d 27 2c 20 4e 55 eto', 'geom', NU
3750: 4c 4c 29 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 43 LL);....SELECT C
3760: 72 65 61 74 65 52 6f 75 74 69 6e 67 5f 47 65 74 reateRouting_Get
3770: 4c 61 73 74 45 72 72 6f 72 28 29 3b 0d 0a 2d 2d LastError();..--
3780: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3790: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
37a0: 2d 2d 0d 0a 54 6f 4e 6f 64 65 20 43 6f 6c 75 6d --..ToNode Colum
37b0: 6e 20 22 6e 6f 64 65 74 6f 22 20 69 73 20 6e 6f n "nodeto" is no
37c0: 74 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68 65 t defined in the
37d0: 20 49 6e 70 75 74 20 54 61 62 6c 65 0d 0a 3c 2f Input Table..</
37e0: 76 65 72 62 61 74 69 6d 3e 0d 0a 3c 75 3e 4e 6f verbatim>..<u>No
37f0: 74 65 3c 2f 75 3e 3a 20 74 68 69 73 20 66 69 72 te</u>: this fir
3800: 73 74 20 71 75 65 72 79 20 28 62 61 73 65 64 20 st query (based
3810: 6f 6e 20 74 68 65 20 3c 69 3e 72 65 64 75 63 65 on the <i>reduce
3820: 64 20 66 6f 72 6d 3c 2f 69 3e 20 6f 66 20 3c 62 d form</i> of <b
3830: 3e 43 72 65 61 74 65 52 6f 75 74 69 6e 67 3c 2f >CreateRouting</
3840: 62 3e 29 20 63 6f 6e 74 61 69 6e 73 20 61 6e 20 b>) contains an
3850: 69 6e 74 65 6e 64 65 64 20 65 72 72 6f 72 20 63 intended error c
3860: 61 75 73 69 6e 67 20 61 20 66 61 69 6c 75 72 65 ausing a failure
3870: 20 61 6e 64 20 74 68 75 73 20 72 61 69 73 69 6e and thus raisin
3880: 67 20 61 6e 20 65 78 63 65 70 74 69 6f 6e 2e 3c g an exception.<
3890: 62 72 3e 0d 0a 43 72 65 61 74 65 52 6f 75 74 69 br>..CreateRouti
38a0: 6e 67 28 29 20 63 61 6e 20 66 61 69 6c 20 66 6f ng() can fail fo
38b0: 72 20 6d 75 6c 74 69 70 6c 65 20 72 65 61 73 6f r multiple reaso
38c0: 6e 73 2c 20 61 6e 64 20 62 79 20 63 61 6c 6c 69 ns, and by calli
38d0: 6e 67 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 ng <b>CreateRout
38e0: 69 6e 67 5f 47 65 74 4c 61 73 74 45 72 72 6f 72 ing_GetLastError
38f0: 28 29 3c 2f 62 3e 20 79 6f 75 20 63 61 6e 20 65 ()</b> you can e
3900: 61 73 69 6c 79 20 69 64 65 6e 74 69 66 79 20 74 asily identify t
3910: 68 65 20 65 78 61 63 74 20 72 65 61 73 6f 6e 20 he exact reason
3920: 77 68 79 20 74 68 65 20 6d 6f 73 74 20 72 65 63 why the most rec
3930: 65 6e 74 20 63 61 6c 6c 20 74 6f 20 43 72 65 61 ent call to Crea
3940: 74 65 52 6f 75 74 69 6e 67 28 29 20 66 61 69 6c teRouting() fail
3950: 65 64 2e 3c 62 72 3e 0d 0a 3c 76 65 72 62 61 74 ed.<br>..<verbat
3960: 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 43 72 65 61 im>..SELECT Crea
3970: 74 65 52 6f 75 74 69 6e 67 28 27 62 79 66 6f 6f teRouting('byfoo
3980: 74 5f 64 61 74 61 27 2c 20 27 62 79 66 6f 6f 74 t_data', 'byfoot
3990: 27 2c 20 27 72 6f 61 64 73 5f 76 77 27 2c 20 27 ', 'roads_vw', '
39a0: 6e 6f 64 65 5f 66 72 6f 6d 27 2c 20 27 6e 6f 64 node_from', 'nod
39b0: 65 5f 74 6f 27 2c 20 27 67 65 6f 6d 27 2c 20 4e e_to', 'geom', N
39c0: 55 4c 4c 2c 20 27 74 6f 70 6f 6e 79 6d 27 2c 20 ULL, 'toponym',
39d0: 31 2c 20 31 29 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 1, 1);..--------
39e0: 2d 2d 2d 2d 2d 0d 0a 31 0d 0a 0d 0a 53 45 4c 45 -----..1....SELE
39f0: 43 54 20 43 72 65 61 74 65 52 6f 75 74 69 6e 67 CT CreateRouting
3a00: 5f 47 65 74 4c 61 73 74 45 72 72 6f 72 28 29 3b _GetLastError();
3a10: 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ..--------------
3a20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
3a30: 2d 2d 2d 2d 2d 2d 0d 0a 4e 55 4c 4c 0d 0a 3c 2f ------..NULL..</
3a40: 76 65 72 62 61 74 69 6d 3e 0d 0a 54 68 69 73 20 verbatim>..This
3a50: 73 65 63 6f 6e 64 20 61 74 74 65 6d 70 74 20 69 second attempt i
3a60: 73 20 66 69 6e 61 6c 6c 79 20 73 75 63 63 65 73 s finally succes
3a70: 73 66 75 6c 2c 20 61 6e 64 20 6e 6f 77 20 43 72 sful, and now Cr
3a80: 65 61 74 65 52 6f 75 74 69 6e 67 28 29 20 72 65 eateRouting() re
3a90: 74 75 72 6e 73 20 3c 62 3e 31 3c 2f 62 3e 20 28 turns <b>1</b> (
3aa0: 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 54 52 <i>aka</i> <b>TR
3ab0: 55 45 3c 2f 62 3e 29 2c 20 61 6e 64 20 61 73 20 UE</b>), and as
3ac0: 79 6f 75 20 63 61 6e 20 65 61 73 69 6c 79 20 63 you can easily c
3ad0: 68 65 63 6b 20 6e 6f 77 20 74 68 65 20 44 61 74 heck now the Dat
3ae0: 61 62 61 73 65 20 63 6f 6e 74 61 69 6e 73 20 74 abase contains t
3af0: 77 6f 20 6e 65 77 20 54 61 62 6c 65 73 3a 20 3c wo new Tables: <
3b00: 62 3e 62 79 66 6f 6f 74 3c 2f 62 3e 20 61 6e 64 b>byfoot</b> and
3b10: 20 3c 62 3e 62 79 66 6f 6f 74 5f 64 61 74 61 3c <b>byfoot_data<
3b20: 2f 62 3e 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 /b>.<br>..<u>Not
3b30: 65 3c 2f 75 3e 3a 20 61 66 74 65 72 20 61 20 73 e</u>: after a s
3b40: 75 63 63 65 73 73 66 75 6c 20 63 61 6c 6c 20 74 uccessful call t
3b50: 6f 20 43 72 65 61 74 65 52 6f 75 74 69 6e 67 28 o CreateRouting(
3b60: 29 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 69 ) <b>CreateRouti
3b70: 6e 67 5f 47 65 74 4c 61 73 74 45 72 72 6f 72 28 ng_GetLastError(
3b80: 29 3c 2f 62 3e 20 77 69 6c 6c 20 61 6c 77 61 79 )</b> will alway
3b90: 73 20 72 65 74 75 72 6e 20 3c 62 3e 4e 55 4c 4c s return <b>NULL
3ba0: 3c 2f 62 3e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 59 </b>.<br><br>..Y
3bb0: 6f 75 27 76 65 20 6a 75 73 74 20 75 73 65 64 20 ou've just used
3bc0: 6f 6e 65 20 6f 66 20 74 68 65 20 3c 69 3e 70 61 one of the <i>pa
3bd0: 72 74 69 61 6c 6c 79 20 72 65 64 75 63 65 64 20 rtially reduced
3be0: 66 6f 72 6d 3c 2f 69 3e 20 6f 66 20 43 72 65 61 form</i> of Crea
3bf0: 74 65 52 6f 75 74 69 6e 67 28 29 3b 20 6c 65 74 teRouting(); let
3c00: 27 73 20 73 65 65 20 69 6e 20 6d 6f 72 65 20 64 's see in more d
3c10: 65 70 74 68 20 61 6c 6c 20 74 68 65 20 61 72 67 epth all the arg
3c20: 75 6d 65 6e 74 73 20 61 6e 64 20 74 68 65 69 72 uments and their
3c30: 20 6d 65 61 6e 69 6e 67 3a 0d 0a 3c 6f 6c 3e 0d meaning:..<ol>.
3c40: 0a 3c 6c 69 3e 3c 69 3e 62 79 66 6f 6f 74 5f 64 .<li><i>byfoot_d
3c50: 61 74 61 3c 2f 69 3e 3a 20 74 68 65 20 6e 61 6d ata</i>: the nam
3c60: 65 20 6f 66 20 74 68 65 20 4e 65 74 77 6f 72 6b e of the Network
3c70: 20 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 62 Binary Data Tab
3c80: 6c 65 20 74 6f 20 62 65 20 63 72 65 61 74 65 64 le to be created
3c90: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 62 .</li>..<li><i>b
3ca0: 79 66 6f 6f 74 3c 2f 69 3e 3a 20 74 68 65 20 6e yfoot</i>: the n
3cb0: 61 6d 65 20 6f 66 20 74 68 65 20 56 69 72 74 75 ame of the Virtu
3cc0: 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 alRouting Table
3cd0: 74 6f 20 62 65 20 63 72 65 61 74 65 64 2e 3c 2f to be created.</
3ce0: 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 72 6f 61 64 li>..<li><i>road
3cf0: 73 5f 76 77 3c 2f 69 3e 3a 20 74 68 65 20 6e 61 s_vw</i>: the na
3d00: 6d 65 20 6f 66 20 74 68 65 20 3c 62 3e 53 70 61 me of the <b>Spa
3d10: 74 69 61 6c 20 54 61 62 6c 65 3c 2f 62 3e 20 6f tial Table</b> o
3d20: 72 20 3c 62 3e 53 70 61 74 69 61 6c 20 56 69 65 r <b>Spatial Vie
3d30: 77 3c 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 69 w</b> representi
3d40: 6e 67 20 74 68 65 20 75 6e 64 65 72 6c 79 69 6e ng the underlyin
3d50: 67 20 4e 65 74 77 6f 72 6b 2e 3c 62 72 3e 0d 0a g Network.<br>..
3d60: 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 69 6e 20 <u>Note</u>: in
3d70: 74 68 69 73 20 63 61 73 65 20 77 65 20 61 63 74 this case we act
3d80: 75 61 6c 6c 79 20 75 73 65 64 20 61 20 53 70 61 ually used a Spa
3d90: 74 69 61 6c 20 56 69 65 77 2e 3c 2f 6c 69 3e 0d tial View.</li>.
3da0: 0a 3c 6c 69 3e 3c 69 3e 6e 6f 64 65 5f 66 72 6f .<li><i>node_fro
3db0: 6d 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 74 m</i>: name of t
3dc0: 68 65 20 63 6f 6c 75 6d 6e 20 28 69 6e 20 74 68 he column (in th
3dd0: 65 20 61 62 6f 76 65 20 54 61 62 6c 65 20 6f 72 e above Table or
3de0: 20 56 69 65 77 29 20 65 78 70 65 63 74 65 64 20 View) expected
3df0: 74 6f 20 63 6f 6e 74 61 69 6e 20 3c 62 3e 6e 6f to contain <b>no
3e00: 64 65 2d 66 72 6f 6d 3c 2f 62 3e 20 76 61 6c 75 de-from</b> valu
3e10: 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 es.</li>..<li><i
3e20: 3e 6e 6f 64 65 5f 74 6f 3c 2f 69 3e 3a 20 6e 61 >node_to</i>: na
3e30: 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d 6e me of the column
3e40: 20 28 69 6e 20 74 68 65 20 61 62 6f 76 65 20 54 (in the above T
3e50: 61 62 6c 65 20 6f 72 20 56 69 65 77 29 20 65 78 able or View) ex
3e60: 70 65 63 74 65 64 20 74 6f 20 63 6f 6e 74 61 69 pected to contai
3e70: 6e 20 3c 62 3e 6e 6f 64 65 2d 74 6f 3c 2f 62 3e n <b>node-to</b>
3e80: 20 76 61 6c 75 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c values.</li>..<
3e90: 6c 69 3e 3c 69 3e 67 65 6f 6d 3c 2f 69 3e 3a 20 li><i>geom</i>:
3ea0: 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 name of the colu
3eb0: 6d 6e 20 28 69 6e 20 74 68 65 20 61 62 6f 76 65 mn (in the above
3ec0: 20 54 61 62 6c 65 20 6f 72 20 56 69 65 77 29 20 Table or View)
3ed0: 65 78 70 65 63 74 65 64 20 74 6f 20 63 6f 6e 74 expected to cont
3ee0: 61 69 6e 20 3c 62 3e 4c 69 6e 65 73 74 72 69 6e ain <b>Linestrin
3ef0: 67 73 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 57 65 20 gs</b>.<br>..We
3f00: 63 6f 75 6c 64 20 68 61 76 65 20 6c 65 67 69 74 could have legit
3f10: 69 6d 61 74 65 6c 79 20 70 61 73 73 65 64 20 61 imately passed a
3f20: 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 76 61 6c <b>NULL</b> val
3f30: 75 65 20 66 6f 72 20 74 68 69 73 20 61 72 67 75 ue for this argu
3f40: 6d 65 6e 74 20 69 6e 20 74 68 65 20 63 61 73 65 ment in the case
3f50: 20 6f 66 20 61 20 3c 62 3e 4c 6f 67 69 63 61 6c of a <b>Logical
3f60: 20 4e 65 74 77 6f 72 6b 3c 2f 62 3e 2e 3c 2f 6c Network</b>.</l
3f70: 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 4e 55 4c 4c 3c i>..<li><i>NULL<
3f80: 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 20 74 68 65 /i>: name of the
3f90: 20 63 6f 6c 75 6d 6e 20 28 69 6e 20 74 68 65 20 column (in the
3fa0: 61 62 6f 76 65 20 54 61 62 6c 65 20 6f 72 20 56 above Table or V
3fb0: 69 65 77 29 20 65 78 70 65 63 74 65 64 20 74 6f iew) expected to
3fc0: 20 63 6f 6e 74 61 69 6e 20 3c 62 3e 63 6f 73 74 contain <b>cost
3fd0: 3c 2f 62 3e 20 76 61 6c 75 65 73 2e 3c 62 72 3e </b> values.<br>
3fe0: 0d 0a 49 6e 20 74 68 69 73 20 63 61 73 65 20 77 ..In this case w
3ff0: 65 20 68 61 76 65 20 70 61 73 73 65 64 20 61 20 e have passed a
4000: 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 76 61 6c 75 <b>NULL</b> valu
4010: 65 2c 20 61 6e 64 20 63 6f 6e 73 65 71 75 65 6e e, and consequen
4020: 74 6c 79 20 74 68 65 20 3c 62 3e 63 6f 73 74 3c tly the <b>cost<
4030: 2f 62 3e 20 6f 66 20 65 61 63 68 20 4c 69 6e 6b /b> of each Link
4040: 20 77 69 6c 6c 20 62 65 20 61 73 73 75 6d 65 64 will be assumed
4050: 20 74 6f 20 62 65 20 72 65 70 72 65 73 65 6e 74 to be represent
4060: 65 64 20 62 79 20 74 68 65 20 3c 62 3e 67 65 6f ed by the <b>geo
4070: 6d 65 74 72 69 63 20 6c 65 6e 67 74 68 3c 2f 62 metric length</b
4080: 3e 20 6f 66 20 74 68 65 20 63 6f 72 72 65 73 70 > of the corresp
4090: 6f 6e 64 69 6e 67 20 4c 69 6e 65 73 74 72 69 6e onding Linestrin
40a0: 67 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 g.<br>..<u>Note
40b0: 23 31 3c 2f 75 3e 3a 20 69 6e 20 74 68 65 20 63 #1</u>: in the c
40c0: 61 73 65 20 6f 66 20 4e 65 74 77 6f 72 6b 73 20 ase of Networks
40d0: 62 61 73 65 64 20 6f 6e 20 3c 62 3e 6c 6f 6e 67 based on <b>long
40e0: 69 74 75 64 65 73 3c 2f 62 3e 20 61 6e 64 20 3c itudes</b> and <
40f0: 62 3e 6c 61 74 69 74 75 64 65 73 3c 2f 62 3e 20 b>latitudes</b>
4100: 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 67 (<i>aka</i> <b>g
4110: 65 6f 67 72 61 70 68 69 63 3c 2f 62 3e 20 52 65 eographic</b> Re
4120: 66 65 72 65 6e 63 65 20 53 79 73 74 65 6d 73 29 ference Systems)
4130: 20 74 68 65 20 67 65 6f 6d 65 74 72 79 20 6c 65 the geometry le
4140: 6e 67 74 68 20 6f 66 20 61 6c 6c 20 4c 69 6e 65 ngth of all Line
4150: 73 74 72 69 6e 67 73 20 77 69 6c 6c 20 62 65 20 strings will be
4160: 70 72 65 63 69 73 65 6c 79 20 3c 62 3e 6d 65 61 precisely <b>mea
4170: 73 75 72 65 64 20 6f 6e 20 74 68 65 20 65 6c 6c sured on the ell
4180: 69 70 73 6f 69 64 3c 2f 62 3e 20 62 79 20 61 70 ipsoid</b> by ap
4190: 70 6c 79 69 6e 67 20 74 68 65 20 6d 6f 73 74 20 plying the most
41a0: 61 63 63 75 72 61 74 65 20 3c 62 3e 67 65 6f 64 accurate <b>geod
41b0: 65 73 69 63 20 66 6f 72 6d 75 6c 61 65 3c 2f 62 esic formulae</b
41c0: 3e 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 63 6f > and will be co
41d0: 6e 73 65 71 75 65 6e 74 6c 79 20 65 78 70 72 65 nsequently expre
41e0: 73 73 65 64 20 69 6e 20 3c 62 3e 6d 65 74 65 72 ssed in <b>meter
41f0: 73 3c 2f 62 3e 2e 20 49 6e 20 61 6e 79 20 6f 74 s</b>. In any ot
4200: 68 65 72 20 63 61 73 65 20 28 3c 62 3e 70 72 6f her case (<b>pro
4210: 6a 65 63 74 65 64 3c 2f 62 3e 20 52 65 66 65 72 jected</b> Refer
4220: 65 6e 63 65 20 53 79 73 74 65 6d 73 29 20 6c 65 ence Systems) le
4230: 6e 67 74 68 73 20 77 69 6c 6c 20 62 65 20 65 78 ngths will be ex
4240: 70 72 65 73 73 65 64 20 69 6e 20 74 68 65 20 3c pressed in the <
4250: 62 3e 6d 65 61 73 75 72 65 20 75 6e 69 74 3c 2f b>measure unit</
4260: 62 3e 20 64 65 66 69 6e 65 64 20 62 79 20 74 68 b> defined by th
4270: 65 20 52 65 66 65 72 65 6e 63 65 20 53 79 73 74 e Reference Syst
4280: 65 6d 20 28 65 2e 67 2e 20 3c 62 3e 6d 65 74 65 em (e.g. <b>mete
4290: 72 73 3c 2f 62 3e 20 66 6f 72 20 3c 62 3e 55 54 rs</b> for <b>UT
42a0: 4d 3c 2f 62 3e 20 70 72 6f 6a 65 63 74 69 6f 6e M</b> projection
42b0: 73 20 61 6e 64 20 3c 62 3e 66 65 65 74 3c 2f 62 s and <b>feet</b
42c0: 3e 20 66 6f 72 20 3c 62 3e 4e 41 44 2d 66 74 3c > for <b>NAD-ft<
42d0: 2f 62 3e 20 70 72 6f 6a 65 63 74 69 6f 6e 73 29 /b> projections)
42e0: 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 .<br>..<u>Note #
42f0: 32 3c 2f 75 3e 3a 20 74 68 65 20 3c 62 3e 67 65 2</u>: the <b>ge
4300: 6f 6d 2d 63 6f 6c 75 6d 6e 3c 2f 62 3e 20 61 6e om-column</b> an
4310: 64 20 3c 62 3e 63 6f 73 74 2d 63 6f 6c 75 6d 6e d <b>cost-column
4320: 3c 2f 62 3e 20 61 72 67 75 6d 65 6e 74 73 20 61 </b> arguments a
4330: 72 65 20 6e 65 76 65 72 20 61 6c 6c 6f 77 65 64 re never allowed
4340: 20 74 6f 20 62 65 20 3c 62 3e 4e 55 4c 4c 3c 2f to be <b>NULL</
4350: 62 3e 20 61 74 20 74 68 65 20 73 61 6d 65 20 74 b> at the same t
4360: 69 6d 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c ime.</li>..<li><
4370: 69 3e 74 6f 70 6f 6e 79 6d 3c 2f 69 3e 3a 20 6e i>toponym</i>: n
4380: 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d ame of the colum
4390: 6e 20 28 69 6e 20 74 68 65 20 61 62 6f 76 65 20 n (in the above
43a0: 54 61 62 6c 65 20 6f 72 20 56 69 65 77 29 20 65 Table or View) e
43b0: 78 70 65 63 74 65 64 20 74 6f 20 63 6f 6e 74 61 xpected to conta
43c0: 69 6e 20 3c 62 3e 72 6f 61 64 2d 6e 61 6d 65 3c in <b>road-name<
43d0: 2f 62 3e 20 76 61 6c 75 65 73 2e 3c 62 72 3e 0d /b> values.<br>.
43e0: 0a 49 74 20 63 6f 75 6c 64 20 62 65 20 6c 65 67 .It could be leg
43f0: 69 74 69 6d 61 74 65 6c 79 20 73 65 74 20 74 6f itimately set to
4400: 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 69 66 20 <b>NULL</b> if
4410: 61 6c 6c 20 4c 69 6e 6b 73 20 61 72 65 20 61 6e all Links are an
4420: 6f 6e 79 6d 6f 75 73 2e 3c 2f 6c 69 3e 0d 0a 3c onymous.</li>..<
4430: 6c 69 3e 3c 69 3e 31 3c 2f 69 3e 3a 20 61 20 62 li><i>1</i>: a b
4440: 6f 6f 6c 65 61 6e 20 66 6c 61 67 20 69 6e 74 65 oolean flag inte
4450: 6e 64 65 64 20 74 6f 20 73 70 65 63 69 66 79 20 nded to specify
4460: 69 66 20 74 68 65 20 4e 65 74 77 6f 72 6b 20 6d if the Network m
4470: 75 73 74 20 73 75 70 70 6f 72 74 20 74 68 65 20 ust support the
4480: 3c 62 3e 41 2a 20 61 6c 67 6f 72 69 74 68 6d 3c <b>A* algorithm<
4490: 2f 62 3e 20 6f 72 20 6e 6f 74 20 28 73 65 74 20 /b> or not (set
44a0: 74 6f 20 3c 62 3e 54 52 55 45 3c 2f 62 3e 20 62 to <b>TRUE</b> b
44b0: 79 20 64 65 66 61 75 6c 74 29 2e 3c 2f 6c 69 3e y default).</li>
44c0: 0d 0a 3c 6c 69 3e 3c 69 3e 31 3c 2f 69 3e 3a 20 ..<li><i>1</i>:
44d0: 61 20 62 6f 6f 6c 65 61 6e 20 66 6c 61 67 20 69 a boolean flag i
44e0: 6e 74 65 6e 64 65 64 20 74 6f 20 73 70 65 63 69 ntended to speci
44f0: 66 79 20 69 66 20 61 6c 6c 20 4e 65 74 77 6f 72 fy if all Networ
4500: 6b 27 73 20 4c 69 6e 6b 73 20 61 72 65 20 61 73 k's Links are as
4510: 73 75 6d 65 64 20 74 6f 20 62 65 20 3c 62 3e 62 sumed to be <b>b
4520: 69 64 69 72 65 63 74 69 6f 6e 61 6c 3c 2f 62 3e idirectional</b>
4530: 20 6f 72 20 6e 6f 74 20 28 61 73 73 75 6d 65 64 or not (assumed
4540: 20 74 6f 20 62 65 20 3c 62 3e 54 52 55 45 3c 2f to be <b>TRUE</
4550: 62 3e 20 62 79 20 64 65 66 61 75 6c 74 29 2e 3c b> by default).<
4560: 2f 6c 69 3e 20 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c 74 /li> ..</ol>..<t
4570: 61 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 able bgcolor="#c
4580: 30 66 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 0ffc0" cellspaci
4590: 6e 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 ng="10" cellpadd
45a0: 69 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e ing="6"><tr><td>
45b0: 0d 0a 3c 68 33 3e 54 65 63 68 6e 69 63 61 6c 20 ..<h3>Technical
45c0: 6e 6f 74 65 3c 2f 68 33 3e 0d 0a 54 68 65 20 69 note</h3>..The i
45d0: 6e 74 65 72 6e 61 6c 20 65 6e 63 6f 64 69 6e 67 nternal encoding
45e0: 20 61 64 6f 70 74 65 64 20 62 79 20 74 68 65 20 adopted by the
45f0: 3c 62 3e 42 69 6e 61 72 79 20 44 61 74 61 20 54 <b>Binary Data T
4600: 61 62 6c 65 3c 2f 62 3e 20 69 73 20 75 6e 63 68 able</b> is unch
4610: 61 6e 67 65 64 20 61 6e 64 20 69 73 20 74 68 65 anged and is the
4620: 20 73 61 6d 65 20 66 6f 72 20 62 6f 74 68 20 3c same for both <
4630: 62 3e 56 69 72 74 75 61 6c 4e 65 74 77 6f 6b 3c b>VirtualNetwok<
4640: 2f 62 3e 20 61 6e 64 20 3c 62 3e 56 69 72 74 75 /b> and <b>Virtu
4650: 61 6c 52 6f 75 74 69 6e 67 3c 2f 62 3e 2e 3c 62 alRouting</b>.<b
4660: 72 3e 0d 0a 59 6f 75 20 63 61 6e 20 73 61 66 65 r>..You can safe
4670: 6c 79 20 62 61 73 65 20 61 20 3c 62 3e 56 69 72 ly base a <b>Vir
4680: 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c tualRouting Tabl
4690: 65 3c 2f 62 3e 20 6f 6e 20 61 6e 79 20 65 78 69 e</b> on any exi
46a0: 73 74 69 6e 67 20 42 69 6e 61 72 79 20 44 61 74 sting Binary Dat
46b0: 61 0d 0a 54 61 62 6c 65 20 63 72 65 61 74 65 64 a..Table created
46c0: 20 62 79 20 74 68 65 20 3c 62 3e 73 70 61 74 69 by the <b>spati
46d0: 61 6c 69 74 65 2d 6e 65 74 77 6f 72 6b 3c 2f 62 alite-network</b
46e0: 3e 20 43 4c 49 20 74 6f 6f 6c 2c 20 65 78 61 63 > CLI tool, exac
46f0: 74 6c 79 20 61 73 20 79 6f 75 20 63 61 6e 20 62 tly as you can b
4700: 61 73 65 20 61 20 3c 62 3e 56 69 72 74 75 61 6c ase a <b>Virtual
4710: 4e 65 74 77 6f 72 6b 20 54 61 62 6c 65 3c 2f 62 Network Table</b
4720: 3e 20 6f 6e 20 61 6e 79 20 42 69 6e 61 72 79 20 > on any Binary
4730: 44 61 74 61 20 54 61 62 6c 65 20 63 72 65 61 74 Data Table creat
4740: 65 64 20 62 79 20 74 68 65 20 3c 62 3e 43 72 65 ed by the <b>Cre
4750: 61 74 65 52 6f 75 74 69 6e 67 28 29 3c 2f 62 3e ateRouting()</b>
4760: 20 53 51 4c 20 66 75 6e 63 74 69 6f 6e 2e 0d 0a SQL function...
4770: 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 43 52 45 41 <verbatim>..CREA
4780: 54 45 20 56 49 52 54 55 41 4c 20 54 41 42 4c 45 TE VIRTUAL TABLE
4790: 20 74 65 73 74 5f 6e 65 74 77 6f 72 6b 20 55 53 test_network US
47a0: 49 4e 47 20 56 69 72 74 75 61 6c 4e 65 74 77 6f ING VirtualNetwo
47b0: 72 6b 28 27 73 6f 6d 65 5f 64 61 74 61 5f 74 61 rk('some_data_ta
47c0: 62 6c 65 27 29 3b 0d 0a 0d 0a 43 52 45 41 54 45 ble');....CREATE
47d0: 20 56 49 52 54 55 41 4c 20 54 41 42 4c 45 20 74 VIRTUAL TABLE t
47e0: 65 73 74 5f 72 6f 75 74 69 6e 67 20 55 53 49 4e est_routing USIN
47f0: 47 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 G VirtualRouting
4800: 28 27 73 6f 6d 65 5f 64 61 74 61 5f 74 61 62 6c ('some_data_tabl
4810: 65 27 29 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d e');..</verbatim
4820: 3e 0d 0a 49 6e 20 6f 72 64 65 72 20 74 6f 20 6d >..In order to m
4830: 61 6e 75 61 6c 6c 79 20 63 72 65 61 74 65 20 79 anually create y
4840: 6f 75 72 20 56 69 72 74 75 61 6c 20 54 61 62 6c our Virtual Tabl
4850: 65 73 20 79 6f 75 20 6a 75 73 74 20 68 61 76 65 es you just have
4860: 20 74 6f 20 65 78 65 63 75 74 65 20 61 6e 20 61 to execute an a
4870: 70 70 72 6f 70 72 69 61 74 65 20 3c 62 3e 43 52 ppropriate <b>CR
4880: 45 41 54 45 20 56 49 52 54 55 41 4c 20 54 41 42 EATE VIRTUAL TAB
4890: 4c 45 20 2e 2e 2e 20 55 53 49 4e 47 20 56 69 72 LE ... USING Vir
48a0: 74 75 61 6c 2e 2e 2e 20 28 2e 2e 2e 29 3c 2f 62 tual... (...)</b
48b0: 3e 20 73 74 61 74 65 6d 65 6e 74 2e 0d 0a 3c 68 > statement...<h
48c0: 34 3e 57 61 72 6e 69 6e 67 3c 2f 68 34 3e 0d 0a 4>Warning</h4>..
48d0: 49 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 3c In the case of <
48e0: 62 3e 53 70 61 74 69 61 6c 20 4e 65 74 77 6f 72 b>Spatial Networ
48f0: 6b 73 3c 2f 62 3e 20 62 61 73 65 64 20 6f 6e 20 ks</b> based on
4900: 61 6e 79 20 3c 62 3e 67 65 6f 67 72 61 70 68 69 any <b>geographi
4910: 63 3c 2f 62 3e 20 52 65 66 65 72 65 6e 63 65 20 c</b> Reference
4920: 53 79 73 74 65 6d 20 28 75 73 69 6e 67 20 3c 62 System (using <b
4930: 3e 6c 6f 6e 67 69 74 75 64 65 73 3c 2f 62 3e 20 >longitudes</b>
4940: 61 6e 64 20 3c 62 3e 6c 61 74 69 74 75 64 65 73 and <b>latitudes
4950: 3c 2f 62 3e 29 20 74 68 65 72 65 20 69 73 20 61 </b>) there is a
4960: 6e 20 69 6d 70 6f 72 74 61 6e 74 20 64 69 66 66 n important diff
4970: 65 72 65 6e 63 65 20 62 65 74 77 65 65 6e 20 42 erence between B
4980: 69 6e 61 72 79 20 44 61 74 61 20 54 61 62 6c 65 inary Data Table
4990: 73 20 63 72 65 61 74 65 64 20 62 79 20 74 68 65 s created by the
49a0: 20 3c 62 3e 73 70 61 74 69 61 6c 69 74 65 5f 6e <b>spatialite_n
49b0: 65 74 77 6f 72 6b 3c 2f 62 3e 20 47 55 49 20 74 etwork</b> GUI t
49c0: 6f 6f 6c 20 61 6e 64 20 20 42 69 6e 61 72 79 20 ool and Binary
49d0: 44 61 74 61 20 54 61 62 6c 65 73 20 63 72 65 61 Data Tables crea
49e0: 74 65 64 20 62 79 20 74 68 65 20 3c 62 3e 43 72 ted by the <b>Cr
49f0: 65 61 74 65 52 6f 75 74 69 6e 67 28 29 3c 2f 62 eateRouting()</b
4a00: 3e 20 53 51 4c 20 66 75 6e 63 74 69 6f 6e 20 77 > SQL function w
4a10: 68 65 6e 20 3c 62 3e 63 6f 73 74 73 3c 2f 62 3e hen <b>costs</b>
4a20: 20 61 72 65 20 69 6d 70 6c 69 63 69 74 6c 79 20 are implicitly
4a30: 62 61 73 65 64 20 6f 6e 20 74 68 65 20 67 65 6f based on the geo
4a40: 6d 65 74 72 69 63 20 6c 65 6e 67 74 68 20 6f 66 metric length of
4a50: 20 74 68 65 20 4c 69 6e 6b 27 73 20 4c 69 6e 65 the Link's Line
4a60: 73 74 72 69 6e 67 3a 0d 0a 3c 75 6c 3e 0d 0a 3c string:..<ul>..<
4a70: 6c 69 3e 74 68 65 20 3c 62 3e 73 70 61 74 69 61 li>the <b>spatia
4a80: 6c 69 74 65 5f 6e 65 74 77 6f 72 6b 3c 2f 62 3e lite_network</b>
4a90: 20 43 4c 49 20 74 6f 6f 6c 20 28 61 6e 64 20 74 CLI tool (and t
4aa0: 68 65 20 3c 62 3e 47 55 49 20 77 69 7a 61 72 64 he <b>GUI wizard
4ab0: 3c 2f 62 3e 20 69 6d 70 6c 65 6d 65 6e 74 65 64 </b> implemented
4ac0: 20 62 79 20 70 72 65 76 69 6f 75 73 20 76 65 72 by previous ver
4ad0: 73 69 6f 6e 73 20 6f 66 20 3c 62 3e 73 70 61 74 sions of <b>spat
4ae0: 69 61 6c 69 74 65 5f 67 75 69 3c 2f 62 3e 29 20 ialite_gui</b>)
4af0: 63 6f 6d 70 75 74 65 20 74 68 65 20 4c 69 6e 65 compute the Line
4b00: 73 74 72 69 6e 67 27 73 20 6c 65 6e 67 74 68 20 string's length
4b10: 61 73 20 61 6e 20 3c 62 3e 61 6e 67 75 6c 61 72 as an <b>angular
4b20: 20 64 69 73 74 61 6e 63 65 3c 2f 62 3e 20 65 78 distance</b> ex
4b30: 70 72 65 73 73 65 64 20 69 6e 20 3c 62 3e 64 65 pressed in <b>de
4b40: 67 72 65 65 73 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d grees</b>.</li>.
4b50: 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 43 72 65 61 .<li>the <b>Crea
4b60: 74 65 52 6f 75 74 69 6e 67 28 29 3c 2f 62 3e 20 teRouting()</b>
4b70: 53 51 4c 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6d SQL function com
4b80: 70 75 74 65 73 20 74 68 65 20 4c 69 6e 65 73 74 putes the Linest
4b90: 72 69 6e 67 27 73 20 6c 65 6e 67 74 68 20 61 73 ring's length as
4ba0: 20 61 20 3c 62 3e 6c 69 6e 65 61 72 20 64 69 73 a <b>linear dis
4bb0: 74 61 6e 63 65 3c 2f 62 3e 20 65 78 70 72 65 73 tance</b> expres
4bc0: 73 65 64 20 69 6e 20 3c 62 3e 6d 65 74 72 65 73 sed in <b>metres
4bd0: 3c 2f 62 3e 20 62 79 20 61 70 70 6c 79 69 6e 67 </b> by applying
4be0: 20 74 68 65 20 6d 6f 73 74 20 61 63 63 75 72 61 the most accura
4bf0: 74 65 20 3c 62 3e 67 65 6f 64 65 73 69 63 20 66 te <b>geodesic f
4c00: 6f 72 6d 75 6c 61 65 3c 2f 62 3e 20 6f 6e 20 74 ormulae</b> on t
4c10: 68 65 20 65 6c 6c 69 70 73 6f 69 64 2e 3c 2f 6c he ellipsoid.</l
4c20: 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 2f 74 64 3e i>..</ul>..</td>
4c30: 3c 2f 74 72 3e 3c 2f 74 61 62 6c 65 3e 3c 62 72 </tr></table><br
4c40: 3e 3c 62 72 3e 0d 0a 3c 76 65 72 62 61 74 69 6d ><br>..<verbatim
4c50: 3e 0d 0a 53 45 4c 45 43 54 20 43 72 65 61 74 65 >..SELECT Create
4c60: 52 6f 75 74 69 6e 67 28 27 62 79 63 61 72 5f 64 Routing('bycar_d
4c70: 61 74 61 27 2c 20 27 62 79 63 61 72 27 2c 20 27 ata', 'bycar', '
4c80: 72 6f 61 64 73 5f 76 77 27 2c 20 27 6e 6f 64 65 roads_vw', 'node
4c90: 5f 66 72 6f 6d 27 2c 20 27 6e 6f 64 65 5f 74 6f _from', 'node_to
4ca0: 27 2c 20 27 67 65 6f 6d 27 2c 20 27 63 6f 73 74 ', 'geom', 'cost
4cb0: 27 2c 20 27 74 6f 70 6f 6e 79 6d 27 2c 20 31 2c ', 'toponym', 1,
4cc0: 20 31 2c 20 27 6f 6e 65 77 61 79 5f 66 72 6f 6d 1, 'oneway_from
4cd0: 74 6f 27 2c 20 27 6f 6e 65 77 61 79 5f 74 6f 66 to', 'oneway_tof
4ce0: 72 6f 6d 27 2c 20 30 29 3b 0d 0a 2d 2d 2d 2d 2d rom', 0);..-----
4cf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d ---------------.
4d00: 0a 31 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d .1..</verbatim>.
4d10: 0a 41 66 74 65 72 20 63 61 6c 6c 69 6e 67 20 79 .After calling y
4d20: 65 74 20 61 6e 6f 74 68 65 72 20 74 69 6d 65 20 et another time
4d30: 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 69 6e 67 <b>CreateRouting
4d40: 28 29 3c 2f 62 3e 20 6e 6f 77 20 74 68 65 20 44 ()</b> now the D
4d50: 61 74 61 62 61 73 65 20 63 6f 6e 74 61 69 6e 73 atabase contains
4d60: 20 74 77 6f 20 66 75 72 74 68 65 72 20 54 61 62 two further Tab
4d70: 6c 65 73 3a 20 3c 62 3e 62 79 63 61 72 3c 2f 62 les: <b>bycar</b
4d80: 3e 20 61 6e 64 20 3c 62 3e 62 79 63 61 72 5f 64 > and <b>bycar_d
4d90: 61 74 61 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 54 68 ata</b>.<br>..Th
4da0: 69 73 20 74 69 6d 65 20 79 6f 75 27 76 65 20 75 is time you've u
4db0: 73 65 64 20 74 68 65 20 3c 69 3e 63 6f 6d 70 6c sed the <i>compl
4dc0: 65 74 65 20 66 6f 72 6d 3c 2f 69 3e 20 6f 66 20 ete form</i> of
4dd0: 43 72 65 61 74 65 52 6f 75 74 69 6e 67 28 29 3b CreateRouting();
4de0: 20 6c 65 74 27 73 20 73 65 65 20 69 6e 20 6d 6f let's see in mo
4df0: 72 65 20 64 65 70 74 68 20 61 6c 6c 20 74 68 65 re depth all the
4e00: 20 61 72 67 75 6d 65 6e 74 73 20 61 6e 64 20 74 arguments and t
4e10: 68 65 69 72 20 6d 65 61 6e 69 6e 67 3a 0d 0a 3c heir meaning:..<
4e20: 6f 6c 3e 0d 0a 3c 6c 69 3e 3c 69 3e 62 79 63 61 ol>..<li><i>byca
4e30: 72 5f 64 61 74 61 3c 2f 69 3e 3a 20 73 61 6d 65 r_data</i>: same
4e40: 20 61 73 20 61 62 6f 76 65 2e 3c 2f 6c 69 3e 0d as above.</li>.
4e50: 0a 3c 6c 69 3e 3c 69 3e 62 79 63 61 72 3c 2f 69 .<li><i>bycar</i
4e60: 3e 3a 20 73 61 6d 65 20 61 73 20 61 62 6f 76 65 >: same as above
4e70: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 72 .</li>..<li><i>r
4e80: 6f 61 64 73 5f 76 77 3c 2f 69 3e 3a 20 73 61 6d oads_vw</i>: sam
4e90: 65 20 61 73 20 61 62 6f 76 65 2e 3c 2f 6c 69 3e e as above.</li>
4ea0: 0d 0a 3c 6c 69 3e 3c 69 3e 6e 6f 64 65 5f 66 72 ..<li><i>node_fr
4eb0: 6f 6d 3c 2f 69 3e 3a 20 73 61 6d 65 20 61 73 20 om</i>: same as
4ec0: 61 62 6f 76 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 above.</li>..<li
4ed0: 3e 3c 69 3e 6e 6f 64 65 5f 74 6f 3c 2f 69 3e 3a ><i>node_to</i>:
4ee0: 20 73 61 6d 65 20 61 73 20 61 62 6f 76 65 2e 3c same as above.<
4ef0: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 67 65 6f /li>..<li><i>geo
4f00: 6d 3c 2f 69 3e 3a 20 73 61 6d 65 20 61 73 20 61 m</i>: same as a
4f10: 62 6f 76 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e bove.</li>..<li>
4f20: 3c 69 3e 63 6f 73 74 3c 2f 69 3e 3a 20 73 61 6d <i>cost</i>: sam
4f30: 65 20 61 73 20 61 62 6f 76 65 2e 0d 0a 49 6e 20 e as above...In
4f40: 74 68 69 73 20 63 61 73 65 20 77 65 20 68 61 76 this case we hav
4f50: 65 20 72 65 66 65 72 65 6e 63 65 64 20 61 20 63 e referenced a c
4f60: 6f 6c 75 6d 6e 20 70 72 65 6c 6f 61 64 65 64 20 olumn preloaded
4f70: 77 69 74 68 20 76 61 6c 75 65 73 20 63 6f 72 72 with values corr
4f80: 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 esponding to the
4f90: 20 3c 62 3e 74 69 6d 65 3c 2f 62 3e 20 6d 65 61 <b>time</b> mea
4fa0: 73 75 72 65 64 20 69 6e 20 3c 62 3e 73 65 63 6f sured in <b>seco
4fb0: 6e 64 73 3c 2f 62 3e 20 72 65 71 75 69 72 65 64 nds</b> required
4fc0: 20 74 6f 20 74 72 61 76 65 72 73 65 20 65 61 63 to traverse eac
4fd0: 68 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e 20 0d 0a 3c h Link.</li> ..<
4fe0: 6c 69 3e 3c 69 3e 74 6f 70 6f 6e 79 6d 3c 2f 69 li><i>toponym</i
4ff0: 3e 3a 20 73 61 6d 65 20 61 73 20 61 62 6f 76 65 >: same as above
5000: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 31 .</li>..<li><i>1
5010: 3c 2f 69 3e 3a 20 73 61 6d 65 20 61 73 20 61 62 </i>: same as ab
5020: 6f 76 65 20 28 3c 69 3e 41 2a 20 65 6e 61 62 6c ove (<i>A* enabl
5030: 65 64 3c 2f 69 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c ed</i>).</li>..<
5040: 6c 69 3e 3c 69 3e 31 3c 2f 69 3e 3a 20 73 61 6d li><i>1</i>: sam
5050: 65 20 61 73 20 61 62 6f 76 65 20 28 3c 69 3e 62 e as above (<i>b
5060: 69 64 69 72 65 63 74 69 6f 6e 61 6c 20 4c 69 6e idirectional Lin
5070: 6b 73 3c 2f 69 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c ks</i>).</li>..<
5080: 6c 69 3e 3c 69 3e 6f 6e 65 77 61 79 5f 66 72 6f li><i>oneway_fro
5090: 6d 74 6f 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 mto</i>: name of
50a0: 20 74 68 65 20 63 6f 6c 75 6d 6e 20 28 69 6e 20 the column (in
50b0: 74 68 65 20 61 62 6f 76 65 20 54 61 62 6c 65 20 the above Table
50c0: 6f 72 20 56 69 65 77 29 20 65 78 70 65 63 74 65 or View) expecte
50d0: 64 20 74 6f 20 63 6f 6e 74 61 69 6e 20 62 6f 6f d to contain boo
50e0: 6c 65 61 6e 20 66 6c 61 67 73 20 73 70 65 63 69 lean flags speci
50f0: 66 79 69 6e 67 20 69 66 20 65 61 63 68 20 4c 69 fying if each Li
5100: 6e 6b 20 63 61 6e 20 62 65 20 74 72 61 76 65 72 nk can be traver
5110: 73 65 64 20 69 6e 20 74 68 65 20 3c 62 3e 66 72 sed in the <b>fr
5120: 6f 6d 2d 74 6f 3c 2f 62 3e 20 64 69 72 65 63 74 om-to</b> direct
5130: 69 6f 6e 20 6f 72 20 6e 6f 74 2e 3c 2f 6c 69 3e ion or not.</li>
5140: 0d 0a 3c 6c 69 3e 3c 69 3e 6f 6e 65 77 61 79 5f ..<li><i>oneway_
5150: 74 6f 66 72 6f 6d 3c 2f 69 3e 3a 20 6e 61 6d 65 tofrom</i>: name
5160: 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d 6e 20 28 of the column (
5170: 69 6e 20 74 68 65 20 61 62 6f 76 65 20 54 61 62 in the above Tab
5180: 6c 65 20 6f 72 20 56 69 65 77 29 20 65 78 70 65 le or View) expe
5190: 63 74 65 64 20 74 6f 20 63 6f 6e 74 61 69 6e 20 cted to contain
51a0: 62 6f 6f 6c 65 61 6e 20 66 6c 61 67 73 20 73 70 boolean flags sp
51b0: 65 63 69 66 79 69 6e 67 20 69 66 20 65 61 63 68 ecifying if each
51c0: 20 4c 69 6e 6b 20 63 61 6e 20 62 65 20 74 72 61 Link can be tra
51d0: 76 65 72 73 65 64 20 69 6e 20 74 68 65 20 3c 62 versed in the <b
51e0: 3e 74 6f 2d 66 72 6f 6d 3c 2f 62 3e 20 64 69 72 >to-from</b> dir
51f0: 65 63 74 69 6f 6e 20 6f 72 20 6e 6f 74 2e 3c 62 ection or not.<b
5200: 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 31 3c 2f r>..<u>Note #1</
5210: 75 3e 3a 20 62 6f 74 68 20 3c 62 3e 66 72 6f 6d u>: both <b>from
5220: 2d 74 6f 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 74 -to</b> and <b>t
5230: 6f 2d 66 72 6f 6d 3c 2f 62 3e 20 63 6f 6c 75 6d o-from</b> colum
5240: 6e 20 6e 61 6d 65 73 20 63 61 6e 20 62 65 20 6c n names can be l
5250: 65 67 69 74 69 6d 61 74 65 6c 79 20 73 65 74 20 egitimately set
5260: 61 73 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 69 as <b>NULL</b> i
5270: 66 20 6e 6f 20 3c 62 3e 6f 6e 65 2d 77 61 79 3c f no <b>one-way<
5280: 2f 62 3e 20 72 65 73 74 72 69 63 74 69 6f 6e 73 /b> restrictions
5290: 20 61 70 70 6c 79 20 74 6f 20 74 68 65 20 63 75 apply to the cu
52a0: 72 72 65 6e 74 20 4e 65 74 77 6f 72 6b 2e 3c 62 rrent Network.<b
52b0: 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 20 23 32 3c 2f r>..<u>Note #2</
52c0: 75 3e 3a 20 4e 65 74 77 6f 72 6b 73 20 6f 66 20 u>: Networks of
52d0: 74 68 65 20 3c 62 3e 75 6e 69 64 69 72 65 63 74 the <b>unidirect
52e0: 69 6f 6e 61 6c 3c 2f 62 3e 20 74 79 70 65 20 61 ional</b> type a
52f0: 72 65 20 6e 65 76 65 72 20 65 6e 61 62 6c 65 64 re never enabled
5300: 20 74 6f 20 72 65 66 65 72 65 6e 63 65 20 3c 62 to reference <b
5310: 3e 6f 6e 65 2d 77 61 79 3c 2f 62 3e 20 63 6f 6c >one-way</b> col
5320: 75 6d 6e 73 20 28 74 68 65 79 20 73 68 6f 75 6c umns (they shoul
5330: 64 20 61 6c 77 61 79 73 20 62 65 20 73 65 74 20 d always be set
5340: 74 6f 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 29 2e to <b>NULL</b>).
5350: 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 3e 30 3c </li>..<li><i>0<
5360: 2f 69 3e 3a 20 61 20 62 6f 6f 6c 65 61 6e 20 66 /i>: a boolean f
5370: 6c 61 67 20 69 6e 74 65 6e 64 69 6e 67 20 61 6e lag intending an
5380: 20 3c 62 3e 6f 76 65 72 77 72 69 74 65 20 61 75 <b>overwrite au
5390: 74 68 6f 72 69 7a 61 74 69 6f 6e 3c 2f 62 3e 2e thorization</b>.
53a0: 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 49 66 20 73 ..<ul>..<li>If s
53b0: 65 74 20 74 6f 20 3c 62 3e 46 41 4c 53 45 3c 2f et to <b>FALSE</
53c0: 62 3e 20 61 6e 20 65 78 63 65 70 74 69 6f 6e 20 b> an exception
53d0: 77 69 6c 6c 20 62 65 20 72 61 69 73 65 64 20 69 will be raised i
53e0: 66 20 74 68 65 20 3c 62 3e 42 69 6e 61 72 79 20 f the <b>Binary
53f0: 44 61 74 61 20 54 61 62 6c 65 3c 2f 62 3e 20 61 Data Table</b> a
5400: 6e 64 2f 6f 72 20 74 68 65 20 3c 62 3e 56 69 72 nd/or the <b>Vir
5410: 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c tualRouting Tabl
5420: 65 3c 2f 62 3e 20 64 6f 20 61 6c 72 65 61 64 79 e</b> do already
5430: 20 65 78 69 73 74 2e 3c 2f 6c 69 3e 0d 0a 3c 6c exist.</li>..<l
5440: 69 3e 49 66 20 73 65 74 20 74 6f 20 3c 62 3e 54 i>If set to <b>T
5450: 52 55 45 3c 2f 62 3e 20 65 76 65 6e 74 75 61 6c RUE</b> eventual
5460: 6c 79 20 65 78 69 73 74 69 6e 67 20 54 61 62 6c ly existing Tabl
5470: 65 73 20 77 69 6c 6c 20 62 65 20 70 72 65 76 65 es will be preve
5480: 6e 74 69 76 65 6c 79 20 64 72 6f 70 70 65 64 20 ntively dropped
5490: 69 6d 6d 65 64 69 61 74 65 6c 79 20 62 65 66 6f immediately befo
54a0: 72 65 20 73 74 61 72 74 69 6e 67 20 74 68 65 20 re starting the
54b0: 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 3c 62 3e execution of <b>
54c0: 43 72 65 61 74 65 52 6f 75 74 69 6e 67 28 29 3c CreateRouting()<
54d0: 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e /b>.</li>..</ul>
54e0: 3c 2f 6c 69 3e 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c 62 </li>..</ol>..<b
54f0: 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 63 6f 6c r>..<table bgcol
5500: 6f 72 3d 22 23 66 66 66 66 63 30 22 20 63 65 6c or="#ffffc0" cel
5510: 6c 73 70 61 63 69 6e 67 3d 22 31 30 22 20 63 65 lspacing="10" ce
5520: 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 3c 74 llpadding="6"><t
5530: 72 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 48 69 67 68 r><td>..<h3>High
5540: 6c 69 67 68 74 3a 20 77 68 65 72 65 20 79 6f 75 light: where you
5550: 20 61 72 65 3c 2f 68 33 3e 0d 0a 59 6f 75 27 76 are</h3>..You'v
5560: 65 20 6a 75 73 74 20 63 72 65 61 74 65 64 20 74 e just created t
5570: 77 6f 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e wo VirtualRoutin
5580: 67 20 54 61 62 6c 65 73 20 62 61 73 65 64 20 6f g Tables based o
5590: 6e 20 64 69 66 66 65 72 65 6e 74 20 73 65 74 74 n different sett
55a0: 69 6e 67 73 3b 20 62 6f 74 68 20 74 68 65 6d 20 ings; both them
55b0: 61 72 65 20 70 65 72 66 65 63 74 6c 79 20 76 61 are perfectly va
55c0: 6c 69 64 20 61 6e 64 20 72 65 61 73 6f 6e 61 62 lid and reasonab
55d0: 6c 65 2c 20 62 75 74 20 74 68 65 79 20 61 72 65 le, but they are
55e0: 20 69 6e 74 65 6e 64 65 64 20 66 6f 72 20 64 69 intended for di
55f0: 66 66 65 72 65 6e 74 20 70 75 72 70 6f 73 65 73 fferent purposes
5600: 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e :..<ul>..<li><b>
5610: 62 79 66 6f 6f 74 3c 2f 62 3e 20 69 73 20 73 70 byfoot</b> is sp
5620: 65 63 69 66 69 63 61 6c 6c 79 20 69 6e 74 65 6e ecifically inten
5630: 64 65 64 20 66 6f 72 20 3c 62 3e 70 65 64 65 73 ded for <b>pedes
5640: 74 72 69 61 6e 73 3c 2f 62 3e 3a 0d 0a 3c 75 6c trians</b>:..<ul
5650: 3e 0d 0a 3c 6c 69 3e 61 6c 6c 20 4c 69 6e 6b 73 >..<li>all Links
5660: 20 61 72 65 20 61 6c 77 61 79 73 20 61 73 73 75 are always assu
5670: 6d 65 64 20 74 6f 20 62 65 20 61 63 63 65 73 73 med to be access
5680: 69 62 6c 65 20 69 6e 20 3c 62 3e 62 6f 74 68 20 ible in <b>both
5690: 64 69 72 65 63 74 69 6f 6e 73 3c 2f 62 3e 3b 20 directions</b>;
56a0: 74 68 65 72 65 20 61 72 65 20 6e 6f 20 3c 62 3e there are no <b>
56b0: 6f 6e 65 2d 77 61 79 73 3c 2f 62 3e 20 61 6e 64 one-ways</b> and
56c0: 20 6e 6f 20 3c 62 3e 66 6f 72 62 69 64 64 65 6e no <b>forbidden
56d0: 3c 2f 62 3e 20 4c 69 6e 6b 73 2e 3c 2f 6c 69 3e </b> Links.</li>
56e0: 0d 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 63 6f 73 ..<li>the <b>cos
56f0: 74 3c 2f 62 3e 20 6f 66 20 65 61 63 68 20 4c 69 t</b> of each Li
5700: 6e 6b 20 69 73 20 64 69 72 65 63 74 6c 79 20 72 nk is directly r
5710: 65 70 72 65 73 65 6e 74 65 64 20 62 79 20 69 74 epresented by it
5720: 73 20 67 65 6f 6d 65 74 72 69 63 20 3c 62 3e 6c s geometric <b>l
5730: 65 6e 67 74 68 3c 2f 62 3e 2c 20 77 68 69 63 68 ength</b>, which
5740: 20 69 73 20 63 6f 6e 73 69 73 74 65 6e 74 20 77 is consistent w
5750: 69 74 68 20 74 68 65 20 61 73 73 75 6d 70 74 69 ith the assumpti
5760: 6f 6e 20 6f 66 20 61 6e 20 61 6c 6d 6f 73 74 20 on of an almost
5770: 63 6f 6e 73 74 61 6e 74 20 73 70 65 65 64 20 73 constant speed s
5780: 75 62 73 74 61 6e 74 69 61 6c 6c 79 20 69 6d 6d ubstantially imm
5790: 75 6e 65 20 66 72 6f 6d 20 61 64 76 65 72 73 65 une from adverse
57a0: 20 72 6f 61 64 20 63 6f 6e 64 69 74 69 6f 6e 73 road conditions
57b0: 20 61 6e 64 20 74 72 61 66 66 69 63 20 63 6f 6e and traffic con
57c0: 67 65 73 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c gestion.</li>..<
57d0: 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c /ul></li>..<li><
57e0: 62 3e 62 79 63 61 72 3c 2f 62 3e 20 69 73 20 73 b>bycar</b> is s
57f0: 70 65 63 69 66 69 63 61 6c 6c 79 20 69 6e 74 65 pecifically inte
5800: 6e 64 65 64 20 66 6f 72 20 3c 62 3e 6d 6f 74 6f nded for <b>moto
5810: 72 20 76 65 68 69 63 6c 65 73 3c 2f 62 3e 3a 0d r vehicles</b>:.
5820: 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 6d 61 6e 79 20 .<ul>..<li>many
5830: 4c 69 6e 6b 73 20 61 72 65 20 65 78 70 65 63 74 Links are expect
5840: 65 64 20 74 6f 20 62 65 20 61 63 63 65 73 73 69 ed to be accessi
5850: 62 6c 65 20 69 6e 20 3c 62 3e 62 6f 74 68 20 64 ble in <b>both d
5860: 69 72 65 63 74 69 6f 6e 73 3c 2f 62 3e 20 62 75 irections</b> bu
5870: 74 20 6f 74 68 65 72 73 20 63 6f 75 6c 64 20 65 t others could e
5880: 61 73 69 6c 79 20 62 65 20 73 75 62 6a 65 63 74 asily be subject
5890: 20 74 6f 20 3c 62 3e 6f 6e 65 2d 77 61 79 3c 2f to <b>one-way</
58a0: 62 3e 20 72 65 73 74 72 69 63 74 69 6f 6e 73 20 b> restrictions
58b0: 6f 72 20 65 76 65 6e 20 62 65 20 63 6f 6d 70 6c or even be compl
58c0: 65 74 65 6c 79 20 3c 62 3e 66 6f 72 62 69 64 64 etely <b>forbidd
58d0: 65 6e 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c en</b>.</li>..<l
58e0: 69 3e 74 68 65 20 63 6f 73 74 20 6f 66 20 65 61 i>the cost of ea
58f0: 63 68 20 4c 69 6e 6b 20 69 73 20 65 78 70 72 65 ch Link is expre
5900: 73 73 65 64 20 61 73 20 61 6e 20 65 73 74 69 6d ssed as an estim
5910: 61 74 65 64 20 3c 62 3e 74 72 61 76 65 6c 20 74 ated <b>travel t
5920: 69 6d 65 3c 2f 62 3e 2c 20 62 65 63 61 75 73 65 ime</b>, because
5930: 20 74 68 65 20 65 78 70 65 63 74 65 64 20 73 70 the expected sp
5940: 65 65 64 73 20 63 61 6e 20 67 72 65 61 74 6c 79 eeds can greatly
5950: 20 76 61 72 79 20 61 63 63 6f 72 64 69 6e 67 6c vary accordingl
5960: 79 20 74 6f 20 73 70 65 63 69 66 69 63 20 72 6f y to specific ro
5970: 61 64 20 63 6f 6e 64 69 74 69 6f 6e 73 2c 20 74 ad conditions, t
5980: 72 61 66 66 69 63 20 63 6f 6e 67 65 73 74 69 6f raffic congestio
5990: 6e 20 61 6e 64 20 6c 65 67 61 6c 20 72 65 67 75 n and legal regu
59a0: 6c 61 74 69 6f 6e 73 2e 3c 2f 6c 69 3e 0d 0a 3c lations.</li>..<
59b0: 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e /ul></li>..</ul>
59c0: 0d 0a 3c 62 72 3e 0d 0a 3c 75 3e 43 6f 6e 63 6c ..<br>..<u>Concl
59d0: 75 73 69 6f 6e 3c 2f 75 3e 3a 20 61 20 73 69 6e usion</u>: a sin
59e0: 67 6c 65 20 56 69 72 74 75 61 6c 52 6f 75 74 69 gle VirtualRouti
59f0: 6e 67 20 54 61 62 6c 65 20 63 61 6e 27 74 20 62 ng Table can't b
5a00: 65 20 61 62 6c 65 20 74 6f 20 61 64 65 71 75 61 e able to adequa
5a10: 74 65 6c 79 20 73 75 70 70 6f 72 74 20 73 75 70 tely support sup
5a20: 70 6f 72 74 20 74 68 65 20 73 70 65 63 69 66 69 port the specifi
5a30: 63 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 c requirements a
5a40: 6e 64 20 65 78 70 65 63 74 61 74 69 6f 6e 73 20 nd expectations
5a50: 6f 66 20 64 69 66 66 65 72 65 6e 74 20 75 73 65 of different use
5a60: 72 73 2e 3c 62 72 3e 0d 0a 44 65 66 69 6e 69 6e rs.<br>..Definin
5a70: 67 20 6d 6f 72 65 20 52 6f 75 74 69 6e 67 20 54 g more Routing T
5a80: 61 62 6c 65 73 20 77 69 74 68 20 64 69 66 66 65 ables with diffe
5a90: 72 65 6e 74 20 73 65 74 74 69 6e 67 73 20 66 6f rent settings fo
5aa0: 72 20 74 68 65 20 73 61 6d 65 20 4e 65 74 77 6f r the same Netwo
5ab0: 72 6b 20 75 73 75 61 6c 6c 79 20 69 73 20 61 20 rk usually is a
5ac0: 67 6f 6f 64 20 64 65 73 69 67 6e 20 63 68 6f 69 good design choi
5ad0: 63 65 20 6c 65 61 64 69 6e 67 20 74 6f 20 6d 6f ce leading to mo
5ae0: 72 65 20 72 65 61 6c 69 73 74 69 63 20 72 65 73 re realistic res
5af0: 75 6c 74 73 2e 3c 62 72 3e 0d 0a 3c 2f 74 64 3e ults.<br>..</td>
5b00: 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d </tr>..</table>.
5b10: 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 68 33 3e 55 .<br><br>..<h3>U
5b20: 74 69 6c 69 74 79 20 66 75 6e 63 74 69 6f 6e 20 tility function
5b30: 66 6f 72 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c for automaticall
5b40: 79 20 73 65 74 74 69 6e 67 20 4e 6f 64 65 46 72 y setting NodeFr
5b50: 6f 6d 20 61 6e 64 20 4e 6f 64 65 54 6f 20 49 44 om and NodeTo ID
5b60: 73 3c 2f 68 33 3e 0d 0a 53 6f 6d 65 74 69 6d 65 s</h3>..Sometime
5b70: 73 20 69 74 20 63 6f 75 6c 64 20 65 76 65 6e 74 s it could event
5b80: 75 61 6c 6c 79 20 68 61 70 70 65 6e 20 74 6f 20 ually happen to
5b90: 65 6e 63 6f 75 6e 74 65 72 20 73 6f 6d 65 20 3c encounter some <
5ba0: 62 3e 53 70 61 74 69 61 6c 20 4e 65 74 77 6f 72 b>Spatial Networ
5bb0: 6b 3c 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 61 k</b> representa
5bc0: 74 69 6f 6e 20 62 65 69 6e 67 20 66 75 6c 6c 79 tion being fully
5bd0: 20 74 6f 70 6f 6c 6f 67 69 63 61 6c 6c 79 20 63 topologically c
5be0: 6f 6e 73 69 73 74 65 6e 74 20 62 75 74 20 63 6f onsistent but co
5bf0: 6d 70 6c 65 74 65 6c 79 20 6c 61 63 6b 69 6e 67 mpletely lacking
5c00: 20 61 6e 79 20 64 65 66 69 6e 69 74 69 6f 6e 20 any definition
5c10: 61 62 6f 75 74 20 3c 62 3e 4e 6f 64 65 46 72 6f about <b>NodeFro
5c20: 6d 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e 6f 64 m</b> and <b>Nod
5c30: 65 54 6f 3c 2f 62 3e 20 69 64 65 6e 74 69 66 69 eTo</b> identifi
5c40: 65 72 73 2e 3c 62 72 3e 0d 0a 49 6e 20 74 68 69 ers.<br>..In thi
5c50: 73 20 73 70 65 63 69 66 69 63 20 63 61 73 65 20 s specific case
5c60: 79 6f 75 20 63 61 6e 20 73 75 63 63 65 73 73 66 you can successf
5c70: 75 6c 6c 79 20 72 65 63 6f 76 65 72 20 61 20 70 ully recover a p
5c80: 65 72 66 65 63 74 6c 79 20 76 61 6c 69 64 20 4e erfectly valid N
5c90: 65 74 77 6f 72 6b 20 62 79 20 63 61 6c 6c 69 6e etwork by callin
5ca0: 67 20 74 68 65 20 3c 62 3e 43 72 65 61 74 65 52 g the <b>CreateR
5cb0: 6f 75 74 69 6e 67 4e 6f 64 65 73 28 29 3c 2f 62 outingNodes()</b
5cc0: 3e 20 53 51 4c 20 66 75 6e 63 74 69 6f 6e 2e 0d > SQL function..
5cd0: 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 4c .<verbatim>..SEL
5ce0: 45 43 54 20 43 72 65 61 74 65 52 6f 75 74 69 6e ECT CreateRoutin
5cf0: 67 4e 6f 64 65 73 28 4e 55 4c 4c 2c 20 27 74 61 gNodes(NULL, 'ta
5d00: 62 6c 65 5f 6e 61 6d 65 27 2c 20 27 67 65 6f 6d ble_name', 'geom
5d10: 27 2c 20 27 6e 6f 64 65 5f 66 72 6f 6d 27 2c 20 ', 'node_from',
5d20: 27 6e 6f 64 65 5f 74 6f 27 29 3b 0d 0a 5f 5f 5f 'node_to');..___
5d30: 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f 5f ________________
5d40: 5f 5f 5f 5f 5f 5f 0d 0a 31 0d 0a 3c 2f 76 65 72 ______..1..</ver
5d50: 62 61 74 69 6d 3e 0d 0a 4c 65 74 27 73 20 65 78 batim>..Let's ex
5d60: 61 6d 69 6e 65 20 61 6c 6c 20 61 72 67 75 6d 65 amine all argume
5d70: 6e 74 73 20 61 6e 64 20 74 68 65 69 72 20 6d 65 nts and their me
5d80: 61 6e 69 6e 67 3a 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c aning:..<ol>..<l
5d90: 69 3e 3c 69 3e 4e 55 4c 4c 3c 2f 69 3e 3a 20 6e i><i>NULL</i>: n
5da0: 61 6d 65 20 6f 66 20 74 68 65 20 3c 62 3e 41 74 ame of the <b>At
5db0: 74 61 63 68 65 64 2d 44 42 3c 2f 62 3e 20 63 6f tached-DB</b> co
5dc0: 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 53 70 61 ntaining the Spa
5dd0: 74 69 61 6c 20 54 61 62 6c 65 2e 3c 62 72 3e 0d tial Table.<br>.
5de0: 0a 49 74 20 63 61 6e 20 62 65 20 6c 65 67 69 74 .It can be legit
5df0: 69 6d 61 74 65 6c 79 20 73 65 74 20 74 6f 20 3c imately set to <
5e00: 62 3e 4e 55 4c 4c 3c 2f 62 3e 2c 20 61 6e 64 20 b>NULL</b>, and
5e10: 69 6e 20 74 68 69 73 20 63 61 73 65 20 74 68 65 in this case the
5e20: 20 3c 62 3e 4d 41 49 4e 3c 2f 62 3e 20 44 42 20 <b>MAIN</b> DB
5e30: 69 73 20 61 73 73 75 6d 65 64 2e 3c 2f 6c 69 3e is assumed.</li>
5e40: 0d 0a 3c 6c 69 3e 3c 69 3e 74 61 62 6c 65 5f 6e ..<li><i>table_n
5e50: 61 6d 65 3c 2f 69 3e 3a 20 6e 61 6d 65 20 6f 66 ame</i>: name of
5e60: 20 74 68 65 20 53 70 61 74 69 61 6c 20 54 61 62 the Spatial Tab
5e70: 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 le.</li>..<li><i
5e80: 3e 67 65 6f 6d 3c 2f 6c 69 3e 3a 20 6e 61 6d 65 >geom</li>: name
5e90: 20 6f 66 20 74 68 65 20 63 6f 6c 75 6d 6e 20 28 of the column (
5ea0: 28 69 6e 20 74 68 65 20 61 62 6f 76 65 20 54 61 (in the above Ta
5eb0: 62 6c 65 29 20 63 6f 6e 74 61 69 6e 69 6e 67 20 ble) containing
5ec0: 3c 62 3e 4c 69 6e 65 73 74 72 69 6e 67 73 3c 2f <b>Linestrings</
5ed0: 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 69 b>.</li>..<li><i
5ee0: 3e 6e 6f 64 65 5f 66 72 6f 6d 3c 2f 69 3e 3a 20 >node_from</i>:
5ef0: 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 name of the colu
5f00: 6d 6e 20 74 6f 20 62 65 20 61 64 64 65 64 20 74 mn to be added t
5f10: 6f 20 74 68 65 20 61 62 6f 76 65 20 54 61 62 6c o the above Tabl
5f20: 65 20 61 6e 64 20 70 6f 70 75 6c 61 74 65 64 20 e and populated
5f30: 77 69 74 68 20 61 70 70 72 6f 70 72 69 61 74 65 with appropriate
5f40: 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 62 3e <b>NodeFrom</b>
5f50: 20 49 44 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e IDs.</li>..<li>
5f60: 3c 69 3e 6e 6f 64 65 5f 74 6f 3c 2f 69 3e 3a 20 <i>node_to</i>:
5f70: 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6c 75 name of the colu
5f80: 6d 6e 20 74 6f 20 62 65 20 61 64 64 65 64 20 74 mn to be added t
5f90: 6f 20 74 68 65 20 61 62 6f 76 65 20 54 61 62 6c o the above Tabl
5fa0: 65 20 61 6e 64 20 70 6f 70 75 6c 61 74 65 64 20 e and populated
5fb0: 77 69 74 68 20 61 70 70 72 6f 70 72 69 61 74 65 with appropriate
5fc0: 20 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 20 49 <b>NodeTo</b> I
5fd0: 44 73 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 Ds.<br>..<u>Note
5fe0: 3c 2f 75 3e 3a 20 62 6f 74 68 20 3c 62 3e 4e 6f </u>: both <b>No
5ff0: 64 65 46 72 6f 6d 3c 2f 62 3e 20 61 6e 64 20 3c deFrom</b> and <
6000: 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e 20 63 6f 6c b>NodeTo</b> col
6010: 75 6d 6e 73 20 73 68 6f 75 6c 64 20 6e 6f 74 20 umns should not
6020: 62 65 20 61 6c 72 65 61 64 79 20 64 65 66 69 6e be already defin
6030: 65 64 20 69 6e 20 74 68 65 20 61 62 6f 76 65 20 ed in the above
6040: 54 61 62 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 6f Table.</li>..</o
6050: 6c 3e 0d 0a 3c 62 3e 43 72 65 61 74 65 52 6f 75 l>..<b>CreateRou
6060: 74 69 6e 67 4e 6f 64 65 73 28 29 3c 2f 62 3e 20 tingNodes()</b>
6070: 77 69 6c 6c 20 72 65 74 75 72 6e 20 3c 62 3e 31 will return <b>1
6080: 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e </b> (<i>aka</i>
6090: 20 3c 62 3e 54 52 55 45 3c 2f 62 3e 29 20 6f 6e <b>TRUE</b>) on
60a0: 20 73 75 63 63 65 73 73 3b 20 61 6e 20 65 78 63 success; an exc
60b0: 65 70 74 69 6f 6e 20 77 69 6c 6c 20 62 65 20 72 eption will be r
60c0: 61 69 73 65 64 20 6f 6e 20 66 61 69 6c 75 72 65 aised on failure
60d0: 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f .<br>..<u>Note</
60e0: 75 3e 3a 20 79 6f 75 20 63 61 6e 20 63 61 6c 6c u>: you can call
60f0: 20 3c 62 3e 43 72 65 61 74 65 52 6f 75 74 69 6e <b>CreateRoutin
6100: 67 5f 47 65 74 4c 61 73 74 45 72 72 6f 72 28 29 g_GetLastError()
6110: 3c 2f 62 3e 20 73 6f 20 74 6f 20 70 72 65 63 69 </b> so to preci
6120: 73 65 6c 79 20 69 64 65 6e 74 69 66 79 20 74 68 sely identify th
6130: 65 20 63 61 75 73 65 20 61 63 63 6f 75 6e 74 69 e cause accounti
6140: 6e 67 20 66 6f 72 20 66 61 69 6c 75 72 65 2e 3c ng for failure.<
6150: 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 br><br><br>..<ta
6160: 62 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 30 ble bgcolor="#c0
6170: 66 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 6e ffc0" cellspacin
6180: 67 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 g="10" cellpaddi
6190: 6e 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d ng="6"><tr><td>.
61a0: 0a 3c 68 33 3e 48 61 6e 64 6c 69 6e 67 20 64 79 .<h3>Handling dy
61b0: 6e 61 6d 69 63 20 4e 65 74 77 6f 72 6b 73 3c 2f namic Networks</
61c0: 68 33 3e 0d 0a 53 6f 6d 65 74 69 6d 65 73 20 69 h3>..Sometimes i
61d0: 74 20 68 61 70 70 65 6e 73 20 74 68 61 74 20 61 t happens that a
61e0: 20 4e 65 74 77 6f 72 6b 20 63 6f 75 6c 64 20 62 Network could b
61f0: 65 20 73 75 62 6a 65 63 74 20 74 6f 20 72 61 74 e subject to rat
6200: 68 65 72 20 66 72 65 71 75 65 6e 74 20 63 68 61 her frequent cha
6210: 6e 67 65 73 3a 20 73 6f 6d 65 20 6e 65 77 20 4c nges: some new L
6220: 69 6e 6b 73 20 72 65 71 75 69 72 65 20 74 6f 20 inks require to
6230: 62 65 20 61 64 64 65 64 2c 20 6f 62 73 6f 6c 65 be added, obsole
6240: 74 65 20 4c 69 6e 6b 73 20 72 65 71 75 69 72 65 te Links require
6250: 20 74 6f 20 62 65 20 72 65 6d 6f 76 65 64 2c 20 to be removed,
6260: 6f 74 68 65 72 20 4c 69 6e 6b 73 20 6d 61 79 20 other Links may
6270: 61 73 73 75 6d 65 20 61 20 64 69 66 66 65 72 65 assume a differe
6280: 6e 74 20 43 6f 73 74 2c 20 6f 6e 65 2d 77 61 79 nt Cost, one-way
6290: 73 20 63 6f 75 6c 64 20 62 65 20 72 65 76 65 72 s could be rever
62a0: 73 65 64 2c 20 74 68 65 20 64 69 73 63 69 70 6c sed, the discipl
62b0: 69 6e 65 20 6f 66 20 70 65 64 65 73 74 72 69 61 ine of pedestria
62c0: 6e 20 61 72 65 61 73 20 63 6f 75 6c 64 20 62 65 n areas could be
62d0: 20 6d 6f 64 69 66 69 65 64 20 61 6e 64 20 73 6f modified and so
62e0: 20 6f 6e 2e 3c 62 72 3e 0d 0a 41 20 56 69 72 74 on.<br>..A Virt
62f0: 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 ualRouting Table
6300: 20 69 73 20 61 6c 77 61 79 73 20 62 61 73 65 64 is always based
6310: 20 6f 6e 20 61 20 63 6f 6d 70 61 6e 69 6f 6e 20 on a companion
6320: 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 62 6c Binary Data Tabl
6330: 65 2c 20 74 68 61 74 20 69 73 20 69 6e 74 72 69 e, that is intri
6340: 6e 73 69 63 61 6c 6c 79 20 3c 62 3e 73 74 61 74 nsically <b>stat
6350: 69 63 3c 2f 62 3e 2c 20 61 6e 64 20 63 6f 6e 73 ic</b>, and cons
6360: 65 71 75 65 6e 74 6c 79 20 79 6f 75 20 61 72 65 equently you are
6370: 20 72 65 71 75 69 72 65 64 20 74 6f 20 72 65 2d required to re-
6380: 63 72 65 61 74 65 20 62 6f 74 68 20 74 68 65 6d create both them
6390: 20 66 72 6f 6d 20 74 69 6d 65 20 74 6f 20 74 69 from time to ti
63a0: 6d 65 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 73 me in order to s
63b0: 75 70 70 6f 72 74 20 61 6c 6c 20 72 65 63 65 6e upport all recen
63c0: 74 20 63 68 61 6e 67 65 73 20 61 66 66 65 63 74 t changes affect
63d0: 69 6e 67 20 74 68 65 20 75 6e 64 65 72 6c 61 79 ing the underlay
63e0: 69 6e 67 20 4e 65 74 77 6f 72 6b 2e 3c 62 72 3e ing Network.<br>
63f0: 0d 0a 54 68 65 20 6f 70 74 69 6d 61 6c 20 66 72 ..The optimal fr
6400: 65 71 75 65 6e 63 79 20 66 6f 72 20 63 79 63 6c equency for cycl
6410: 69 63 61 6c 6c 79 20 72 65 66 72 65 73 68 69 6e ically refreshin
6420: 67 20 74 68 65 20 52 6f 75 74 69 6e 67 20 54 61 g the Routing Ta
6430: 62 6c 65 73 20 73 74 72 69 63 74 6c 79 20 64 65 bles strictly de
6440: 70 65 6e 64 73 20 6f 6e 20 73 70 65 63 69 66 69 pends on specifi
6450: 63 20 72 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 c requirements,
6460: 62 75 74 20 74 68 65 20 74 77 6f 20 6f 76 65 72 but the two over
6470: 61 6c 6c 20 61 70 70 72 6f 61 63 68 65 73 20 61 all approaches a
6480: 72 65 20 63 6f 6d 6d 6f 6e 6c 79 20 61 64 6f 70 re commonly adop
6490: 74 65 64 3a 0d 0a 3c 6f 6c 3e 0d 0a 3c 6c 69 3e ted:..<ol>..<li>
64a0: 3c 62 3e 6c 6f 77 20 66 72 65 71 75 65 6e 63 79 <b>low frequency
64b0: 20 72 65 66 72 65 73 68 3c 2f 62 3e 3a 20 62 65 refresh</b>: be
64c0: 73 74 20 66 69 74 20 66 6f 72 20 73 6c 6f 77 6c st fit for slowl
64d0: 79 20 65 76 6f 6c 76 69 6e 67 20 4e 65 74 77 6f y evolving Netwo
64e0: 72 6b 73 2e 3c 62 72 3e 0d 0a 49 6e 20 74 68 69 rks.<br>..In thi
64f0: 73 20 63 61 73 65 20 72 65 2d 63 72 65 61 74 69 s case re-creati
6500: 6e 67 20 74 68 65 20 4e 65 74 77 6f 72 6b 20 54 ng the Network T
6510: 61 62 6c 65 73 20 6f 6e 63 65 20 61 20 6d 6f 6e ables once a mon
6520: 74 68 20 2f 20 77 65 65 6b 20 2f 20 64 61 79 20 th / week / day
6530: 63 6f 75 6c 64 20 62 65 20 72 65 61 73 6f 6e 61 could be reasona
6540: 62 6c 79 20 65 6e 6f 75 67 68 2e 0d 0a 52 65 63 bly enough...Rec
6550: 72 65 61 74 69 6e 67 20 74 68 65 20 54 61 62 6c reating the Tabl
6560: 65 73 20 66 72 6f 6d 20 73 63 72 61 74 63 68 20 es from scratch
6570: 75 73 75 61 6c 6c 79 20 72 65 71 75 69 72 65 73 usually requires
6580: 20 73 65 76 65 72 61 6c 20 73 65 63 6f 6e 64 73 several seconds
6590: 20 28 6f 72 20 65 76 65 6e 20 6c 65 73 73 2c 20 (or even less,
65a0: 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 depending on the
65b0: 20 6e 75 6d 62 65 72 20 6f 66 20 4c 69 6e 6b 73 number of Links
65c0: 29 2e 3c 62 72 3e 0d 0a 54 68 65 20 72 65 66 72 ).<br>..The refr
65d0: 65 73 68 20 61 63 74 69 76 69 74 69 65 73 20 63 esh activities c
65e0: 6f 75 6c 64 20 62 65 20 6f 70 70 6f 72 74 75 6e ould be opportun
65f0: 65 6c 79 20 70 6c 61 6e 6e 65 64 20 61 74 20 6c ely planned at l
6600: 6f 77 20 74 72 61 66 66 69 63 20 68 6f 75 72 73 ow traffic hours
6610: 20 28 65 2e 67 2e 20 64 75 72 69 6e 67 20 74 68 (e.g. during th
6620: 65 20 6e 69 67 68 74 29 2c 20 61 6e 64 20 3c 62 e night), and <b
6630: 3e 43 72 65 61 74 65 52 6f 75 74 69 6e 67 28 29 >CreateRouting()
6640: 3c 2f 62 3e 20 63 6f 75 6c 64 20 62 65 20 75 73 </b> could be us
6650: 65 66 75 6c 6c 79 20 63 61 6c 6c 65 64 20 62 79 efully called by
6660: 20 65 6e 61 62 6c 69 6e 67 20 74 68 65 20 3c 62 enabling the <b
6670: 3e 6f 76 65 72 77 72 69 74 65 3c 2f 62 3e 20 6f >overwrite</b> o
6680: 70 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 ption.</li>..<li
6690: 3e 3c 62 3e 6d 65 64 69 75 6d 2d 68 69 67 68 20 ><b>medium-high
66a0: 66 72 65 71 75 65 6e 63 79 20 72 65 66 72 65 73 frequency refres
66b0: 68 3c 2f 62 3e 3a 20 62 65 73 74 20 66 69 74 20 h</b>: best fit
66c0: 66 6f 72 20 71 75 69 63 6b 6c 79 20 65 76 6f 6c for quickly evol
66d0: 76 69 6e 67 20 4e 65 74 77 6f 72 6b 73 2e 3c 62 ving Networks.<b
66e0: 72 3e 0d 0a 52 65 2d 63 72 65 61 74 69 6e 67 20 r>..Re-creating
66f0: 74 68 65 20 4e 65 74 77 6f 72 6b 20 54 61 62 6c the Network Tabl
6700: 65 73 20 6f 6e 63 65 20 70 65 72 20 68 6f 75 72 es once per hour
6710: 20 28 6f 72 20 65 76 65 6e 20 6d 6f 72 65 20 66 (or even more f
6720: 72 65 71 75 65 6e 74 6c 79 29 20 63 6f 75 6c 64 requently) could
6730: 20 62 65 20 73 74 72 69 63 74 6c 79 20 72 65 71 be strictly req
6740: 75 69 72 65 64 2c 20 61 6e 64 20 66 72 65 71 75 uired, and frequ
6750: 65 6e 74 20 3c 62 3e 6f 75 74 20 6f 66 20 73 65 ent <b>out of se
6760: 72 76 69 63 65 3c 2f 62 3e 20 70 65 72 69 6f 64 rvice</b> period
6770: 73 20 77 68 69 6c 65 20 77 61 69 74 69 6e 67 20 s while waiting
6780: 66 6f 72 20 74 68 65 20 72 65 66 72 65 73 68 20 for the refresh
6790: 70 72 6f 63 65 73 73 20 74 6f 20 63 6f 6d 70 6c process to compl
67a0: 65 74 65 20 63 6f 75 6c 64 20 65 61 73 69 6c 79 ete could easily
67b0: 20 62 65 20 75 6e 61 63 63 65 70 74 61 62 6c 65 be unacceptable
67c0: 2e 3c 62 72 3e 0d 0a 49 6e 20 74 68 69 73 20 63 .<br>..In this c
67d0: 61 73 65 20 79 6f 75 20 63 6f 75 6c 64 20 75 73 ase you could us
67e0: 65 66 75 6c 6c 79 20 61 64 6f 70 74 20 61 20 3c efully adopt a <
67f0: 62 3e 6d 75 6c 74 69 2d 74 68 72 65 61 64 65 64 b>multi-threaded
6800: 20 73 74 72 61 74 65 67 79 3c 2f 62 3e 3a 0d 0a strategy</b>:..
6810: 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 3e 74 68 72 <ul>..<li><b>thr
6820: 65 61 64 20 23 31 3c 2f 62 3e 20 28 3c 69 3e 74 ead #1</b> (<i>t
6830: 68 65 20 72 65 61 64 65 72 3c 2f 69 3e 29 3a 20 he reader</i>):
6840: 74 68 69 73 20 66 69 72 73 74 20 74 68 72 65 61 this first threa
6850: 64 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f d is intended to
6860: 20 73 65 72 76 69 63 65 20 61 6e 79 20 69 6e 63 service any inc
6870: 6f 6d 69 6e 67 20 52 6f 75 74 69 6e 67 20 72 65 oming Routing re
6880: 71 75 65 73 74 2e 20 49 74 20 77 69 6c 6c 20 62 quest. It will b
6890: 65 20 61 6c 77 61 79 73 20 61 63 74 69 76 65 2c e always active,
68a0: 20 61 6e 64 20 77 69 6c 6c 20 74 61 72 67 65 74 and will target
68b0: 20 61 20 77 65 6c 6c 20 6b 6e 6f 77 6e 20 56 69 a well known Vi
68c0: 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 rtualRouting Tab
68d0: 6c 65 20 28 65 2e 67 2e 20 3c 62 3e 6d 79 5f 72 le (e.g. <b>my_r
68e0: 6f 75 74 69 6e 67 3c 2f 62 3e 20 62 61 73 65 64 outing</b> based
68f0: 20 6f 6e 20 3c 62 3e 6d 79 5f 72 6f 75 74 69 6e on <b>my_routin
6900: 67 5f 64 61 74 61 3c 2f 62 3e 29 2e 3c 2f 6c 69 g_data</b>).</li
6910: 3e 0d 0a 3c 6c 69 3e 3c 62 3e 74 68 72 65 61 64 >..<li><b>thread
6920: 20 23 32 3c 2f 62 3e 20 28 3c 69 3e 74 68 65 20 #2</b> (<i>the
6930: 77 72 69 74 65 72 3c 2f 69 3e 29 3a 20 74 68 69 writer</i>): thi
6940: 73 20 73 65 63 6f 6e 64 20 74 68 72 65 61 64 20 s second thread
6950: 69 73 20 6a 75 73 74 20 69 6e 74 65 6e 64 65 64 is just intended
6960: 20 74 6f 20 72 65 2d 63 72 65 61 74 65 20 62 6f to re-create bo
6970: 74 68 20 4e 65 74 77 6f 72 6b 20 54 61 62 6c 65 th Network Table
6980: 73 20 61 74 20 70 72 65 64 65 66 69 6e 65 64 20 s at predefined
6990: 69 6e 74 65 72 76 61 6c 73 2c 20 61 6e 64 20 69 intervals, and i
69a0: 74 20 77 69 6c 6c 20 73 6c 65 65 70 20 62 65 74 t will sleep bet
69b0: 77 65 65 6e 20 61 6e 20 69 6e 74 65 72 76 61 6c ween an interval
69c0: 20 61 6e 64 20 74 68 65 20 6f 74 68 65 72 2e 3c and the other.<
69d0: 62 72 3e 0d 0a 57 68 65 6e 20 74 68 69 73 20 74 br>..When this t
69e0: 68 72 65 61 64 20 61 77 61 6b 65 6e 73 20 77 69 hread awakens wi
69f0: 6c 6c 20 72 65 2d 63 72 65 61 74 65 20 62 6f 74 ll re-create bot
6a00: 68 20 4e 65 74 77 6f 72 6b 20 54 61 62 6c 65 73 h Network Tables
6a10: 20 62 79 20 75 73 69 6e 67 20 64 69 66 66 65 72 by using differ
6a20: 65 6e 74 20 6e 61 6d 65 73 2c 20 61 6e 64 20 77 ent names, and w
6a30: 69 6c 6c 20 6f 76 65 72 77 72 69 74 65 20 74 68 ill overwrite th
6a40: 65 20 73 74 61 6e 64 61 72 64 20 6f 6e 65 73 20 e standard ones
6a50: 6a 75 73 74 20 61 74 20 74 68 65 20 76 65 72 79 just at the very
6a60: 20 65 6e 64 20 6f 66 20 74 68 65 20 70 72 6f 63 end of the proc
6a70: 65 73 73 20 28 61 63 74 69 76 61 74 69 6e 67 20 ess (activating
6a80: 61 20 73 65 6d 61 70 68 6f 72 65 20 64 75 72 69 a semaphore duri
6a90: 6e 67 20 74 68 69 73 20 73 68 6f 72 74 2d 74 69 ng this short-ti
6aa0: 6d 65 64 20 6c 61 73 74 20 73 74 65 70 20 69 73 med last step is
6ab0: 20 68 69 67 68 6c 79 20 72 65 63 6f 6d 6d 65 6e highly recommen
6ac0: 64 65 64 29 2e 3c 62 72 3e 0d 0a 53 6f 6d 65 74 ded).<br>..Somet
6ad0: 68 69 6e 67 20 6c 69 6b 65 20 74 68 69 73 20 70 hing like this p
6ae0: 73 65 75 64 6f 2d 63 6f 64 65 20 65 78 65 6d 70 seudo-code exemp
6af0: 6c 69 66 69 65 73 3a 0d 0a 3c 76 65 72 62 61 74 lifies:..<verbat
6b00: 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 43 72 65 61 im>..SELECT Crea
6b10: 74 65 52 6f 75 74 69 6e 67 28 27 6e 65 77 5f 6d teRouting('new_m
6b20: 79 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 27 2c y_routing_data',
6b30: 20 27 6e 65 77 5f 6d 79 5f 72 6f 75 74 69 6e 67 'new_my_routing
6b40: 27 2c 20 2e 2e 2e 29 3b 0d 0a 0d 0a 2d 2d 3e 20 ', ...);....-->
6b50: 73 74 61 72 74 20 74 68 65 20 73 65 6d 61 70 68 start the semaph
6b60: 6f 72 65 20 73 6f 20 74 6f 20 6c 6f 63 6b 20 74 ore so to lock t
6b70: 68 65 20 6f 74 68 65 72 20 74 68 72 65 61 64 0d he other thread.
6b80: 0a 0d 0a 42 45 47 49 4e 3b 0d 0a 44 52 4f 50 20 ...BEGIN;..DROP
6b90: 54 41 42 4c 45 20 6d 79 5f 72 6f 75 74 69 6e 67 TABLE my_routing
6ba0: 3b 0d 0a 44 52 4f 50 20 54 41 42 4c 45 20 6d 79 ;..DROP TABLE my
6bb0: 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 3b 0d 0a _routing_data;..
6bc0: 53 45 4c 45 43 54 20 43 6c 6f 6e 65 54 61 62 6c SELECT CloneTabl
6bd0: 65 28 27 4d 41 49 4e 27 2c 20 27 6e 65 77 5f 6d e('MAIN', 'new_m
6be0: 79 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 27 2c y_routing_data',
6bf0: 20 27 6d 79 5f 72 6f 75 74 69 6e 67 5f 64 61 74 'my_routing_dat
6c00: 61 27 2c 20 30 29 3b 0d 0a 43 52 45 41 54 45 20 a', 0);..CREATE
6c10: 56 49 52 54 55 41 4c 20 54 41 42 4c 45 20 6d 79 VIRTUAL TABLE my
6c20: 5f 72 6f 75 74 69 6e 67 20 55 53 49 4e 47 20 56 _routing USING V
6c30: 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 28 27 6d irtualRouting('m
6c40: 79 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 27 29 y_routing_data')
6c50: 3b 0d 0a 44 52 4f 50 20 54 41 42 4c 45 20 6e 65 ;..DROP TABLE ne
6c60: 77 5f 6d 79 5f 72 6f 75 74 69 6e 67 3b 0d 0a 44 w_my_routing;..D
6c70: 52 4f 50 20 54 41 42 4c 45 20 6e 65 77 5f 6d 79 ROP TABLE new_my
6c80: 5f 72 6f 75 74 69 6e 67 5f 64 61 74 61 3b 0d 0a _routing_data;..
6c90: 43 4f 4d 4d 49 54 3b 0d 0a 0d 0a 2d 2d 3e 20 72 COMMIT;....--> r
6ca0: 65 6d 6f 76 65 20 74 68 65 20 73 65 6d 61 70 68 emove the semaph
6cb0: 6f 72 65 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e ore..</verbatim>
6cc0: 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 73 ..<u>Note</u>: s
6cd0: 74 72 69 63 74 6c 79 20 72 65 73 70 65 63 74 69 trictly respecti
6ce0: 6e 67 20 74 68 65 20 61 62 6f 76 65 20 73 65 71 ng the above seq
6cf0: 75 65 6e 63 65 20 6f 66 20 53 51 4c 20 6f 70 65 uence of SQL ope
6d00: 72 61 74 69 6f 6e 73 20 69 73 20 61 62 73 6f 6c rations is absol
6d10: 75 74 65 6c 79 20 72 65 71 75 69 72 65 64 2e 3c utely required.<
6d20: 2f 6c 69 3e 20 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 /li> ..</ul></li
6d30: 3e 0d 0a 3c 2f 6f 6c 3e 0d 0a 3c 2f 74 64 3e 3c >..</ol>..</td><
6d40: 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a /tr>..</table>..
6d50: 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 67 63 <br>..<table bgc
6d60: 6f 6c 6f 72 3d 22 23 66 66 62 30 36 30 22 20 63 olor="#ffb060" c
6d70: 65 6c 6c 73 70 61 63 69 6e 67 3d 22 31 30 22 20 ellspacing="10"
6d80: 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e cellpadding="6">
6d90: 3c 74 72 3e 3c 74 64 3e 0d 0a 3c 68 33 3e 57 61 <tr><td>..<h3>Wa
6da0: 72 6e 69 6e 67 3a 20 68 6f 77 20 74 6f 20 63 6f rning: how to co
6db0: 72 72 65 63 74 6c 79 20 64 72 6f 70 20 4e 65 74 rrectly drop Net
6dc0: 77 6f 72 6b 20 54 61 62 6c 65 73 3c 2f 68 33 3e work Tables</h3>
6dd0: 0d 0a 57 68 65 6e 20 64 72 6f 70 70 69 6e 67 20 ..When dropping
6de0: 61 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 a VirtualRouting
6df0: 20 54 61 62 6c 65 20 61 6e 64 20 69 74 73 20 63 Table and its c
6e00: 6f 6d 70 61 6e 69 6f 6e 20 42 69 6e 61 72 79 20 ompanion Binary
6e10: 44 61 74 61 20 54 61 62 6c 65 20 66 6f 6c 6c 6f Data Table follo
6e20: 77 69 6e 67 20 74 68 65 20 63 6f 72 72 65 63 74 wing the correct
6e30: 20 73 65 71 75 65 6e 63 65 20 6f 66 20 53 51 4c sequence of SQL
6e40: 20 63 6f 6d 6d 61 6e 64 73 20 69 73 20 70 61 72 commands is par
6e50: 61 6d 6f 75 6e 74 2e 3c 62 72 3e 0d 0a 46 61 69 amount.<br>..Fai
6e60: 6c 69 6e 67 20 74 6f 20 73 74 72 69 63 74 6c 79 ling to strictly
6e70: 20 72 65 73 70 65 63 74 20 74 68 65 20 65 78 70 respect the exp
6e80: 65 63 74 65 64 20 73 65 71 75 65 6e 63 65 20 77 ected sequence w
6e90: 69 6c 6c 20 73 75 72 65 6c 79 20 63 61 75 73 65 ill surely cause
6ea0: 20 79 6f 75 20 73 65 76 65 72 61 6c 20 74 72 6f you several tro
6eb0: 75 62 6c 65 73 20 61 6e 64 20 73 65 76 65 72 65 ubles and severe
6ec0: 20 68 65 61 64 61 63 68 65 73 2c 20 61 6e 64 20 headaches, and
6ed0: 77 69 6c 6c 20 70 6f 73 73 69 62 6c 79 20 6c 65 will possibly le
6ee0: 61 64 20 74 6f 20 61 6e 20 69 72 72 65 6d 65 64 ad to an irremed
6ef0: 69 61 62 6c 79 20 63 6f 72 72 75 70 74 65 64 20 iably corrupted
6f00: 64 61 74 61 62 61 73 65 2e 0d 0a 3c 6f 6c 3e 0d database...<ol>.
6f10: 0a 3c 6c 69 3e 79 6f 75 20 61 72 65 20 61 6c 77 .<li>you are alw
6f20: 61 79 73 20 65 78 70 65 63 74 65 64 20 74 6f 20 ays expected to
6f30: 44 52 4f 50 20 66 69 72 73 74 20 74 68 65 20 56 DROP first the V
6f40: 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 irtualRouting Ta
6f50: 62 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 79 ble.</li>..<li>y
6f60: 6f 75 20 63 61 6e 20 73 61 66 65 6c 79 20 44 52 ou can safely DR
6f70: 4f 50 20 74 68 65 20 63 6f 6d 70 61 6e 69 6f 6e OP the companion
6f80: 20 42 69 6e 61 72 79 20 44 61 74 61 20 54 61 62 Binary Data Tab
6f90: 6c 65 20 6f 6e 6c 79 20 6f 6e 63 65 20 69 74 27 le only once it'
6fa0: 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 72 65 66 65 s no longer refe
6fb0: 72 65 6e 63 65 64 20 62 79 20 74 68 65 20 56 69 renced by the Vi
6fc0: 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 rtualRouting Tab
6fd0: 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 62 79 le.</li>..<li>by
6fe0: 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 68 65 20 72 following the r
6ff0: 65 76 65 72 73 65 20 73 65 71 75 65 6e 63 65 20 everse sequence
7000: 79 6f 75 27 6c 6c 20 64 69 72 65 63 74 6c 79 20 you'll directly
7010: 63 72 65 61 74 65 20 61 6e 20 3c 62 3e 6f 72 70 create an <b>orp
7020: 68 61 6e 3c 2f 62 3e 20 56 69 72 74 75 61 6c 52 han</b> VirtualR
7030: 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 74 68 61 outing Table tha
7040: 74 20 63 61 6e 6e 6f 74 20 62 65 20 61 63 63 65 t cannot be acce
7050: 73 73 65 64 20 61 6e 79 20 6c 6f 6e 67 65 72 2c ssed any longer,
7060: 20 61 6e 64 20 74 68 61 74 20 77 69 6c 6c 20 63 and that will c
7070: 6f 6e 73 65 71 75 65 6e 74 6c 79 20 72 65 66 75 onsequently refu
7080: 73 65 20 74 6f 20 62 65 20 64 72 6f 70 70 65 64 se to be dropped
7090: 2e 3c 62 72 3e 0d 0a 42 65 20 77 61 72 6e 65 64 .<br>..Be warned
70a0: 20 21 21 3c 2f 6c 69 3e 0d 0a 3c 2f 6f 6c 3e 0d !!</li>..</ol>.
70b0: 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 0d 0a 3c 2f 74 .</td></tr>..</t
70c0: 61 62 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d able>..<br><br>.
70d0: 0a 3c 68 72 3e 3c 62 72 3e 0d 0a 3c 68 31 3e 3c .<hr><br>..<h1><
70e0: 61 20 6e 61 6d 65 3d 22 66 72 6f 6d 5f 74 6f 22 a name="from_to"
70f0: 3e 34 20 2d 20 53 6f 6c 76 69 6e 67 20 63 6c 61 >4 - Solving cla
7100: 73 73 69 63 20 53 68 6f 72 74 65 73 74 20 50 61 ssic Shortest Pa
7110: 74 68 20 70 72 6f 62 6c 65 6d 73 3c 2f 61 3e 3c th problems</a><
7120: 2f 68 31 3e 0d 0a 54 68 65 20 6d 6f 73 74 20 63 /h1>..The most c
7130: 6c 61 73 73 69 63 20 53 68 6f 72 74 65 73 74 20 lassic Shortest
7140: 50 61 74 68 20 70 72 6f 62 6c 65 6d 20 72 65 71 Path problem req
7150: 75 69 72 65 73 20 74 6f 20 69 64 65 6e 74 69 66 uires to identif
7160: 79 20 74 68 65 20 6f 70 74 69 6d 61 6c 20 63 6f y the optimal co
7170: 6e 6e 65 63 74 69 6f 6e 20 62 65 74 77 65 65 6e nnection between
7180: 20 61 6e 20 3c 62 3e 4f 72 69 67 69 6e 20 4e 6f an <b>Origin No
7190: 64 65 3c 2f 62 3e 20 61 6e 64 20 61 20 3c 62 3e de</b> and a <b>
71a0: 44 65 73 74 69 6e 61 74 69 6f 6e 20 4e 6f 64 65 Destination Node
71b0: 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 57 65 20 63 61 </b>.<br>..We ca
71c0: 6e 20 65 61 73 69 6c 79 20 74 72 61 6e 73 6c 61 n easily transla
71d0: 74 65 20 73 75 63 68 20 61 20 70 72 6f 62 6c 65 te such a proble
71e0: 6d 20 69 6e 74 6f 20 61 20 73 69 6d 70 6c 65 20 m into a simple
71f0: 53 51 4c 20 71 75 65 72 79 20 74 61 72 67 65 74 SQL query target
7200: 69 6e 67 20 73 6f 6d 65 20 56 69 72 74 75 61 6c ing some Virtual
7210: 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 2e 0d 0a Routing Table...
7220: 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 4c 45 <verbatim>..SELE
7230: 43 54 20 2a 20 0d 0a 46 52 4f 4d 20 62 79 66 6f CT * ..FROM byfo
7240: 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 ot..WHERE NodeFr
7250: 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 20 om = 178731 AND
7260: 4e 6f 64 65 54 6f 20 3d 20 31 38 33 32 38 36 3b NodeTo = 183286;
7270: 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 3c ..</verbatim>..<
7280: 74 61 62 6c 65 20 62 6f 72 64 65 72 3d 22 31 22 table border="1"
7290: 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 66 66 63 bgcolor="#ffffc
72a0: 66 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 f" cellspacing="
72b0: 34 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 4" cellpadding="
72c0: 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 62 67 63 6">..<tr><th bgc
72d0: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 41 olor="#d0d0a0">A
72e0: 6c 67 6f 72 69 74 68 6d 3c 2f 74 68 3e 3c 74 68 lgorithm</th><th
72f0: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
7300: 30 22 3e 52 65 71 75 65 73 74 3c 2f 74 68 3e 3c 0">Request</th><
7310: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
7320: 30 61 30 22 3e 4f 70 74 69 6f 6e 73 3c 2f 74 68 0a0">Options</th
7330: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
7340: 30 64 30 61 30 22 3e 44 65 6c 69 6d 69 74 65 72 0d0a0">Delimiter
7350: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
7360: 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 ="#d0d0a0">Route
7370: 49 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c Id</th><th bgcol
7380: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 75 or="#d0d0a0">Rou
7390: 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 67 teRow</th><th bg
73a0: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
73b0: 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 20 62 67 63 Role</th><th bgc
73c0: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4c olor="#d0d0a0">L
73d0: 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 inkRowid</th><th
73e0: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
73f0: 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 0">NodeFrom</th>
7400: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
7410: 64 30 61 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 d0a0">NodeTo</th
7420: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
7430: 30 64 30 61 30 22 3e 50 6f 69 6e 74 46 72 6f 6d 0d0a0">PointFrom
7440: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
7450: 3d 22 23 64 30 64 30 61 30 22 3e 50 6f 69 6e 74 ="#d0d0a0">Point
7460: 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c To</th><th bgcol
7470: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 54 6f 6c or="#d0d0a0">Tol
7480: 65 72 61 6e 63 65 3c 2f 74 68 3e 3c 74 68 20 62 erance</th><th b
7490: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
74a0: 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 >Cost</th><th bg
74b0: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
74c0: 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 Geometry</th><th
74d0: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
74e0: 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 0">Name</th></tr
74f0: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 69 6a >..<tr>..<td>Dij
7500: 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e 53 68 kstra</td><td>Sh
7510: 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 74 64 3e ortest Path</td>
7520: 3c 74 64 3e 46 75 6c 6c 3c 2f 74 64 3e 3c 74 64 <td>Full</td><td
7530: 3e 2c 20 26 23 39 31 3b 64 65 63 3d 34 34 2c 20 >, [dec=44,
7540: 68 65 78 3d 32 63 26 23 39 33 3b 3c 2f 74 64 3e hex=2c]</td>
7550: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
7560: 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">0</td><td alig
7570: 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
7580: 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 <td>Route</td><t
7590: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
75a0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
75b0: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
75c0: 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 36 n="right">183286
75d0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
75e0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
75f0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
7600: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 30 align="right">30
7610: 30 2e 39 31 32 32 30 38 3c 2f 74 64 3e 3c 74 64 0.912208</td><td
7620: 3e 42 4c 4f 42 20 73 7a 3d 32 37 32 20 47 45 4f >BLOB sz=272 GEO
7630: 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 METRY</td><td>NU
7640: 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
7650: 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
7660: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
7670: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
7680: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
7690: 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
76a0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
76b0: 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">1</td><td>Li
76c0: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
76d0: 3d 22 72 69 67 68 74 22 3e 32 32 34 30 31 34 3c ="right">224014<
76e0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
76f0: 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 ight">178731</td
7700: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
7710: 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 t">182885</td><t
7720: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
7730: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
7740: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
7750: 72 69 67 68 74 22 3e 39 34 2e 38 31 32 34 32 34 right">94.812424
7760: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
7770: 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 54 52 4f d><td>VIA PIETRO
7780: 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c ARETINO</td>..<
7790: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
77a0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
77b0: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
77c0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
77d0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
77e0: 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">0</td><td alig
77f0: 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e n="right">2</td>
7800: 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
7810: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
7820: 32 34 34 34 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 24446</td><td al
7830: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 ign="right">1828
7840: 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 85</td><td align
7850: 3d 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 3c ="right">178880<
7860: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
7870: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
7880: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
7890: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 39 2e lign="right">69.
78a0: 37 32 37 37 32 36 3c 2f 74 64 3e 3c 74 64 3e 4e 727726</td><td>N
78b0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
78c0: 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e MARGARITONE</td>
78d0: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
78e0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
78f0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
7900: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
7910: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
7920: 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 ght">0</td><td a
7930: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f lign="right">3</
7940: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
7950: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
7960: 22 3e 32 32 34 34 31 34 3c 2f 74 64 3e 3c 74 64 ">224414</td><td
7970: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
7980: 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 78880</td><td al
7990: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 ign="right">1832
79a0: 38 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 86</td><td>NULL<
79b0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
79c0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
79d0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
79e0: 31 33 36 2e 33 37 32 30 35 37 3c 2f 74 64 3e 3c 136.372057</td><
79f0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
7a00: 56 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c VIA MARGARITONE<
7a10: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 /td>..</tr>..</t
7a20: 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 4c 65 74 able>..<br>..Let
7a30: 27 73 20 71 75 69 63 6b 6c 79 20 65 78 61 6d 69 's quickly exami
7a40: 6e 65 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 ne the resultset
7a50: 20 72 65 74 75 72 6e 65 64 20 62 79 20 74 68 65 returned by the
7a60: 20 61 62 6f 76 65 20 52 6f 75 74 69 6e 67 20 71 above Routing q
7a70: 75 65 72 79 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 uery:..<ul>..<li
7a80: 3e 74 68 65 20 3c 62 3e 66 69 72 73 74 20 72 6f >the <b>first ro
7a90: 77 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 3c 2f 69 w</b> (<i>aka</i
7aa0: 3e 20 68 65 61 64 65 72 20 72 6f 77 29 20 68 61 > header row) ha
7ab0: 73 20 61 20 73 70 65 63 69 61 6c 20 69 6e 74 65 s a special inte
7ac0: 72 70 72 65 74 61 74 69 6f 6e 2c 20 61 6e 64 20 rpretation, and
7ad0: 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 73 is intended to s
7ae0: 75 6d 6d 61 72 69 7a 65 20 74 68 65 20 74 72 61 ummarize the tra
7af0: 76 65 6c 20 73 6f 6c 75 74 69 6f 6e 20 61 73 20 vel solution as
7b00: 61 20 77 68 6f 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c a whole.</li>..<
7b10: 6c 69 3e 61 6c 6c 20 74 68 65 20 3c 62 3e 66 6f li>all the <b>fo
7b20: 6c 6c 6f 77 69 6e 67 20 72 6f 77 73 3c 2f 62 3e llowing rows</b>
7b30: 20 72 65 70 72 65 73 65 6e 74 20 61 20 73 69 6e represent a sin
7b40: 67 6c 65 20 4c 69 6e 6b 20 72 65 71 75 69 72 65 gle Link require
7b50: 64 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 73 d to build the s
7b60: 6f 6c 75 74 69 6f 6e 20 28 6f 70 74 69 6d 61 20 olution (optima
7b70: 70 61 74 68 29 3b 20 4c 69 6e 6b 73 20 61 72 65 path); Links are
7b80: 20 6f 72 64 65 72 65 64 20 61 63 63 6f 72 64 69 ordered accordi
7b90: 6e 67 6c 79 20 74 6f 20 74 68 65 20 74 72 61 76 ngly to the trav
7ba0: 65 6c 20 64 69 72 65 63 74 69 6f 6e 20 63 6f 6e el direction con
7bb0: 6e 65 63 74 69 6e 67 20 74 68 65 20 4f 72 69 67 necting the Orig
7bc0: 69 6e 20 61 6e 64 20 74 68 65 20 44 65 73 74 69 in and the Desti
7bd0: 6e 61 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c nation.</li>..<l
7be0: 69 3e 63 6f 6c 75 6d 6e 73 20 3c 62 3e 41 6c 67 i>columns <b>Alg
7bf0: 6f 72 69 74 68 6d 3c 2f 62 3e 2c 20 3c 62 3e 52 orithm</b>, <b>R
7c00: 65 71 75 65 73 74 3c 2f 62 3e 2c 20 3c 62 3e 4f equest</b>, <b>O
7c10: 70 74 69 6f 6e 73 3c 2f 62 3e 2c 20 3c 62 3e 44 ptions</b>, <b>D
7c20: 65 6c 69 6d 69 74 65 72 3c 2f 62 3e 2c 20 3c 62 elimiter</b>, <b
7c30: 3e 50 6f 69 6e 74 46 72 6f 6d 3c 2f 62 3e 2c 20 >PointFrom</b>,
7c40: 3c 62 3e 50 6f 69 6e 74 54 6f 3c 2f 62 3e 2c 20 <b>PointTo</b>,
7c50: 3c 62 3e 54 6f 6c 65 72 61 6e 63 65 3c 2f 62 3e <b>Tolerance</b>
7c60: 20 61 6e 64 20 3c 62 3e 47 65 6f 6d 65 74 72 79 and <b>Geometry
7c70: 3c 2f 62 3e 20 61 72 65 20 61 6c 77 61 79 73 20 </b> are always
7c80: 73 65 74 20 74 6f 20 3c 62 3e 4e 55 4c 4c 3c 2f set to <b>NULL</
7c90: 62 3e 20 65 78 63 65 70 74 20 74 68 61 74 20 69 b> except that i
7ca0: 6e 20 74 68 65 20 66 69 72 73 74 20 72 6f 77 20 n the first row
7cb0: 6f 66 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 of the resultset
7cc0: 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 63 6f 6c :..<ul>..<li>col
7cd0: 75 6d 6e 20 3c 62 3e 41 6c 67 6f 72 69 74 68 6d umn <b>Algorithm
7ce0: 3c 2f 62 3e 20 61 63 63 6f 75 6e 74 73 20 66 6f </b> accounts fo
7cf0: 72 20 74 68 65 20 52 6f 75 74 69 6e 67 20 41 6c r the Routing Al
7d00: 67 6f 72 69 74 68 6d 20 75 73 65 64 20 62 79 20 gorithm used by
7d10: 74 68 65 20 63 75 72 72 65 6e 74 20 71 75 65 72 the current quer
7d20: 79 20 28 3c 69 3e 44 69 6a 6b 73 74 72 61 27 73 y (<i>Dijkstra's
7d30: 3c 2f 69 3e 20 6f 72 20 3c 69 3e 41 2a 3c 2f 69 </i> or <i>A*</i
7d40: 3e 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f >).</li>..<li>co
7d50: 6c 75 6d 6e 20 3c 62 3e 52 65 71 75 65 73 74 3c lumn <b>Request<
7d60: 2f 62 3e 20 73 70 65 63 69 66 69 65 73 20 74 68 /b> specifies th
7d70: 65 20 65 78 61 63 74 20 6e 61 74 75 72 65 20 6f e exact nature o
7d80: 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 71 75 f the current qu
7d90: 65 72 79 20 28 69 6e 20 74 68 69 73 20 73 70 65 ery (in this spe
7da0: 63 69 66 69 63 20 63 61 73 65 20 3c 69 3e 53 68 cific case <i>Sh
7db0: 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 69 3e 29 ortest Path</i>)
7dc0: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 77 65 27 6c .</li>..<li>we'l
7dd0: 6c 20 69 67 6e 6f 72 65 20 66 6f 72 20 6e 6f 77 l ignore for now
7de0: 20 63 6f 6c 75 6d 6e 73 20 3c 62 3e 4f 70 74 69 columns <b>Opti
7df0: 6f 6e 73 3c 2f 62 3e 2c 20 3c 62 3e 44 65 6c 69 ons</b>, <b>Deli
7e00: 6d 69 74 65 72 3c 2f 62 3e 2c 20 3c 62 3e 50 6f miter</b>, <b>Po
7e10: 69 6e 74 46 72 6f 6d 3c 2f 62 3e 2c 20 3c 62 3e intFrom</b>, <b>
7e20: 50 6f 69 6e 74 54 6f 3c 2f 62 3e 20 61 6e 64 20 PointTo</b> and
7e30: 3c 62 3e 54 6f 6c 65 72 61 6e 63 65 3c 2f 62 3e <b>Tolerance</b>
7e40: 3a 20 74 68 65 69 72 20 72 65 73 70 65 63 74 69 : their respecti
7e50: 76 65 20 6d 65 61 6e 69 6e 67 73 20 77 69 6c 6c ve meanings will
7e60: 20 62 65 20 65 78 70 6c 61 69 6e 65 64 20 69 6e be explained in
7e70: 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 61 72 61 67 following parag
7e80: 72 61 70 68 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 raphs.</li>..<li
7e90: 3e 63 6f 6c 75 6d 6e 20 3c 62 3e 47 65 6f 6d 65 >column <b>Geome
7ea0: 74 72 79 3c 2f 62 3e 20 63 6f 6e 74 61 69 6e 73 try</b> contains
7eb0: 20 61 20 3c 62 3e 4c 49 4e 45 53 54 52 49 4e 47 a <b>LINESTRING
7ec0: 3c 2f 62 3e 20 72 65 70 72 65 73 65 6e 74 61 74 </b> representat
7ed0: 69 6f 6e 20 6f 66 20 74 68 65 20 77 68 6f 6c 65 ion of the whole
7ee0: 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 6f 6e travel solution
7ef0: 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f .<br>..<u>Note</
7f00: 75 3e 3a 20 6f 6e 20 3c 62 3e 4c 6f 67 69 63 61 u>: on <b>Logica
7f10: 6c 20 4e 65 74 77 6f 72 6b 73 3c 2f 62 3e 20 28 l Networks</b> (
7f20: 6e 6f 74 20 73 75 70 70 6f 72 74 69 6e 67 20 47 not supporting G
7f30: 65 6f 6d 65 74 72 69 65 73 29 20 3c 62 3e 47 65 eometries) <b>Ge
7f40: 6f 6d 65 74 72 79 3c 2f 62 3e 20 77 69 6c 6c 20 ometry</b> will
7f50: 61 6c 77 61 79 73 20 62 65 20 3c 62 3e 4e 55 4c always be <b>NUL
7f60: 4c 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 L</b>.</li>..</u
7f70: 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 77 65 27 l></li>..<li>we'
7f80: 6c 6c 20 69 67 6e 6f 72 65 20 66 6f 72 20 6e 6f ll ignore for no
7f90: 77 20 63 6f 6c 75 6d 6e 20 3c 62 3e 52 6f 75 74 w column <b>Rout
7fa0: 65 49 64 3c 2f 62 3e 3b 20 69 74 73 20 6d 65 61 eId</b>; its mea
7fb0: 6e 69 6e 67 20 77 69 6c 6c 20 62 65 20 65 78 70 ning will be exp
7fc0: 6c 61 69 6e 65 64 20 69 6e 20 66 6f 6c 6c 6f 77 lained in follow
7fd0: 69 6e 67 20 70 61 72 61 67 72 61 70 68 73 2e 3c ing paragraphs.<
7fe0: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e /li>..<li>column
7ff0: 20 3c 62 3e 52 6f 75 74 65 52 6f 77 3c 2f 62 3e <b>RouteRow</b>
8000: 20 73 69 6d 70 6c 79 20 69 73 20 74 68 65 20 70 simply is the p
8010: 72 6f 67 72 65 73 73 69 76 65 20 6e 75 6d 62 65 rogressive numbe
8020: 72 20 6f 66 20 74 68 65 20 72 6f 77 20 69 6e 20 r of the row in
8030: 74 68 65 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 the travel solut
8040: 69 6f 6e 20 28 61 6c 77 61 79 73 20 3c 62 3e 30 ion (always <b>0
8050: 3c 2f 62 3e 20 69 6e 20 74 68 65 20 68 65 61 64 </b> in the head
8060: 65 72 20 72 6f 77 29 2e 3c 2f 6c 69 3e 0d 0a 3c er row).</li>..<
8070: 6c 69 3e 63 6f 6c 75 6d 6e 20 3c 62 3e 52 6f 6c li>column <b>Rol
8080: 65 3c 2f 62 3e 20 63 61 6e 20 62 65 20 3c 69 3e e</b> can be <i>
8090: 52 6f 75 74 65 3c 2f 69 3e 20 28 68 65 61 64 65 Route</i> (heade
80a0: 72 20 72 6f 77 29 20 6f 72 20 3c 69 3e 4c 69 6e r row) or <i>Lin
80b0: 6b 3c 2f 69 3e 20 28 61 6c 6c 20 66 6f 6c 6c 6f k</i> (all follo
80c0: 77 69 6e 67 20 72 6f 77 73 29 2e 3c 2f 6c 69 3e wing rows).</li>
80d0: 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e 20 3c 62 3e ..<li>column <b>
80e0: 4c 69 6e 6b 52 6f 77 69 64 3c 2f 62 3e 20 72 65 LinkRowid</b> re
80f0: 66 65 72 65 6e 63 65 73 20 74 68 65 20 3c 62 3e ferences the <b>
8100: 52 4f 57 49 44 3c 2f 62 3e 20 6f 66 20 74 68 65 ROWID</b> of the
8110: 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 4c corresponding L
8120: 69 6e 6b 20 28 61 6c 77 61 79 73 20 73 65 74 20 ink (always set
8130: 74 6f 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 69 to <b>NULL</b> i
8140: 6e 20 74 68 65 20 68 65 61 64 65 72 20 72 6f 77 n the header row
8150: 29 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c ).</li>..<li>col
8160: 75 6d 6e 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c umn <b>NodeFrom<
8170: 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e 6f 64 65 54 /b> and <b>NodeT
8180: 6f 3c 2f 62 3e 20 68 61 76 65 20 74 68 65 20 66 o</b> have the f
8190: 6f 6c 6c 6f 77 69 6e 67 20 69 6e 74 65 72 70 72 ollowing interpr
81a0: 65 74 61 74 69 6f 6e 3a 0d 0a 3c 75 6c 3e 0d 0a etation:..<ul>..
81b0: 3c 6c 69 3e 69 6e 20 74 68 65 20 68 65 61 64 65 <li>in the heade
81c0: 72 20 72 6f 77 20 74 68 65 79 20 63 6f 72 72 65 r row they corre
81d0: 73 70 6f 6e 64 20 74 6f 20 68 65 20 3c 62 3e 4f spond to he <b>O
81e0: 72 69 67 69 6e 3c 2f 62 3e 20 61 6e 64 20 3c 62 rigin</b> and <b
81f0: 3e 44 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 62 3e >Destination</b>
8200: 20 4e 6f 64 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c 6c Nodes.</li>..<l
8210: 69 3e 69 6e 20 61 6c 6c 20 74 68 65 20 66 6f 6c i>in all the fol
8220: 6c 6f 77 69 6e 67 20 72 6f 77 73 20 74 68 65 79 lowing rows they
8230: 20 61 72 65 20 69 6e 74 65 6e 64 65 64 20 74 6f are intended to
8240: 20 73 70 65 63 69 66 79 20 74 68 65 20 64 69 72 specify the dir
8250: 65 63 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 75 ection of the cu
8260: 72 72 65 6e 74 20 4c 69 6e 6b 2e 3c 2f 6c 69 3e rrent Link.</li>
8270: 0d 0a 3c 2f 75 6c 3e 3c 2f 6c 69 3e 0d 0a 3c 6c ..</ul></li>..<l
8280: 69 3e 63 6f 6c 75 6d 6e 20 3c 62 3e 43 6f 73 74 i>column <b>Cost
8290: 3c 2f 62 3e 20 68 61 73 20 74 68 65 20 66 6f 6c </b> has the fol
82a0: 6c 6f 77 69 6e 67 20 69 6e 74 65 72 70 72 65 74 lowing interpret
82b0: 61 74 69 6f 6e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c ation:..<ul>..<l
82c0: 69 3e 69 6e 20 74 68 65 20 68 65 61 64 65 72 20 i>in the header
82d0: 74 6f 77 20 69 74 20 63 6f 72 72 65 73 70 6f 6e tow it correspon
82e0: 64 73 20 74 6f 20 74 68 65 20 3c 62 3e 74 6f 74 ds to the <b>tot
82f0: 61 6c 20 63 6f 73 74 3c 2f 62 3e 20 6f 66 20 74 al cost</b> of t
8300: 68 65 20 74 72 61 76 65 6c 2e 3c 2f 6c 69 3e 0d he travel.</li>.
8310: 0a 3c 6c 69 3e 69 6e 20 61 6c 6c 20 74 68 65 20 .<li>in all the
8320: 66 6f 6c 6c 6f 77 69 6e 67 20 72 6f 77 73 20 69 following rows i
8330: 74 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 65 t represents the
8340: 20 73 70 65 63 69 66 69 63 20 63 6f 73 74 20 6f specific cost o
8350: 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 4c 69 f the current Li
8360: 6e 6b 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c nk.</li>..</ul><
8370: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e /li>..<li>column
8380: 20 3c 62 3e 4e 61 6d 65 3c 2f 62 3e 20 63 6f 6e <b>Name</b> con
8390: 74 61 69 6e 73 20 74 68 65 20 64 65 73 63 72 69 tains the descri
83a0: 70 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 75 72 ption of the cur
83b0: 72 65 6e 74 20 4c 69 6e 6b 20 28 75 73 75 61 6c rent Link (usual
83c0: 6c 79 20 61 20 72 6f 61 64 20 6e 61 6d 65 29 2c ly a road name),
83d0: 20 61 6e 64 20 69 73 20 61 6c 77 61 79 73 20 3c and is always <
83e0: 62 3e 4e 55 4c 4c 3c 2f 62 3e 20 69 6e 20 74 68 b>NULL</b> in th
83f0: 65 20 68 65 61 64 65 72 20 72 6f 77 2e 3c 62 72 e header row.<br
8400: 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 20 69 >..<u>Note</u> i
8410: 74 20 63 6f 75 6c 64 20 62 65 20 61 6c 77 61 79 t could be alway
8420: 73 20 62 65 20 3c 62 3e 4e 55 4c 4c 3c 2f 62 3e s be <b>NULL</b>
8430: 20 69 66 20 74 68 65 20 56 69 72 74 75 61 6c 52 if the VirtualR
8440: 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 64 6f 65 outing Table doe
8450: 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 73 20 6e s not supports n
8460: 61 6d 65 73 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c ames.</li>..</ul
8470: 3e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c ></li>..</ul>..<
8480: 62 72 3e 3c 62 72 3e 0d 0a 54 65 73 74 69 6e 67 br><br>..Testing
8490: 20 74 68 65 20 72 65 74 75 72 6e 20 63 6f 6e 6e the return conn
84a0: 65 63 74 69 6f 6e 20 6a 75 73 74 20 72 65 71 75 ection just requ
84b0: 69 72 65 73 20 73 77 61 70 70 69 6e 67 20 74 68 ires swapping th
84c0: 65 20 4f 72 69 67 69 6e 20 61 6e 64 20 74 68 65 e Origin and the
84d0: 20 44 65 73 74 69 6e 61 74 69 6f 6e 3b 20 69 6e Destination; in
84e0: 20 74 68 69 73 20 65 78 61 6d 70 6c 65 20 79 6f this example yo
84f0: 75 27 6c 6c 20 6a 75 73 74 20 72 65 71 75 65 73 u'll just reques
8500: 74 20 74 68 65 20 6d 65 61 6e 69 6e 67 66 75 6c t the meaningful
8510: 20 63 6f 6c 75 6d 6e 73 3a 0d 0a 3c 76 65 72 62 columns:..<verb
8520: 61 74 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 52 6f atim>..SELECT Ro
8530: 75 74 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 uteRow, Role, Li
8540: 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 46 72 6f nkRowid, NodeFro
8550: 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 2c m, NodeTo, Cost,
8560: 20 47 65 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 0d Geometry, Name.
8570: 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 .FROM byfoot..WH
8580: 45 52 45 20 4e 6f 64 65 54 6f 20 3d 20 31 37 38 ERE NodeTo = 178
8590: 37 33 31 20 41 4e 44 20 4e 6f 64 65 46 72 6f 6d 731 AND NodeFrom
85a0: 20 3d 20 31 38 33 32 38 36 3b 0d 0a 3c 2f 76 65 = 183286;..</ve
85b0: 72 62 61 74 69 6d 3e 0d 0a 3c 74 61 62 6c 65 20 rbatim>..<table
85c0: 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 6f 6c border="1" bgcol
85d0: 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 65 6c or="#ffffcf" cel
85e0: 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 65 6c lspacing="4" cel
85f0: 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c lpadding="6">..<
8600: 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 tr><th bgcolor="
8610: 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f #d0d0a0">RouteRo
8620: 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f w</th><th bgcolo
8630: 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 r="#d0d0a0">Role
8640: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
8650: 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 ="#d0d0a0">LinkR
8660: 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 owid</th><th bgc
8670: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
8680: 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 odeFrom</th><th
8690: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
86a0: 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 ">NodeTo</th><th
86b0: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
86c0: 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 0">Cost</th><th
86d0: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
86e0: 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c ">Geometry</th><
86f0: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
8700: 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 0a0">Name</th></
8710: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 tr>..<tr>..<td a
8720: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
8730: 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 td><td>Route</td
8740: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
8750: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
8760: 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 183286</td><td a
8770: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 lign="right">178
8780: 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 731</td><td alig
8790: 6e 3d 22 72 69 67 68 74 22 3e 33 30 30 2e 39 31 n="right">300.91
87a0: 32 32 30 38 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 2208</td><td>BLO
87b0: 42 20 73 7a 3d 32 37 32 20 47 45 4f 4d 45 54 52 B sz=272 GEOMETR
87c0: 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f Y</td><td>NULL</
87d0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
87e0: 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 ..<td align="rig
87f0: 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">1</td><td>Li
8800: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
8810: 3d 22 72 69 67 68 74 22 3e 32 32 34 34 31 34 3c ="right">224414<
8820: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
8830: 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 ight">183286</td
8840: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
8850: 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 t">178880</td><t
8860: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
8870: 31 33 36 2e 33 37 32 30 35 37 3c 2f 74 64 3e 3c 136.372057</td><
8880: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
8890: 56 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c VIA MARGARITONE<
88a0: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 64 /td>..</tr>..<td
88b0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
88c0: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
88d0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
88e0: 68 74 22 3e 32 32 34 34 34 36 3c 2f 74 64 3e 3c ht">224446</td><
88f0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
8900: 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 >178880</td><td
8910: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
8920: 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2885</td><td ali
8930: 67 6e 3d 22 72 69 67 68 74 22 3e 36 39 2e 37 32 gn="right">69.72
8940: 37 37 32 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 7726</td><td>NUL
8950: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 L</td><td>VIA MA
8960: 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a RGARITONE</td>..
8970: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
8980: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
8990: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
89a0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
89b0: 68 74 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c ht">224014</td><
89c0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
89d0: 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 >182885</td><td
89e0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
89f0: 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
8a00: 67 6e 3d 22 72 69 67 68 74 22 3e 39 34 2e 38 31 gn="right">94.81
8a10: 32 34 32 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2424</td><td>NUL
8a20: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 L</td><td>VIA PI
8a30: 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 ETRO ARETINO</td
8a40: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c >..</tr>..</tabl
8a50: 65 3e 0d 0a 3c 62 72 3e 0d 0a 49 66 20 79 6f 75 e>..<br>..If you
8a60: 20 72 65 6d 65 6d 62 65 72 2c 20 74 68 65 20 3c remember, the <
8a70: 62 3e 62 79 66 6f 6f 74 3c 2f 62 3e 20 56 69 72 b>byfoot</b> Vir
8a80: 74 75 61 6c 52 6f 75 74 69 6e 67 20 54 61 62 6c tualRouting Tabl
8a90: 65 20 68 61 73 20 6e 6f 20 3c 62 3e 6f 6e 65 2d e has no <b>one-
8aa0: 77 61 79 73 3c 2f 62 3e 2c 20 61 6e 64 20 63 6f ways</b>, and co
8ab0: 6e 73 65 71 75 65 6e 74 6c 79 20 74 68 65 20 72 nsequently the r
8ac0: 65 74 75 72 6e 20 70 61 74 68 20 65 78 61 63 74 eturn path exact
8ad0: 6c 79 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 ly corresponds t
8ae0: 6f 20 74 68 65 20 66 69 72 73 74 20 6f 6e 65 2c o the first one,
8af0: 20 65 78 63 65 70 74 20 69 6e 20 74 68 61 74 20 except in that
8b00: 61 6c 6c 20 64 69 72 65 63 74 69 6f 6e 73 20 61 all directions a
8b10: 72 65 20 6e 6f 77 20 72 65 76 65 72 73 65 64 2e re now reversed.
8b20: 0d 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a ..<br><br><br>..
8b30: 4e 6f 77 20 79 6f 75 27 6c 6c 20 67 6f 20 74 6f Now you'll go to
8b40: 20 74 65 73 74 20 74 68 65 20 73 61 6d 65 20 63 test the same c
8b50: 6f 6e 6e 65 63 74 69 6f 6e 73 2c 20 62 75 74 20 onnections, but
8b60: 74 68 69 73 20 74 69 6d 65 20 79 6f 75 27 6c 6c this time you'll
8b70: 20 74 61 72 67 65 74 20 74 68 65 20 3c 62 3e 62 target the <b>b
8b80: 79 63 61 72 3c 2f 62 3e 20 56 69 72 74 75 61 6c ycar</b> Virtual
8b90: 52 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 74 68 Routing Table th
8ba0: 61 74 20 66 75 6c 6c 79 20 73 75 70 70 6f 72 74 at fully support
8bb0: 73 20 3c 62 3e 6f 6e 65 2d 77 61 79 73 3c 2f 62 s <b>one-ways</b
8bc0: 3e 3a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a >:..<verbatim>..
8bd0: 53 45 4c 45 43 54 20 52 6f 75 74 65 52 6f 77 2c SELECT RouteRow,
8be0: 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 Role, LinkRowid
8bf0: 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 , NodeFrom, Node
8c00: 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 To, Cost, Geomet
8c10: 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 ry, Name..FROM b
8c20: 79 63 61 72 0d 0a 57 48 45 52 45 20 4e 6f 64 65 ycar..WHERE Node
8c30: 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e From = 178731 AN
8c40: 44 20 4e 6f 64 65 54 6f 20 3d 20 31 38 33 32 38 D NodeTo = 18328
8c50: 36 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 6;..</verbatim>.
8c60: 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 3d 22 .<table border="
8c70: 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 66 1" bgcolor="#fff
8c80: 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 fcf" cellspacing
8c90: 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 ="4" cellpadding
8ca0: 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 62 ="6">..<tr><th b
8cb0: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
8cc0: 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 >RouteRow</th><t
8cd0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
8ce0: 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 a0">Role</th><th
8cf0: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
8d00: 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 0">LinkRowid</th
8d10: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
8d20: 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 0d0a0">NodeFrom<
8d30: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
8d40: 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 6f "#d0d0a0">NodeTo
8d50: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
8d60: 3d 22 23 64 30 64 30 61 30 22 3e 43 6f 73 74 3c ="#d0d0a0">Cost<
8d70: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
8d80: 22 23 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 74 "#d0d0a0">Geomet
8d90: 72 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c ry</th><th bgcol
8da0: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 61 6d or="#d0d0a0">Nam
8db0: 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 e</th></tr>..<tr
8dc0: 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 >..<td align="ri
8dd0: 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 ght">0</td><td>R
8de0: 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c oute</td><td>NUL
8df0: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
8e00: 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f "right">178731</
8e10: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
8e20: 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e ght">183286</td>
8e30: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
8e40: 22 3e 31 30 31 2e 38 31 35 35 35 32 3c 2f 74 64 ">101.815552</td
8e50: 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 30 33 ><td>BLOB sz=203
8e60: 32 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 2 GEOMETRY</td><
8e70: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f td>NULL</td>..</
8e80: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 tr>..<tr>..<td a
8e90: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f lign="right">1</
8ea0: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
8eb0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
8ec0: 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c 74 64 ">224014</td><td
8ed0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
8ee0: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
8ef0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 ign="right">1828
8f00: 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 85</td><td align
8f10: 3d 22 72 69 67 68 74 22 3e 31 33 2e 31 32 37 38 ="right">13.1278
8f20: 37 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 74</td><td>NULL<
8f30: 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 54 /td><td>VIA PIET
8f40: 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d RO ARETINO</td>.
8f50: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
8f60: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
8f70: 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 2</td><td>Link</
8f80: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
8f90: 67 68 74 22 3e 32 32 34 34 34 36 3c 2f 74 64 3e ght">224446</td>
8fa0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
8fb0: 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 ">182885</td><td
8fc0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
8fd0: 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 78880</td><td al
8fe0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 39 2e 36 35 ign="right">9.65
8ff0: 34 36 30 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4608</td><td>NUL
9000: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 L</td><td>VIA MA
9010: 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a RGARITONE</td>..
9020: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
9030: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
9040: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
9050: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
9060: 68 74 22 3e 32 31 39 31 37 31 3c 2f 74 64 3e 3c ht">219171</td><
9070: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9080: 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 >178880</td><td
9090: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
90a0: 38 37 33 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8732</td><td ali
90b0: 67 6e 3d 22 72 69 67 68 74 22 3e 37 2e 38 30 39 gn="right">7.809
90c0: 39 35 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 952</td><td>NULL
90d0: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 52 41 </td><td>VIA FRA
90e0: 4e 43 45 53 43 4f 20 43 52 49 53 50 49 3c 2f 74 NCESCO CRISPI</t
90f0: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
9100: 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 .<td align="righ
9110: 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">4</td><td>Lin
9120: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
9130: 22 72 69 67 68 74 22 3e 32 31 39 30 35 38 3c 2f "right">219058</
9140: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9150: 67 68 74 22 3e 31 37 38 37 33 32 3c 2f 74 64 3e ght">178732</td>
9160: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
9170: 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 64 ">178754</td><td
9180: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
9190: 32 2e 34 34 35 36 32 36 3c 2f 74 64 3e 3c 74 64 2.445626</td><td
91a0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
91b0: 41 20 46 52 41 4e 43 45 53 43 4f 20 43 52 49 53 A FRANCESCO CRIS
91c0: 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a PI</td>..</tr>..
91d0: 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d <tr>..<td align=
91e0: 22 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c 74 "right">5</td><t
91f0: 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
9200: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 lign="right">225
9210: 38 38 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 888</td><td alig
9220: 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 34 n="right">178754
9230: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
9240: 72 69 67 68 74 22 3e 31 38 33 34 36 31 3c 2f 74 right">183461</t
9250: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
9260: 68 74 22 3e 31 2e 35 39 39 38 36 35 3c 2f 74 64 ht">1.599865</td
9270: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
9280: 64 3e 56 49 41 20 46 52 41 4e 43 45 53 43 4f 20 d>VIA FRANCESCO
9290: 43 52 49 53 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 CRISPI</td>..</t
92a0: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c r>..<tr>..<td al
92b0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 3c 2f 74 ign="right">6</t
92c0: 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
92d0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
92e0: 3e 32 32 35 38 38 37 3c 2f 74 64 3e 3c 74 64 20 >225887</td><td
92f0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
9300: 33 34 36 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3461</td><td ali
9310: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 30 gn="right">18280
9320: 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
9330: 22 72 69 67 68 74 22 3e 33 2e 33 30 30 35 39 30 "right">3.300590
9340: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
9350: 64 3e 3c 74 64 3e 56 49 41 20 46 52 41 4e 43 45 d><td>VIA FRANCE
9360: 53 43 4f 20 43 52 49 53 50 49 3c 2f 74 64 3e 0d SCO CRISPI</td>.
9370: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
9380: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9390: 37 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 7</td><td>Link</
93a0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
93b0: 67 68 74 22 3e 32 32 33 39 33 35 3c 2f 74 64 3e ght">223935</td>
93c0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
93d0: 22 3e 31 38 32 38 30 30 3c 2f 74 64 3e 3c 74 64 ">182800</td><td
93e0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
93f0: 38 32 37 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 82799</td><td al
9400: 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 2e 36 38 ign="right">6.68
9410: 38 37 38 36 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 8786</td><td>NUL
9420: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 4c 45 20 L</td><td>VIALE
9430: 4c 55 43 41 20 53 49 47 4e 4f 52 45 4c 4c 49 3c LUCA SIGNORELLI<
9440: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
9450: 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 >..<td align="ri
9460: 67 68 74 22 3e 38 3c 2f 74 64 3e 3c 74 64 3e 4c ght">8</td><td>L
9470: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
9480: 6e 3d 22 72 69 67 68 74 22 3e 32 32 36 30 33 38 n="right">226038
9490: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
94a0: 72 69 67 68 74 22 3e 31 38 32 37 39 39 3c 2f 74 right">182799</t
94b0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
94c0: 68 74 22 3e 31 38 33 34 35 36 3c 2f 74 64 3e 3c ht">183456</td><
94d0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
94e0: 3e 31 2e 32 39 34 30 31 37 3c 2f 74 64 3e 3c 74 >1.294017</td><t
94f0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
9500: 49 41 4c 45 20 4c 55 43 41 20 53 49 47 4e 4f 52 IALE LUCA SIGNOR
9510: 45 4c 4c 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ELLI</td>..</tr>
9520: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 ..<tr>..<td alig
9530: 6e 3d 22 72 69 67 68 74 22 3e 39 3c 2f 74 64 3e n="right">9</td>
9540: 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
9550: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
9560: 32 35 38 33 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 25832</td><td al
9570: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 34 ign="right">1834
9580: 35 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 56</td><td align
9590: 3d 22 72 69 67 68 74 22 3e 31 38 33 34 34 34 3c ="right">183444<
95a0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
95b0: 69 67 68 74 22 3e 32 2e 33 38 35 34 38 36 3c 2f ight">2.385486</
95c0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
95d0: 3c 74 64 3e 56 49 41 4c 45 20 4c 55 43 41 20 53 <td>VIALE LUCA S
95e0: 49 47 4e 4f 52 45 4c 4c 49 3c 2f 74 64 3e 0d 0a IGNORELLI</td>..
95f0: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
9600: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
9610: 30 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 0</td><td>Link</
9620: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9630: 67 68 74 22 3e 32 32 35 38 33 31 3c 2f 74 64 3e ght">225831</td>
9640: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
9650: 22 3e 31 38 33 34 34 34 3c 2f 74 64 3e 3c 74 64 ">183444</td><td
9660: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
9670: 38 33 35 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 83554</td><td al
9680: 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 2e 31 36 ign="right">3.16
9690: 30 36 36 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 0662</td><td>NUL
96a0: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 4c 45 20 L</td><td>VIALE
96b0: 4c 55 43 41 20 53 49 47 4e 4f 52 45 4c 4c 49 3c LUCA SIGNORELLI<
96c0: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
96d0: 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 >..<td align="ri
96e0: 67 68 74 22 3e 31 31 3c 2f 74 64 3e 3c 74 64 3e ght">11</td><td>
96f0: 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
9700: 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 37 36 gn="right">22576
9710: 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 5</td><td align=
9720: 22 72 69 67 68 74 22 3e 31 38 33 35 35 34 3c 2f "right">183554</
9730: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
9740: 67 68 74 22 3e 31 38 33 39 35 34 3c 2f 74 64 3e ght">183954</td>
9750: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
9760: 22 3e 37 2e 34 36 39 39 31 37 3c 2f 74 64 3e 3c ">7.469917</td><
9770: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
9780: 56 49 41 4c 45 20 4c 55 43 41 20 53 49 47 4e 4f VIALE LUCA SIGNO
9790: 52 45 4c 4c 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 RELLI</td>..</tr
97a0: 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 >..<tr>..<td ali
97b0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 32 3c 2f 74 gn="right">12</t
97c0: 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
97d0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
97e0: 3e 32 32 35 37 36 36 3c 2f 74 64 3e 3c 74 64 20 >225766</td><td
97f0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
9800: 33 39 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3954</td><td ali
9810: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 39 30 gn="right">18390
9820: 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 5</td><td align=
9830: 22 72 69 67 68 74 22 3e 33 2e 32 33 36 33 38 39 "right">3.236389
9840: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
9850: 64 3e 3c 74 64 3e 56 49 41 4c 45 20 4c 55 43 41 d><td>VIALE LUCA
9860: 20 53 49 47 4e 4f 52 45 4c 4c 49 3c 2f 74 64 3e SIGNORELLI</td>
9870: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
9880: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9890: 3e 31 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b >13</td><td>Link
98a0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
98b0: 72 69 67 68 74 22 3e 32 32 35 39 37 39 3c 2f 74 right">225979</t
98c0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
98d0: 68 74 22 3e 31 38 33 39 30 35 3c 2f 74 64 3e 3c ht">183905</td><
98e0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
98f0: 3e 31 38 33 36 32 36 3c 2f 74 64 3e 3c 74 64 20 >183626</td><td
9900: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 33 align="right">13
9910: 2e 39 38 33 36 32 39 3c 2f 74 64 3e 3c 74 64 3e .983629</td><td>
9920: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 53 54 52 NULL</td><td>STR
9930: 41 44 41 20 53 45 4e 5a 41 20 4e 4f 4d 45 3c 2f ADA SENZA NOME</
9940: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
9950: 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 ..<td align="rig
9960: 68 74 22 3e 31 34 3c 2f 74 64 3e 3c 74 64 3e 4c ht">14</td><td>L
9970: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
9980: 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 39 30 35 n="right">224905
9990: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
99a0: 72 69 67 68 74 22 3e 31 38 33 36 32 36 3c 2f 74 right">183626</t
99b0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
99c0: 68 74 22 3e 31 38 33 31 32 38 3c 2f 74 64 3e 3c ht">183128</td><
99d0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
99e0: 3e 35 2e 36 32 37 33 35 38 3c 2f 74 64 3e 3c 74 >5.627358</td><t
99f0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 53 d>NULL</td><td>S
9a00: 54 52 41 44 41 20 53 45 4e 5a 41 20 4e 4f 4d 45 TRADA SENZA NOME
9a10: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
9a20: 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 r>..<td align="r
9a30: 69 67 68 74 22 3e 31 35 3c 2f 74 64 3e 3c 74 64 ight">15</td><td
9a40: 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
9a50: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 38 ign="right">2248
9a60: 39 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 97</td><td align
9a70: 3d 22 72 69 67 68 74 22 3e 31 38 33 31 32 38 3c ="right">183128<
9a80: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9a90: 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 ight">183286</td
9aa0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
9ab0: 74 22 3e 31 30 2e 30 33 30 37 39 32 3c 2f 74 64 t">10.030792</td
9ac0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
9ad0: 64 3e 56 49 41 20 4d 41 52 47 41 52 49 54 4f 4e d>VIA MARGARITON
9ae0: 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c E</td>..</tr>..<
9af0: 2f 74 61 62 6c 65 3e 0d 0a 3c 76 65 72 62 61 74 /table>..<verbat
9b00: 69 6d 3e 0d 0a 53 45 4c 45 43 54 20 52 6f 75 74 im>..SELECT Rout
9b10: 65 52 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b eRow, Role, Link
9b20: 52 6f 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c Rowid, NodeFrom,
9b30: 20 4e 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 47 NodeTo, Cost, G
9b40: 65 6f 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 eometry, Name..F
9b50: 52 4f 4d 20 62 79 63 61 72 0d 0a 57 48 45 52 45 ROM bycar..WHERE
9b60: 20 4e 6f 64 65 54 6f 20 3d 20 31 37 38 37 33 31 NodeTo = 178731
9b70: 20 41 4e 44 20 4e 6f 64 65 46 72 6f 6d 20 3d 20 AND NodeFrom =
9b80: 31 38 33 32 38 36 3b 0d 0a 3c 2f 76 65 72 62 61 183286;..</verba
9b90: 74 69 6d 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 tim>..<table bor
9ba0: 64 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d der="1" bgcolor=
9bb0: 22 23 66 66 66 66 63 66 22 20 63 65 6c 6c 73 70 "#ffffcf" cellsp
9bc0: 61 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 acing="4" cellpa
9bd0: 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e dding="6">..<tr>
9be0: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
9bf0: 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 3c 2f d0a0">RouteRow</
9c00: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
9c10: 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 #d0d0a0">Role</t
9c20: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
9c30: 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f 77 69 d0d0a0">LinkRowi
9c40: 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f d</th><th bgcolo
9c50: 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 r="#d0d0a0">Node
9c60: 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 From</th><th bgc
9c70: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
9c80: 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 odeTo</th><th bg
9c90: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
9ca0: 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 63 Cost</th><th bgc
9cb0: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 47 olor="#d0d0a0">G
9cc0: 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 68 20 eometry</th><th
9cd0: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
9ce0: 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 72 3e ">Name</th></tr>
9cf0: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 ..<tr>..<td alig
9d00: 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e n="right">0</td>
9d10: 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 <td>Route</td><t
9d20: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
9d30: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
9d40: 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 286</td><td alig
9d50: 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 n="right">178731
9d60: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
9d70: 72 69 67 68 74 22 3e 31 30 33 2e 33 30 35 32 35 right">103.30525
9d80: 39 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 9</td><td>BLOB s
9d90: 7a 3d 39 34 34 20 47 45 4f 4d 45 54 52 59 3c 2f z=944 GEOMETRY</
9da0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
9db0: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
9dc0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9dd0: 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >1</td><td>Link<
9de0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9df0: 69 67 68 74 22 3e 32 32 34 34 31 34 3c 2f 74 64 ight">224414</td
9e00: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
9e10: 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 t">183286</td><t
9e20: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9e30: 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 178880</td><td a
9e40: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 2e lign="right">18.
9e50: 38 38 32 32 38 35 3c 2f 74 64 3e 3c 74 64 3e 4e 882285</td><td>N
9e60: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
9e70: 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e MARGARITONE</td>
9e80: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
9e90: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9ea0: 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >2</td><td>Link<
9eb0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
9ec0: 69 67 68 74 22 3e 32 31 39 31 37 31 3c 2f 74 64 ight">219171</td
9ed0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
9ee0: 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 t">178880</td><t
9ef0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
9f00: 31 37 38 37 33 32 3c 2f 74 64 3e 3c 74 64 20 61 178732</td><td a
9f10: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 2e 38 lign="right">7.8
9f20: 30 39 39 35 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 09952</td><td>NU
9f30: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 LL</td><td>VIA F
9f40: 52 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 3c RANCESCO CRISPI<
9f50: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
9f60: 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 >..<td align="ri
9f70: 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c ght">3</td><td>L
9f80: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
9f90: 6e 3d 22 72 69 67 68 74 22 3e 32 31 39 30 35 38 n="right">219058
9fa0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
9fb0: 72 69 67 68 74 22 3e 31 37 38 37 33 32 3c 2f 74 right">178732</t
9fc0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
9fd0: 68 74 22 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c ht">178754</td><
9fe0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
9ff0: 3e 31 32 2e 34 34 35 36 32 36 3c 2f 74 64 3e 3c >12.445626</td><
a000: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
a010: 56 49 41 20 46 52 41 4e 43 45 53 43 4f 20 43 52 VIA FRANCESCO CR
a020: 49 53 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ISPI</td>..</tr>
a030: 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 ..<tr>..<td alig
a040: 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e n="right">4</td>
a050: 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
a060: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
a070: 32 34 35 33 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 24538</td><td al
a080: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
a090: 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 54</td><td align
a0a0: 3d 22 72 69 67 68 74 22 3e 31 38 31 39 37 32 3c ="right">181972<
a0b0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
a0c0: 69 67 68 74 22 3e 37 2e 30 34 37 37 38 34 3c 2f ight">7.047784</
a0d0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
a0e0: 3c 74 64 3e 56 49 41 20 41 4e 54 4f 4e 49 4f 20 <td>VIA ANTONIO
a0f0: 47 55 41 44 41 47 4e 4f 4c 49 3c 2f 74 64 3e 0d GUADAGNOLI</td>.
a100: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
a110: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a120: 35 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 5</td><td>Link</
a130: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a140: 67 68 74 22 3e 32 32 32 35 37 35 3c 2f 74 64 3e ght">222575</td>
a150: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
a160: 22 3e 31 38 31 39 37 32 3c 2f 74 64 3e 3c 74 64 ">181972</td><td
a170: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
a180: 38 31 39 37 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 81971</td><td al
a190: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 2e 38 35 ign="right">1.85
a1a0: 32 32 38 33 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2283</td><td>NUL
a1b0: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 41 4e L</td><td>VIA AN
a1c0: 54 4f 4e 49 4f 20 47 55 41 44 41 47 4e 4f 4c 49 TONIO GUADAGNOLI
a1d0: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
a1e0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a1f0: 36 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 6</td><td>Link</
a200: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a210: 67 68 74 22 3e 32 32 34 39 36 37 3c 2f 74 64 3e ght">224967</td>
a220: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
a230: 22 3e 31 38 31 39 37 31 3c 2f 74 64 3e 3c 74 64 ">181971</td><td
a240: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
a250: 38 32 38 39 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 82891</td><td al
a260: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 34 2e 32 ign="right">14.2
a270: 37 33 31 38 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 73185</td><td>NU
a280: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 41 LL</td><td>VIA A
a290: 4e 54 4f 4e 49 4f 20 47 55 41 44 41 47 4e 4f 4c NTONIO GUADAGNOL
a2a0: 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c I</td>..</tr>..<
a2b0: 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 tr>..<td align="
a2c0: 72 69 67 68 74 22 3e 37 3c 2f 74 64 3e 3c 74 64 right">7</td><td
a2d0: 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
a2e0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 31 ign="right">2241
a2f0: 36 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 68</td><td align
a300: 3d 22 72 69 67 68 74 22 3e 31 38 32 38 39 31 3c ="right">182891<
a310: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
a320: 69 67 68 74 22 3e 31 38 33 30 35 37 3c 2f 74 64 ight">183057</td
a330: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
a340: 74 22 3e 36 2e 36 34 33 33 30 39 3c 2f 74 64 3e t">6.643309</td>
a350: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
a360: 3e 56 49 41 20 4d 41 43 41 4c 4c 45 27 3c 2f 74 >VIA MACALLE'</t
a370: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
a380: 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 .<td align="righ
a390: 74 22 3e 38 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">8</td><td>Lin
a3a0: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
a3b0: 22 72 69 67 68 74 22 3e 32 32 34 31 36 37 3c 2f "right">224167</
a3c0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
a3d0: 67 68 74 22 3e 31 38 33 30 35 37 3c 2f 74 64 3e ght">183057</td>
a3e0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
a3f0: 22 3e 31 38 33 30 35 36 3c 2f 74 64 3e 3c 74 64 ">183056</td><td
a400: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
a410: 2e 31 35 31 32 37 32 3c 2f 74 64 3e 3c 74 64 3e .151272</td><td>
a420: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 NULL</td><td>VIA
a430: 20 4d 41 43 41 4c 4c 45 27 3c 2f 74 64 3e 0d 0a MACALLE'</td>..
a440: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
a450: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 39 align="right">9
a460: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
a470: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
a480: 68 74 22 3e 32 32 34 31 37 34 3c 2f 74 64 3e 3c ht">224174</td><
a490: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
a4a0: 3e 31 38 33 30 35 36 3c 2f 74 64 3e 3c 74 64 20 >183056</td><td
a4b0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
a4c0: 32 39 34 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2941</td><td ali
a4d0: 67 6e 3d 22 72 69 67 68 74 22 3e 37 2e 39 36 36 gn="right">7.966
a4e0: 38 37 30 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 870</td><td>NULL
a4f0: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 52 4f 44 </td><td>VIA ROD
a500: 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c I</td>..</tr>..<
a510: 74 72 3e 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 tr>..<td align="
a520: 72 69 67 68 74 22 3e 31 30 3c 2f 74 64 3e 3c 74 right">10</td><t
a530: 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 d>Link</td><td a
a540: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 lign="right">224
a550: 30 35 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 059</td><td alig
a560: 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 39 34 31 n="right">182941
a570: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
a580: 72 69 67 68 74 22 3e 31 38 32 30 30 31 3c 2f 74 right">182001</t
a590: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
a5a0: 68 74 22 3e 36 2e 33 39 33 37 34 37 3c 2f 74 64 ht">6.393747</td
a5b0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
a5c0: 64 3e 56 49 41 20 52 4f 44 49 3c 2f 74 64 3e 0d d>VIA RODI</td>.
a5d0: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
a5e0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a5f0: 31 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 11</td><td>Link<
a600: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
a610: 69 67 68 74 22 3e 32 32 32 36 33 37 3c 2f 74 64 ight">222637</td
a620: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
a630: 74 22 3e 31 38 32 30 30 31 3c 2f 74 64 3e 3c 74 t">182001</td><t
a640: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a650: 31 38 32 30 30 30 3c 2f 74 64 3e 3c 74 64 20 61 182000</td><td a
a660: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 2e 34 lign="right">2.4
a670: 37 35 35 33 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 75538</td><td>NU
a680: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 LL</td><td>VIA P
a690: 49 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 IETRO ARETINO</t
a6a0: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
a6b0: 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 .<td align="righ
a6c0: 74 22 3e 31 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 t">12</td><td>Li
a6d0: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
a6e0: 3d 22 72 69 67 68 74 22 3e 32 32 32 36 33 36 3c ="right">222636<
a6f0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
a700: 69 67 68 74 22 3e 31 38 32 30 30 30 3c 2f 74 64 ight">182000</td
a710: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
a720: 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 t">178731</td><t
a730: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
a740: 31 34 2e 33 36 33 34 30 38 3c 2f 74 64 3e 3c 74 14.363408</td><t
a750: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
a760: 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 4e IA PIETRO ARETIN
a770: 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c O</td>..</tr>..<
a780: 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 41 /table>..<br>..A
a790: 73 20 79 6f 75 20 63 61 6e 20 65 61 73 69 6c 79 s you can easily
a7a0: 20 6e 6f 74 69 63 65 2c 20 74 68 65 20 6f 70 74 notice, the opt
a7b0: 69 6d 61 6c 20 70 61 74 68 73 20 72 65 74 75 72 imal paths retur
a7c0: 6e 65 64 20 62 79 20 74 68 65 20 3c 62 3e 62 79 ned by the <b>by
a7d0: 63 61 72 3c 2f 62 3e 20 56 69 72 74 75 61 6c 52 car</b> VirtualR
a7e0: 6f 75 74 69 6e 67 20 54 61 62 6c 65 20 74 68 65 outing Table the
a7f0: 20 70 61 74 68 73 20 69 6e 20 6f 70 70 6f 73 69 paths in opposi
a800: 74 65 20 64 69 72 65 63 74 69 6f 6e 73 20 73 74 te directions st
a810: 72 6f 6e 67 6c 79 20 64 69 66 66 65 72 20 62 65 rongly differ be
a820: 74 77 65 65 6e 20 74 68 65 6d 2c 20 61 6e 64 20 tween them, and
a830: 62 6f 74 68 20 61 72 65 20 63 6f 6d 70 6c 65 74 both are complet
a840: 65 6c 79 20 64 69 66 66 65 72 65 6e 74 20 66 72 ely different fr
a850: 6f 6d 20 74 68 65 20 70 61 74 68 20 72 65 74 75 om the path retu
a860: 72 6e 65 64 20 62 79 20 71 75 65 72 79 69 6e 67 rned by querying
a870: 20 3c 62 3e 62 79 66 6f 6f 74 3c 2f 62 3e 2e 3c <b>byfoot</b>.<
a880: 62 72 3e 0d 0a 41 20 71 75 69 63 6b 20 67 6c 61 br>..A quick gla
a890: 6e 63 65 20 61 74 20 74 68 65 20 62 65 6c 6f 77 nce at the below
a8a0: 20 6d 61 70 20 77 69 6c 6c 20 73 75 72 65 6c 79 map will surely
a8b0: 20 68 65 6c 70 20 74 6f 20 75 6e 64 65 72 73 74 help to underst
a8c0: 61 6e 64 20 62 65 74 74 65 72 20 77 68 61 74 27 and better what'
a8d0: 73 20 72 65 61 6c 6c 79 20 68 61 70 70 65 6e 69 s really happeni
a8e0: 6e 67 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 69 73 ng.<br>..This is
a8f0: 20 61 20 63 65 6e 74 72 61 6c 20 61 72 65 61 20 a central area
a900: 6f 66 20 74 68 65 20 74 6f 77 6e 20 6f 66 20 41 of the town of A
a910: 72 65 7a 7a 6f 20 61 72 6f 75 6e 64 20 74 68 65 rezzo around the
a920: 20 61 72 63 68 61 65 6f 6c 6f 67 69 63 61 6c 20 archaeological
a930: 72 75 69 6e 73 20 6f 66 20 74 68 65 20 52 6f 6d ruins of the Rom
a940: 61 6e 20 41 6d 70 68 69 74 68 65 61 74 65 72 3b an Amphitheater;
a950: 20 63 69 72 63 75 6c 61 74 69 6e 67 20 62 79 20 circulating by
a960: 63 61 72 20 69 73 20 64 69 73 63 6f 75 72 61 67 car is discourag
a970: 65 64 20 61 6e 64 20 69 73 20 73 75 62 6a 65 63 ed and is subjec
a980: 74 20 74 6f 20 6d 61 6e 79 20 6f 6e 65 2d 77 61 t to many one-wa
a990: 79 20 72 65 73 74 72 69 63 74 69 6f 6e 73 2e 20 y restrictions.
a9a0: 4e 6f 74 20 73 75 72 70 72 69 73 69 6e 67 6c 79 Not surprisingly
a9b0: 2c 20 6d 6f 76 69 6e 67 20 62 79 20 66 6f 6f 74 , moving by foot
a9c0: 20 69 73 20 74 68 65 20 66 61 73 74 65 72 20 6f is the faster o
a9d0: 70 74 69 6f 6e 2e 0d 0a 3c 62 72 3e 3c 62 72 3e ption...<br><br>
a9e0: 0d 0a 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 70 ..<img src="http
a9f0: 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 s://www.gaia-gis
aa00: 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 6f .it/gaia-sins/ro
aa10: 75 74 69 6e 67 2d 66 69 67 73 2f 72 6f 75 74 69 uting-figs/routi
aa20: 6e 67 31 2e 6a 70 67 22 20 61 6c 74 3d 22 66 69 ng1.jpg" alt="fi
aa30: 67 31 22 3e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e g1">..<ul>..<li>
aa40: 79 65 6c 6c 6f 77 20 70 61 74 68 3a 20 70 65 64 yellow path: ped
aa50: 65 73 74 72 69 61 6e 73 3c 2f 6c 69 3e 0d 0a 3c estrians</li>..<
aa60: 6c 69 3e 67 72 65 65 6e 20 70 61 74 68 3a 20 63 li>green path: c
aa70: 61 72 2c 20 64 69 72 65 63 74 20 64 69 72 65 63 ar, direct direc
aa80: 74 69 6f 6e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 72 tion</li>..<li>r
aa90: 65 64 20 70 61 74 68 3a 20 63 61 72 2c 20 72 65 ed path: car, re
aaa0: 74 75 72 6e 20 64 69 72 65 63 74 69 6f 6e 3c 2f turn direction</
aab0: 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e li>..</ul>..<br>
aac0: 0d 0a 3c 74 61 62 6c 65 20 62 67 63 6f 6c 6f 72 ..<table bgcolor
aad0: 3d 22 23 63 30 66 66 63 30 22 20 63 65 6c 6c 73 ="#c0ffc0" cells
aae0: 70 61 63 69 6e 67 3d 22 31 30 22 20 63 65 6c 6c pacing="10" cell
aaf0: 70 61 64 64 69 6e 67 3d 22 36 22 3e 3c 74 72 3e padding="6"><tr>
ab00: 3c 74 64 3e 0d 0a 3c 68 33 3e 4c 69 6e 65 73 74 <td>..<h3>Linest
ab10: 72 69 6e 67 73 20 72 65 74 75 72 6e 65 64 20 62 rings returned b
ab20: 79 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 y VirtualRouting
ab30: 3c 2f 68 33 3e 0d 0a 41 6c 6c 20 4c 49 4e 45 53 </h3>..All LINES
ab40: 54 52 49 4e 47 20 47 65 6f 6d 65 74 72 69 65 73 TRING Geometries
ab50: 20 63 72 65 61 74 65 64 20 62 79 20 61 6e 79 20 created by any
ab60: 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 77 VirtualRouting w
ab70: 69 6c 6c 20 61 6c 77 61 79 73 20 63 6f 6e 74 61 ill always conta
ab80: 69 6e 20 3c 62 3e 4d 20 76 61 6c 75 65 73 3c 2f in <b>M values</
ab90: 62 3e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 69 b>:..<ul>..<li>i
aba0: 66 20 74 68 65 20 75 6e 64 65 72 6c 61 79 69 6e f the underlayin
abb0: 67 20 4e 65 74 77 6f 72 6b 27 73 20 47 65 6f 6d g Network's Geom
abc0: 65 74 72 69 65 73 20 61 72 65 20 3c 62 3e 58 59 etries are <b>XY
abd0: 3c 2f 62 3e 20 74 68 65 6e 20 3c 62 3e 58 59 4d </b> then <b>XYM
abe0: 3c 2f 62 3e 20 4c 69 6e 65 73 74 72 69 6e 67 73 </b> Linestrings
abf0: 20 77 69 6c 6c 20 62 65 20 72 65 74 75 72 6e 65 will be returne
ac00: 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 66 20 d.</li>..<li>if
ac10: 74 68 65 20 75 6e 64 65 72 6c 61 79 69 6e 67 20 the underlaying
ac20: 4e 65 74 77 6f 72 6b 27 73 20 47 65 6f 6d 65 74 Network's Geomet
ac30: 72 69 65 73 20 61 72 65 20 3c 62 3e 58 59 5a 3c ries are <b>XYZ<
ac40: 2f 62 3e 20 74 68 65 6e 20 3c 62 3e 58 59 5a 4d /b> then <b>XYZM
ac50: 3c 2f 62 3e 20 4c 69 6e 65 73 74 72 69 6e 67 73 </b> Linestrings
ac60: 20 77 69 6c 6c 20 62 65 20 72 65 74 75 72 6e 65 will be returne
ac70: 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 66 20 d.</li>..<li>if
ac80: 74 68 65 20 75 6e 64 65 72 6c 61 79 69 6e 67 20 the underlaying
ac90: 4e 65 74 77 6f 72 6b 27 73 20 47 65 6f 6d 65 74 Network's Geomet
aca0: 72 69 65 73 20 61 72 65 20 3c 62 3e 58 59 4d 3c ries are <b>XYM<
acb0: 2f 62 3e 20 6f 72 20 3c 62 3e 58 59 5a 4d 3c 2f /b> or <b>XYZM</
acc0: 62 3e 20 74 68 65 6e 20 20 4c 69 6e 65 73 74 72 b> then Linestr
acd0: 69 6e 67 73 20 72 65 74 75 72 6e 65 64 20 69 6e ings returned in
ace0: 74 6f 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 to the resultset
acf0: 20 77 69 6c 6c 20 6d 61 69 6e 74 61 69 6e 20 74 will maintain t
ad00: 68 65 20 73 61 6d 65 20 64 69 6d 65 6e 73 69 6f he same dimensio
ad10: 6e 73 20 61 73 20 69 6e 20 74 68 65 20 75 6e 64 ns as in the und
ad20: 65 72 6c 61 79 69 6e 67 20 4e 65 74 77 6f 72 6b erlaying Network
ad30: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 69 6e 20 61 .</li>..<li>in a
ad40: 6e 79 20 63 61 73 65 20 74 68 65 20 3c 62 3e 4d ny case the <b>M
ad50: 3c 2f 62 3e 20 76 61 6c 75 65 73 20 77 69 6c 6c </b> values will
ad60: 20 62 65 20 61 70 70 72 6f 70 72 69 61 74 65 6c be appropriatel
ad70: 79 20 73 65 74 20 73 6f 20 74 6f 20 72 65 70 72 y set so to repr
ad80: 65 73 65 6e 74 20 74 68 65 20 3c 75 3e 70 61 72 esent the <u>par
ad90: 74 69 61 6c 20 63 6f 73 74 3c 2f 75 3e 20 63 6f tial cost</u> co
ada0: 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 65 rresponding to e
adb0: 61 63 68 20 76 65 72 74 65 78 2e 0d 0a 28 69 66 ach vertex...(if
adc0: 20 74 68 65 20 69 6e 70 75 74 20 4c 69 6e 65 73 the input Lines
add0: 74 72 69 6e 67 73 20 61 6c 72 65 61 64 79 20 63 trings already c
ade0: 6f 6e 74 61 69 6e 73 20 4d 2d 76 61 6c 75 65 73 ontains M-values
adf0: 20 74 68 65 79 27 6c 6c 20 62 65 20 6f 76 65 72 they'll be over
ae00: 77 72 69 74 74 65 6e 29 2e 3c 2f 6c 69 3e 0d 0a written).</li>..
ae10: 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a 49 6e 20 </ul>..<br>..In
ae20: 6f 74 68 65 72 20 77 6f 72 64 73 2c 20 61 6c 6c other words, all
ae30: 20 4c 69 6e 65 73 74 72 69 6e 67 73 20 72 65 74 Linestrings ret
ae40: 75 72 6e 65 64 20 62 79 20 56 69 72 74 75 61 6c urned by Virtual
ae50: 52 6f 75 74 69 6e 67 20 63 61 6e 20 65 66 66 65 Routing can effe
ae60: 63 74 69 76 65 6c 79 20 73 75 70 70 6f 72 74 20 ctively support
ae70: 3c 62 3e 4c 52 3c 2f 62 3e 20 28 3c 69 3e 4c 69 <b>LR</b> (<i>Li
ae80: 6e 65 61 72 20 52 65 66 65 72 65 6e 63 69 6e 67 near Referencing
ae90: 3c 2f 69 3e 29 20 53 51 4c 20 66 75 6e 63 74 69 </i>) SQL functi
aea0: 6f 6e 73 2c 20 61 73 20 69 6e 20 74 68 65 20 66 ons, as in the f
aeb0: 6f 6c 6c 6f 77 69 6e 67 20 65 78 61 6d 70 6c 65 ollowing example
aec0: 73 3a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a s:..<verbatim>..
aed0: 53 45 4c 45 43 54 20 53 54 5f 4c 6f 63 61 74 65 SELECT ST_Locate
aee0: 5f 42 65 74 77 65 65 6e 5f 4d 65 61 73 75 72 65 _Between_Measure
aef0: 73 28 3c 67 65 6f 6d 65 74 72 79 3e 2c 20 33 30 s(<geometry>, 30
af00: 2e 30 2c 20 34 35 2e 30 29 3b 0d 0a 0d 0a 53 45 .0, 45.0);....SE
af10: 4c 45 43 54 20 53 54 5f 4c 6f 63 61 74 65 5f 42 LECT ST_Locate_B
af20: 65 74 77 65 65 6e 5f 4d 65 61 73 75 72 65 73 28 etween_Measures(
af30: 3c 67 65 6f 6d 65 74 72 79 3e 2c 20 38 30 2e 30 <geometry>, 80.0
af40: 2c 20 39 35 2e 30 29 3b 0d 0a 3c 2f 76 65 72 62 , 95.0);..</verb
af50: 61 74 69 6d 3e 0d 0a 54 68 65 20 73 69 64 65 20 atim>..The side
af60: 6d 61 70 20 67 72 61 70 68 69 63 61 6c 6c 79 20 map graphically
af70: 73 68 6f 77 73 20 74 68 65 20 65 73 74 69 6d 61 shows the estima
af80: 74 65 64 20 70 6f 73 69 74 69 6f 6e 73 20 72 65 ted positions re
af90: 73 70 65 63 74 69 76 65 6c 79 20 3c 62 3e 33 30 spectively <b>30
afa0: 3c 2f 62 3e 2d 3c 62 3e 34 35 3c 2f 62 3e 20 73 </b>-<b>45</b> s
afb0: 65 63 6f 6e 64 73 20 61 66 74 65 72 20 73 74 61 econds after sta
afc0: 72 74 69 6e 67 20 28 79 65 6c 6c 6f 77 20 64 6f rting (yellow do
afd0: 74 74 65 64 20 6c 69 6e 65 29 20 61 6e 64 20 3c tted line) and <
afe0: 62 3e 38 30 3c 2f 62 3e 2d 3c 62 3e 39 35 3c 2f b>80</b>-<b>95</
aff0: 62 3e 20 73 65 63 6f 6e 64 73 20 61 66 74 65 72 b> seconds after
b000: 20 73 74 61 72 74 69 6e 67 20 28 67 72 65 65 6e starting (green
b010: 20 64 6f 74 74 65 64 20 6c 69 6e 65 29 2e 3c 62 dotted line).<b
b020: 72 3e 0d 0a 28 61 73 73 75 6d 69 6e 67 20 74 68 r>..(assuming th
b030: 65 20 73 61 6d 65 20 70 61 74 68 20 72 65 74 75 e same path retu
b040: 72 6e 65 64 20 62 79 20 74 68 65 20 6c 61 74 65 rned by the late
b050: 73 74 20 3c 62 3e 62 79 63 61 72 3c 2f 62 3e 20 st <b>bycar</b>
b060: 71 75 65 72 79 29 2e 0d 0a 3c 2f 74 64 3e 0d 0a query)...</td>..
b070: 3c 74 64 3e 3c 69 6d 67 20 73 72 63 3d 22 68 74 <td><img src="ht
b080: 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 61 2d 67 tps://www.gaia-g
b090: 69 73 2e 69 74 2f 67 61 69 61 2d 73 69 6e 73 2f is.it/gaia-sins/
b0a0: 72 6f 75 74 69 6e 67 2d 66 69 67 73 2f 72 6f 75 routing-figs/rou
b0b0: 74 69 6e 67 32 2e 6a 70 67 22 20 61 6c 74 3d 22 ting2.jpg" alt="
b0c0: 66 69 67 32 22 3e 3c 2f 74 64 3e 0d 0a 3c 2f 74 fig2"></td>..</t
b0d0: 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 r>..</table>..<b
b0e0: 72 3e 0d 0a 3c 68 32 3e 50 6c 61 79 69 6e 67 20 r>..<h2>Playing
b0f0: 77 69 74 68 20 56 69 72 74 75 61 6c 52 6f 75 74 with VirtualRout
b100: 69 6e 67 20 63 6f 6e 66 69 67 75 72 61 62 6c 65 ing configurable
b110: 20 6f 70 74 69 6f 6e 73 3c 2f 68 32 3e 0d 0a 53 options</h2>..S
b120: 65 76 65 72 61 6c 20 61 73 70 65 63 74 73 20 6f everal aspects o
b130: 66 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 f VirtualRouting
b140: 20 63 61 6e 20 62 65 20 66 72 65 65 6c 79 20 63 can be freely c
b150: 75 73 74 6f 6d 69 7a 65 64 2e 0d 0a 3c 76 65 72 ustomized...<ver
b160: 62 61 74 69 6d 3e 0d 0a 55 50 44 41 54 45 20 62 batim>..UPDATE b
b170: 79 66 6f 6f 74 20 53 45 54 20 41 6c 67 6f 72 69 yfoot SET Algori
b180: 74 68 6d 20 3d 20 27 41 2a 27 3b 0d 0a 0d 0a 53 thm = 'A*';....S
b190: 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c ELECT Algorithm,
b1a0: 20 4f 70 74 69 6f 6e 73 2c 20 52 6f 75 74 65 52 Options, RouteR
b1b0: 6f 77 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f ow, Role, LinkRo
b1c0: 77 69 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e wid, NodeFrom, N
b1d0: 6f 64 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f odeTo, Cost, Geo
b1e0: 6d 65 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f metry, Name..FRO
b1f0: 4d 20 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 M byfoot..WHERE
b200: 4e 6f 64 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 NodeFrom = 17873
b210: 31 20 41 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 31 1 AND NodeTo = 1
b220: 38 33 32 38 36 3b 0d 0a 3c 2f 76 65 72 62 61 74 83286;..</verbat
b230: 69 6d 3e 0d 0a 49 66 20 79 6f 75 20 72 65 6d 65 im>..If you reme
b240: 6d 62 65 72 20 69 6e 20 61 6c 6c 20 74 68 65 20 mber in all the
b250: 70 72 65 76 69 6f 75 73 20 65 78 61 6d 70 6c 65 previous example
b260: 73 20 74 68 65 20 3c 62 3e 44 69 6a 6b 73 74 72 s the <b>Dijkstr
b270: 61 27 73 3c 2f 62 3e 20 61 6c 67 6f 72 69 74 68 a's</b> algorith
b280: 6d 20 77 61 73 20 75 73 65 64 3b 20 6e 6f 77 20 m was used; now
b290: 28 61 66 74 65 72 20 65 78 65 63 75 74 69 6e 67 (after executing
b2a0: 20 74 68 65 20 61 62 6f 76 65 20 3c 62 3e 55 50 the above <b>UP
b2b0: 44 41 54 45 3c 2f 62 3e 29 20 61 6c 6c 20 53 68 DATE</b>) all Sh
b2c0: 6f 72 74 65 73 74 20 50 61 74 68 20 71 75 65 72 ortest Path quer
b2d0: 69 65 73 20 77 69 6c 6c 20 62 65 20 62 61 73 65 ies will be base
b2e0: 64 20 6f 6e 20 74 68 65 20 61 6c 74 65 72 6e 61 d on the alterna
b2f0: 74 69 76 65 20 3c 62 3e 41 2a 3c 2f 62 3e 20 61 tive <b>A*</b> a
b300: 6c 67 6f 72 69 74 68 6d 2e 3c 62 72 3e 0d 0a 49 lgorithm.<br>..I
b310: 66 20 79 6f 75 20 77 69 73 68 20 74 6f 20 73 65 f you wish to se
b320: 6c 65 63 74 20 61 67 61 69 6e 20 74 68 65 20 44 lect again the D
b330: 69 6a 6b 73 74 72 61 27 73 20 61 6c 67 6f 72 69 ijkstra's algori
b340: 74 68 6d 20 79 6f 75 20 6a 75 73 74 20 68 61 76 thm you just hav
b350: 65 20 74 6f 20 65 78 65 63 75 74 65 3c 62 72 3e e to execute<br>
b360: 20 3c 62 3e 55 50 44 41 54 45 20 62 79 66 6f 6f <b>UPDATE byfoo
b370: 74 20 53 45 54 20 41 6c 67 6f 72 69 74 68 6d 20 t SET Algorithm
b380: 3d 20 27 44 49 4a 4b 53 54 52 41 27 3b 3c 2f 62 = 'DIJKSTRA';</b
b390: 3e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 54 68 65 20 >.<br><br>..The
b3a0: 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 following table
b3b0: 73 68 6f 77 73 20 74 68 65 20 72 65 73 75 6c 74 shows the result
b3c0: 73 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 set returned by
b3d0: 74 68 65 20 70 72 65 76 69 6f 75 73 20 53 68 6f the previous Sho
b3e0: 72 74 65 73 74 20 50 61 74 68 20 71 75 65 72 79 rtest Path query
b3f0: 3b 20 70 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 ; please notice
b400: 74 68 65 20 76 61 6c 75 65 20 69 6e 20 74 68 65 the value in the
b410: 20 3c 62 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 62 <b>Algorithm</b
b420: 3e 20 63 6f 6c 75 6d 6e 2e 0d 0a 3c 62 72 3e 3c > column...<br><
b430: 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 br>..<table bord
b440: 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 er="1" bgcolor="
b450: 23 66 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 #ffffcf" cellspa
b460: 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 cing="4" cellpad
b470: 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c ding="6">..<tr><
b480: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
b490: 30 61 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 0a0">Algorithm</
b4a0: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
b4b0: 23 64 30 64 30 61 30 22 3e 4f 70 74 69 6f 6e 73 #d0d0a0">Options
b4c0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
b4d0: 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 ="#d0d0a0">Route
b4e0: 52 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f Row</th><th bgco
b4f0: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f lor="#d0d0a0">Ro
b500: 6c 65 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c le</th><th bgcol
b510: 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e or="#d0d0a0">Lin
b520: 6b 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 kRowid</th><th b
b530: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
b540: 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 >NodeFrom</th><t
b550: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
b560: 61 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c a0">NodeTo</th><
b570: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
b580: 30 61 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 0a0">Cost</th><t
b590: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
b5a0: 61 30 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 a0">Geometry</th
b5b0: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
b5c0: 30 64 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 0d0a0">Name</th>
b5d0: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 3c 74 64 3e 41 </tr>..<tr><td>A
b5e0: 2a 3c 2f 74 64 3e 3c 74 64 3e 46 75 6c 6c 3c 2f *</td><td>Full</
b5f0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
b600: 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 ght">0</td><td>R
b610: 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c oute</td><td>NUL
b620: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
b630: 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f "right">178731</
b640: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
b650: 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e ght">183286</td>
b660: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
b670: 22 3e 33 30 30 2e 39 31 32 32 30 38 3c 2f 74 64 ">300.912208</td
b680: 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 32 37 32 ><td>BLOB sz=272
b690: 20 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 GEOMETRY</td><t
b6a0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 d>NULL</td>..</t
b6b0: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 r>..<tr>..<td>NU
b6c0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
b6d0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
b6e0: 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e ight">1</td><td>
b6f0: 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
b700: 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 30 31 gn="right">22401
b710: 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
b720: 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f "right">178731</
b730: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
b740: 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e ght">182885</td>
b750: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
b760: 22 3e 39 34 2e 38 31 32 34 32 34 3c 2f 74 64 3e ">94.812424</td>
b770: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
b780: 3e 56 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 >VIA PIETRO ARET
b790: 49 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d INO</td>..</tr>.
b7a0: 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
b7b0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
b7c0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
b7d0: 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">2</td><td>Lin
b7e0: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
b7f0: 22 72 69 67 68 74 22 3e 32 32 34 34 34 36 3c 2f "right">224446</
b800: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
b810: 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e ght">182885</td>
b820: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
b830: 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 ">178880</td><td
b840: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 align="right">6
b850: 39 2e 37 32 37 37 32 36 3c 2f 74 64 3e 3c 74 64 9.727726</td><td
b860: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
b870: 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 A MARGARITONE</t
b880: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
b890: 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
b8a0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
b8b0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f lign="right">3</
b8c0: 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e td><td>Link</td>
b8d0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
b8e0: 22 3e 32 32 34 34 31 34 3c 2f 74 64 3e 3c 74 64 ">224414</td><td
b8f0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
b900: 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 78880</td><td al
b910: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 ign="right">1832
b920: 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 86</td><td align
b930: 3d 22 72 69 67 68 74 22 3e 31 33 36 2e 33 37 32 ="right">136.372
b940: 30 35 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 057</td><td>NULL
b950: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 52 </td><td>VIA MAR
b960: 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c GARITONE</td>..<
b970: 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a /tr>..</table>..
b980: 3c 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a 59 6f <br><br><br>..Yo
b990: 75 20 63 61 6e 20 65 76 65 6e 74 75 61 6c 6c 79 u can eventually
b9a0: 20 63 6f 6e 66 69 67 75 72 65 20 74 68 65 20 72 configure the r
b9b0: 65 73 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 esultset returne
b9c0: 64 20 74 68 65 20 56 69 72 74 75 61 6c 52 6f 75 d the VirtualRou
b9d0: 74 69 6e 67 20 71 75 65 72 69 65 73 2e 0d 0a 3c ting queries...<
b9e0: 76 65 72 62 61 74 69 6d 3e 0d 0a 55 50 44 41 54 verbatim>..UPDAT
b9f0: 45 20 62 79 66 6f 6f 74 20 53 45 54 20 4f 70 74 E byfoot SET Opt
ba00: 69 6f 6e 73 20 3d 20 27 4e 4f 20 4c 49 4e 4b 53 ions = 'NO LINKS
ba10: 27 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 41 6c 67 ';....SELECT Alg
ba20: 6f 72 69 74 68 6d 2c 20 4f 70 74 69 6f 6e 73 2c orithm, Options,
ba30: 20 52 6f 75 74 65 52 6f 77 2c 20 52 6f 6c 65 2c RouteRow, Role,
ba40: 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e 6f 64 65 LinkRowid, Node
ba50: 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c 20 43 6f From, NodeTo, Co
ba60: 73 74 2c 20 47 65 6f 6d 65 74 72 79 2c 20 4e 61 st, Geometry, Na
ba70: 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 6f 6f 74 0d me..FROM byfoot.
ba80: 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 6f 6d 20 .WHERE NodeFrom
ba90: 3d 20 31 37 38 37 33 31 20 41 4e 44 20 4e 6f 64 = 178731 AND Nod
baa0: 65 54 6f 20 3d 20 31 38 33 32 38 36 3b 0d 0a 3c eTo = 183286;..<
bab0: 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 41 66 74 65 /verbatim>..Afte
bac0: 72 20 73 65 74 74 69 6e 67 20 3c 62 3e 4f 70 74 r setting <b>Opt
bad0: 69 6f 6e 73 3d 27 4e 4f 20 4c 49 4e 4b 53 27 3c ions='NO LINKS'<
bae0: 2f 62 3e 20 74 68 65 20 72 65 73 75 6c 74 73 65 /b> the resultse
baf0: 74 20 77 69 6c 6c 20 73 69 6d 70 6c 79 20 63 6f t will simply co
bb00: 6e 74 61 69 6e 20 74 68 65 20 68 65 61 64 65 72 ntain the header
bb10: 20 72 6f 77 2c 20 61 6e 64 20 61 6c 6c 20 74 68 row, and all th
bb20: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 72 6f 77 73 e following rows
bb30: 20 77 69 6c 6c 20 62 65 20 73 75 70 70 72 65 73 will be suppres
bb40: 73 65 64 2e 3c 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 sed.<br>..<u>Not
bb50: 65 3c 2f 75 3e 3a 20 70 72 6f 64 75 63 69 6e 67 e</u>: producing
bb60: 20 61 20 72 65 64 75 63 65 64 20 72 65 73 75 6c a reduced resul
bb70: 74 73 65 74 20 69 73 20 65 78 70 65 63 74 65 64 tset is expected
bb80: 20 74 6f 20 62 65 20 73 6f 6d 65 77 61 79 20 66 to be someway f
bb90: 61 73 74 65 72 2e 3c 62 72 3e 0d 0a 54 68 65 20 aster.<br>..The
bba0: 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 following table
bbb0: 73 68 6f 77 73 20 74 68 65 20 72 65 73 75 6c 74 shows the result
bbc0: 73 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 set returned by
bbd0: 74 68 65 20 70 72 65 76 69 6f 75 73 20 53 68 6f the previous Sho
bbe0: 72 74 65 73 74 20 50 61 74 68 20 71 75 65 72 79 rtest Path query
bbf0: 3b 20 70 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 ; please notice
bc00: 74 68 65 20 76 61 6c 75 65 20 69 6e 20 74 68 65 the value in the
bc10: 20 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 20 <b>Options</b>
bc20: 63 6f 6c 75 6d 6e 2e 0d 0a 3c 62 72 3e 3c 62 72 column...<br><br
bc30: 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 >..<table border
bc40: 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 ="1" bgcolor="#f
bc50: 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 fffcf" cellspaci
bc60: 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 ng="4" cellpaddi
bc70: 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 ng="6">..<tr><th
bc80: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
bc90: 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 68 0">Algorithm</th
bca0: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
bcb0: 30 64 30 61 30 22 3e 4f 70 74 69 6f 6e 73 3c 2f 0d0a0">Options</
bcc0: 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
bcd0: 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f #d0d0a0">RouteRo
bce0: 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f w</th><th bgcolo
bcf0: 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 r="#d0d0a0">Role
bd00: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
bd10: 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 ="#d0d0a0">LinkR
bd20: 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 owid</th><th bgc
bd30: 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
bd40: 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 odeFrom</th><th
bd50: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
bd60: 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 ">NodeTo</th><th
bd70: 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
bd80: 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 0">Cost</th><th
bd90: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
bda0: 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c ">Geometry</th><
bdb0: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
bdc0: 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 0a0">Name</th></
bdd0: 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 41 tr>..<tr>..<td>A
bde0: 2a 3c 2f 74 64 3e 3c 74 64 3e 4e 6f 20 4c 69 6e *</td><td>No Lin
bdf0: 6b 73 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e ks</td><td align
be00: 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c ="right">0</td><
be10: 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 td>Route</td><td
be20: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
be30: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
be40: 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
be50: 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 36 3c ="right">183286<
be60: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
be70: 69 67 68 74 22 3e 33 30 30 2e 39 31 32 32 30 38 ight">300.912208
be80: 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a </td><td>BLOB sz
be90: 3d 32 37 32 20 47 45 4f 4d 45 54 52 59 3c 2f 74 =272 GEOMETRY</t
bea0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d d><td>NULL</td>.
beb0: 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e .</tr>..</table>
bec0: 0d 0a 3c 62 72 3e 3c 62 72 3e 3c 62 72 3e 0d 0a ..<br><br><br>..
bed0: 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 55 50 44 41 <verbatim>..UPDA
bee0: 54 45 20 62 79 66 6f 6f 74 20 53 45 54 20 4f 70 TE byfoot SET Op
bef0: 74 69 6f 6e 73 20 3d 20 27 4e 4f 20 47 45 4f 4d tions = 'NO GEOM
bf00: 45 54 52 49 45 53 27 3b 0d 0a 0d 0a 53 45 4c 45 ETRIES';....SELE
bf10: 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 4f 70 CT Algorithm, Op
bf20: 74 69 6f 6e 73 2c 20 52 6f 75 74 65 52 6f 77 2c tions, RouteRow,
bf30: 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 Role, LinkRowid
bf40: 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 , NodeFrom, Node
bf50: 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 To, Cost, Geomet
bf60: 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 ry, Name..FROM b
bf70: 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 yfoot..WHERE Nod
bf80: 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 eFrom = 178731 A
bf90: 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 31 38 33 32 ND NodeTo = 1832
bfa0: 38 36 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 86;..</verbatim>
bfb0: 41 66 74 65 72 20 73 65 74 74 69 6e 67 20 3c 62 After setting <b
bfc0: 3e 4f 70 74 69 6f 6e 73 3d 27 4e 4f 20 47 45 4f >Options='NO GEO
bfd0: 4d 45 54 52 49 45 53 27 3c 2f 62 3e 20 74 68 65 METRIES'</b> the
bfe0: 20 72 65 73 75 6c 74 73 65 74 20 77 69 6c 6c 20 resultset will
bff0: 63 6f 6e 74 61 69 6e 20 61 6c 6c 20 72 6f 77 73 contain all rows
c000: 2c 20 62 75 74 20 61 6c 6c 20 47 65 6f 6d 65 74 , but all Geomet
c010: 72 69 65 73 20 77 69 6c 6c 20 62 65 20 73 75 70 ries will be sup
c020: 70 72 65 73 73 65 64 2e 3c 62 72 3e 0d 0a 3c 75 pressed.<br>..<u
c030: 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 74 68 69 73 20 >Note</u>: this
c040: 74 6f 6f 20 69 73 20 65 78 70 65 63 74 65 64 20 too is expected
c050: 74 6f 20 62 65 20 73 6f 6d 65 77 61 79 20 66 61 to be someway fa
c060: 73 74 65 72 2e 3c 62 72 3e 0d 0a 54 68 65 20 66 ster.<br>..The f
c070: 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c 65 20 73 ollowing table s
c080: 68 6f 77 73 20 74 68 65 20 72 65 73 75 6c 74 73 hows the results
c090: 65 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 74 et returned by t
c0a0: 68 65 20 70 72 65 76 69 6f 75 73 20 53 68 6f 72 he previous Shor
c0b0: 74 65 73 74 20 50 61 74 68 20 71 75 65 72 79 3b test Path query;
c0c0: 20 70 6c 65 61 73 65 20 6e 6f 74 69 63 65 20 74 please notice t
c0d0: 68 65 20 76 61 6c 75 65 20 69 6e 20 74 68 65 20 he value in the
c0e0: 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 20 63 <b>Options</b> c
c0f0: 6f 6c 75 6d 6e 2e 0d 0a 3c 62 72 3e 3c 62 72 3e olumn...<br><br>
c100: 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 72 3d ..<table border=
c110: 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 66 66 "1" bgcolor="#ff
c120: 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 69 6e ffcf" cellspacin
c130: 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 69 6e g="4" cellpaddin
c140: 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 68 20 g="6">..<tr><th
c150: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
c160: 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 68 3e ">Algorithm</th>
c170: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
c180: 64 30 61 30 22 3e 4f 70 74 69 6f 6e 73 3c 2f 74 d0a0">Options</t
c190: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
c1a0: 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 d0d0a0">RouteRow
c1b0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
c1c0: 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c ="#d0d0a0">Role<
c1d0: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
c1e0: 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f "#d0d0a0">LinkRo
c1f0: 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f wid</th><th bgco
c200: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f lor="#d0d0a0">No
c210: 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 deFrom</th><th b
c220: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
c230: 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 >NodeTo</th><th
c240: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
c250: 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 ">Cost</th><th b
c260: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
c270: 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 >Geometry</th><t
c280: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
c290: 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 a0">Name</th></t
c2a0: 72 3e 0d 0a 3c 74 72 3e 3c 74 64 3e 41 2a 3c 2f r>..<tr><td>A*</
c2b0: 74 64 3e 3c 74 64 3e 4e 6f 20 47 65 6f 6d 65 74 td><td>No Geomet
c2c0: 72 69 65 73 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 ries</td><td ali
c2d0: 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
c2e0: 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c ><td>Route</td><
c2f0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
c300: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
c310: 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
c320: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 gn="right">18328
c330: 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 6</td><td align=
c340: 22 72 69 67 68 74 22 3e 33 30 30 2e 39 31 32 32 "right">300.9122
c350: 30 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 08</td><td>NULL<
c360: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
c370: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
c380: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
c390: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
c3a0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 ign="right">1</t
c3b0: 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
c3c0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
c3d0: 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c 74 64 20 >224014</td><td
c3e0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
c3f0: 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
c400: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 38 gn="right">18288
c410: 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 5</td><td align=
c420: 22 72 69 67 68 74 22 3e 39 34 2e 38 31 32 34 32 "right">94.81242
c430: 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 4</td><td>NULL</
c440: 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 45 54 52 td><td>VIA PIETR
c450: 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 3e 0d 0a O ARETINO</td>..
c460: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
c470: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
c480: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
c490: 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c ="right">2</td><
c4a0: 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 td>Link</td><td
c4b0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 align="right">22
c4c0: 34 34 34 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 4446</td><td ali
c4d0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 38 38 gn="right">18288
c4e0: 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 5</td><td align=
c4f0: 22 72 69 67 68 74 22 3e 31 37 38 38 38 30 3c 2f "right">178880</
c500: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
c510: 67 68 74 22 3e 36 39 2e 37 32 37 37 32 36 3c 2f ght">69.727726</
c520: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
c530: 3c 74 64 3e 56 49 41 20 4d 41 52 47 41 52 49 54 <td>VIA MARGARIT
c540: 4f 4e 45 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ONE</td>..</tr>.
c550: 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
c560: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
c570: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
c580: 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">3</td><td>Lin
c590: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
c5a0: 22 72 69 67 68 74 22 3e 32 32 34 34 31 34 3c 2f "right">224414</
c5b0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
c5c0: 67 68 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e ght">178880</td>
c5d0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
c5e0: 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 ">183286</td><td
c5f0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
c600: 33 36 2e 33 37 32 30 35 37 3c 2f 74 64 3e 3c 74 36.372057</td><t
c610: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
c620: 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f IA MARGARITONE</
c630: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 td>..</tr>..</ta
c640: 62 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 3c 62 ble>..<br><br><b
c650: 72 3e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a r>..<verbatim>..
c660: 55 50 44 41 54 45 20 62 79 66 6f 6f 74 20 53 45 UPDATE byfoot SE
c670: 54 20 4f 70 74 69 6f 6e 73 20 3d 20 27 53 49 4d T Options = 'SIM
c680: 50 4c 45 27 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 PLE';....SELECT
c690: 41 6c 67 6f 72 69 74 68 6d 2c 20 4f 70 74 69 6f Algorithm, Optio
c6a0: 6e 73 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 6f ns, RouteRow, Ro
c6b0: 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 4e le, LinkRowid, N
c6c0: 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f 2c odeFrom, NodeTo,
c6d0: 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 2c Cost, Geometry,
c6e0: 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 6f Name..FROM byfo
c6f0: 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 72 ot..WHERE NodeFr
c700: 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 20 om = 178731 AND
c710: 4e 6f 64 65 54 6f 20 3d 20 31 38 33 32 38 36 3b NodeTo = 183286;
c720: 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 53 65 74 ..</verbatim>Set
c730: 74 69 6e 67 20 3c 62 3e 4f 70 74 69 6f 6e 73 3d ting <b>Options=
c740: 27 53 49 4d 50 4c 45 27 3c 2f 62 3e 20 68 61 73 'SIMPLE'</b> has
c750: 20 74 68 65 20 73 61 6d 65 20 65 66 66 65 63 74 the same effect
c760: 20 74 68 61 6e 20 73 65 74 74 69 6e 67 20 62 6f than setting bo
c770: 74 68 20 3c 62 3e 4e 4f 20 4c 49 4e 4b 53 3c 2f th <b>NO LINKS</
c780: 62 3e 20 61 6e 64 20 3c 62 3e 4e 4f 20 47 45 4f b> and <b>NO GEO
c790: 4d 45 54 52 49 45 53 3c 2f 62 3e 20 61 74 20 74 METRIES</b> at t
c7a0: 68 65 20 73 61 6d 65 20 74 69 6d 65 2e 3c 62 72 he same time.<br
c7b0: 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 >..<u>Note</u>:
c7c0: 74 68 69 73 20 69 73 20 65 78 70 65 63 74 65 64 this is expected
c7d0: 20 74 6f 20 62 65 20 74 68 65 20 66 61 73 74 65 to be the faste
c7e0: 73 74 20 73 65 74 74 69 6e 67 2e 3c 62 72 3e 0d st setting.<br>.
c7f0: 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 .The following t
c800: 61 62 6c 65 20 73 68 6f 77 73 20 74 68 65 20 72 able shows the r
c810: 65 73 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 esultset returne
c820: 64 20 62 79 20 74 68 65 20 70 72 65 76 69 6f 75 d by the previou
c830: 73 20 53 68 6f 72 74 65 73 74 20 50 61 74 68 20 s Shortest Path
c840: 71 75 65 72 79 3b 20 70 6c 65 61 73 65 20 6e 6f query; please no
c850: 74 69 63 65 20 74 68 65 20 76 61 6c 75 65 20 69 tice the value i
c860: 6e 20 74 68 65 20 3c 62 3e 4f 70 74 69 6f 6e 73 n the <b>Options
c870: 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 2e 0d 0a 3c 62 </b> column...<b
c880: 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 r><br>..<table b
c890: 6f 72 64 65 72 3d 22 31 22 20 62 67 63 6f 6c 6f order="1" bgcolo
c8a0: 72 3d 22 23 66 66 66 66 63 66 22 20 63 65 6c 6c r="#ffffcf" cell
c8b0: 73 70 61 63 69 6e 67 3d 22 34 22 20 63 65 6c 6c spacing="4" cell
c8c0: 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 padding="6">..<t
c8d0: 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 r><th bgcolor="#
c8e0: 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 69 74 68 d0d0a0">Algorith
c8f0: 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f m</th><th bgcolo
c900: 72 3d 22 23 64 30 64 30 61 30 22 3e 4f 70 74 69 r="#d0d0a0">Opti
c910: 6f 6e 73 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f ons</th><th bgco
c920: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f lor="#d0d0a0">Ro
c930: 75 74 65 52 6f 77 3c 2f 74 68 3e 3c 74 68 20 62 uteRow</th><th b
c940: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
c950: 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 68 20 62 67 >Role</th><th bg
c960: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
c970: 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 68 3e 3c 74 LinkRowid</th><t
c980: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
c990: 61 30 22 3e 4e 6f 64 65 46 72 6f 6d 3c 2f 74 68 a0">NodeFrom</th
c9a0: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
c9b0: 30 64 30 61 30 22 3e 4e 6f 64 65 54 6f 3c 2f 74 0d0a0">NodeTo</t
c9c0: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
c9d0: 64 30 64 30 61 30 22 3e 43 6f 73 74 3c 2f 74 68 d0d0a0">Cost</th
c9e0: 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
c9f0: 30 64 30 61 30 22 3e 47 65 6f 6d 65 74 72 79 3c 0d0a0">Geometry<
ca00: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
ca10: 22 23 64 30 64 30 61 30 22 3e 4e 61 6d 65 3c 2f "#d0d0a0">Name</
ca20: 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a th></tr>..<tr>..
ca30: 3c 74 64 3e 41 2a 3c 2f 74 64 3e 3c 74 64 3e 53 <td>A*</td><td>S
ca40: 69 6d 70 6c 65 3c 2f 74 64 3e 3c 74 64 20 61 6c imple</td><td al
ca50: 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
ca60: 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e d><td>Route</td>
ca70: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
ca80: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
ca90: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
caa0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 32 ign="right">1832
cab0: 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 86</td><td align
cac0: 3d 22 72 69 67 68 74 22 3e 33 30 30 2e 39 31 32 ="right">300.912
cad0: 32 30 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 208</td><td>NULL
cae0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
caf0: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 62 d>..</tr>..</tab
cb00: 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 46 69 6e 61 6c le>..<br>..Final
cb10: 6c 79 2c 20 69 66 20 79 6f 75 20 77 69 73 68 20 ly, if you wish
cb20: 74 6f 20 73 65 6c 65 63 74 20 61 67 61 69 6e 20 to select again
cb30: 74 68 65 20 69 6e 69 74 69 61 6c 20 73 74 61 6e the initial stan
cb40: 64 61 72 64 20 73 65 74 74 69 6e 67 20 79 6f 75 dard setting you
cb50: 20 6a 75 73 74 20 68 61 76 65 20 74 6f 20 65 78 just have to ex
cb60: 65 63 75 74 65 3c 62 72 3e 20 3c 62 3e 55 50 44 ecute<br> <b>UPD
cb70: 41 54 45 20 62 79 66 6f 6f 74 20 53 45 54 20 4f ATE byfoot SET O
cb80: 70 74 69 6f 6e 73 20 3d 20 27 46 55 4c 4c 27 3b ptions = 'FULL';
cb90: 3c 2f 62 3e 2e 3c 62 72 3e 3c 62 72 3e 0d 0a 3c </b>.<br><br>..<
cba0: 68 72 3e 3c 62 72 3e 0d 0a 3c 68 31 3e 3c 61 20 hr><br>..<h1><a
cbb0: 6e 61 6d 65 3d 22 6d 75 6c 74 69 22 3e 35 20 2d name="multi">5 -
cbc0: 20 53 6f 6c 76 69 6e 67 20 6d 75 6c 74 69 2d 64 Solving multi-d
cbd0: 65 73 74 69 6e 61 74 69 6f 6e 20 53 68 6f 72 74 estination Short
cbe0: 65 73 74 20 50 61 74 68 20 70 72 6f 62 6c 65 6d est Path problem
cbf0: 73 3c 2f 61 3e 3c 2f 68 31 3e 0d 0a 41 20 76 65 s</a></h1>..A ve
cc00: 72 79 20 69 6e 74 65 72 65 73 74 69 6e 67 20 66 ry interesting f
cc10: 65 61 74 75 72 65 20 73 75 70 70 6f 72 74 65 64 eature supported
cc20: 20 62 79 20 74 68 65 20 44 69 6a 6b 73 74 72 61 by the Dijkstra
cc30: 27 73 20 41 6c 67 6f 72 69 74 68 6d 20 69 73 20 's Algorithm is
cc40: 74 68 61 74 20 69 74 20 72 6f 62 75 73 74 6c 79 that it robustly
cc50: 20 65 6e 73 75 72 65 73 20 74 68 61 74 20 77 68 ensures that wh
cc60: 65 6e 20 61 20 64 65 73 74 69 6e 61 74 69 6f 6e en a destination
cc70: 20 69 73 20 72 65 61 63 68 65 64 20 61 6c 6c 20 is reached all
cc80: 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 73 the destinations
cc90: 20 70 72 65 73 65 6e 74 69 6e 67 20 61 20 3c 62 presenting a <b
cca0: 3e 6c 65 73 73 65 72 20 63 6f 73 74 3c 2f 62 3e >lesser cost</b>
ccb0: 20 68 61 76 65 20 61 6c 72 65 61 64 79 20 62 65 have already be
ccc0: 65 6e 20 72 65 61 63 68 65 64 20 69 6e 20 73 6f en reached in so
ccd0: 6d 65 20 70 72 65 76 69 6f 75 73 20 73 74 65 70 me previous step
cce0: 20 6f 66 20 74 68 65 20 70 72 6f 63 65 73 73 2e of the process.
ccf0: 3c 62 72 3e 0d 0a 54 68 69 73 20 61 6c 6c 6f 77 <br>..This allow
cd00: 73 20 74 6f 20 65 66 66 69 63 69 65 6e 74 6c 79 s to efficiently
cd10: 20 73 75 70 70 6f 72 74 20 3c 62 3e 6d 75 6c 74 support <b>mult
cd20: 69 70 6c 65 20 64 65 73 74 69 6e 61 74 69 6f 6e iple destination
cd30: 73 3c 2f 62 3e 20 53 68 6f 72 74 65 73 74 20 50 s</b> Shortest P
cd40: 61 74 68 20 71 75 65 72 69 65 73 2e 0d 0a 59 6f ath queries...Yo
cd50: 75 20 73 69 6d 70 6c 79 20 68 61 76 65 20 74 6f u simply have to
cd60: 20 73 70 65 63 69 66 79 20 61 20 3c 62 3e 73 69 specify a <b>si
cd70: 6e 67 6c 65 20 6f 72 69 67 69 6e 20 4e 6f 64 65 ngle origin Node
cd80: 3c 2f 62 3e 20 61 6e 64 20 61 6e 20 3c 62 3e 61 </b> and an <b>a
cd90: 72 62 69 74 72 61 72 79 20 6c 69 73 74 20 6f 66 rbitrary list of
cda0: 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 4e 6f 64 destination Nod
cdb0: 65 73 3c 2f 62 3e 20 69 6e 20 61 20 73 69 6e 67 es</b> in a sing
cdc0: 6c 65 20 44 69 6a 6b 73 74 72 61 27 73 20 65 78 le Dijkstra's ex
cdd0: 65 63 75 74 69 6f 6e 2e 3c 62 72 3e 3c 62 72 3e ecution.<br><br>
cde0: 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 65 ..<u>Note</u>: e
cdf0: 78 65 63 75 74 69 6e 67 20 61 20 6d 75 6c 74 69 xecuting a multi
ce00: 2d 64 65 73 74 69 6e 61 74 69 6f 6e 20 53 68 6f -destination Sho
ce10: 72 74 65 73 74 20 50 61 74 68 20 71 75 65 72 79 rtest Path query
ce20: 20 72 65 71 75 69 72 65 73 20 61 20 3c 62 3e 70 requires a <b>p
ce30: 72 6f 63 65 73 73 69 6e 67 20 74 69 6d 65 3c 2f rocessing time</
ce40: 62 3e 20 74 68 61 74 20 69 73 6e 27 74 20 74 68 b> that isn't th
ce50: 65 20 3c 75 3e 73 75 6d 20 6f 66 20 61 6c 6c 20 e <u>sum of all
ce60: 69 6e 64 69 76 69 64 75 61 6c 20 74 69 6d 69 6e individual timin
ce70: 67 73 20 66 6f 72 20 65 61 63 68 20 64 65 73 74 gs for each dest
ce80: 69 6e 61 74 69 6f 6e 3c 2f 75 3e 2c 20 62 75 74 ination</u>, but
ce90: 20 73 69 6d 70 6c 79 20 69 73 20 74 68 65 20 3c simply is the <
cea0: 75 3e 74 69 6d 65 20 72 65 71 75 69 72 65 64 20 u>time required
ceb0: 74 6f 20 72 65 61 63 68 20 74 68 65 20 6d 6f 73 to reach the mos
cec0: 74 20 63 6f 73 74 6c 79 20 6f 66 20 61 6c 6c 20 t costly of all
ced0: 64 65 73 74 69 6e 61 74 69 6f 6e 73 20 69 6e 20 destinations in
cee0: 74 68 65 20 6c 69 73 74 3c 2f 75 3e 2e 3c 62 72 the list</u>.<br
cef0: 3e 0d 0a 54 68 69 73 20 69 73 6e 27 74 20 72 69 >..This isn't ri
cf00: 67 6f 72 6f 75 73 6c 79 20 74 72 75 65 20 69 6e gorously true in
cf10: 20 74 68 65 20 63 61 73 65 20 6f 66 20 74 68 65 the case of the
cf20: 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 VirtualRouting
cf30: 73 70 65 63 69 66 69 63 20 69 6d 70 6c 65 6d 65 specific impleme
cf40: 6e 74 61 74 69 6f 6e 2c 20 62 65 63 61 75 73 65 ntation, because
cf50: 20 61 72 72 61 6e 67 69 6e 67 20 74 68 65 20 72 arranging the r
cf60: 65 73 75 6c 74 73 65 74 20 74 6f 20 62 65 20 72 esultset to be r
cf70: 65 74 75 72 6e 65 64 20 61 6e 64 20 63 72 65 61 eturned and crea
cf80: 74 69 6e 67 20 61 6c 6c 20 74 68 65 20 69 6e 64 ting all the ind
cf90: 69 76 69 64 75 61 6c 20 4c 69 6e 65 73 74 72 69 ividual Linestri
cfa0: 6e 67 73 20 66 6f 72 20 65 61 63 68 20 64 65 73 ngs for each des
cfb0: 74 69 6e 61 74 69 6f 6e 20 77 69 6c 6c 20 73 75 tination will su
cfc0: 72 65 6c 79 20 69 6d 70 6f 73 65 20 73 6f 6d 65 rely impose some
cfd0: 20 66 75 72 74 68 65 72 20 6f 76 65 72 68 65 61 further overhea
cfe0: 64 2c 20 62 75 74 20 6e 6f 6e 65 74 68 65 6c 65 d, but nonethele
cff0: 73 73 20 69 74 20 72 65 6d 61 69 6e 73 20 63 6f ss it remains co
d000: 6e 66 69 72 6d 65 64 20 74 68 61 74 20 65 78 65 nfirmed that exe
d010: 63 75 74 69 6e 67 20 61 20 73 69 6e 67 6c 65 20 cuting a single
d020: 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 6f multi-destinatio
d030: 6e 20 71 75 65 72 79 20 77 69 6c 6c 20 73 75 72 n query will sur
d040: 65 6c 79 20 62 65 20 20 6e 6f 74 69 63 65 61 62 ely be noticeab
d050: 6c 79 20 66 61 73 74 65 72 20 74 68 65 6e 20 65 ly faster then e
d060: 78 65 63 75 74 69 6e 67 20 6d 61 6e 79 20 73 70 xecuting many sp
d070: 61 72 73 65 20 73 69 6e 67 6c 65 2d 64 65 73 74 arse single-dest
d080: 69 6e 61 74 69 6f 6e 20 71 75 65 72 69 65 73 2e ination queries.
d090: 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 ..<verbatim>..SE
d0a0: 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 LECT Algorithm,
d0b0: 52 65 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 Request, Options
d0c0: 2c 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f 75 , Delimiter, Rou
d0d0: 74 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c 20 teId, RouteRow,
d0e0: 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c Role, LinkRowid,
d0f0: 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 NodeFrom, NodeT
d100: 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 o, Cost, Geometr
d110: 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 y, Name..FROM by
d120: 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 foot..WHERE Node
d130: 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e From = 178731 AN
d140: 44 20 4e 6f 64 65 54 6f 20 3d 20 27 31 38 33 32 D NodeTo = '1832
d150: 38 36 2c 32 39 30 34 35 38 2c 31 38 31 39 39 39 86,290458,181999
d160: 2c 31 38 34 30 33 30 2c 31 32 34 36 32 32 2c 31 ,184030,124622,1
d170: 38 33 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 0a 83882,178754';..
d180: 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 41 73 20 </verbatim>..As
d190: 79 6f 75 20 63 61 6e 20 65 61 73 69 6c 79 20 6e you can easily n
d1a0: 6f 74 69 63 65 2c 20 61 20 3c 62 3e 6d 75 6c 74 otice, a <b>mult
d1b0: 69 70 6c 65 2d 64 65 73 74 69 6e 61 74 69 6f 6e iple-destination
d1c0: 73 3c 2f 62 3e 20 71 75 65 72 79 20 68 61 73 20 s</b> query has
d1d0: 74 68 65 20 73 61 6d 65 20 69 64 65 6e 74 69 63 the same identic
d1e0: 61 6c 20 66 6f 72 6d 20 6f 66 20 61 6e 79 20 75 al form of any u
d1f0: 73 75 61 6c 20 53 68 6f 72 74 65 73 74 20 50 61 sual Shortest Pa
d200: 74 68 20 71 75 65 72 79 2c 20 65 78 63 65 70 74 th query, except
d210: 20 69 6e 20 74 68 61 74 20 3c 62 3e 4e 6f 64 65 in that <b>Node
d220: 54 6f 3c 2f 62 3e 20 6e 6f 77 20 63 6f 72 72 65 To</b> now corre
d230: 73 70 6f 6e 64 73 20 74 6f 20 61 20 63 6f 6d 6d sponds to a comm
d240: 61 2d 73 65 70 61 72 61 74 65 64 20 6c 69 73 74 a-separated list
d250: 2e 3c 62 72 3e 0d 0a 54 68 65 20 66 6f 6c 6c 6f .<br>..The follo
d260: 77 69 6e 67 20 74 61 62 6c 65 20 73 68 6f 77 73 wing table shows
d270: 20 74 68 65 20 72 65 73 75 6c 74 73 65 74 20 72 the resultset r
d280: 65 74 75 72 6e 65 64 20 62 79 20 74 68 65 20 70 eturned by the p
d290: 72 65 76 69 6f 75 73 20 6d 75 6c 74 69 2d 64 65 revious multi-de
d2a0: 73 74 69 6e 61 74 69 6f 6e 20 53 68 6f 72 74 65 stination Shorte
d2b0: 73 74 20 50 61 74 68 20 71 75 65 72 79 2e 0d 0a st Path query...
d2c0: 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 <br><br>..<table
d2d0: 20 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 6f border="1" bgco
d2e0: 6c 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 65 lor="#ffffcf" ce
d2f0: 6c 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 65 llspacing="4" ce
d300: 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d 0a llpadding="6">..
d310: 3c 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d <tr><th bgcolor=
d320: 22 23 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 69 "#d0d0a0">Algori
d330: 74 68 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f thm</th><th bgco
d340: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 65 lor="#d0d0a0">Re
d350: 71 75 65 73 74 3c 2f 74 68 3e 3c 74 68 20 62 67 quest</th><th bg
d360: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
d370: 4f 70 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 20 Options</th><th
d380: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
d390: 22 3e 44 65 6c 69 6d 69 74 65 72 3c 2f 74 68 3e ">Delimiter</th>
d3a0: 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 <th bgcolor="#d0
d3b0: 64 30 61 30 22 3e 52 6f 75 74 65 49 64 3c 2f 74 d0a0">RouteId</t
d3c0: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
d3d0: 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f 77 d0d0a0">RouteRow
d3e0: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
d3f0: 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 3c ="#d0d0a0">Role<
d400: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
d410: 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 6f "#d0d0a0">LinkRo
d420: 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f wid</th><th bgco
d430: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f lor="#d0d0a0">No
d440: 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 62 deFrom</th><th b
d450: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
d460: 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 20 >NodeTo</th><th
d470: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
d480: 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 62 ">Cost</th><th b
d490: 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
d4a0: 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c 74 >Geometry</th><t
d4b0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
d4c0: 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 74 a0">Name</th></t
d4d0: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 69 r>..<tr>..<td>Di
d4e0: 6a 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e 53 jkstra</td><td>S
d4f0: 68 6f 72 74 65 73 74 20 50 61 74 68 3c 2f 74 64 hortest Path</td
d500: 3e 3c 74 64 3e 46 75 6c 6c 3c 2f 74 64 3e 3c 74 ><td>Full</td><t
d510: 64 3e 2c 20 26 23 39 31 3b 64 65 63 3d 34 34 2c d>, [dec=44,
d520: 20 68 65 78 3d 32 63 26 23 39 33 3b 3c 2f 74 64 hex=2c]</td
d530: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
d540: 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">0</td><td ali
d550: 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
d560: 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c ><td>Route</td><
d570: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
d580: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
d590: 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
d5a0: 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 38 38 gn="right">18388
d5b0: 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 2</td><td align=
d5c0: 22 72 69 67 68 74 22 3e 31 35 34 2e 37 35 30 38 "right">154.7508
d5d0: 33 39 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 39</td><td>BLOB
d5e0: 73 7a 3d 32 34 30 20 47 45 4f 4d 45 54 52 59 3c sz=240 GEOMETRY<
d5f0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
d600: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
d610: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
d620: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
d630: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
d640: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
d650: 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 ight">0</td><td
d660: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c align="right">1<
d670: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
d680: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
d690: 74 22 3e 32 32 32 36 33 36 3c 2f 74 64 3e 3c 74 t">222636</td><t
d6a0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
d6b0: 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 178731</td><td a
d6c0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 lign="right">182
d6d0: 30 30 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 000</td><td alig
d6e0: 6e 3d 22 72 69 67 68 74 22 3e 31 30 33 2e 37 33 n="right">103.73
d6f0: 35 37 32 32 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 5722</td><td>NUL
d700: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 L</td><td>VIA PI
d710: 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 ETRO ARETINO</td
d720: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
d730: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
d740: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
d750: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
d760: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
d770: 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 20 ight">0</td><td
d780: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c align="right">2<
d790: 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 /td><td>Link</td
d7a0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
d7b0: 74 22 3e 32 32 35 35 32 37 3c 2f 74 64 3e 3c 74 t">225527</td><t
d7c0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
d7d0: 31 38 32 30 30 30 3c 2f 74 64 3e 3c 74 64 20 61 182000</td><td a
d7e0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 33 lign="right">183
d7f0: 38 38 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 882</td><td alig
d800: 6e 3d 22 72 69 67 68 74 22 3e 35 31 2e 30 31 35 n="right">51.015
d810: 31 31 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 117</td><td>NULL
d820: 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4c 49 43 </td><td>VIA LIC
d830: 49 4f 20 4e 45 4e 43 45 54 54 49 3c 2f 74 64 3e IO NENCETTI</td>
d840: 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c ..</tr>..<tr>..<
d850: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
d860: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
d870: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
d880: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
d890: 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 20 61 ght">1</td><td a
d8a0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
d8b0: 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 td><td>Route</td
d8c0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
d8d0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
d8e0: 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 178731</td><td a
d8f0: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 34 lign="right">184
d900: 30 33 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 030</td><td alig
d910: 6e 3d 22 72 69 67 68 74 22 3e 31 37 36 2e 33 36 n="right">176.36
d920: 34 37 35 35 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 4755</td><td>BLO
d930: 42 20 73 7a 3d 33 30 34 20 47 45 4f 4d 45 54 52 B sz=304 GEOMETR
d940: 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f Y</td><td>NULL</
d950: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
d960: 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
d970: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
d980: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
d990: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
d9a0: 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 "right">1</td><t
d9b0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
d9c0: 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 1</td><td>Link</
d9d0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
d9e0: 67 68 74 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e ght">224014</td>
d9f0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
da00: 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 ">178731</td><td
da10: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
da20: 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 82885</td><td al
da30: 69 67 6e 3d 22 72 69 67 68 74 22 3e 39 34 2e 38 ign="right">94.8
da40: 31 32 34 32 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 12424</td><td>NU
da50: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 LL</td><td>VIA P
da60: 49 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 IETRO ARETINO</t
da70: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
da80: 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
da90: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
daa0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
dab0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
dac0: 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 right">1</td><td
dad0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
dae0: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
daf0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
db00: 68 74 22 3e 32 32 34 38 36 32 3c 2f 74 64 3e 3c ht">224862</td><
db10: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
db20: 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 >182885</td><td
db30: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
db40: 32 30 34 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2043</td><td ali
db50: 67 6e 3d 22 72 69 67 68 74 22 3e 33 37 2e 30 39 gn="right">37.09
db60: 35 32 38 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 5287</td><td>NUL
db70: 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d 41 L</td><td>VIA MA
db80: 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d 0a RGARITONE</td>..
db90: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
dba0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
dbb0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
dbc0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
dbd0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
dbe0: 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">1</td><td ali
dbf0: 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 gn="right">3</td
dc00: 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 ><td>Link</td><t
dc10: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
dc20: 32 32 36 30 37 30 3c 2f 74 64 3e 3c 74 64 20 61 226070</td><td a
dc30: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 lign="right">182
dc40: 30 34 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 043</td><td alig
dc50: 6e 3d 22 72 69 67 68 74 22 3e 31 38 34 30 33 30 n="right">184030
dc60: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
dc70: 72 69 67 68 74 22 3e 34 34 2e 34 35 37 30 34 34 right">44.457044
dc80: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
dc90: 64 3e 3c 74 64 3e 50 49 41 5a 5a 41 20 53 41 4e d><td>PIAZZA SAN
dca0: 54 27 41 47 4f 53 54 49 4e 4f 3c 2f 74 64 3e 0d T'AGOSTINO</td>.
dcb0: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
dcc0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
dcd0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
dce0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
dcf0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
dd00: 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">2</td><td al
dd10: 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
dd20: 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e d><td>Route</td>
dd30: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
dd40: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
dd50: 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
dd60: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
dd70: 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 54</td><td align
dd80: 3d 22 72 69 67 68 74 22 3e 32 32 34 2e 36 37 37 ="right">224.677
dd90: 30 39 35 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 095</td><td>BLOB
dda0: 20 73 7a 3d 32 34 30 20 47 45 4f 4d 45 54 52 59 sz=240 GEOMETRY
ddb0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
ddc0: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
ddd0: 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
dde0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
ddf0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
de00: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
de10: 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ">2</td><td alig
de20: 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e n="right">1</td>
de30: 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 <td>Link</td><td
de40: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
de50: 31 39 30 34 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 19045</td><td al
de60: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
de70: 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
de80: 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 32 3c ="right">178732<
de90: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
dea0: 69 67 68 74 22 3e 37 36 2e 30 32 31 30 30 37 3c ight">76.021007<
deb0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
dec0: 3e 3c 74 64 3e 56 49 41 20 41 53 53 41 42 3c 2f ><td>VIA ASSAB</
ded0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
dee0: 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
def0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
df00: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
df10: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
df20: 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 "right">2</td><t
df30: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
df40: 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 2</td><td>Link</
df50: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
df60: 67 68 74 22 3e 32 31 39 30 35 38 3c 2f 74 64 3e ght">219058</td>
df70: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
df80: 22 3e 31 37 38 37 33 32 3c 2f 74 64 3e 3c 74 64 ">178732</td><td
df90: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
dfa0: 37 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 78754</td><td al
dfb0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 34 38 2e ign="right">148.
dfc0: 36 35 36 30 38 39 3c 2f 74 64 3e 3c 74 64 3e 4e 656089</td><td>N
dfd0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
dfe0: 46 52 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 FRANCESCO CRISPI
dff0: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
e000: 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 r>..<td>NULL</td
e010: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
e020: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
e030: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
e040: 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e n="right">3</td>
e050: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e060: 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 ">0</td><td>Rout
e070: 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f e</td><td>NULL</
e080: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e090: 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e ght">178731</td>
e0a0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e0b0: 22 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 64 ">181999</td><td
e0c0: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 align="right">2
e0d0: 36 30 2e 31 33 32 33 35 34 3c 2f 74 64 3e 3c 74 60.132354</td><t
e0e0: 64 3e 42 4c 4f 42 20 73 7a 3d 32 34 30 20 47 45 d>BLOB sz=240 GE
e0f0: 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e OMETRY</td><td>N
e100: 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d ULL</td>..</tr>.
e110: 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c .<tr>..<td>NULL<
e120: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
e130: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
e140: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 d>NULL</td><td a
e150: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f lign="right">3</
e160: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e170: 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c ght">1</td><td>L
e180: 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ink</td><td alig
e190: 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 30 31 34 n="right">224014
e1a0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
e1b0: 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 right">178731</t
e1c0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e1d0: 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c ht">182885</td><
e1e0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e1f0: 3e 39 34 2e 38 31 32 34 32 34 3c 2f 74 64 3e 3c >94.812424</td><
e200: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e210: 56 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 VIA PIETRO ARETI
e220: 4e 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a NO</td>..</tr>..
e230: 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
e240: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
e250: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
e260: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
e270: 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 ign="right">3</t
e280: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e290: 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">2</td><td>Li
e2a0: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
e2b0: 3d 22 72 69 67 68 74 22 3e 32 32 34 34 34 36 3c ="right">224446<
e2c0: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
e2d0: 69 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 ight">182885</td
e2e0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e2f0: 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 t">178880</td><t
e300: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e310: 36 39 2e 37 32 37 37 32 36 3c 2f 74 64 3e 3c 74 69.727726</td><t
e320: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
e330: 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f IA MARGARITONE</
e340: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
e350: 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
e360: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e370: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
e380: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
e390: 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 "right">3</td><t
e3a0: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e3b0: 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 3</td><td>Link</
e3c0: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e3d0: 67 68 74 22 3e 32 32 35 38 30 30 3c 2f 74 64 3e ght">225800</td>
e3e0: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e3f0: 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 ">178880</td><td
e400: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
e410: 38 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 81999</td><td al
e420: 69 67 6e 3d 22 72 69 67 68 74 22 3e 39 35 2e 35 ign="right">95.5
e430: 39 32 32 30 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 92204</td><td>NU
e440: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 46 LL</td><td>VIA F
e450: 52 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 3c RANCESCO CRISPI<
e460: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
e470: 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
e480: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
e490: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
e4a0: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
e4b0: 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c ="right">4</td><
e4c0: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e4d0: 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 >0</td><td>Route
e4e0: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
e4f0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e500: 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c ht">178731</td><
e510: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e520: 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 >183286</td><td
e530: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 30 align="right">30
e540: 30 2e 39 31 32 32 30 38 3c 2f 74 64 3e 3c 74 64 0.912208</td><td
e550: 3e 42 4c 4f 42 20 73 7a 3d 32 37 32 20 47 45 4f >BLOB sz=272 GEO
e560: 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 METRY</td><td>NU
e570: 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
e580: 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
e590: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
e5a0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
e5b0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
e5c0: 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 ign="right">4</t
e5d0: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e5e0: 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">1</td><td>Li
e5f0: 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
e600: 3d 22 72 69 67 68 74 22 3e 32 32 34 30 31 34 3c ="right">224014<
e610: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
e620: 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 ight">178731</td
e630: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e640: 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e 3c 74 t">182885</td><t
e650: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
e660: 39 34 2e 38 31 32 34 32 34 3c 2f 74 64 3e 3c 74 94.812424</td><t
e670: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
e680: 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 4e IA PIETRO ARETIN
e690: 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c O</td>..</tr>..<
e6a0: 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
e6b0: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
e6c0: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e6d0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
e6e0: 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 gn="right">4</td
e6f0: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e700: 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">2</td><td>Lin
e710: 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
e720: 22 72 69 67 68 74 22 3e 32 32 34 34 34 36 3c 2f "right">224446</
e730: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
e740: 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 3e ght">182885</td>
e750: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
e760: 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 ">178880</td><td
e770: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 align="right">6
e780: 39 2e 37 32 37 37 32 36 3c 2f 74 64 3e 3c 74 64 9.727726</td><td
e790: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
e7a0: 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 A MARGARITONE</t
e7b0: 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
e7c0: 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
e7d0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
e7e0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
e7f0: 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
e800: 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 right">4</td><td
e810: 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
e820: 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
e830: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
e840: 68 74 22 3e 32 32 34 34 31 34 3c 2f 74 64 3e 3c ht">224414</td><
e850: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
e860: 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 64 20 >178880</td><td
e870: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
e880: 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 3286</td><td ali
e890: 67 6e 3d 22 72 69 67 68 74 22 3e 31 33 36 2e 33 gn="right">136.3
e8a0: 37 32 30 35 37 3c 2f 74 64 3e 3c 74 64 3e 4e 55 72057</td><td>NU
e8b0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 4d LL</td><td>VIA M
e8c0: 41 52 47 41 52 49 54 4f 4e 45 3c 2f 74 64 3e 0d ARGARITONE</td>.
e8d0: 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
e8e0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
e8f0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
e900: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
e910: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
e920: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
e930: 55 6e 72 65 61 63 68 61 62 6c 65 20 4e 6f 64 65 Unreachable Node
e940: 54 6f 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c To</td><td>NULL<
e950: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
e960: 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 ight">178731</td
e970: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
e980: 74 22 3e 32 39 30 34 35 38 3c 2f 74 64 3e 3c 74 t">290458</td><t
e990: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
e9a0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
e9b0: 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
e9c0: 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 r>..<td>NULL</td
e9d0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
e9e0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
e9f0: 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
ea00: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
ea10: 64 3e 3c 74 64 3e 55 6e 72 65 61 63 68 61 62 6c d><td>Unreachabl
ea20: 65 20 4e 6f 64 65 54 6f 3c 2f 74 64 3e 3c 74 64 e NodeTo</td><td
ea30: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
ea40: 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
ea50: 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
ea60: 3d 22 72 69 67 68 74 22 3e 31 32 34 36 32 32 3c ="right">124622<
ea70: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
ea80: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
ea90: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 d>NULL</td>..</t
eaa0: 72 3e 0d 0a 3c 2f 74 61 62 6c 65 3e 0d 0a 3c 62 r>..</table>..<b
eab0: 72 3e 0d 0a 4c 65 74 27 73 20 71 75 69 63 6b 6c r>..Let's quickl
eac0: 79 20 65 78 61 6d 69 6e 65 20 74 68 65 20 72 65 y examine the re
ead0: 73 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 64 sultset returned
eae0: 20 62 79 20 74 68 65 20 61 62 6f 76 65 20 3c 62 by the above <b
eaf0: 3e 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 >multi-destinati
eb00: 6f 6e 73 3c 2f 62 3e 20 71 75 65 72 79 2e 0d 0a ons</b> query...
eb10: 3c 75 6c 3e 0d 0a 3c 6c 69 3e 74 68 65 20 6f 76 <ul>..<li>the ov
eb20: 65 72 61 6c 6c 20 6c 61 79 6f 75 74 20 69 73 20 erall layout is
eb30: 61 6c 6d 6f 73 74 20 65 78 61 63 74 6c 79 20 74 almost exactly t
eb40: 68 65 20 73 61 6d 65 20 61 73 20 79 6f 75 27 76 he same as you'v
eb50: 65 20 61 6c 72 65 61 64 79 20 73 65 65 6e 20 69 e already seen i
eb60: 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 3c 62 n the case of <b
eb70: 3e 73 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 >single-destinat
eb80: 69 6f 6e 3c 2f 62 3e 20 71 75 65 72 69 65 73 2c ion</b> queries,
eb90: 20 62 75 74 20 69 6e 20 74 68 69 73 20 63 61 73 but in this cas
eba0: 65 20 6d 6f 72 65 20 69 6e 64 69 76 69 64 75 61 e more individua
ebb0: 6c 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 6f l travel solutio
ebc0: 6e 73 20 61 72 65 20 67 72 6f 75 70 65 64 20 61 ns are grouped a
ebd0: 6c 74 6f 67 65 74 68 65 72 2e 3c 2f 6c 69 3e 0d ltogether.</li>.
ebe0: 0a 3c 6c 69 3e 74 68 65 20 3c 62 3e 66 69 72 73 .<li>the <b>firs
ebf0: 74 20 72 6f 77 3c 2f 62 3e 20 6f 66 20 74 68 65 t row</b> of the
ec00: 20 72 65 73 75 6c 74 73 65 74 20 69 73 20 73 6f resultset is so
ec10: 6d 65 77 61 79 20 65 78 63 65 70 74 69 6f 6e 61 meway exceptiona
ec20: 6c 2c 20 61 6e 64 20 69 73 20 74 68 65 20 75 6e l, and is the un
ec30: 69 71 75 65 20 72 6f 77 20 6f 66 20 74 68 65 20 ique row of the
ec40: 72 65 73 75 6c 74 73 65 74 20 70 72 65 73 65 6e resultset presen
ec50: 74 69 6e 67 20 3c 62 3e 4e 4f 54 20 4e 55 4c 4c ting <b>NOT NULL
ec60: 3c 2f 62 3e 20 76 61 6c 75 65 73 20 69 6e 20 74 </b> values in t
ec70: 68 65 20 3c 62 3e 41 6c 67 6f 72 69 74 68 6d 3c he <b>Algorithm<
ec80: 2f 62 3e 2c 20 3c 62 3e 52 65 71 75 65 73 74 3c /b>, <b>Request<
ec90: 2f 62 3e 2c 20 3c 62 3e 4f 70 74 69 6f 6e 73 3c /b>, <b>Options<
eca0: 2f 62 3e 20 61 6e 64 20 3c 62 3e 44 65 6c 69 6d /b> and <b>Delim
ecb0: 69 74 65 72 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 73 iter</b> columns
ecc0: 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 20 .</li>..<li>the
ecd0: 3c 62 3e 52 6f 75 74 65 49 64 3c 2f 62 3e 20 63 <b>RouteId</b> c
ece0: 6f 6c 75 6d 6e 20 69 73 20 69 6e 74 65 6e 64 65 olumn is intende
ecf0: 64 20 74 6f 20 67 72 6f 75 70 20 74 6f 67 65 74 d to group toget
ed00: 68 65 72 20 61 6c 6c 20 72 6f 77 73 20 62 65 6c her all rows bel
ed10: 6f 6e 67 69 6e 67 20 74 6f 20 73 61 6d 65 20 74 onging to same t
ed20: 72 61 76 65 6c 20 73 6f 6c 75 74 69 6f 6e 20 28 ravel solution (
ed30: 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e 52 6f <i>aka</i> <b>Ro
ed40: 75 74 65 3c 2f 62 3e 29 2e 3c 62 72 3e 0d 0a 52 ute</b>).<br>..R
ed50: 6f 75 74 65 73 20 61 72 65 20 70 72 6f 67 72 65 outes are progre
ed60: 73 73 69 76 65 6c 79 20 6e 75 6d 62 65 72 65 64 ssively numbered
ed70: 20 61 6e 64 20 61 72 65 20 6f 72 64 65 72 65 64 and are ordered
ed80: 20 61 63 63 6f 72 64 69 6e 67 6c 79 20 74 6f 20 accordingly to
ed90: 74 68 65 69 72 20 3c 62 3e 74 6f 74 61 6c 20 63 their <b>total c
eda0: 6f 73 74 3c 2f 62 3e 2e 3c 2f 6c 69 3e 0d 0a 3c ost</b>.</li>..<
edb0: 6c 69 3e 74 68 65 20 3c 62 3e 52 6f 75 74 65 52 li>the <b>RouteR
edc0: 6f 77 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 20 68 61 ow</b> column ha
edd0: 73 20 74 68 65 20 73 61 6d 65 20 69 6e 74 65 72 s the same inter
ede0: 70 72 65 74 61 74 69 6f 6e 20 61 73 20 69 6e 20 pretation as in
edf0: 73 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 69 single-destinati
ee00: 6f 6e 20 72 65 73 75 6c 74 73 65 74 73 2c 20 61 on resultsets, a
ee10: 6e 64 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 nd is intended t
ee20: 6f 20 70 72 6f 67 72 65 73 73 69 76 65 6c 79 20 o progressively
ee30: 6f 72 64 65 72 20 69 6e 20 74 68 65 20 63 6f 72 order in the cor
ee40: 72 65 63 74 20 73 65 71 75 65 6e 63 65 20 61 6c rect sequence al
ee50: 6c 20 4c 69 6e 6b 73 20 63 6f 6e 6e 65 63 74 69 l Links connecti
ee60: 6e 67 20 74 68 65 20 4f 72 69 67 69 6e 20 61 6e ng the Origin an
ee70: 64 20 74 68 65 20 44 65 73 74 69 6e 61 74 69 6f d the Destinatio
ee80: 6e 20 6f 66 20 65 61 63 68 20 52 6f 75 74 65 2e n of each Route.
ee90: 3c 62 72 3e 0d 0a 3c 62 3e 52 6f 75 74 65 52 6f <br>..<b>RouteRo
eea0: 77 3d 30 3c 2f 62 3e 20 61 6c 77 61 79 73 20 69 w=0</b> always i
eeb0: 64 65 6e 74 69 66 69 65 73 20 74 68 65 20 68 65 dentifies the he
eec0: 61 64 65 72 20 72 6f 77 20 6f 66 20 65 61 63 68 ader row of each
eed0: 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 69 6f 6e travel solution
eee0: 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c .</li>..</ul>..<
eef0: 62 72 3e 0d 0a 3c 75 3e 4e 6f 74 69 63 65 3c 2f br>..<u>Notice</
ef00: 75 3e 3a 20 74 68 65 20 6c 61 73 74 20 74 77 6f u>: the last two
ef10: 20 72 6f 77 73 20 69 6e 20 74 68 65 20 72 65 73 rows in the res
ef20: 75 6c 74 73 65 74 20 72 65 70 6f 72 74 73 20 3c ultset reports <
ef30: 62 3e 55 6e 72 65 61 63 68 61 62 6c 65 20 4e 6f b>Unreachable No
ef40: 64 65 54 6f 09 3c 2f 62 3e 20 69 6e 20 74 68 65 deTo.</b> in the
ef50: 20 3c 62 3e 52 6f 6c 65 3c 2f 62 3e 20 63 6f 6c <b>Role</b> col
ef60: 75 6d 6e 2c 20 74 68 75 73 20 69 6d 70 6c 79 69 umn, thus implyi
ef70: 6e 67 20 61 20 3c 62 3e 66 6f 72 62 69 64 64 65 ng a <b>forbidde
ef80: 6e 20 63 6f 6e 6e 65 63 74 69 6f 6e 3c 2f 62 3e n connection</b>
ef90: 2e 3c 62 72 3e 0d 0a 54 68 69 73 20 77 61 73 20 .<br>..This was
efa0: 70 75 72 70 6f 73 65 6c 79 20 69 6e 74 65 6e 64 purposely intend
efb0: 65 64 3a 20 4e 6f 64 65 73 20 3c 62 3e 32 39 30 ed: Nodes <b>290
efc0: 34 35 38 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 31 458</b> and <b>1
efd0: 32 34 36 32 32 3c 2f 62 3e 20 61 72 65 20 6c 6f 24622</b> are lo
efe0: 63 61 74 65 64 20 6f 6e 20 45 6c 62 61 20 61 6e cated on Elba an
eff0: 64 20 47 69 67 6c 69 6f 20 69 73 6c 61 6e 64 73 d Giglio islands
f000: 2e 20 54 68 65 20 75 6e 64 65 72 6c 61 79 69 6e . The underlayin
f010: 67 20 4e 65 74 77 6f 72 6b 20 69 73 20 62 61 73 g Network is bas
f020: 65 64 20 6f 6e 20 3c 62 3e 49 74 65 72 2e 4e 65 ed on <b>Iter.Ne
f030: 74 3c 2f 62 3e 20 74 68 61 74 20 64 6f 6e 27 74 t</b> that don't
f040: 20 73 75 70 70 6f 72 74 73 20 66 65 72 72 79 20 supports ferry
f050: 63 6f 6e 6e 65 63 74 69 6f 6e 73 2c 20 73 6f 20 connections, so
f060: 61 6e 79 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 any travel solut
f070: 69 6f 6e 20 62 65 74 77 65 65 6e 20 74 68 65 20 ion between the
f080: 69 73 6c 61 6e 64 73 20 61 6e 64 20 74 68 65 20 islands and the
f090: 6d 61 69 6e 6c 61 6e 64 20 77 69 6c 6c 20 61 6c mainland will al
f0a0: 77 61 79 73 20 66 61 69 6c 2e 0d 0a 3c 62 72 3e ways fail...<br>
f0b0: 3c 62 72 3e 3c 62 72 3e 0d 0a 41 6c 73 6f 20 3c <br><br>..Also <
f0c0: 62 3e 6d 75 6c 74 69 2d 64 65 73 74 69 6e 61 74 b>multi-destinat
f0d0: 69 6f 6e 73 3c 2f 62 3e 20 71 75 65 72 69 65 73 ions</b> queries
f0e0: 20 63 61 6e 20 62 65 20 63 75 73 74 6f 6d 69 7a can be customiz
f0f0: 65 64 2c 20 62 75 74 20 74 68 65 20 63 6f 6e 66 ed, but the conf
f100: 69 67 75 72 61 74 69 6f 6e 20 72 75 6c 65 73 20 iguration rules
f110: 73 6c 69 67 68 74 6c 79 20 64 69 66 66 65 72 20 slightly differ
f120: 66 72 6f 6d 20 77 68 61 74 20 79 6f 75 20 68 61 from what you ha
f130: 76 65 20 61 6c 72 65 61 64 79 20 73 65 65 6e 20 ve already seen
f140: 69 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 73 in the case of s
f150: 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 69 6f ingle-destinatio
f160: 6e 2e 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 3c 62 n...<ul>..<li><b
f170: 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 62 3e 3a 20 >Algorithm</b>:
f180: 6f 6e 6c 79 20 3c 62 3e 44 69 6a 6b 73 74 72 61 only <b>Dijkstra
f190: 3c 2f 62 3e 20 69 73 20 73 75 70 70 6f 72 74 65 </b> is supporte
f1a0: 64 20 62 79 20 6d 75 6c 74 69 2d 64 65 73 74 69 d by multi-desti
f1b0: 6e 61 74 69 6f 6e 3b 20 61 6e 79 20 61 74 74 65 nation; any atte
f1c0: 6d 70 74 20 74 6f 20 75 73 65 20 74 68 65 20 61 mpt to use the a
f1d0: 6c 74 65 72 6e 61 74 69 76 65 20 3c 62 3e 41 2a lternative <b>A*
f1e0: 3c 2f 62 3e 20 61 6c 67 6f 72 69 74 68 6d 20 77 </b> algorithm w
f1f0: 69 6c 6c 20 73 69 6d 70 6c 79 20 72 65 74 75 72 ill simply retur
f200: 6e 20 61 6e 20 65 6d 70 74 79 20 72 65 73 75 6c n an empty resul
f210: 74 73 65 74 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e tset.</li>..<li>
f220: 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 3a 20 <b>Options</b>:
f230: 74 68 65 20 75 73 75 61 6c 20 3c 62 3e 46 55 4c the usual <b>FUL
f240: 4c 3c 2f 62 3e 2c 20 3c 62 3e 53 49 4d 50 4c 45 L</b>, <b>SIMPLE
f250: 3c 2f 62 3e 2c 20 3c 62 3e 4e 4f 20 4c 49 4e 4b </b>, <b>NO LINK
f260: 53 3c 2f 62 3e 20 61 6e 64 20 3c 62 3e 4e 4f 20 S</b> and <b>NO
f270: 47 45 4f 4d 45 54 52 49 45 53 3c 2f 62 3e 20 61 GEOMETRIES</b> a
f280: 72 65 20 73 75 70 70 6f 72 74 65 64 20 61 6e 64 re supported and
f290: 20 77 69 6c 6c 20 68 61 76 65 20 74 68 65 20 73 will have the s
f2a0: 61 6d 65 20 65 66 66 65 63 74 20 61 73 20 69 6e ame effect as in
f2b0: 20 73 69 6e 67 6c 65 2d 64 65 73 74 69 6e 61 74 single-destinat
f2c0: 69 6f 6e 20 71 75 65 72 69 65 73 2e 3c 2f 6c 69 ion queries.</li
f2d0: 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 76 65 72 62 61 >..</ul>..<verba
f2e0: 74 69 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 66 tim>..UPDATE byf
f2f0: 6f 6f 74 20 53 45 54 20 4f 70 74 69 6f 6e 73 20 oot SET Options
f300: 3d 20 27 53 49 4d 50 4c 45 27 3b 0d 0a 0d 0a 53 = 'SIMPLE';....S
f310: 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c ELECT Algorithm,
f320: 20 52 65 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e Request, Option
f330: 73 2c 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f s, Delimiter, Ro
f340: 75 74 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c uteId, RouteRow,
f350: 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 Role, LinkRowid
f360: 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 , NodeFrom, Node
f370: 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 To, Cost, Geomet
f380: 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 ry, Name..FROM b
f390: 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 yfoot..WHERE Nod
f3a0: 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 eFrom = 178731 A
f3b0: 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 27 31 38 33 ND NodeTo = '183
f3c0: 32 38 36 2c 32 39 30 34 35 38 2c 31 38 31 39 39 286,290458,18199
f3d0: 39 2c 31 38 34 30 33 30 2c 31 32 34 36 32 32 2c 9,184030,124622,
f3e0: 31 38 33 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 183882,178754';.
f3f0: 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 54 68 .</verbatim>..Th
f400: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 62 6c e following tabl
f410: 65 20 73 68 6f 77 73 20 74 68 65 20 72 65 73 75 e shows the resu
f420: 6c 74 73 65 74 20 72 65 74 75 72 6e 65 64 20 62 ltset returned b
f430: 79 20 74 68 65 20 73 61 6d 65 20 6d 75 6c 74 69 y the same multi
f440: 2d 64 65 73 74 69 6e 61 74 69 6f 6e 20 71 75 65 -destination que
f450: 72 79 20 75 73 65 64 20 69 6e 20 74 68 65 20 70 ry used in the p
f460: 72 65 76 69 6f 75 73 20 65 78 61 6d 70 6c 65 20 revious example
f470: 61 66 74 65 72 20 65 6e 61 62 6c 69 6e 67 20 74 after enabling t
f480: 68 65 20 3c 62 3e 53 49 4d 50 4c 45 3c 2f 62 3e he <b>SIMPLE</b>
f490: 20 6f 70 74 69 6f 6e 2e 0d 0a 3c 62 72 3e 3c 62 option...<br><b
f4a0: 72 3e 0d 0a 3c 74 61 62 6c 65 20 62 6f 72 64 65 r>..<table borde
f4b0: 72 3d 22 31 22 20 62 67 63 6f 6c 6f 72 3d 22 23 r="1" bgcolor="#
f4c0: 66 66 66 66 63 66 22 20 63 65 6c 6c 73 70 61 63 ffffcf" cellspac
f4d0: 69 6e 67 3d 22 34 22 20 63 65 6c 6c 70 61 64 64 ing="4" cellpadd
f4e0: 69 6e 67 3d 22 36 22 3e 0d 0a 3c 74 72 3e 3c 74 ing="6">..<tr><t
f4f0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
f500: 61 30 22 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 74 a0">Algorithm</t
f510: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
f520: 64 30 64 30 61 30 22 3e 52 65 71 75 65 73 74 3c d0d0a0">Request<
f530: 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d /th><th bgcolor=
f540: 22 23 64 30 64 30 61 30 22 3e 4f 70 74 69 6f 6e "#d0d0a0">Option
f550: 73 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f s</th><th bgcolo
f560: 72 3d 22 23 64 30 64 30 61 30 22 3e 44 65 6c 69 r="#d0d0a0">Deli
f570: 6d 69 74 65 72 3c 2f 74 68 3e 3c 74 68 20 62 67 miter</th><th bg
f580: 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e color="#d0d0a0">
f590: 52 6f 75 74 65 49 64 3c 2f 74 68 3e 3c 74 68 20 RouteId</th><th
f5a0: 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
f5b0: 22 3e 52 6f 75 74 65 52 6f 77 3c 2f 74 68 3e 3c ">RouteRow</th><
f5c0: 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
f5d0: 30 61 30 22 3e 52 6f 6c 65 3c 2f 74 68 3e 3c 74 0a0">Role</th><t
f5e0: 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 h bgcolor="#d0d0
f5f0: 61 30 22 3e 4c 69 6e 6b 52 6f 77 69 64 3c 2f 74 a0">LinkRowid</t
f600: 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 h><th bgcolor="#
f610: 64 30 64 30 61 30 22 3e 4e 6f 64 65 46 72 6f 6d d0d0a0">NodeFrom
f620: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
f630: 3d 22 23 64 30 64 30 61 30 22 3e 4e 6f 64 65 54 ="#d0d0a0">NodeT
f640: 6f 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f o</th><th bgcolo
f650: 72 3d 22 23 64 30 64 30 61 30 22 3e 43 6f 73 74 r="#d0d0a0">Cost
f660: 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
f670: 3d 22 23 64 30 64 30 61 30 22 3e 47 65 6f 6d 65 ="#d0d0a0">Geome
f680: 74 72 79 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f try</th><th bgco
f690: 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e 61 lor="#d0d0a0">Na
f6a0: 6d 65 3c 2f 74 68 3e 3c 2f 74 72 3e 0d 0a 3c 74 me</th></tr>..<t
f6b0: 72 3e 0d 0a 3c 74 64 3e 44 69 6a 6b 73 74 72 61 r>..<td>Dijkstra
f6c0: 3c 2f 74 64 3e 3c 74 64 3e 53 68 6f 72 74 65 73 </td><td>Shortes
f6d0: 74 20 50 61 74 68 3c 2f 74 64 3e 3c 74 64 3e 46 t Path</td><td>F
f6e0: 75 6c 6c 3c 2f 74 64 3e 3c 74 64 3e 2c 20 26 23 ull</td><td>, &#
f6f0: 39 31 3b 64 65 63 3d 34 34 2c 20 68 65 78 3d 32 91;dec=44, hex=2
f700: 63 26 23 39 33 3b 3c 2f 74 64 3e 3c 74 64 20 61 c]</td><td a
f710: 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
f720: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
f730: 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 ght">0</td><td>R
f740: 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c oute</td><td>NUL
f750: 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
f760: 22 72 69 67 68 74 22 3e 31 37 38 37 33 31 3c 2f "right">178731</
f770: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
f780: 67 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 3e ght">183882</td>
f790: 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
f7a0: 22 3e 31 35 34 2e 37 35 30 38 33 39 3c 2f 74 64 ">154.750839</td
f7b0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
f7c0: 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 d>NULL</td>..</t
f7d0: 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 r>..<tr>..<td>NU
f7e0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
f7f0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
f800: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
f810: 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
f820: 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 1</td><td align=
f830: 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 "right">0</td><t
f840: 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e d>Route</td><td>
f850: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
f860: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 33 gn="right">17873
f870: 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 1</td><td align=
f880: 22 72 69 67 68 74 22 3e 31 38 34 30 33 30 3c 2f "right">184030</
f890: 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
f8a0: 67 68 74 22 3e 31 37 36 2e 33 36 34 37 35 35 3c ght">176.364755<
f8b0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
f8c0: 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a ><td>NULL</td>..
f8d0: 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 </tr>..<tr>..<td
f8e0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
f8f0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
f900: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
f910: 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
f920: 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 t">2</td><td ali
f930: 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 gn="right">0</td
f940: 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c ><td>Route</td><
f950: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
f960: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
f970: 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
f980: 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 gn="right">17875
f990: 34 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 4</td><td align=
f9a0: 22 72 69 67 68 74 22 3e 32 32 34 2e 36 37 37 30 "right">224.6770
f9b0: 39 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 95</td><td>NULL<
f9c0: 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 /td><td>NULL</td
f9d0: 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
f9e0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
f9f0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
fa00: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
fa10: 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
fa20: 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 20 ight">3</td><td
fa30: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c align="right">0<
fa40: 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 /td><td>Route</t
fa50: 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
fa60: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
fa70: 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 >178731</td><td
fa80: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
fa90: 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 1999</td><td ali
faa0: 67 6e 3d 22 72 69 67 68 74 22 3e 32 36 30 2e 31 gn="right">260.1
fab0: 33 32 33 35 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 32354</td><td>NU
fac0: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
fad0: 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
fae0: 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
faf0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
fb00: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
fb10: 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
fb20: 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c ="right">4</td><
fb30: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
fb40: 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 >0</td><td>Route
fb50: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
fb60: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
fb70: 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c ht">178731</td><
fb80: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
fb90: 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 >183286</td><td
fba0: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 30 align="right">30
fbb0: 30 2e 39 31 32 32 30 38 3c 2f 74 64 3e 3c 74 64 0.912208</td><td
fbc0: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
fbd0: 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
fbe0: 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
fbf0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
fc00: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
fc10: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
fc20: 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c LL</td><td>NULL<
fc30: 2f 74 64 3e 3c 74 64 3e 55 6e 72 65 61 63 68 61 /td><td>Unreacha
fc40: 62 6c 65 20 4e 6f 64 65 54 6f 3c 2f 74 64 3e 3c ble NodeTo</td><
fc50: 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
fc60: 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 align="right">17
fc70: 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 8731</td><td ali
fc80: 67 6e 3d 22 72 69 67 68 74 22 3e 32 39 30 34 35 gn="right">29045
fc90: 38 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 8</td><td>NULL</
fca0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
fcb0: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c <td>NULL</td>..<
fcc0: 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
fcd0: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
fce0: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
fcf0: 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
fd00: 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
fd10: 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 55 6e >NULL</td><td>Un
fd20: 72 65 61 63 68 61 62 6c 65 20 4e 6f 64 65 54 6f reachable NodeTo
fd30: 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
fd40: 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
fd50: 68 74 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c ht">178731</td><
fd60: 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
fd70: 3e 31 32 34 36 32 32 3c 2f 74 64 3e 3c 74 64 3e >124622</td><td>
fd80: 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
fd90: 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
fda0: 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 2f 74 61 td>..</tr>..</ta
fdb0: 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 54 68 65 20 ble>..<br>..The
fdc0: 6d 61 70 20 62 65 6c 6f 77 20 67 72 61 70 68 69 map below graphi
fdd0: 63 61 6c 6c 79 20 73 68 6f 77 73 20 74 68 65 20 cally shows the
fde0: 70 72 65 76 69 6f 75 73 20 3c 62 3e 6d 75 6c 74 previous <b>mult
fdf0: 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 73 3c 2f i-destinations</
fe00: 62 3e 20 71 75 65 72 69 65 73 2e 0d 0a 3c 62 72 b> queries...<br
fe10: 3e 3c 62 72 3e 0d 0a 3c 69 6d 67 20 73 72 63 3d ><br>..<img src=
fe20: 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 61 69 "https://www.gai
fe30: 61 2d 67 69 73 2e 69 74 2f 67 61 69 61 2d 73 69 a-gis.it/gaia-si
fe40: 6e 73 2f 72 6f 75 74 69 6e 67 2d 66 69 67 73 2f ns/routing-figs/
fe50: 72 6f 75 74 69 6e 67 33 2e 6a 70 67 22 20 61 6c routing3.jpg" al
fe60: 74 3d 22 66 69 67 33 22 3e 0d 0a 3c 75 6c 3e 0d t="fig3">..<ul>.
fe70: 0a 3c 6c 69 3e 52 65 64 20 73 74 61 72 3a 20 74 .<li>Red star: t
fe80: 68 65 20 4f 72 69 67 69 6e 20 4e 6f 64 65 2e 3c he Origin Node.<
fe90: 2f 6c 69 3e 0d 0a 3c 6c 69 3e 47 72 65 65 6e 20 /li>..<li>Green
fea0: 64 6f 74 73 3a 20 74 68 65 20 44 65 73 74 69 6e dots: the Destin
feb0: 61 74 69 6f 6e 20 4e 6f 64 65 73 2e 3c 2f 6c 69 ation Nodes.</li
fec0: 3e 0d 0a 3c 6c 69 3e 59 65 6c 6c 6f 77 20 6c 69 >..<li>Yellow li
fed0: 6e 65 73 3a 20 61 6c 6c 20 69 6e 64 69 76 69 64 nes: all individ
fee0: 75 61 6c 20 74 72 61 76 65 6c 20 73 6f 6c 75 74 ual travel solut
fef0: 69 6f 6e 73 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c ions.</li>..</ul
ff00: 3e 0d 0a 3c 62 72 3e 0d 0a 3c 74 61 62 6c 65 20 >..<br>..<table
ff10: 62 67 63 6f 6c 6f 72 3d 22 23 66 66 62 30 36 30 bgcolor="#ffb060
ff20: 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 3d 22 31 " cellspacing="1
ff30: 30 22 20 63 65 6c 6c 70 61 64 64 69 6e 67 3d 22 0" cellpadding="
ff40: 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d 0a 3c 68 33 6"><tr><td>..<h3
ff50: 3e 44 61 6e 67 65 72 6f 75 73 20 70 69 74 66 61 >Dangerous pitfa
ff60: 6c 6c 73 20 72 65 6c 61 74 65 64 20 74 6f 20 6d lls related to m
ff70: 75 6c 74 69 70 6c 65 20 64 65 73 74 69 6e 61 74 ultiple destinat
ff80: 69 6f 6e 20 6c 69 73 74 73 3c 2f 68 33 3e 0d 0a ion lists</h3>..
ff90: 53 51 4c 20 73 79 6e 74 61 78 20 64 69 72 65 63 SQL syntax direc
ffa0: 74 6c 79 20 61 6c 6c 6f 77 73 20 74 6f 20 73 70 tly allows to sp
ffb0: 65 63 69 66 79 20 6c 69 73 74 73 20 6f 66 20 20 ecify lists of
ffc0: 6d 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 73 2c multiple values,
ffd0: 20 73 6f 20 6d 61 79 20 62 65 20 79 6f 75 20 61 so may be you a
ffe0: 72 65 20 6e 6f 77 20 77 6f 6e 64 65 72 69 6e 67 re now wondering
fff0: 20 61 62 6f 75 74 20 77 72 69 74 69 6e 67 20 74 about writing t
10000 68 65 20 3c 62 3e 6d 75 6c 74 69 70 6c 65 20 64 he <b>multiple d
10010 65 73 74 69 6e 61 74 69 6f 6e 73 3c 2f 62 3e 20 estinations</b>
10020 71 75 65 72 79 20 74 65 73 74 65 64 20 69 6e 20 query tested in
10030 74 68 65 20 70 72 65 76 69 6f 75 73 20 65 78 61 the previous exa
10040 6d 70 6c 65 73 20 74 68 69 73 20 77 61 79 3a 0d mples this way:.
10050 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 53 45 4c .<verbatim>..SEL
10060 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 52 ECT Algorithm, R
10070 65 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 2c equest, Options,
10080 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f 75 74 Delimiter, Rout
10090 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 eId, RouteRow, R
100a0 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 ole, LinkRowid,
100b0 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f NodeFrom, NodeTo
100c0 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 , Cost, Geometry
100d0 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 , Name..FROM byf
100e0 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 oot..WHERE NodeF
100f0 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 rom = 178731 AND
10100 20 4e 6f 64 65 54 6f 20 49 4e 20 28 31 38 33 32 NodeTo IN (1832
10110 38 36 2c 20 32 39 30 34 35 38 2c 20 31 38 31 39 86, 290458, 1819
10120 39 39 2c 20 31 38 34 30 33 30 2c 20 31 32 34 36 99, 184030, 1246
10130 32 32 2c 20 31 38 33 38 38 32 2c 20 31 37 38 37 22, 183882, 1787
10140 35 34 29 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 54);..</verbatim
10150 3e 0d 0a 54 68 65 72 65 20 69 73 20 61 20 76 65 >..There is a ve
10160 72 79 20 67 6f 6f 64 20 72 65 61 73 6f 6e 20 64 ry good reason d
10170 69 73 63 6f 75 72 61 67 69 6e 67 20 66 72 6f 6d iscouraging from
10180 20 64 6f 69 6e 67 20 73 75 63 68 20 61 20 74 68 doing such a th
10190 69 6e 67 2c 20 6c 65 74 27 73 20 73 65 65 20 77 ing, let's see w
101a0 68 79 2e 3c 62 72 3e 0d 0a 3c 62 3e 53 51 4c 69 hy.<br>..<b>SQLi
101b0 74 65 3c 2f 62 3e 20 77 69 6c 6c 20 70 72 6f 63 te</b> will proc
101c0 65 73 73 20 61 20 72 65 71 75 65 73 74 20 77 72 ess a request wr
101d0 69 74 74 65 6e 20 74 68 69 73 20 77 61 79 20 62 itten this way b
101e0 79 20 72 65 70 65 61 74 65 64 6c 79 20 63 61 6c y repeatedly cal
101f0 6c 69 6e 67 20 56 69 72 74 75 61 6c 52 6f 75 74 ling VirtualRout
10200 69 6e 67 20 70 61 73 73 69 6e 67 20 65 61 63 68 ing passing each
10210 20 74 69 6d 65 20 61 20 73 69 6e 67 6c 65 20 44 time a single D
10220 65 73 74 69 6e 61 74 69 6f 6e 3b 20 61 6e 64 20 estination; and
10230 63 6f 6e 73 65 71 75 65 6e 74 6c 79 20 3c 62 3e consequently <b>
10240 56 69 72 74 75 61 6c 52 6f 75 74 69 6e 67 3c 2f VirtualRouting</
10250 62 3e 20 77 69 6c 6c 20 6e 65 76 65 72 20 72 65 b> will never re
10260 63 65 69 76 65 20 74 68 65 20 63 72 69 74 69 63 ceive the critic
10270 61 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74 al information t
10280 68 61 74 20 61 20 73 69 6e 67 6c 65 20 6d 6f 6e hat a single mon
10290 6f 6c 69 74 68 69 63 20 72 65 71 75 65 73 74 20 olithic request
102a0 77 61 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 was intended to
102b0 62 65 20 65 78 65 63 75 74 65 64 20 69 6e 20 61 be executed in a
102c0 20 73 69 6e 67 6c 65 20 73 68 6f 74 2e 20 53 6f single shot. So
102d0 20 74 68 65 20 72 65 71 75 65 73 74 20 63 6f 6e the request con
102e0 74 65 78 74 20 77 69 6c 6c 20 62 65 20 65 61 73 text will be eas
102f0 69 6c 79 20 6d 69 73 69 6e 74 65 72 70 72 65 74 ily misinterpret
10300 65 64 2c 20 61 6e 64 20 61 6e 79 20 65 78 70 65 ed, and any expe
10310 63 74 65 64 20 73 70 65 65 64 20 62 65 6e 65 66 cted speed benef
10320 69 74 20 77 69 6c 6c 20 62 65 20 63 6f 6d 70 6c it will be compl
10330 65 74 65 6c 79 20 66 72 75 73 74 72 61 74 65 64 etely frustrated
10340 2e 0d 0a 3c 68 33 3e 42 65 77 61 72 65 3c 2f 68 ...<h3>Beware</h
10350 33 3e 0d 0a 3c 62 3e 4e 65 76 65 72 20 65 76 65 3>..<b>Never eve
10360 72 3c 2f 62 3e 20 61 74 74 65 6d 70 74 20 74 6f r</b> attempt to
10370 20 64 65 66 69 6e 65 20 61 20 6c 69 73 74 20 6f define a list o
10380 66 20 6d 75 6c 74 69 70 6c 65 20 64 65 73 74 69 f multiple desti
10390 6e 61 74 69 6f 6e 73 20 75 73 69 6e 67 20 74 68 nations using th
103a0 65 20 73 74 61 6e 64 61 72 64 20 53 51 4c 20 73 e standard SQL s
103b0 79 6e 74 61 78 20 3c 62 3e 3c 69 3e 57 48 45 52 yntax <b><i>WHER
103c0 45 20 4e 6f 64 65 54 6f 20 49 4e 20 28 2e 2e 2e E NodeTo IN (...
103d0 2e 2e 2e 29 3c 2f 69 3e 3c 2f 62 3e 2c 20 62 65 ...)</i></b>, be
103e0 63 61 75 73 65 20 74 68 69 73 20 77 69 6c 6c 20 cause this will
103f0 63 65 72 74 61 69 6e 6c 79 20 63 61 75 73 65 20 certainly cause
10400 6d 61 6e 79 20 75 6e 65 78 70 65 63 74 65 64 20 many unexpected
10410 74 72 6f 75 62 6c 65 73 2e 3c 62 72 3e 0d 0a 42 troubles.<br>..B
10420 61 64 6c 79 20 66 6f 72 6d 61 74 74 65 64 20 72 adly formatted r
10430 65 73 75 6c 74 73 65 74 73 20 77 69 6c 6c 20 62 esultsets will b
10440 65 20 74 68 65 6e 20 72 65 74 75 72 6e 65 64 2c e then returned,
10450 20 6d 61 79 20 62 65 20 63 6f 6e 74 61 69 6e 69 may be containi
10460 6e 67 20 77 72 6f 6e 67 20 72 65 73 75 6c 74 73 ng wrong results
10470 2e 20 3c 62 3e 59 6f 75 20 61 72 65 20 77 61 72 . <b>You are war
10480 6e 65 64 3c 2f 62 3e 2e 3c 62 72 3e 3c 62 72 3e ned</b>.<br><br>
10490 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f 74 61 ..</td></tr></ta
104a0 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 3c 74 61 62 ble>..<br>..<tab
104b0 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 30 66 le bgcolor="#c0f
104c0 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 fc0" cellspacing
104d0 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 6e ="10" cellpaddin
104e0 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d 0a g="6"><tr><td>..
104f0 3c 68 33 3e 48 6f 77 20 74 6f 20 63 6f 72 72 65 <h3>How to corre
10500 63 74 6c 79 20 66 6f 72 6d 61 74 20 6d 75 6c 74 ctly format mult
10510 69 70 6c 65 20 64 65 73 74 69 6e 61 74 69 6f 6e iple destination
10520 73 20 6c 69 73 74 73 3c 2f 68 33 3e 0d 0a 56 69 s lists</h3>..Vi
10530 72 74 75 61 6c 52 6f 75 74 69 6e 67 20 61 6c 77 rtualRouting alw
10540 61 79 73 20 65 78 70 65 63 74 73 20 74 6f 20 72 ays expects to r
10550 65 63 65 69 76 65 20 61 20 3c 62 3e 6d 75 6c 74 eceive a <b>mult
10560 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 73 3c 2f i-destinations</
10570 62 3e 20 6c 69 73 74 20 61 73 20 61 20 3c 62 3e b> list as a <b>
10580 54 45 58 54 3c 2f 62 3e 20 73 74 72 69 6e 67 20 TEXT</b> string
10590 63 6f 6e 74 61 69 6e 69 6e 67 20 74 69 67 68 74 containing tight
105a0 6c 79 20 70 61 63 6b 65 64 20 76 61 6c 75 65 73 ly packed values
105b0 20 73 65 70 61 72 61 74 65 64 20 62 79 20 61 20 separated by a
105c0 63 6f 6e 76 65 6e 74 69 6f 6e 61 6c 20 3c 62 3e conventional <b>
105d0 64 65 6c 69 6d 69 74 65 72 3c 2f 62 3e 20 28 75 delimiter</b> (u
105e0 73 75 61 6c 6c 79 20 72 65 70 72 65 73 65 6e 74 sually represent
105f0 65 64 20 62 79 20 61 20 3c 62 3e 63 6f 6d 6d 61 ed by a <b>comma
10600 3c 2f 62 3e 29 2e 3c 62 72 3e 0d 0a 45 78 61 6d </b>).<br>..Exam
10610 70 6c 65 73 20 6f 66 20 3c 62 3e 77 65 6c 6c 20 ples of <b>well
10620 66 6f 72 6d 61 74 74 65 64 3c 2f 62 3e 20 6d 75 formatted</b> mu
10630 6c 74 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 73 lti-destinations
10640 20 6c 69 73 74 73 3a 0d 0a 3c 76 65 72 62 61 74 lists:..<verbat
10650 69 6d 3e 0d 0a 27 31 2c 32 2c 33 2c 34 2c 35 2c im>..'1,2,3,4,5,
10660 31 30 2c 31 30 30 2c 31 30 30 30 2c 31 30 30 30 10,100,1000,1000
10670 30 30 27 20 20 20 2d 2d 20 69 6e 74 65 67 65 72 00' -- integer
10680 20 4e 6f 64 65 20 49 44 73 0d 0a 0d 0a 27 41 31 Node IDs....'A1
10690 30 30 42 2c 41 31 30 30 46 2c 42 32 35 30 5a 2c 00B,A100F,B250Z,
106a0 43 30 31 30 4d 2c 5a 39 39 39 41 27 20 20 2d 2d C010M,Z999A' --
106b0 20 61 6c 70 68 61 6e 75 6d 65 72 69 63 20 4e 6f alphanumeric No
106c0 64 65 20 43 6f 64 65 73 0d 0a 3c 2f 76 65 72 62 de Codes..</verb
106d0 61 74 69 6d 3e 0d 0a 45 78 61 6d 70 6c 65 73 20 atim>..Examples
106e0 6f 66 20 3c 62 3e 62 61 64 6c 79 20 66 6f 72 6d of <b>badly form
106f0 61 74 74 65 64 3c 2f 62 3e 20 6d 75 6c 74 69 2d atted</b> multi-
10700 64 65 73 74 69 6e 61 74 69 6f 6e 73 20 6c 69 73 destinations lis
10710 74 73 3a 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d ts:..<verbatim>.
10720 0a 27 20 20 31 2c 20 32 2c 20 33 2c 20 34 20 2c .' 1, 2, 3, 4 ,
10730 20 35 20 2c 20 31 30 2c 20 31 30 30 2c 20 31 30 5 , 10, 100, 10
10740 30 30 2c 20 31 30 30 30 30 30 20 20 27 20 20 20 00, 100000 '
10750 2d 2d 20 69 6e 74 65 67 65 72 20 4e 6f 64 65 20 -- integer Node
10760 49 44 73 0d 0a 0d 0a 27 20 20 41 31 30 30 42 2c IDs....' A100B,
10770 20 41 31 30 30 46 20 2c 20 42 32 35 30 5a 20 2c A100F , B250Z ,
10780 20 43 30 31 30 4d 2c 20 5a 39 39 39 41 20 20 27 C010M, Z999A '
10790 20 20 20 20 20 20 2d 2d 20 61 6c 70 68 61 6e 75 -- alphanu
107a0 6d 65 72 69 63 20 4e 6f 64 65 20 43 6f 64 65 73 meric Node Codes
107b0 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 3c ..</verbatim>..<
107c0 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 61 6c 6c 20 u>Note</u>: all
107d0 77 68 69 74 65 73 70 61 63 65 73 20 69 6d 6d 65 whitespaces imme
107e0 64 69 61 74 65 6c 79 20 70 72 65 63 65 64 69 6e diately precedin
107f0 67 20 6f 72 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 g or following t
10800 68 65 20 3c 62 3e 64 65 6c 69 6d 69 74 65 72 3c he <b>delimiter<
10810 2f 62 3e 20 77 69 6c 6c 20 62 65 20 63 6f 6e 73 /b> will be cons
10820 69 64 65 72 65 64 20 74 6f 20 62 65 20 69 6e 74 idered to be int
10830 65 67 72 61 6c 20 70 61 72 74 20 6f 66 20 74 68 egral part of th
10840 65 20 76 61 6c 75 65 20 69 74 73 65 6c 66 2e 3c e value itself.<
10850 62 72 3e 0d 0a 54 68 69 73 20 77 69 6c 6c 20 68 br>..This will h
10860 61 76 65 20 6e 6f 20 61 64 76 65 72 73 65 20 63 ave no adverse c
10870 6f 6e 73 65 71 75 65 6e 63 65 73 20 69 6e 20 74 onsequences in t
10880 68 65 20 63 61 73 65 20 6f 66 20 69 6e 74 65 67 he case of integ
10890 65 72 20 76 61 6c 75 65 73 2c 20 62 75 74 20 63 er values, but c
108a0 61 6e 20 65 61 73 69 6c 79 20 68 61 76 65 20 63 an easily have c
108b0 61 74 61 73 74 72 6f 70 68 69 63 20 65 66 66 65 atastrophic effe
108c0 63 74 73 20 6f 6e 20 61 6c 70 68 61 6e 75 6d 65 cts on alphanume
108d0 72 69 63 20 76 61 6c 75 65 73 2e 0d 0a 3c 68 33 ric values...<h3
108e0 3e 44 65 66 69 6e 69 6e 67 20 61 20 63 75 73 74 >Defining a cust
108f0 6f 6d 20 64 65 6c 69 6d 69 74 65 72 3c 2f 68 33 om delimiter</h3
10900 3e 0d 0a 53 6f 6d 65 74 69 6d 65 73 20 69 74 20 >..Sometimes it
10910 63 6f 75 6c 64 20 62 65 20 75 73 65 66 75 6c 20 could be useful
10920 73 65 74 74 69 6e 67 20 75 70 20 61 20 64 65 6c setting up a del
10930 69 6d 69 74 65 72 20 64 69 66 66 65 72 65 6e 74 imiter different
10940 20 66 72 6f 6d 20 3c 62 3e 63 6f 6d 6d 61 3c 2f from <b>comma</
10950 62 3e 2e 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d b>...<verbatim>.
10960 0a 55 50 44 41 54 45 20 62 79 66 6f 6f 74 20 53 .UPDATE byfoot S
10970 45 54 20 44 65 6c 69 6d 69 74 65 72 20 3d 20 27 ET Delimiter = '
10980 2a 27 3b 0d 0a 0d 0a 53 45 4c 45 43 54 20 44 65 *';....SELECT De
10990 6c 69 6d 69 74 65 72 20 46 52 4f 4d 20 62 79 66 limiter FROM byf
109a0 6f 6f 74 3b 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d oot;..----------
109b0 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 2a 20 5b 64 65 63 --------..* [dec
109c0 3d 34 32 2c 20 68 65 78 3d 32 61 5d 0d 0a 3c 2f =42, hex=2a]..</
109d0 76 65 72 62 61 74 69 6d 3e 20 0d 0a 59 6f 75 20 verbatim> ..You
109e0 73 69 6d 70 6c 79 20 68 61 76 65 20 74 6f 20 65 simply have to e
109f0 78 65 63 75 74 65 20 61 6e 20 3c 62 3e 55 50 44 xecute an <b>UPD
10a00 41 54 45 3c 2f 62 3e 20 73 74 61 74 65 6d 65 6e ATE</b> statemen
10a10 74 20 62 79 20 73 70 65 63 69 66 79 69 6e 67 20 t by specifying
10a20 74 68 65 20 6e 65 77 20 64 65 6c 69 6d 69 74 65 the new delimite
10a30 72 20 76 61 6c 75 65 2e 3c 62 72 3e 3c 62 72 3e r value.<br><br>
10a40 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f 74 61 ..</td></tr></ta
10a50 62 6c 65 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a ble>..<br><br>..
10a60 3c 68 72 3e 3c 62 72 3e 0d 0a 3c 68 31 3e 3c 61 <hr><br>..<h1><a
10a70 20 6e 61 6d 65 3d 22 74 73 70 22 3e 36 20 2d 20 name="tsp">6 -
10a80 53 6f 6c 76 69 6e 67 20 54 53 50 20 28 74 72 61 Solving TSP (tra
10a90 76 65 6c 69 6e 67 20 73 61 6c 65 73 6d 61 6e 29 veling salesman)
10aa0 20 70 72 6f 62 6c 65 6d 73 3c 2f 61 3e 3c 2f 68 problems</a></h
10ab0 31 3e 0d 0a 3c 62 3e 54 53 50 3c 2f 62 3e 20 28 1>..<b>TSP</b> (
10ac0 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a 2f <a href="https:/
10ad0 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 /en.wikipedia.or
10ae0 67 2f 77 69 6b 69 2f 54 72 61 76 65 6c 6c 69 6e g/wiki/Travellin
10af0 67 5f 73 61 6c 65 73 6d 61 6e 5f 70 72 6f 62 6c g_salesman_probl
10b00 65 6d 22 3e 54 72 61 76 65 6c 69 6e 67 20 53 61 em">Traveling Sa
10b10 6c 65 73 6d 6e 20 50 72 6f 62 6c 65 6d 3c 2f 61 lesmn Problem</a
10b20 3e 29 20 69 73 20 61 20 77 65 6c 6c 20 6b 6e 6f >) is a well kno
10b30 77 6e 20 4f 70 65 72 61 74 69 6f 6e 73 20 52 65 wn Operations Re
10b40 61 73 65 61 72 63 68 20 70 72 6f 62 6c 65 6d 2e asearch problem.
10b50 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 ..<br><br>..<tab
10b60 6c 65 20 62 67 63 6f 6c 6f 72 3d 22 23 63 30 66 le bgcolor="#c0f
10b70 66 63 30 22 20 63 65 6c 6c 73 70 61 63 69 6e 67 fc0" cellspacing
10b80 3d 22 31 30 22 20 63 65 6c 6c 70 61 64 64 69 6e ="10" cellpaddin
10b90 67 3d 22 36 22 3e 3c 74 72 3e 3c 74 64 3e 0d 0a g="6"><tr><td>..
10ba0 3c 68 33 3e 54 68 65 20 54 72 61 76 65 6c 69 6e <h3>The Travelin
10bb0 67 20 53 61 6c 65 73 6d 61 6e 20 50 72 6f 62 6c g Salesman Probl
10bc0 65 6d 3c 2f 68 33 3e 0d 0a 3c 62 3e 3c 69 3e 47 em</h3>..<b><i>G
10bd0 69 76 65 6e 20 61 20 6c 69 73 74 20 6f 66 20 63 iven a list of c
10be0 69 74 69 65 73 20 61 6e 64 20 74 68 65 20 64 69 ities and the di
10bf0 73 74 61 6e 63 65 73 20 62 65 74 77 65 65 6e 20 stances between
10c00 65 61 63 68 20 70 61 69 72 20 6f 66 20 63 69 74 each pair of cit
10c10 69 65 73 2c 20 77 68 61 74 20 69 73 20 74 68 65 ies, what is the
10c20 20 73 68 6f 72 74 65 73 74 20 70 6f 73 73 69 62 shortest possib
10c30 6c 65 20 72 6f 75 74 65 20 74 68 61 74 20 76 69 le route that vi
10c40 73 69 74 73 20 65 61 63 68 20 63 69 74 79 20 61 sits each city a
10c50 6e 64 20 72 65 74 75 72 6e 73 20 74 6f 20 74 68 nd returns to th
10c60 65 20 6f 72 69 67 69 6e 20 63 69 74 79 20 3f 3c e origin city ?<
10c70 2f 69 3e 3c 2f 62 3e 0d 0a 3c 62 72 3e 3c 62 72 /i></b>..<br><br
10c80 3e 0d 0a 3c 2f 74 64 3e 3c 2f 74 72 3e 3c 2f 74 >..</td></tr></t
10c90 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 3c 75 3e able>..<br>..<u>
10ca0 4e 6f 74 65 3a 3c 2f 75 3e 20 74 68 65 20 74 65 Note:</u> the te
10cb0 72 6d 73 20 3c 69 3e 3c 75 3e 73 61 6c 65 73 6d rms <i><u>salesm
10cc0 61 6e 3c 2f 75 3e 3c 2f 69 3e 20 61 6e 64 20 3c an</u></i> and <
10cd0 69 3e 3c 75 3e 63 69 74 79 3c 2f 75 3e 3c 2f 69 i><u>city</u></i
10ce0 3e 20 61 72 65 20 75 6e 69 76 65 72 73 61 6c 6c > are universall
10cf0 79 20 75 73 65 64 20 66 6f 72 20 68 69 73 74 6f y used for histo
10d00 72 69 63 61 6c 20 72 65 61 73 6f 6e 73 2c 20 62 rical reasons, b
10d10 75 74 20 79 6f 75 20 73 68 6f 75 6c 64 20 61 76 ut you should av
10d20 6f 69 64 20 74 6f 20 6c 69 74 65 72 61 6c 6c 79 oid to literally
10d30 20 69 6e 74 65 6e 64 20 62 6f 74 68 20 74 68 65 intend both the
10d40 6d 2e 3c 62 72 3e 0d 0a 54 68 65 20 74 65 72 6d m.<br>..The term
10d50 20 3c 75 3e 3c 69 3e 73 61 6c 65 73 6d 61 6e 3c <u><i>salesman<
10d60 2f 69 3e 3c 2f 75 3e 20 69 6e 20 74 68 69 73 20 /i></u> in this
10d70 73 70 65 63 69 66 69 63 20 63 6f 6e 74 65 73 74 specific contest
10d80 20 69 6e 74 65 6e 64 73 20 61 6e 79 20 70 6f 73 intends any pos
10d90 73 69 62 6c 65 20 6b 69 6e 64 20 6f 66 20 3c 75 sible kind of <u
10da0 3e 3c 69 3e 6d 6f 76 69 6e 67 20 61 67 65 6e 74 ><i>moving agent
10db0 3c 2f 69 3e 3c 2f 75 3e 20 28 70 65 64 65 73 74 </i></u> (pedest
10dc0 72 69 61 6e 2c 20 76 65 68 69 63 6c 65 2c 20 70 rian, vehicle, p
10dd0 61 73 73 65 6e 67 65 72 20 6f 72 20 77 68 61 74 assenger or what
10de0 65 76 65 72 20 65 6c 73 65 29 2c 20 65 78 61 63 ever else), exac
10df0 74 6c 79 20 61 73 20 3c 69 3e 3c 75 3e 63 69 74 tly as <i><u>cit
10e00 79 3c 2f 75 3e 3c 2f 69 3e 20 73 69 6d 70 6c 79 y</u></i> simply
10e10 20 73 74 61 6e 64 73 20 66 6f 72 20 61 6e 79 20 stands for any
10e20 3c 69 3e 3c 75 3e 67 65 6e 65 72 69 63 20 64 65 <i><u>generic de
10e30 73 74 69 6e 61 74 69 6f 6e 3c 2f 75 3e 3c 2f 69 stination</u></i
10e40 3e 20 6f 6e 20 61 20 67 69 76 65 6e 20 4e 65 74 > on a given Net
10e50 77 6f 72 6b 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d work...<br><br>.
10e60 0a 57 65 20 63 61 6e 20 63 6f 6e 63 65 74 74 75 .We can concettu
10e70 61 6c 79 20 73 70 6c 69 74 20 54 50 53 20 69 6e aly split TPS in
10e80 20 74 77 6f 20 68 61 6c 76 65 73 3a 0d 0a 3c 6f two halves:..<o
10e90 6c 3e 0d 0a 3c 6c 69 3e 63 6f 6d 70 75 74 69 6e l>..<li>computin
10ea0 67 20 61 6c 6c 20 64 69 73 74 61 6e 63 65 73 20 g all distances
10eb0 62 65 74 65 65 6e 20 70 61 69 72 73 20 6f 66 20 beteen pairs of
10ec0 3c 69 3e 63 69 74 69 65 73 3c 2f 69 3e 2e 3c 62 <i>cities</i>.<b
10ed0 72 3e 0d 0a 74 68 69 73 20 69 73 20 61 20 74 79 r>..this is a ty
10ee0 70 69 63 61 6c 20 3c 62 3e 53 68 6f 72 74 65 73 pical <b>Shortes
10ef0 74 50 61 74 68 3c 2f 62 3e 20 70 72 6f 62 6c 65 tPath</b> proble
10f00 6d 2c 20 61 6e 64 20 77 65 20 63 61 6e 20 64 75 m, and we can du
10f10 6c 79 20 75 73 65 20 74 68 65 20 44 69 6a 6b 73 ly use the Dijks
10f20 74 72 61 27 73 20 61 6c 67 6f 72 69 74 68 6d 20 tra's algorithm
10f30 66 6f 72 20 74 68 69 73 2e 3c 2f 6c 69 3e 0d 0a for this.</li>..
10f40 3c 6c 69 3e 74 68 65 6e 20 77 65 20 68 61 76 65 <li>then we have
10f50 20 74 6f 20 63 68 65 63 6b 20 61 6c 6c 20 70 6f to check all po
10f60 73 73 69 62 6c 65 20 3c 62 3e 70 65 72 6d 75 74 ssible <b>permut
10f70 61 74 69 6f 6e 73 3c 2f 62 3e 20 2f 20 3c 62 3e ations</b> / <b>
10f80 63 6f 6d 62 69 6e 61 74 69 6f 6e 73 3c 2f 62 3e combinations</b>
10f90 20 73 6f 20 74 6f 20 69 64 65 6e 74 69 66 79 20 so to identify
10fa0 74 68 65 20 6f 70 74 69 6d 61 6c 20 54 53 50 20 the optimal TSP
10fb0 73 6f 6c 75 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a solution.</li>..
10fc0 3c 2f 6f 6c 3e 0d 0a 55 6e 68 61 70 70 69 6c 79 </ol>..Unhappily
10fd0 20 74 68 65 72 65 20 69 73 20 61 20 70 72 61 63 there is a prac
10fe0 74 69 63 61 6c 20 64 69 66 66 69 63 75 6c 74 79 tical difficulty
10ff0 20 69 6e 20 73 75 63 68 20 61 20 73 74 72 61 69 in such a strai
11000 67 68 74 20 61 70 70 72 6f 61 63 68 3b 20 74 68 ght approach; th
11010 65 20 6e 75 6d 62 65 72 20 6f 66 20 63 6f 6d 62 e number of comb
11020 69 6e 61 74 69 6f 6e 73 20 77 69 6c 6c 20 67 72 inations will gr
11030 6f 77 20 65 78 74 72 65 6d 65 6c 79 20 66 61 73 ow extremely fas
11040 74 20 61 73 20 74 68 65 20 6e 75 6d 62 65 72 20 t as the number
11050 6f 66 20 3c 62 3e 3c 69 3e 63 69 74 69 65 73 3c of <b><i>cities<
11060 2f 69 3e 3c 2f 62 3e 20 69 6e 63 72 65 61 73 65 /i></b> increase
11070 73 2e 3c 62 72 3e 0d 0a 53 69 6d 70 6c 79 20 63 s.<br>..Simply c
11080 6f 6d 70 75 74 69 6e 67 20 74 68 65 20 63 6f 6d omputing the com
11090 70 6c 65 74 65 20 54 53 50 20 73 6f 6c 75 74 69 plete TSP soluti
110a0 6f 6e 20 66 6f 72 20 61 62 6f 75 74 20 74 65 6e on for about ten
110b0 20 63 69 74 69 65 73 20 77 69 6c 6c 20 72 65 71 cities will req
110c0 75 69 72 65 20 61 20 3c 62 3e 76 65 72 79 20 6c uire a <b>very l
110d0 6f 6e 67 20 74 69 6d 65 3c 2f 62 3e 20 65 76 65 ong time</b> eve
110e0 6e 20 75 73 69 6e 67 20 61 20 73 75 70 65 72 63 n using a superc
110f0 6f 6d 70 75 74 65 72 2e 3c 62 72 3e 0d 0a 41 6e omputer.<br>..An
11100 64 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 d attempting to
11110 63 6f 6d 70 75 74 65 20 61 20 54 53 50 20 73 6f compute a TSP so
11120 6c 75 74 69 6f 6e 20 66 6f 72 20 61 62 6f 75 74 lution for about
11130 20 68 75 6e 64 72 65 64 20 63 69 74 69 65 73 20 hundred cities
11140 77 69 6c 6c 20 72 65 71 75 69 72 65 20 61 20 3c will require a <
11150 62 3e 70 72 61 63 74 69 63 61 6c 6c 79 20 69 6e b>practically in
11160 66 69 6e 69 74 65 3c 2f 62 3e 20 74 69 6d 65 2e finite</b> time.
11170 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 48 6f 77 65 ..<br><br>..Howe
11180 76 65 72 20 73 6f 6c 76 69 6e 67 20 54 53 50 20 ver solving TSP
11190 69 73 20 68 69 67 68 6c 79 20 64 65 73 69 64 65 is highly deside
111a0 72 61 62 6c 65 20 69 6e 20 6d 61 6e 79 20 61 70 rable in many ap
111b0 70 6c 69 63 61 74 69 6f 6e 20 66 69 65 6c 64 73 plication fields
111c0 3a 20 3c 62 3e 6c 6f 67 69 73 74 69 63 73 3c 2f : <b>logistics</
111d0 62 3e 20 28 6a 75 73 74 20 74 68 69 6e 6b 20 61 b> (just think a
111e0 62 6f 75 74 20 63 6f 75 72 69 65 72 20 63 6f 6d bout courier com
111f0 70 61 6e 69 65 73 20 61 73 20 44 48 4c 2c 20 46 panies as DHL, F
11200 65 64 45 58 2c 20 55 50 53 20 6f 72 20 54 4e 54 edEX, UPS or TNT
11210 29 2c 20 3c 62 3e 66 69 65 6c 64 20 6d 61 69 6e ), <b>field main
11220 74 65 6e 61 6e 63 65 3c 2f 62 3e 2c 20 3c 62 3e tenance</b>, <b>
11230 77 61 73 74 65 20 63 6f 6c 6c 65 63 74 69 6f 6e waste collection
11240 3c 2f 62 3e 2c 20 3c 62 3e 73 63 68 6f 6f 6c 62 </b>, <b>schoolb
11250 75 73 3c 2f 62 3e 20 2f 20 3c 62 3e 73 68 61 72 us</b> / <b>shar
11260 65 64 20 74 61 78 69 3c 2f 62 3e 20 73 65 72 76 ed taxi</b> serv
11270 69 63 65 73 3c 2f 62 3e 20 65 74 63 2e 3c 62 72 ices</b> etc.<br
11280 3e 0d 0a 4d 61 6e 79 20 61 6c 67 6f 72 69 74 68 >..Many algorith
11290 6d 73 20 68 61 76 65 20 62 65 65 6e 20 69 6e 76 ms have been inv
112a0 65 6e 74 65 64 20 64 75 72 69 6e 67 20 6c 61 73 ented during las
112b0 74 20 64 65 63 61 64 65 73 20 69 6e 74 65 6e 64 t decades intend
112c0 65 64 20 74 6f 20 70 72 6f 64 75 63 65 20 70 72 ed to produce pr
112d0 61 63 74 69 63 61 6c 20 61 6c 74 68 6f 75 67 68 actical although
112e0 20 61 70 70 72 6f 78 69 6d 61 74 65 20 2f 20 69 approximate / i
112f0 6d 70 65 72 66 65 63 74 20 54 53 50 20 73 6f 6c mperfect TSP sol
11300 75 74 69 6f 6e 73 20 69 6e 20 61 20 72 65 61 73 utions in a reas
11310 6f 6e 61 62 6c 79 20 73 68 6f 72 74 20 74 69 6d onably short tim
11320 65 2e 0d 0a 4d 61 6e 79 20 6f 66 20 74 68 65 6d e...Many of them
11330 20 73 74 72 6f 6e 67 6c 79 20 64 65 70 65 6e 64 strongly depend
11340 20 6f 6e 20 3c 61 20 68 72 65 66 3d 22 68 74 74 on <a href="htt
11350 70 73 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 ps://en.wikipedi
11360 61 2e 6f 72 67 2f 77 69 6b 69 2f 48 65 75 72 69 a.org/wiki/Heuri
11370 73 74 69 63 22 3e 68 65 75 72 69 73 74 69 63 3c stic">heuristic<
11380 2f 61 3e 20 61 6e 64 20 2f 20 6f 72 20 3c 61 20 /a> and / or <a
11390 68 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 65 6e href="https://en
113a0 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 .wikipedia.org/w
113b0 69 6b 69 2f 52 61 6e 64 6f 6d 6e 65 73 73 22 3e iki/Randomness">
113c0 72 61 6e 64 6f 6d 6e 65 73 73 3c 2f 61 3e 2e 0d randomness</a>..
113d0 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 62 3e 56 69 .<br><br>..<b>Vi
113e0 72 74 75 61 6c 52 6f 75 74 69 6e 67 3c 2f 62 3e rtualRouting</b>
113f0 20 73 75 70 70 6f 72 74 73 20 74 77 6f 20 64 69 supports two di
11400 66 66 65 72 65 6e 74 20 54 53 50 20 61 6c 67 6f fferent TSP algo
11410 72 69 74 68 6d 73 3a 0d 0a 3c 75 6c 3e 0d 0a 3c rithms:..<ul>..<
11420 6c 69 3e 3c 62 3e 54 53 50 20 4e 4e 3c 2f 62 3e li><b>TSP NN</b>
11430 20 28 3c 69 3e 61 6b 61 3c 2f 69 3e 20 3c 62 3e (<i>aka</i> <b>
11440 3c 69 3e 4e 65 61 72 65 73 74 20 4e 65 69 67 68 <i>Nearest Neigh
11450 62 6f 75 72 3c 2f 69 3e 3c 2f 62 3e 29 3c 62 72 bour</i></b>)<br
11460 3e 0d 0a 54 68 69 73 20 3c 61 20 68 72 65 66 3d >..This <a href=
11470 22 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 6b 69 "https://en.wiki
11480 70 65 64 69 61 2e 6f 72 67 2f 77 69 6b 69 2f 4e pedia.org/wiki/N
11490 65 61 72 65 73 74 5f 6e 65 69 67 68 62 6f 75 72 earest_neighbour
114a0 5f 61 6c 67 6f 72 69 74 68 6d 22 3e 66 69 72 73 _algorithm">firs
114b0 74 20 61 6c 67 6f 72 69 74 68 6d 3c 2f 61 3e 20 t algorithm</a>
114c0 69 73 20 73 74 72 61 69 67 68 74 66 6f 72 77 61 is straightforwa
114d0 64 20 73 69 6d 70 6c 65 20 61 6e 64 20 76 65 72 d simple and ver
114e0 79 20 66 61 73 74 3b 20 69 74 20 63 61 6e 20 65 y fast; it can e
114f0 66 66 65 63 74 69 76 65 6c 79 20 73 6f 6c 76 65 ffectively solve
11500 20 68 75 67 65 20 54 53 50 20 73 6f 6c 75 74 69 huge TSP soluti
11510 6f 6e 73 20 28 74 68 6f 75 73 61 6e 64 20 3c 69 ons (thousand <i
11520 3e 63 69 74 69 65 73 3c 2f 69 3e 20 6f 72 20 65 >cities</i> or e
11530 76 65 6e 20 6d 6f 72 65 29 20 69 6e 20 61 20 76 ven more) in a v
11540 65 72 79 20 73 68 6f 72 74 20 74 69 6d 65 2e 3c ery short time.<
11550 62 72 3e 0d 0a 3c 75 3e 53 68 6f 72 74 20 64 65 br>..<u>Short de
11560 73 63 72 69 70 74 69 6f 6e 3c 2f 75 3e 3a 0d 0a scription</u>:..
11570 3c 75 6c 3e 0d 0a 3c 6c 69 3e 73 74 61 72 74 69 <ul>..<li>starti
11580 6e 67 20 66 72 6f 6d 20 74 68 65 20 3c 75 3e 3c ng from the <u><
11590 69 3e 62 61 73 65 20 63 69 74 79 3c 2f 69 3e 3c i>base city</i><
115a0 2f 75 3e 20 74 68 65 20 3c 75 3e 3c 69 3e 73 61 /u> the <u><i>sa
115b0 6c 65 73 6d 61 6e 3c 2f 69 3e 3c 2f 75 3e 20 67 lesman</i></u> g
115c0 6f 65 73 20 74 6f 20 74 68 65 20 3c 75 3e 3c 69 oes to the <u><i
115d0 3e 63 69 74 79 3c 2f 69 3e 3c 2f 75 3e 20 70 72 >city</i></u> pr
115e0 65 73 65 6e 74 69 6e 67 20 74 68 65 20 3c 69 3e esenting the <i>
115f0 3c 75 3e 6c 65 73 73 65 72 20 63 6f 6e 6e 65 63 <u>lesser connec
11600 74 69 6f 6e 20 63 6f 73 74 3c 2f 75 3e 3c 2f 69 tion cost</u></i
11610 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 65 >.</li>..<li>the
11620 20 61 6c 72 65 61 64 79 20 76 69 73 69 74 65 64 already visited
11630 20 3c 69 3e 3c 75 3e 63 69 74 79 3c 2f 75 3e 3c <i><u>city</u><
11640 2f 69 3e 20 69 73 20 63 61 6e 63 65 6c 6c 65 64 /i> is cancelled
11650 20 66 72 6f 6d 20 74 68 65 20 6c 69 73 74 2c 20 from the list,
11660 61 6e 64 20 74 68 65 6e 20 74 68 65 20 3c 75 3e and then the <u>
11670 3c 69 3e 73 61 6c 65 73 6d 61 6e 3c 2f 69 3e 3c <i>salesman</i><
11680 2f 75 3e 20 67 6f 65 73 20 74 6f 20 74 68 65 20 /u> goes to the
11690 6e 65 78 74 20 3c 75 3e 3c 69 3e 63 69 74 79 3c next <u><i>city<
116a0 2f 69 3e 3c 2f 75 3e 20 70 72 65 73 65 6e 74 69 /i></u> presenti
116b0 6e 67 20 74 68 65 20 3c 69 3e 3c 75 3e 6c 65 73 ng the <i><u>les
116c0 73 65 72 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 63 ser connection c
116d0 6f 73 74 3c 2f 75 3e 3c 2f 69 3e 2e 3c 2f 6c 69 ost</u></i>.</li
116e0 3e 0d 0a 3c 6c 69 3e 74 68 65 20 63 79 63 6c 65 >..<li>the cycle
116f0 20 63 6f 6e 74 69 6e 75 65 73 20 75 6e 74 69 6c continues until
11700 20 61 6c 6c 20 20 3c 69 3e 3c 75 3e 63 69 74 69 all <i><u>citi
11710 65 73 3c 2f 75 3e 3c 2f 69 3e 20 69 6e 20 74 68 es</u></i> in th
11720 65 20 6c 69 73 74 20 68 61 76 65 20 62 65 65 6e e list have been
11730 20 76 69 73 69 74 65 64 2e 3c 2f 6c 69 3e 0d 0a visited.</li>..
11740 3c 6c 69 3e 66 69 6e 61 6c 6c 79 2c 20 74 68 65 <li>finally, the
11750 20 3c 75 3e 3c 69 3e 73 61 6c 65 73 6d 61 6e 3c <u><i>salesman<
11760 2f 69 3e 3c 2f 75 3e 20 72 65 74 75 72 6e 73 20 /i></u> returns
11770 74 6f 20 68 69 73 2f 68 65 72 20 69 6e 69 74 69 to his/her initi
11780 61 6c 20 3c 75 3e 3c 69 3e 62 61 73 65 20 63 69 al <u><i>base ci
11790 74 79 3c 2f 69 3e 3c 2f 75 3e 3c 2f 6c 69 3e 0d ty</i></u></li>.
117a0 0a 3c 2f 75 6c 3e 0d 0a 3c 75 3e 4e 6f 74 65 3c .</ul>..<u>Note<
117b0 2f 75 3e 20 69 74 27 73 20 76 65 72 79 20 75 6e /u> it's very un
117c0 6c 69 6b 65 20 74 68 61 74 20 54 53 50 20 4e 4e like that TSP NN
117d0 20 63 6f 75 6c 64 20 66 69 6e 64 20 74 68 65 20 could find the
117e0 3c 62 3e 6f 70 74 69 6d 61 6c 3c 2f 62 3e 20 73 <b>optimal</b> s
117f0 6f 6c 75 74 69 6f 6e 2c 20 62 75 74 20 69 74 20 olution, but it
11800 63 61 6e 20 71 75 69 63 6b 6c 79 20 66 69 6e 64 can quickly find
11810 20 73 6f 6d 65 20 72 65 61 73 6f 6e 61 62 6c 65 some reasonable
11820 20 3c 62 3e 61 70 70 72 6f 78 69 6d 61 74 65 3c <b>approximate<
11830 2f 62 3e 20 73 6f 6c 75 74 69 6f 6e 20 28 3c 69 /b> solution (<i
11840 3e 66 65 77 20 69 73 20 73 75 72 65 6c 79 20 62 >few is surely b
11850 65 74 74 65 72 20 74 68 61 6e 20 6e 6f 74 68 69 etter than nothi
11860 6e 67 3c 2f 69 3e 29 2e 3c 62 72 3e 0d 0a 49 6e ng</i>).<br>..In
11870 20 74 68 65 20 6d 6f 73 74 20 75 6e 6c 75 63 6b the most unluck
11880 79 20 63 61 73 65 20 54 53 50 20 4e 4e 20 63 6f y case TSP NN co
11890 75 6c 64 20 70 6f 73 73 69 62 6c 79 20 72 65 74 uld possibly ret
118a0 75 72 6e 20 74 68 65 20 3c 62 3e 77 6f 72 73 74 urn the <b>worst
118b0 20 73 6f 6c 75 74 69 6f 6e 3c 2f 62 3e 2c 20 62 solution</b>, b
118c0 75 74 20 74 68 65 20 73 70 65 63 69 66 69 63 20 ut the specific
118d0 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 61 implementation a
118e0 64 6f 70 74 65 64 20 62 79 20 56 69 72 74 75 61 dopted by Virtua
118f0 6c 52 6f 75 74 69 6e 67 20 63 68 65 63 6b 73 20 lRouting checks
11900 61 67 61 69 6e 73 74 20 74 68 69 73 20 70 6f 73 against this pos
11910 73 69 62 69 6c 69 74 79 3a 0d 0a 3c 75 6c 3e 0d sibility:..<ul>.
11920 0a 3c 6c 69 3e 65 61 63 68 20 54 53 50 20 4e 4e .<li>each TSP NN
11930 20 69 73 20 61 6c 77 61 79 73 20 63 6f 6d 70 75 is always compu
11940 74 65 64 20 74 77 69 63 65 20 62 79 20 72 61 6e ted twice by ran
11950 64 6f 6d 6c 79 20 63 68 6f 6f 73 69 6e 67 20 61 domly choosing a
11960 20 64 69 66 66 65 72 65 6e 74 20 3c 75 3e 3c 69 different <u><i
11970 3e 62 61 73 65 20 63 69 74 79 3c 2f 69 3e 3c 2f >base city</i></
11980 75 3e 20 61 6e 64 20 74 68 65 6e 20 6e 6f 72 6d u> and then norm
11990 61 6c 69 7a 69 6e 67 20 74 68 65 20 73 6f 6c 75 alizing the solu
119a0 74 69 6f 6e 3b 20 74 68 65 20 62 65 73 74 20 6f tion; the best o
119b0 66 20 74 68 65 20 74 77 6f 20 73 6f 6c 75 74 69 f the two soluti
119c0 6f 6e 73 20 69 73 20 74 68 65 6e 20 72 65 74 75 ons is then retu
119d0 72 6e 65 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e rned.</li>..<li>
119e0 74 68 69 73 20 73 69 6d 70 6c 65 20 62 75 74 20 this simple but
119f0 65 66 66 65 63 74 69 76 65 20 70 72 65 63 61 75 effective precau
11a00 74 69 6f 6e 20 72 6f 62 75 73 74 6c 79 20 65 6e tion robustly en
11a10 73 75 72 65 73 20 74 68 61 74 20 74 68 65 20 3c sures that the <
11a20 62 3e 77 6f 72 73 74 20 73 6f 6c 75 74 69 6f 6e b>worst solution
11a30 3c 2f 62 3e 20 77 69 6c 6c 20 6e 65 76 65 72 20 </b> will never
11a40 62 65 20 72 65 74 75 72 6e 65 64 2c 20 61 6e 64 be returned, and
11a50 20 6a 75 73 74 20 69 6d 70 6c 69 65 73 20 61 20 just implies a
11a60 6d 6f 64 65 72 61 74 65 6c 79 20 69 6e 63 72 65 moderately incre
11a70 61 73 65 64 20 65 78 65 63 75 74 69 6f 6e 20 74 ased execution t
11a80 69 6d 65 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e ime.</li>..</ul>
11a90 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 3c 62 3e 54 53 </li>..<li><b>TS
11aa0 50 20 47 41 3c 2f 62 3e 20 28 3c 69 3e 61 6b 61 P GA</b> (<i>aka
11ab0 3c 2f 69 3e 20 3c 62 3e 3c 69 3e 47 65 6e 65 74 </i> <b><i>Genet
11ac0 69 63 20 41 6c 67 6f 72 69 74 68 6d 3c 2f 69 3e ic Algorithm</i>
11ad0 3c 2f 62 3e 29 2e 3c 62 72 3e 0d 0a 54 68 69 73 </b>).<br>..This
11ae0 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 73 3a <a href="https:
11af0 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f //en.wikipedia.o
11b00 72 67 2f 77 69 6b 69 2f 47 65 6e 65 74 69 63 5f rg/wiki/Genetic_
11b10 61 6c 67 6f 72 69 74 68 6d 22 3e 61 6c 74 65 72 algorithm">alter
11b20 6e 61 74 69 76 65 20 61 6c 67 6f 72 69 74 68 6d native algorithm
11b30 3c 2f 61 3e 20 69 73 20 6d 75 63 68 20 6d 6f 72 </a> is much mor
11b40 65 20 63 6f 6d 70 6c 65 78 20 61 6e 64 20 73 6f e complex and so
11b50 70 68 69 73 74 69 63 61 74 65 64 2c 20 61 6e 64 phisticated, and
11b60 20 69 73 20 64 69 72 65 63 74 6c 79 20 69 6e 73 is directly ins
11b70 70 69 72 65 64 20 62 79 20 62 69 6f 6c 6f 67 69 pired by biologi
11b80 63 61 6c 20 63 6f 6e 63 65 70 74 73 20 73 75 63 cal concepts suc
11b90 68 20 61 73 20 3c 62 3e 73 65 78 75 61 6c 20 72 h as <b>sexual r
11ba0 65 70 72 6f 64 75 63 74 69 6f 6e 3c 2f 62 3e 2c eproduction</b>,
11bb0 20 3c 62 3e 67 65 6e 65 74 69 63 20 6d 75 74 61 <b>genetic muta
11bc0 74 69 6f 6e 73 3c 2f 62 3e 20 61 6e 64 20 3c 62 tions</b> and <b
11bd0 3e 6e 61 74 75 61 6c 20 73 65 6c 65 63 74 69 6f >natual selectio
11be0 6e 3c 2f 62 3e 2e 3c 62 72 3e 0d 0a 3c 75 3e 53 n</b>.<br>..<u>S
11bf0 68 6f 72 74 20 64 65 73 63 72 69 70 74 69 6f 6e hort description
11c00 3c 2f 75 3e 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 </u>:..<ul>..<li
11c10 3e 61 20 66 69 72 73 74 20 69 6e 69 74 69 61 6c >a first initial
11c20 20 73 65 74 20 6f 66 20 73 6f 6c 75 74 69 6f 6e set of solution
11c30 73 20 28 3c 69 3e 3c 75 3e 74 68 65 20 70 6f 70 s (<i><u>the pop
11c40 75 6c 61 74 69 6f 6e 3c 2f 75 3e 3c 2f 69 3e 29 ulation</u></i>)
11c50 20 69 73 20 63 72 65 61 74 65 64 20 62 79 20 75 is created by u
11c60 73 69 6e 67 20 54 53 50 20 4e 4e 20 61 66 74 65 sing TSP NN afte
11c70 72 20 72 61 6e 64 6f 6d 6c 79 20 63 68 6f 6f 73 r randomly choos
11c80 69 6e 67 20 74 68 65 20 3c 75 3e 3c 69 3e 62 61 ing the <u><i>ba
11c90 73 65 20 63 69 74 79 3c 2f 69 3e 3c 2f 75 3e 20 se city</i></u>
11ca0 61 6e 64 20 74 68 65 6e 20 6e 6f 72 6d 61 6c 69 and then normali
11cb0 7a 69 6e 67 20 65 61 63 68 20 73 6f 6c 75 74 69 zing each soluti
11cc0 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 74 68 on.</li>..<li>th
11cd0 65 6e 20 64 75 72 69 6e 67 20 65 61 63 68 20 73 en during each s
11ce0 74 65 70 20 6f 66 20 74 68 65 20 65 78 65 63 75 tep of the execu
11cf0 74 69 6f 6e 20 6c 6f 6f 70 20 28 3c 69 3e 3c 75 tion loop (<i><u
11d00 3e 67 65 6e 65 72 61 74 69 6f 6e 3c 2f 75 3e 3c >generation</u><
11d10 2f 69 3e 29 20 70 61 69 72 73 20 6f 66 20 73 6f /i>) pairs of so
11d20 6c 75 74 69 6f 6e 73 20 3c 69 3e 3c 75 3e 73 65 lutions <i><u>se
11d30 78 75 61 6c 6c 79 20 72 65 70 72 6f 64 75 63 65 xually reproduce
11d40 73 3c 2f 69 3e 3c 2f 75 3e 20 67 69 76 69 6e 67 s</i></u> giving
11d50 20 62 69 72 74 68 20 74 6f 20 3c 75 3e 3c 69 3e birth to <u><i>
11d60 63 68 69 6c 64 72 65 6e 20 73 6f 6c 75 74 69 6f children solutio
11d70 6e 73 3c 2f 69 3e 3c 2f 75 3e 3b 20 3c 75 3e 3c ns</i></u>; <u><
11d80 69 3e 63 68 72 6f 6d 6f 73 6f 6d 65 20 63 72 6f i>chromosome cro
11d90 73 73 6f 76 65 72 73 3c 2f 69 3e 3c 2f 75 3e 20 ssovers</i></u>
11da0 61 6e 64 20 3c 69 3e 3c 75 3e 72 61 6e 64 6f 6d and <i><u>random
11db0 20 6d 75 74 61 74 69 6f 6e 73 3c 2f 75 3e 3c 2f mutations</u></
11dc0 69 3e 20 69 6e 74 72 69 6e 73 69 63 61 6c 6c 79 i> intrinsically
11dd0 20 61 66 66 65 63 74 20 74 68 65 20 72 65 70 72 affect the repr
11de0 6f 64 75 63 74 69 76 65 20 70 72 6f 63 65 73 73 oductive process
11df0 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 66 6f 72 20 .</li>..<li>for
11e00 65 61 63 68 20 3c 69 3e 3c 75 3e 67 65 6e 65 72 each <i><u>gener
11e10 61 74 69 6f 6e 3c 2f 75 3e 3c 2f 69 3e 20 74 68 ation</u></i> th
11e20 65 20 3c 69 3e 3c 75 3e 6e 61 74 75 72 61 6c 20 e <i><u>natural
11e30 73 65 6c 65 63 74 69 6f 6e 3c 2f 75 3e 3c 2f 69 selection</u></i
11e40 3e 20 65 6c 69 6d 69 6e 61 74 65 73 20 61 6c 6c > eliminates all
11e50 20 70 6f 6f 72 6c 79 20 66 69 74 20 69 6e 64 69 poorly fit indi
11e60 76 69 64 75 61 6c 73 20 66 72 6f 6d 20 74 68 65 viduals from the
11e70 20 3c 69 3e 3c 75 3e 70 6f 70 75 6c 61 74 69 6f <i><u>populatio
11e80 6e 3c 2f 75 3e 3c 2f 69 3e 20 61 6e 64 20 63 6f n</u></i> and co
11e90 6e 73 65 71 75 65 6e 74 6c 79 20 6f 6e 6c 79 20 nsequently only
11ea0 74 68 65 20 62 65 73 74 20 66 69 74 20 69 6e 64 the best fit ind
11eb0 69 76 69 64 75 61 6c 73 20 63 61 6e 20 70 72 6f ividuals can pro
11ec0 70 61 67 61 74 65 20 74 68 65 69 72 20 3c 75 3e pagate their <u>
11ed0 3c 69 3e 67 65 6e 6f 6d 65 3c 2f 69 3e 3c 2f 75 <i>genome</i></u
11ee0 3e 20 74 6f 20 6e 65 78 74 20 3c 75 3e 3c 69 3e > to next <u><i>
11ef0 67 65 6e 65 72 61 74 69 6f 6e 3c 2f 69 3e 3c 2f generation</i></
11f00 75 3e 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 61 66 u>.</li>..<li>af
11f10 74 65 72 20 61 20 63 65 72 74 61 69 6e 20 6e 75 ter a certain nu
11f20 6d 62 65 72 20 6f 66 20 3c 69 3e 3c 75 3e 67 65 mber of <i><u>ge
11f30 6e 65 72 61 74 69 6f 6e 73 3c 2f 69 3e 3c 2f 75 nerations</i></u
11f40 3e 20 28 6c 65 74 27 73 20 73 61 79 20 61 62 6f > (let's say abo
11f50 75 74 20 73 6f 6d 65 20 68 75 6e 64 72 65 64 74 ut some hundredt
11f60 68 20 69 74 65 72 61 74 69 6f 6e 73 29 20 74 68 h iterations) th
11f70 65 20 3c 62 3e 6f 70 74 69 6d 61 6c 20 73 6f 6c e <b>optimal sol
11f80 75 74 69 6f 6e 3c 2f 62 3e 20 28 6f 72 20 61 74 ution</b> (or at
11f90 20 6c 65 61 73 74 20 61 20 3c 62 3e 66 61 69 72 least a <b>fair
11fa0 6c 79 20 67 6f 6f 64 20 73 75 62 2d 6f 70 74 69 ly good sub-opti
11fb0 6d 61 6c 20 73 6f 6c 75 74 69 6f 6e 3c 2f 62 3e mal solution</b>
11fc0 29 20 73 68 6f 75 6c 64 20 66 69 6e 61 6c 6c 79 ) should finally
11fd0 20 65 6d 65 72 67 65 2c 20 61 6e 64 20 73 6f 20 emerge, and so
11fe0 74 68 65 20 6c 6f 6f 70 20 63 61 6e 20 65 78 69 the loop can exi
11ff0 74 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 6c 3e 3c 2f t.</li>..</ul></
12000 6c 69 3e 0d 0a 3c 6c 69 3e 3c 75 3e 4e 6f 74 65 li>..<li><u>Note
12010 3c 2f 75 3e 3a 20 54 53 50 20 47 41 20 69 73 20 </u>: TSP GA is
12020 75 73 75 61 6c 6c 79 20 65 78 70 65 63 74 65 64 usually expected
12030 20 74 6f 20 69 64 65 6e 74 69 66 79 20 62 65 74 to identify bet
12040 74 65 72 20 73 6f 6c 75 74 69 6f 6e 73 20 74 68 ter solutions th
12050 61 6e 20 54 53 50 20 4e 4e 20 63 61 6e 20 64 6f an TSP NN can do
12060 2c 20 62 75 74 20 69 74 20 77 69 6c 6c 20 73 75 , but it will su
12070 72 65 6c 79 20 72 65 71 75 69 72 65 20 6d 75 63 rely require muc
12080 68 20 6d 6f 72 65 20 74 69 6d 65 20 74 6f 20 63 h more time to c
12090 6f 6d 70 6c 65 74 65 2e 3c 2f 6c 69 3e 20 0d 0a omplete.</li> ..
120a0 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d </ul>..<br><br>.
120b0 0a 4c 65 74 27 73 20 6e 6f 77 20 65 78 61 6d 69 .Let's now exami
120c0 6e 65 20 61 20 70 72 61 63 74 69 63 61 6c 20 65 ne a practical e
120d0 78 61 6d 70 6c 65 20 6f 66 20 54 53 50 20 73 6f xample of TSP so
120e0 6c 76 69 6e 67 20 75 73 69 6e 67 20 56 69 72 74 lving using Virt
120f0 75 61 6c 52 6f 75 74 69 6e 67 2e 20 0d 0a 3c 76 ualRouting. ..<v
12100 65 72 62 61 74 69 6d 3e 0d 0a 55 50 44 41 54 45 erbatim>..UPDATE
12110 20 62 79 66 6f 6f 74 20 53 45 54 20 52 65 71 75 byfoot SET Requ
12120 65 73 74 20 3d 20 27 54 53 50 27 3b 0d 0a 0d 0a est = 'TSP';....
12130 53 45 4c 45 43 54 20 41 6c 67 6f 72 69 74 68 6d SELECT Algorithm
12140 2c 20 52 65 71 75 65 73 74 2c 20 4f 70 74 69 6f , Request, Optio
12150 6e 73 2c 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 ns, Delimiter, R
12160 6f 75 74 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 outeId, RouteRow
12170 2c 20 52 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 , Role, LinkRowi
12180 64 2c 20 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 d, NodeFrom, Nod
12190 65 54 6f 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 eTo, Cost, Geome
121a0 74 72 79 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 try, Name..FROM
121b0 62 79 66 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f byfoot..WHERE No
121c0 64 65 46 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 deFrom = 178731
121d0 41 4e 44 20 4e 6f 64 65 54 6f 20 3d 20 27 31 38 AND NodeTo = '18
121e0 33 32 38 36 2c 31 38 31 39 39 39 2c 31 38 34 30 3286,181999,1840
121f0 33 30 2c 31 38 33 38 38 32 2c 31 37 38 37 35 34 30,183882,178754
12200 27 3b 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d ';..</verbatim>.
12210 0a 41 20 56 69 72 74 75 61 6c 52 6f 75 74 69 6e .A VirtualRoutin
12220 67 20 3c 62 3e 54 53 50 3c 2f 62 3e 20 71 75 65 g <b>TSP</b> que
12230 72 79 20 68 61 73 20 74 68 65 20 73 61 6d 65 20 ry has the same
12240 69 64 65 6e 74 69 63 61 6c 20 66 6f 72 6d 20 6f identical form o
12250 66 20 61 20 3c 62 3e 6d 75 6c 74 69 2d 64 65 73 f a <b>multi-des
12260 74 69 6e 61 74 69 6f 6e 3c 2f 62 3e 20 71 75 65 tination</b> que
12270 72 79 3b 20 74 68 65 20 3c 69 3e 3c 75 3e 62 61 ry; the <i><u>ba
12280 73 65 20 63 69 74 79 3c 75 3e 3c 2f 69 3e 20 69 se city<u></i> i
12290 73 20 61 6c 77 61 79 73 20 65 78 70 65 63 74 65 s always expecte
122a0 64 20 74 6f 20 63 6f 72 72 65 73 70 6f 6e 64 20 d to correspond
122b0 74 6f 20 3c 62 3e 4e 6f 64 65 46 72 6f 6d 3c 2f to <b>NodeFrom</
122c0 62 3e 20 61 6e 64 20 61 6c 6c 20 6f 74 68 65 72 b> and all other
122d0 20 3c 69 3e 3c 75 3e 63 69 74 69 65 73 3c 2f 75 <i><u>cities</u
122e0 3e 3c 2f 69 3e 20 74 6f 20 62 65 20 76 69 73 69 ></i> to be visi
122f0 74 65 64 20 61 72 65 20 65 78 70 65 63 74 65 64 ted are expected
12300 20 74 6f 20 62 65 20 65 6e 75 6d 65 72 61 74 65 to be enumerate
12310 64 20 69 6e 74 6f 20 61 20 3c 62 3e 6d 75 6c 74 d into a <b>mult
12320 69 2d 64 65 73 74 69 6e 61 74 69 6f 6e 3c 2f 62 i-destination</b
12330 3e 20 6c 69 73 74 20 61 73 73 69 67 6e 65 64 20 > list assigned
12340 74 6f 20 3c 62 3e 4e 6f 64 65 54 6f 3c 2f 62 3e to <b>NodeTo</b>
12350 2e 0d 0a 3c 75 3e 4e 6f 74 65 3c 2f 75 3e 3a 20 ...<u>Note</u>:
12360 79 6f 75 20 6d 75 73 74 20 65 78 70 6c 69 63 69 you must explici
12370 74 6c 79 20 73 65 74 20 74 68 65 20 63 75 72 72 tly set the curr
12380 65 6e 74 20 3c 62 3e 52 65 71 75 65 73 74 3c 2f ent <b>Request</
12390 62 3e 20 61 73 20 3c 62 3e 54 53 50 3c 2f 62 3e b> as <b>TSP</b>
123a0 2c 20 3c 62 3e 54 53 50 20 4e 4e 3c 2f 62 3e 20 , <b>TSP NN</b>
123b0 6f 72 20 3c 62 3e 54 53 50 20 47 41 3c 2f 62 3e or <b>TSP GA</b>
123c0 20 28 54 53 50 20 61 6e 64 20 54 53 50 20 4e 4e (TSP and TSP NN
123d0 20 61 72 65 20 73 79 6e 6f 6e 69 6d 73 29 2e 0d are synonims)..
123e0 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 74 61 62 6c .<br><br>..<tabl
123f0 65 20 62 6f 72 64 65 72 3d 22 31 22 20 62 67 63 e border="1" bgc
12400 6f 6c 6f 72 3d 22 23 66 66 66 66 63 66 22 20 63 olor="#ffffcf" c
12410 65 6c 6c 73 70 61 63 69 6e 67 3d 22 34 22 20 63 ellspacing="4" c
12420 65 6c 6c 70 61 64 64 69 6e 67 3d 22 36 22 3e 0d ellpadding="6">.
12430 0a 3c 74 72 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 .<tr><th bgcolor
12440 3d 22 23 64 30 64 30 61 30 22 3e 41 6c 67 6f 72 ="#d0d0a0">Algor
12450 69 74 68 6d 3c 2f 74 68 3e 3c 74 68 20 62 67 63 ithm</th><th bgc
12460 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 52 olor="#d0d0a0">R
12470 65 71 75 65 73 74 3c 2f 74 68 3e 3c 74 68 20 62 equest</th><th b
12480 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 gcolor="#d0d0a0"
12490 3e 4f 70 74 69 6f 6e 73 3c 2f 74 68 3e 3c 74 68 >Options</th><th
124a0 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
124b0 30 22 3e 44 65 6c 69 6d 69 74 65 72 3c 2f 74 68 0">Delimiter</th
124c0 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 ><th bgcolor="#d
124d0 30 64 30 61 30 22 3e 52 6f 75 74 65 49 64 3c 2f 0d0a0">RouteId</
124e0 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 3d 22 th><th bgcolor="
124f0 23 64 30 64 30 61 30 22 3e 52 6f 75 74 65 52 6f #d0d0a0">RouteRo
12500 77 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f w</th><th bgcolo
12510 72 3d 22 23 64 30 64 30 61 30 22 3e 52 6f 6c 65 r="#d0d0a0">Role
12520 3c 2f 74 68 3e 3c 74 68 20 62 67 63 6f 6c 6f 72 </th><th bgcolor
12530 3d 22 23 64 30 64 30 61 30 22 3e 4c 69 6e 6b 52 ="#d0d0a0">LinkR
12540 6f 77 69 64 3c 2f 74 68 3e 3c 74 68 20 62 67 63 owid</th><th bgc
12550 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 22 3e 4e olor="#d0d0a0">N
12560 6f 64 65 46 72 6f 6d 3c 2f 74 68 3e 3c 74 68 20 odeFrom</th><th
12570 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
12580 22 3e 4e 6f 64 65 54 6f 3c 2f 74 68 3e 3c 74 68 ">NodeTo</th><th
12590 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 bgcolor="#d0d0a
125a0 30 22 3e 43 6f 73 74 3c 2f 74 68 3e 3c 74 68 20 0">Cost</th><th
125b0 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 30 61 30 bgcolor="#d0d0a0
125c0 22 3e 47 65 6f 6d 65 74 72 79 3c 2f 74 68 3e 3c ">Geometry</th><
125d0 74 68 20 62 67 63 6f 6c 6f 72 3d 22 23 64 30 64 th bgcolor="#d0d
125e0 30 61 30 22 3e 4e 61 6d 65 3c 2f 74 68 3e 3c 2f 0a0">Name</th></
125f0 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 44 tr>..<tr>..<td>D
12600 69 6a 6b 73 74 72 61 3c 2f 74 64 3e 3c 74 64 3e ijkstra</td><td>
12610 54 53 50 20 4e 4e 3c 2f 74 64 3e 3c 74 64 3e 46 TSP NN</td><td>F
12620 75 6c 6c 3c 2f 74 64 3e 3c 74 64 3e 2c 20 26 23 ull</td><td>, &#
12630 39 31 3b 64 65 63 3d 34 34 2c 20 68 65 78 3d 32 91;dec=44, hex=2
12640 63 26 23 39 33 3b 3c 2f 74 64 3e 3c 74 64 20 61 c]</td><td a
12650 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f lign="right">0</
12660 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
12670 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 54 ght">0</td><td>T
12680 53 50 20 53 6f 6c 75 74 69 6f 6e 3c 2f 74 64 3e SP Solution</td>
12690 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
126a0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
126b0 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
126c0 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 37 38 37 ign="right">1787
126d0 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 31</td><td align
126e0 3d 22 72 69 67 68 74 22 3e 31 32 35 34 2e 34 33 ="right">1254.43
126f0 33 39 33 33 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 3933</td><td>BLO
12700 42 20 73 7a 3d 32 30 30 30 20 47 45 4f 4d 45 54 B sz=2000 GEOMET
12710 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c RY</td><td>NULL<
12720 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
12730 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
12740 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
12750 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
12760 4c 4c 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 LL<td align="rig
12770 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">1</td><td al
12780 69 67 6e 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 ign="right">0</t
12790 64 3e 3c 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e d><td>Route</td>
127a0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
127b0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
127c0 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 61 6c 78731</td><td al
127d0 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 34 30 ign="right">1840
127e0 33 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 30</td><td align
127f0 3d 22 72 69 67 68 74 22 3e 31 37 36 2e 33 36 34 ="right">176.364
12800 37 35 35 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 755</td><td>BLOB
12810 20 73 7a 3d 33 30 34 20 47 45 4f 4d 45 54 52 59 sz=304 GEOMETRY
12820 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
12830 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d d>..</tr>..<tr>.
12840 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 .<td>NULL</td><t
12850 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
12860 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
12870 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
12880 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 right">2</td><td
12890 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
128a0 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 </td><td>Link</t
128b0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
128c0 68 74 22 3e 32 32 34 30 31 34 3c 2f 74 64 3e 3c ht">224014</td><
128d0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
128e0 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 >178731</td><td
128f0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
12900 32 38 38 35 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 2885</td><td ali
12910 67 6e 3d 22 72 69 67 68 74 22 3e 39 34 2e 38 31 gn="right">94.81
12920 32 34 32 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 2424</td><td>NUL
12930 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 50 49 L</td><td>VIA PI
12940 45 54 52 4f 20 41 52 45 54 49 4e 4f 3c 2f 74 64 ETRO ARETINO</td
12950 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a >..</tr>..<tr>..
12960 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
12970 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
12980 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
12990 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
129a0 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 ign="right">2</t
129b0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
129c0 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">2</td><td>Li
129d0 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
129e0 3d 22 72 69 67 68 74 22 3e 32 32 34 38 36 32 3c ="right">224862<
129f0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
12a00 69 67 68 74 22 3e 31 38 32 38 38 35 3c 2f 74 64 ight">182885</td
12a10 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
12a20 74 22 3e 31 38 32 30 34 33 3c 2f 74 64 3e 3c 74 t">182043</td><t
12a30 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
12a40 33 37 2e 30 39 35 32 38 37 3c 2f 74 64 3e 3c 74 37.095287</td><t
12a50 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
12a60 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c 2f IA MARGARITONE</
12a70 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
12a80 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
12a90 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
12aa0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
12ab0 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
12ac0 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 "right">2</td><t
12ad0 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
12ae0 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 3</td><td>Link</
12af0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
12b00 67 68 74 22 3e 32 32 36 30 37 30 3c 2f 74 64 3e ght">226070</td>
12b10 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
12b20 22 3e 31 38 32 30 34 33 3c 2f 74 64 3e 3c 74 64 ">182043</td><td
12b30 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
12b40 38 34 30 33 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 84030</td><td al
12b50 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 34 2e 34 ign="right">44.4
12b60 35 37 30 34 34 3c 2f 74 64 3e 3c 74 64 3e 4e 55 57044</td><td>NU
12b70 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 50 49 41 5a 5a LL</td><td>PIAZZ
12b80 41 20 53 41 4e 54 27 41 47 4f 53 54 49 4e 4f 3c A SANT'AGOSTINO<
12b90 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
12ba0 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
12bb0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
12bc0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
12bd0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
12be0 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c ="right">2</td><
12bf0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
12c00 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 >0</td><td>Route
12c10 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
12c20 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
12c30 68 74 22 3e 31 38 34 30 33 30 3c 2f 74 64 3e 3c ht">184030</td><
12c40 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
12c50 3e 31 38 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 >181999</td><td
12c60 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 33 align="right">13
12c70 39 2e 31 31 34 39 33 38 3c 2f 74 64 3e 3c 74 64 9.114938</td><td
12c80 3e 42 4c 4f 42 20 73 7a 3d 34 39 36 20 47 45 4f >BLOB sz=496 GEO
12c90 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 METRY</td><td>NU
12ca0 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
12cb0 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
12cc0 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
12cd0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
12ce0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
12cf0 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 3c 2f 74 ign="right">3</t
12d00 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
12d10 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">1</td><td>Li
12d20 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
12d30 3d 22 72 69 67 68 74 22 3e 32 32 36 30 37 31 3c ="right">226071<
12d40 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
12d50 69 67 68 74 22 3e 31 38 34 30 33 30 3c 2f 74 64 ight">184030</td
12d60 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
12d70 74 22 3e 31 38 32 36 32 39 3c 2f 74 64 3e 3c 74 t">182629</td><t
12d80 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
12d90 35 35 2e 36 38 39 30 30 39 3c 2f 74 64 3e 3c 74 55.689009</td><t
12da0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
12db0 49 41 20 47 49 55 53 45 50 50 45 20 47 41 52 49 IA GIUSEPPE GARI
12dc0 42 41 4c 44 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 BALDI</td>..</tr
12dd0 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
12de0 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
12df0 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
12e00 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
12e10 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 align="right">3
12e20 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
12e30 72 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 right">2</td><td
12e40 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
12e50 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 35 ign="right">2255
12e60 31 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 12</td><td align
12e70 3d 22 72 69 67 68 74 22 3e 31 38 32 36 32 39 3c ="right">182629<
12e80 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
12e90 69 67 68 74 22 3e 31 38 32 39 33 33 3c 2f 74 64 ight">182933</td
12ea0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
12eb0 74 22 3e 33 34 2e 31 38 34 31 39 34 3c 2f 74 64 t">34.184194</td
12ec0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
12ed0 64 3e 43 4f 52 53 4f 20 49 54 41 4c 49 41 3c 2f d>CORSO ITALIA</
12ee0 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e td>..</tr>..<tr>
12ef0 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c ..<td>NULL</td><
12f00 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
12f10 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
12f20 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d L</td><td align=
12f30 22 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 "right">3</td><t
12f40 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
12f50 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 3</td><td>Link</
12f60 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
12f70 67 68 74 22 3e 32 32 35 35 31 31 3c 2f 74 64 3e ght">225511</td>
12f80 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
12f90 22 3e 31 38 32 39 33 33 3c 2f 74 64 3e 3c 74 64 ">182933</td><td
12fa0 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
12fb0 38 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 81999</td><td al
12fc0 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 39 2e 32 ign="right">49.2
12fd0 34 31 37 33 35 3c 2f 74 64 3e 3c 74 64 3e 4e 55 41735</td><td>NU
12fe0 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 43 4f 52 53 4f LL</td><td>CORSO
12ff0 20 49 54 41 4c 49 41 3c 2f 74 64 3e 0d 0a 3c 2f ITALIA</td>..</
13000 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e tr>..<tr>..<td>N
13010 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
13020 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
13030 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
13040 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13050 3e 33 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e >3</td><td align
13060 3d 22 72 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c ="right">0</td><
13070 74 64 3e 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 td>Route</td><td
13080 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
13090 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 ign="right">1819
130a0 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 99</td><td align
130b0 3d 22 72 69 67 68 74 22 3e 31 38 33 32 38 36 3c ="right">183286<
130c0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
130d0 69 67 68 74 22 3e 32 31 37 2e 36 37 32 38 38 35 ight">217.672885
130e0 3c 2f 74 64 3e 3c 74 64 3e 42 4c 4f 42 20 73 7a </td><td>BLOB sz
130f0 3d 36 38 38 20 47 45 4f 4d 45 54 52 59 3c 2f 74 =688 GEOMETRY</t
13100 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d d><td>NULL</td>.
13110 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 .</tr>..<tr>..<t
13120 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
13130 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ULL</td><td>NULL
13140 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
13150 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
13160 68 74 22 3e 34 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">4</td><td al
13170 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 3c 2f 74 ign="right">1</t
13180 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
13190 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
131a0 3e 32 32 32 36 33 35 3c 2f 74 64 3e 3c 74 64 20 >222635</td><td
131b0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
131c0 31 39 39 39 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 1999</td><td ali
131d0 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 31 39 39 gn="right">18199
131e0 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 8</td><td align=
131f0 22 72 69 67 68 74 22 3e 31 30 31 2e 36 32 39 37 "right">101.6297
13200 35 30 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 50</td><td>NULL<
13210 2f 74 64 3e 3c 74 64 3e 43 4f 52 53 4f 20 49 54 /td><td>CORSO IT
13220 41 4c 49 41 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ALIA</td>..</tr>
13230 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
13240 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
13250 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
13260 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
13270 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 3c align="right">4<
13280 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13290 69 67 68 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e ight">2</td><td>
132a0 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 Link</td><td ali
132b0 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 37 38 gn="right">22478
132c0 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
132d0 22 72 69 67 68 74 22 3e 31 38 31 39 39 38 3c 2f "right">181998</
132e0 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
132f0 67 68 74 22 3e 31 38 33 35 36 30 3c 2f 74 64 3e ght">183560</td>
13300 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
13310 22 3e 37 33 2e 37 33 33 35 37 32 3c 2f 74 64 3e ">73.733572</td>
13320 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13330 3e 56 49 41 20 44 45 4c 4c 27 41 4e 46 49 54 45 >VIA DELL'ANFITE
13340 41 54 52 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ATRO</td>..</tr>
13350 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
13360 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
13370 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
13380 74 64 3e 4e 55 4c 4c 3c 74 64 20 61 6c 69 67 6e td>NULL<td align
13390 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c ="right">4</td><
133a0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
133b0 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >3</td><td>Link<
133c0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
133d0 69 67 68 74 22 3e 32 32 35 38 32 37 3c 2f 74 64 ight">225827</td
133e0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
133f0 74 22 3e 31 38 33 35 36 30 3c 2f 74 64 3e 3c 74 t">183560</td><t
13400 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13410 31 38 33 32 38 36 3c 2f 74 64 3e 3c 74 64 20 61 183286</td><td a
13420 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 34 32 2e lign="right">42.
13430 33 30 39 35 36 34 3c 2f 74 64 3e 3c 74 64 3e 4e 309564</td><td>N
13440 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
13450 44 45 4c 4c 27 41 4e 46 49 54 45 41 54 52 4f 3c DELL'ANFITEATRO<
13460 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
13470 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
13480 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13490 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
134a0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
134b0 3d 22 72 69 67 68 74 22 3e 34 3c 2f 74 64 3e 3c ="right">4</td><
134c0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
134d0 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f 75 74 65 >0</td><td>Route
134e0 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
134f0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
13500 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 3e 3c ht">183286</td><
13510 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13520 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 >178754</td><td
13530 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 33 37 align="right">37
13540 38 2e 33 31 33 36 38 34 3c 2f 74 64 3e 3c 74 64 8.313684</td><td
13550 3e 42 4c 4f 42 20 73 7a 3d 32 37 32 20 47 45 4f >BLOB sz=272 GEO
13560 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 METRY</td><td>NU
13570 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
13580 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
13590 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
135a0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
135b0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
135c0 69 67 6e 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 ign="right">5</t
135d0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
135e0 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">1</td><td>Li
135f0 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
13600 3d 22 72 69 67 68 74 22 3e 32 32 34 34 31 34 3c ="right">224414<
13610 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13620 69 67 68 74 22 3e 31 38 33 32 38 36 3c 2f 74 64 ight">183286</td
13630 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13640 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 t">178880</td><t
13650 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13660 31 33 36 2e 33 37 32 30 35 37 3c 2f 74 64 3e 3c 136.372057</td><
13670 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
13680 56 49 41 20 4d 41 52 47 41 52 49 54 4f 4e 45 3c VIA MARGARITONE<
13690 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 72 /td>..</tr>..<tr
136a0 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e >..<td>NULL</td>
136b0 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
136c0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 >NULL</td><td>NU
136d0 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e LL</td><td align
136e0 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e 3c ="right">5</td><
136f0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13700 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b 3c >2</td><td>Link<
13710 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13720 69 67 68 74 22 3e 32 31 39 31 37 31 3c 2f 74 64 ight">219171</td
13730 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13740 74 22 3e 31 37 38 38 38 30 3c 2f 74 64 3e 3c 74 t">178880</td><t
13750 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13760 31 37 38 37 33 32 3c 2f 74 64 3e 3c 74 64 20 61 178732</td><td a
13770 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 39 33 2e lign="right">93.
13780 32 38 35 35 33 38 3c 2f 74 64 3e 3c 74 64 3e 4e 285538</td><td>N
13790 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 41 20 ULL</td><td>VIA
137a0 46 52 41 4e 43 45 53 43 4f 20 43 52 49 53 50 49 FRANCESCO CRISPI
137b0 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c 74 </td>..</tr>..<t
137c0 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 r>..<td>NULL</td
137d0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
137e0 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e d>NULL</td><td>N
137f0 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 ULL</td><td alig
13800 6e 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 64 3e n="right">5</td>
13810 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
13820 22 3e 33 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e 6b ">3</td><td>Link
13830 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
13840 72 69 67 68 74 22 3e 32 31 39 30 35 38 3c 2f 74 right">219058</t
13850 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
13860 68 74 22 3e 31 37 38 37 33 32 3c 2f 74 64 3e 3c ht">178732</td><
13870 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13880 3e 31 37 38 37 35 34 3c 2f 74 64 3e 3c 74 64 20 >178754</td><td
13890 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 34 align="right">14
138a0 38 2e 36 35 36 30 38 39 3c 2f 74 64 3e 3c 74 64 8.656089</td><td
138b0 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 49 >NULL</td><td>VI
138c0 41 20 46 52 41 4e 43 45 53 43 4f 20 43 52 49 53 A FRANCESCO CRIS
138d0 50 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a PI</td>..</tr>..
138e0 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
138f0 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
13900 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13910 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
13920 69 67 6e 3d 22 72 69 67 68 74 22 3e 35 3c 2f 74 ign="right">5</t
13930 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
13940 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e 52 6f ht">0</td><td>Ro
13950 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c ute</td><td>NULL
13960 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
13970 72 69 67 68 74 22 3e 31 37 38 37 35 34 3c 2f 74 right">178754</t
13980 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
13990 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 3e 3c ht">183882</td><
139a0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
139b0 3e 31 38 38 2e 32 31 36 38 33 31 3c 2f 74 64 3e >188.216831</td>
139c0 3c 74 64 3e 42 4c 4f 42 20 73 7a 3d 34 30 30 20 <td>BLOB sz=400
139d0 47 45 4f 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 GEOMETRY</td><td
139e0 3e 4e 55 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 >NULL</td>..</tr
139f0 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
13a00 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
13a10 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
13a20 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13a30 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 align="right">6
13a40 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
13a50 72 69 67 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 right">1</td><td
13a60 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
13a70 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 34 35 ign="right">2245
13a80 33 38 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 38</td><td align
13a90 3d 22 72 69 67 68 74 22 3e 31 37 38 37 35 34 3c ="right">178754<
13aa0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13ab0 69 67 68 74 22 3e 31 38 31 39 37 32 3c 2f 74 64 ight">181972</td
13ac0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13ad0 74 22 3e 35 30 2e 39 30 30 36 36 33 3c 2f 74 64 t">50.900663</td
13ae0 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
13af0 64 3e 56 49 41 20 41 4e 54 4f 4e 49 4f 20 47 55 d>VIA ANTONIO GU
13b00 41 44 41 47 4e 4f 4c 49 3c 2f 74 64 3e 0d 0a 3c ADAGNOLI</td>..<
13b10 2f 74 72 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e /tr>..<tr>..<td>
13b20 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c NULL</td><td>NUL
13b30 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
13b40 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
13b50 0d 0a 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 ..<td align="rig
13b60 68 74 22 3e 36 3c 2f 74 64 3e 3c 74 64 20 61 6c ht">6</td><td al
13b70 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 3c 2f 74 ign="right">2</t
13b80 64 3e 3c 74 64 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c d><td>Link</td><
13b90 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13ba0 3e 32 32 34 35 33 37 3c 2f 74 64 3e 3c 74 64 20 >224537</td><td
13bb0 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 align="right">18
13bc0 31 39 37 32 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 1972</td><td ali
13bd0 67 6e 3d 22 72 69 67 68 74 22 3e 31 38 32 30 30 gn="right">18200
13be0 30 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 0</td><td align=
13bf0 22 72 69 67 68 74 22 3e 38 36 2e 33 30 31 30 35 "right">86.30105
13c00 31 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 1</td><td>NULL</
13c10 74 64 3e 3c 74 64 3e 56 49 41 20 44 45 4c 20 4e td><td>VIA DEL N
13c20 49 4e 46 45 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 INFEO</td>..</tr
13c30 3e 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c >..<tr>..<td>NUL
13c40 4c 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f L</td><td>NULL</
13c50 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
13c60 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13c70 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 align="right">6
13c80 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 </td><td align="
13c90 72 69 67 68 74 22 3e 33 3c 2f 74 64 3e 3c 74 64 right">3</td><td
13ca0 3e 4c 69 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c >Link</td><td al
13cb0 69 67 6e 3d 22 72 69 67 68 74 22 3e 32 32 35 35 ign="right">2255
13cc0 32 37 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 27</td><td align
13cd0 3d 22 72 69 67 68 74 22 3e 31 38 32 30 30 30 3c ="right">182000<
13ce0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13cf0 69 67 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 ight">183882</td
13d00 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13d10 74 22 3e 35 31 2e 30 31 35 31 31 37 3c 2f 74 64 t">51.015117</td
13d20 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 ><td>NULL</td><t
13d30 64 3e 56 49 41 20 4c 49 43 49 4f 20 4e 45 4e 43 d>VIA LICIO NENC
13d40 45 54 54 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e ETTI</td>..</tr>
13d50 0d 0a 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c ..<tr>..<td>NULL
13d60 3c 2f 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 </td><td>NULL</t
13d70 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
13d80 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 td>NULL</td><td
13d90 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 36 3c align="right">6<
13da0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13db0 69 67 68 74 22 3e 30 3c 2f 74 64 3e 3c 74 64 3e ight">0</td><td>
13dc0 52 6f 75 74 65 3c 2f 74 64 3e 3c 74 64 3e 4e 55 Route</td><td>NU
13dd0 4c 4c 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 LL<td align="rig
13de0 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 3e 3c ht">183882</td><
13df0 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 td align="right"
13e00 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 20 >178731</td><td
13e10 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 35 align="right">15
13e20 34 2e 37 35 30 38 33 39 3c 2f 74 64 3e 3c 74 64 4.750839</td><td
13e30 3e 42 4c 4f 42 20 73 7a 3d 32 34 30 20 47 45 4f >BLOB sz=240 GEO
13e40 4d 45 54 52 59 3c 2f 74 64 3e 3c 74 64 3e 4e 55 METRY</td><td>NU
13e50 4c 4c 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a LL</td>..</tr>..
13e60 3c 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f <tr>..<td>NULL</
13e70 74 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e td><td>NULL</td>
13e80 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 <td>NULL</td><td
13e90 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c >NULL</td><td al
13ea0 69 67 6e 3d 22 72 69 67 68 74 22 3e 37 3c 2f 74 ign="right">7</t
13eb0 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 d><td align="rig
13ec0 68 74 22 3e 31 3c 2f 74 64 3e 3c 74 64 3e 4c 69 ht">1</td><td>Li
13ed0 6e 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e nk</td><td align
13ee0 3d 22 72 69 67 68 74 22 3e 32 32 35 35 32 37 3c ="right">225527<
13ef0 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 /td><td align="r
13f00 69 67 68 74 22 3e 31 38 33 38 38 32 3c 2f 74 64 ight">183882</td
13f10 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13f20 74 22 3e 31 38 32 30 30 30 3c 2f 74 64 3e 3c 74 t">182000</td><t
13f30 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e d align="right">
13f40 35 31 2e 30 31 35 31 31 37 3c 2f 74 64 3e 3c 74 51.015117</td><t
13f50 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
13f60 49 41 20 4c 49 43 49 4f 20 4e 45 4e 43 45 54 54 IA LICIO NENCETT
13f70 49 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c I</td>..</tr>..<
13f80 74 72 3e 0d 0a 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 tr>..<td>NULL</t
13f90 64 3e 3c 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c d><td>NULL</td><
13fa0 74 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e td>NULL</td><td>
13fb0 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 NULL</td><td ali
13fc0 67 6e 3d 22 72 69 67 68 74 22 3e 37 3c 2f 74 64 gn="right">7</td
13fd0 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 ><td align="righ
13fe0 74 22 3e 32 3c 2f 74 64 3e 3c 74 64 3e 4c 69 6e t">2</td><td>Lin
13ff0 6b 3c 2f 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d k</td><td align=
14000 22 72 69 67 68 74 22 3e 32 32 32 36 33 36 3c 2f "right">222636</
14010 74 64 3e 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 td><td align="ri
14020 67 68 74 22 3e 31 38 32 30 30 30 3c 2f 74 64 3e ght">182000</td>
14030 3c 74 64 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 <td align="right
14040 22 3e 31 37 38 37 33 31 3c 2f 74 64 3e 3c 74 64 ">178731</td><td
14050 20 61 6c 69 67 6e 3d 22 72 69 67 68 74 22 3e 31 align="right">1
14060 30 33 2e 37 33 35 37 32 32 3c 2f 74 64 3e 3c 74 03.735722</td><t
14070 64 3e 4e 55 4c 4c 3c 2f 74 64 3e 3c 74 64 3e 56 d>NULL</td><td>V
14080 49 41 20 50 49 45 54 52 4f 20 41 52 45 54 49 4e IA PIETRO ARETIN
14090 4f 3c 2f 74 64 3e 0d 0a 3c 2f 74 72 3e 0d 0a 3c O</td>..</tr>..<
140a0 2f 74 61 62 6c 65 3e 0d 0a 3c 62 72 3e 0d 0a 4c /table>..<br>..L
140b0 65 74 27 73 20 6e 6f 77 20 71 75 69 63 6b 6c 79 et's now quickly
140c0 20 65 78 61 6d 69 6e 65 20 74 68 65 20 72 65 73 examine the res
140d0 75 6c 74 73 65 74 20 72 65 74 75 72 6e 65 64 20 ultset returned
140e0 62 79 20 61 6e 79 20 54 53 50 20 71 75 65 72 79 by any TSP query
140f0 3a 0d 0a 3c 75 6c 3e 0d 0a 3c 6c 69 3e 74 68 65 :..<ul>..<li>the
14100 20 67 65 6e 65 72 61 6c 20 6c 61 79 6f 75 74 20 general layout
14110 69 73 20 6d 6f 72 65 20 6f 72 20 6c 65 73 73 20 is more or less
14120 74 68 65 20 73 61 6d 65 20 61 73 20 79 6f 75 27 the same as you'
14130 76 65 20 61 6c 72 65 61 64 79 20 73 65 65 6e 20 ve already seen
14140 69 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 3c in the case of <
14150 62 3e 53 68 6f 72 74 65 73 74 50 61 74 68 3c 2f b>ShortestPath</
14160 62 3e 20 71 75 65 72 69 65 73 2c 20 62 75 74 20 b> queries, but
14170 69 6e 20 74 68 69 73 20 73 70 65 63 69 66 63 20 in this specifc
14180 63 61 73 65 20 69 74 20 72 65 70 72 65 73 65 6e case it represen
14190 74 73 20 74 68 65 20 3c 62 3e 54 53 50 20 73 6f ts the <b>TSP so
141a0 6c 75 74 69 6f 6e 3c 2f 62 3e 20 61 73 20 61 20 lution</b> as a
141b0 77 68 6f 6c 65 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 whole.</li>..<li
141c0 3e 74 68 65 20 3c 62 3e 66 69 72 73 74 20 72 6f >the <b>first ro
141d0 77 3c 2f 62 3e 20 6f 66 20 74 68 65 20 72 65 73 w</b> of the res
141e0 75 6c 74 73 65 74 20 69 73 20 73 6f 6d 65 77 61 ultset is somewa
141f0 79 20 65 78 63 65 70 74 69 6f 6e 61 6c 2c 20 61 y exceptional, a
14200 6e 64 20 69 73 20 74 68 65 20 75 6e 69 71 75 65 nd is the unique
14210 20 72 6f 77 20 6f 66 20 74 68 65 20 72 65 73 75 row of the resu
14220 6c 74 73 65 74 20 70 72 65 73 65 6e 74 69 6e 67 ltset presenting
14230 20 3c 62 3e 4e 4f 54 20 4e 55 4c 4c 3c 2f 62 3e <b>NOT NULL</b>
14240 20 76 61 6c 75 65 73 20 69 6e 20 74 68 65 20 3c values in the <
14250 62 3e 41 6c 67 6f 72 69 74 68 6d 3c 2f 62 3e 2c b>Algorithm</b>,
14260 20 3c 62 3e 52 65 71 75 65 73 74 3c 2f 62 3e 2c <b>Request</b>,
14270 20 3c 62 3e 4f 70 74 69 6f 6e 73 3c 2f 62 3e 20 <b>Options</b>
14280 61 6e 64 20 3c 62 3e 44 65 6c 69 6d 69 74 65 72 and <b>Delimiter
14290 3c 2f 62 3e 20 63 6f 6c 75 6d 6e 73 2e 3c 2f 6c </b> columns.</l
142a0 69 3e 0d 0a 3c 6c 69 3e 63 6f 6c 75 6d 6e 73 20 i>..<li>columns
142b0 3c 62 3e 52 6f 75 74 65 49 64 3c 2f 62 3e 20 61 <b>RouteId</b> a
142c0 6e 64 20 3c 62 3e 52 6f 75 74 65 52 6f 77 3c 2f nd <b>RouteRow</
142d0 62 3e 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 b> have the same
142e0 20 69 6e 74 65 72 70 72 65 74 61 74 69 6f 6e 20 interpretation
142f0 61 73 20 69 6e 20 3c 62 3e 6d 75 6c 74 69 2d 64 as in <b>multi-d
14300 65 73 74 69 6e 61 74 69 6f 6e 20 53 68 6f 72 74 estination Short
14310 65 73 74 50 61 74 68 3c 2f 62 3e 20 71 75 65 72 estPath</b> quer
14320 69 65 73 2c 20 62 75 74 20 69 6e 20 74 68 69 73 ies, but in this
14330 20 73 70 65 63 69 66 69 63 20 63 61 73 65 20 65 specific case e
14340 61 63 68 20 3c 75 3e 3c 69 3e 72 6f 75 74 65 3c ach <u><i>route<
14350 2f 69 3e 3c 2f 75 3e 20 63 6f 72 72 65 73 70 6f /i></u> correspo
14360 6e 64 73 20 74 6f 20 61 20 63 6f 6e 6e 65 63 74 nds to a connect
14370 69 6f 6e 20 62 65 74 77 65 65 6e 20 74 77 6f 20 ion between two
14380 3c 69 3e 3c 75 3e 63 69 74 69 65 73 3c 2f 75 3e <i><u>cities</u>
14390 3c 2f 69 3e 2e 3c 62 72 3e 0d 0a 41 6c 6c 20 3c </i>.<br>..All <
143a0 69 3e 3c 75 3e 72 6f 75 74 65 73 3c 2f 75 3e 3c i><u>routes</u><
143b0 2f 69 3e 20 61 72 65 20 6f 72 64 65 72 20 61 63 /i> are order ac
143c0 63 6f 72 64 69 6e 67 6c 79 20 74 6f 20 74 68 65 cordingly to the
143d0 20 72 75 6e 6e 69 6e 67 20 73 65 71 75 65 6e 63 running sequenc
143e0 65 20 6f 66 20 74 68 65 20 54 53 50 20 73 6f 6c e of the TSP sol
143f0 75 74 69 6f 6e 2e 3c 2f 6c 69 3e 0d 0a 3c 2f 75 ution.</li>..</u
14400 6c 3e 3c 62 72 3e 0d 0a 3c 76 65 72 62 61 74 69 l><br>..<verbati
14410 6d 3e 0d 0a 55 50 44 41 54 45 20 62 79 66 6f 6f m>..UPDATE byfoo
14420 74 20 53 45 54 20 52 65 71 75 65 73 74 20 3d 20 t SET Request =
14430 27 54 53 50 20 47 41 27 3b 0d 0a 0d 0a 53 45 4c 'TSP GA';....SEL
14440 45 43 54 20 41 6c 67 6f 72 69 74 68 6d 2c 20 52 ECT Algorithm, R
14450 65 71 75 65 73 74 2c 20 4f 70 74 69 6f 6e 73 2c equest, Options,
14460 20 44 65 6c 69 6d 69 74 65 72 2c 20 52 6f 75 74 Delimiter, Rout
14470 65 49 64 2c 20 52 6f 75 74 65 52 6f 77 2c 20 52 eId, RouteRow, R
14480 6f 6c 65 2c 20 4c 69 6e 6b 52 6f 77 69 64 2c 20 ole, LinkRowid,
14490 4e 6f 64 65 46 72 6f 6d 2c 20 4e 6f 64 65 54 6f NodeFrom, NodeTo
144a0 2c 20 43 6f 73 74 2c 20 47 65 6f 6d 65 74 72 79 , Cost, Geometry
144b0 2c 20 4e 61 6d 65 0d 0a 46 52 4f 4d 20 62 79 66 , Name..FROM byf
144c0 6f 6f 74 0d 0a 57 48 45 52 45 20 4e 6f 64 65 46 oot..WHERE NodeF
144d0 72 6f 6d 20 3d 20 31 37 38 37 33 31 20 41 4e 44 rom = 178731 AND
144e0 20 4e 6f 64 65 54 6f 20 3d 20 27 31 38 33 32 38 NodeTo = '18328
144f0 36 2c 31 38 31 39 39 39 2c 31 38 34 30 33 30 2c 6,181999,184030,
14500 31 38 33 38 38 32 2c 31 37 38 37 35 34 27 3b 0d 183882,178754';.
14510 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a 49 66 .</verbatim>..If
14520 20 79 6f 75 20 77 68 69 73 68 20 74 6f 20 67 65 you whish to ge
14530 74 20 61 20 3c 62 3e 54 53 50 20 47 41 3c 2f 62 t a <b>TSP GA</b
14540 3e 20 73 6f 6c 75 74 69 6f 6e 20 79 6f 75 20 73 > solution you s
14550 69 6d 70 6c 65 20 68 61 76 65 20 74 6f 20 73 65 imple have to se
14560 74 20 3c 62 3e 52 65 71 75 65 73 74 3c 2f 62 3e t <b>Request</b>
14570 20 61 73 20 3c 62 3e 54 53 50 20 47 41 3c 2f 62 as <b>TSP GA</b
14580 3e 3b 20 61 6e 64 20 79 6f 75 20 63 61 6e 20 73 >; and you can s
14590 65 74 20 61 67 61 69 6e 20 3c 62 3e 52 65 71 75 et again <b>Requ
145a0 65 73 74 3c 2f 62 3e 20 61 73 20 3c 62 3e 54 53 est</b> as <b>TS
145b0 50 3c 2f 62 3e 20 6f 72 20 3c 62 3e 54 53 50 20 P</b> or <b>TSP
145c0 4e 4e 3c 2f 62 3e 20 74 6f 20 72 65 76 65 72 74 NN</b> to revert
145d0 20 62 61 63 6b 20 74 6f 20 74 68 65 20 73 69 6d back to the sim
145e0 70 6c 65 72 20 2f 20 66 61 73 74 65 72 20 61 6c pler / faster al
145f0 67 6f 72 69 74 68 6d 2e 0d 0a 3c 62 72 3e 3c 62 gorithm...<br><b
14600 72 3e 0d 0a 54 68 65 20 6d 61 70 20 62 65 6c 6f r>..The map belo
14610 77 20 67 72 61 70 68 69 63 61 6c 6c 79 20 73 68 w graphically sh
14620 6f 77 73 20 74 68 65 20 70 72 65 76 69 6f 75 73 ows the previous
14630 20 3c 62 3e 54 53 50 3c 2f 62 3e 20 71 75 65 72 <b>TSP</b> quer
14640 79 2e 0d 0a 3c 62 72 3e 3c 62 72 3e 0d 0a 3c 69 y...<br><br>..<i
14650 6d 67 20 73 72 63 3d 22 68 74 74 70 73 3a 2f 2f mg src="https://
14660 77 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f www.gaia-gis.it/
14670 67 61 69 61 2d 73 69 6e 73 2f 72 6f 75 74 69 6e gaia-sins/routin
14680 67 2d 66 69 67 73 2f 74 73 70 31 2e 6a 70 67 22 g-figs/tsp1.jpg"
14690 20 61 6c 74 3d 22 66 69 67 34 22 3e 0d 0a 3c 75 alt="fig4">..<u
146a0 6c 3e 0d 0a 3c 6c 69 3e 52 65 64 20 73 74 61 72 l>..<li>Red star
146b0 3a 20 74 68 65 20 3c 62 3e 3c 75 3e 3c 69 3e 62 : the <b><u><i>b
146c0 61 73 65 2d 63 69 74 79 3c 2f 69 3e 3c 2f 75 3e ase-city</i></u>
146d0 3c 2f 62 3e 20 28 69 2e 65 2e 20 66 72 6f 6d 20 </b> (i.e. from
146e0 77 68 65 72 65 20 74 68 65 20 3c 62 3e 3c 75 3e where the <b><u>
146f0 3c 69 3e 73 61 6c 65 73 6d 61 6e 3c 2f 69 3e 3c <i>salesman</i><
14700 2f 75 3e 3c 2f 62 3c 29 20 62 65 67 69 6e 73 20 /u></b<) begins
14710 68 69 73 2f 68 65 72 20 74 72 69 70 2e 3c 2f 6c his/her trip.</l
14720 69 3e 0d 0a 3c 6c 69 3e 47 72 65 65 6e 20 64 6f i>..<li>Green do
14730 74 73 3a 20 74 68 65 20 3c 62 3e 3c 75 3e 3c 69 ts: the <b><u><i
14740 3e 63 69 74 69 65 73 3c 2f 69 3e 3c 2f 75 3e 3c >cities</i></u><
14750 2f 62 3e 20 74 6f 20 62 65 20 76 69 73 69 74 65 /b> to be visite
14760 64 2e 3c 2f 6c 69 3e 0d 0a 3c 6c 69 3e 59 65 6c d.</li>..<li>Yel
14770 6c 6f 77 20 6c 69 6e 65 3a 20 74 68 65 20 54 53 low line: the TS
14780 50 20 73 6f 6c 75 74 69 6f 6e 20 28 74 68 61 74 P solution (that
14790 20 69 73 20 61 6c 77 61 79 73 20 61 20 63 69 72 is always a cir
147a0 63 75 6c 61 72 20 70 61 74 68 29 2e 3c 2f 6c 69 cular path).</li
147b0 3e 0d 0a 3c 2f 75 6c 3e 0d 0a 3c 62 72 3e 0d 0a >..</ul>..<br>..
147c0 3c 69 6d 67 20 73 72 63 3d 22 68 74 74 70 73 3a <img src="https:
147d0 2f 2f 77 77 77 2e 67 61 69 61 2d 67 69 73 2e 69 //www.gaia-gis.i
147e0 74 2f 67 61 69 61 2d 73 69 6e 73 2f 72 6f 75 74 t/gaia-sins/rout
147f0 69 6e 67 2d 66 69 67 73 2f 74 73 70 32 2e 6a 70 ing-figs/tsp2.jp
14800 67 22 20 61 6c 74 3d 22 66 69 67 35 22 3e 0d 0a g" alt="fig5">..
14810 0d 0a 3c 68 72 3e 3c 62 72 3e 0d 0a 3c 61 20 68 ..<hr><br>..<a h
14820 72 65 66 3d 22 68 74 74 70 73 3a 2f 2f 77 77 77 ref="https://www
14830 2e 67 61 69 61 2d 67 69 73 2e 69 74 2f 66 6f 73 .gaia-gis.it/fos
14840 73 69 6c 2f 6c 69 62 73 70 61 74 69 61 6c 69 74 sil/libspatialit
14850 65 2f 77 69 6b 69 3f 6e 61 6d 65 3d 34 2e 33 2e e/wiki?name=4.3.
14860 30 2d 64 6f 63 22 3e 62 61 63 6b 3c 2f 61 3e 0a 0-doc">back</a>.
14870 5a 20 65 31 34 32 37 38 33 36 62 39 65 31 32 33 Z e1427836b9e123
14880 38 38 30 36 37 65 61 37 32 32 34 35 32 38 63 33 88067ea7224528c3
14890 36 32 0a 62.