Loop closure problems in Tunnel

From Fs_wiki

Jump to: navigation, search

Please review instructions in Loading_and_Saving#Loop_closures -- I can't reproduce your bug, and I need to know if

  • (a) you see the POS file listed in the mainbox,
  • (b) You see the message Applying PosFILELEGS [number of stations],
  • (c) You see messages "Warning no match on [station name]".
This is due to relying on the POS to load after setting the tunnelxml directory.  
It doesn't work that way yet.  You have to reload from tunnelxml 
in order to get the POS file in.   

Footleg

I have found out that SVX data loop closure is not the same as survex, but you can get Tunnel to use the Survex loop closure coordinates by creating a pos file using the survex utility 3dtopos and giving this pos file the same filename stem as the svx file. Create a new tunnel project and open the svx file (providing the pos file shares the same filename (i.e. MyCave.svx and MyCave.pos) and both files are in the same directory then Tunnel will use the coordinates from the pos file when you create a new sketch and import the centreline. The problem appears to come when you save the project and reopen it again. If you create another new sketch then import the centreline again, then Tunnel will ignore the pos file coordinates and instead do the loop closure within Tunnel.

Tried to reproduce this with a simple example, but had even more problems. Opening cave 'TestCave.svx' in a new Tunnel project does not load the .pos file at all. If you view the whole cave then you see Tunnel has done the loop closure, putting a kink into the passage just north of the junction (see TestCave1.gif, the kink is the orange section of the centreline). Save the tunnel project into a new empty directory, then create a sketch and import the centreline. You see the centreline without the loop closed at all! (See TestCave2.gif)

image:TestCave1.gif

TestCave1.gif

image:TestCave2.gif

TestCave2.gif

Tried copying the .pos file into the same folder as the Tunnel project created above, closed Tunnel and reopened the project from scratch. Now the whole cave view still shows the loop closure kink, but importing the centreline into a new sketch uses the coordinates from the .pos file.

Finally started Tunnel from scratch again. Opened the TestCave.svx file from a folder which contained only the files TestCave.svx and TestCave.pos, set the XML directory to this same folder, and saved the XML dir. Then created a new sketch and imported the centreline. The loop was not closed. Saved the XML directory to preserve this sketch, and exited Tunnel. Restarted it, and opened the XML directory. Created another new sketch and imported the centreline into this. Now the coordinates from the .pos file were used, and the centreline matched the survex loop closure (seen in TestCave_Survex.gif and TestCave3.gif).

image:TestCave_Survex.gif

TestCave_Survex.gif

image:TestCave3.gif

TestCave3.gif

There was one time that when I imported the centreline into a new sketch I saw the Tunnel loop closure with the kink (see TunnelLoopClosure.gif), but I cannot find a way to do this again!

image:TunnelLoopClosure.gif

TunnelLoopClosure.gif

TestCave.svx

*BEGIN TestCave
*FIX 1 0 0 0
*entrance 1
*equate 231 63
;Test Cave (made up data)
1 2 4.80 32.80 -1
2 3 2.20 51.80 -18
3 4 4.10 75.80 -4
4 5 4.00 99.80 0
5 6 9.00 126.80 3
6 7 6.30 69.80 0
7 8 3.40 119.80 20
8 9 4.30 34.80 23
9 10 4.90 18.80 -13
10 809 13.10 19.80 -3
809 810 8.70 78.80 18
810 811 8.70 69.80 -6
811 812 3.10 94.80 -7
812 813 1.00 36.80 1
813 814 2.10 294.80 0
814 815 1.50 63.80 -2
815 816 3.00 - -V
816 19 8.50 19.80 7
19 818 15.70 85.80 -2
818 20 2.10 355.80 -10
10 215 7.69 184.65 36
215 216 3.90 100.86 7
216 217 6.80 191.86 0
217 218 1.80 98.86 0
218 219 3.20 193.86 2
219 220 4.00 105.86 10
220 221 19.00 185.86 0
221 222 11.40 109.86 0
222 223 6.00 70.86 5
223 224 7.20 93.86 11
224 225 18.60 69.86 -2
225 226 7.50 105.86 4
226 227 4.40 59.86 1
227 228 4.70 103.86 8
228 229 5.60 122.86 15
229 230 5.80 139.86 11
230 231 26.80 116.86 -13
20 55 29.53 87.09 0
55 56 36.45 115.16 0
56 57 14.00 180.00 0
57 58 17.00 88.31 0
58 59 19.00 180.00 0
59 60 20.39 281.31 0
60 61 19.72 210.46 0
61 62 12.08 114.44 0
62 63 5.00 216.87 0
*END TestCave

TestCave.pos

( Easting, Northing, Altitude )
(    0.00,     0.00,     0.00 ) testcave.1
(    2.60,     4.03,    -0.08 ) testcave.2
(    4.24,     5.33,    -0.76 ) testcave.3
(    8.21,     6.33,    -1.05 ) testcave.4
(   12.15,     5.65,    -1.05 ) testcave.5
(   19.35,     0.27,    -0.58 ) testcave.6
(   25.26,     2.44,    -0.58 ) testcave.7
(   28.03,     0.85,     0.58 ) testcave.8
(   30.29,     4.10,     2.26 ) testcave.9
(   31.83,     8.62,     1.16 ) testcave.10
(   57.70,    34.71,     0.44 ) testcave.19
(   73.14,    37.19,    -0.20 ) testcave.20
(  102.66,    36.52,     0.70 ) testcave.55
(  133.87,    17.30,     2.06 ) testcave.56
(  133.50,     3.19,     2.27 ) testcave.57
(  150.43,     2.94,     2.58 ) testcave.58
(  149.76,   -16.17,     2.95 ) testcave.59
(  129.47,   -13.36,     3.39 ) testcave.60
(  119.31,   -30.42,     3.79 ) testcave.61
(  130.09,   -35.85,     3.95 ) testcave.62
(  127.01,   -39.96,     3.99 ) testcave.63
(   31.42,     2.55,     5.65 ) testcave.215
(   35.28,     1.88,     6.11 ) testcave.216
(   33.98,    -4.67,     6.05 ) testcave.217
(   35.83,    -4.92,     6.03 ) testcave.218
(   35.12,    -7.90,     6.12 ) testcave.219
(   38.97,    -8.91,     6.79 ) testcave.220
(   37.61,   -27.76,     6.41 ) testcave.221
(   48.51,   -31.24,     6.27 ) testcave.222
(   54.23,   -29.16,     6.74 ) testcave.223
(   61.37,   -29.48,     8.05 ) testcave.224
(   78.70,   -22.45,     7.07 ) testcave.225
(   86.00,   -24.32,     7.52 ) testcave.226
(   89.89,   -22.02,     7.57 ) testcave.227
(   94.48,   -23.05,     8.19 ) testcave.228
(   99.10,   -25.88,     9.59 ) testcave.229
(  102.85,   -30.13,    10.66 ) testcave.230
(  127.01,   -39.96,     3.99 ) testcave.231
(   36.08,    20.87,     0.64 ) testcave.809
(   44.11,    22.28,     3.44 ) testcave.810
(   52.18,    25.09,     2.61 ) testcave.811
(   55.17,    24.78,     2.26 ) testcave.812
(   55.68,    25.47,     2.28 ) testcave.813
(   53.73,    26.32,     2.30 ) testcave.814
(   54.98,    26.91,     2.26 ) testcave.815
(   54.96,    26.88,    -0.69 ) testcave.816
(   73.31,    35.24,     0.14 ) testcave.818