| [0e26b3a] | 1 | <HTML><HEAD> | 
|---|
 | 2 | <TITLE>Survex To-Do List</TITLE> | 
|---|
 | 3 | <STYLE type="text/css"><!-- | 
|---|
 | 4 | BODY, TD, CENTER, UL, OL {font-family: sans-serif;} | 
|---|
 | 5 | --> | 
|---|
 | 6 | </STYLE> | 
|---|
 | 7 | </HEAD><BODY BGCOLOR=white TEXT=black> | 
|---|
 | 8 | <H1>Survex To-Do List</H1> | 
|---|
 | 9 |  | 
|---|
| [df26b81] | 10 | <H2>3d format</H2> | 
|---|
| [f39a2e8] | 11 |  | 
|---|
| [df26b81] | 12 | <ul> | 
|---|
| [f39a2e8] | 13 |  | 
|---|
| [df26b81] | 14 | <li>sort out XSECT - I'm sure I meant there to be 1 and 2 byte forms, not 2 | 
|---|
 | 15 | and 4 - 4 byte is only useful if a passage dimension is > 327.67m! | 
|---|
| [f39a2e8] | 16 |  | 
|---|
| [df26b81] | 17 | <li>store equated stations in some way | 
|---|
| [f39a2e8] | 18 |  | 
|---|
| [df26b81] | 19 | <li>store legs by end stations rather than repeating coordinates over and | 
|---|
 | 20 | over? | 
|---|
| [ac3f376] | 21 |  | 
|---|
| [df26b81] | 22 | </ul> | 
|---|
| [f39a2e8] | 23 |  | 
|---|
| [df26b81] | 24 | <H2>Aven</H2> | 
|---|
| [ac3f376] | 25 |  | 
|---|
| [df26b81] | 26 | <ul> | 
|---|
| [f39a2e8] | 27 |  | 
|---|
| [ce77e4f] | 28 | <li>Compare HPGL export with what printhpgl used to give. | 
|---|
 | 29 |  | 
|---|
| [df26b81] | 30 | <li>loading a .3d file with no survey data (or which has a valid header but is broken later) with a survey already loaded doesn't work well. | 
|---|
| [f39a2e8] | 31 |  | 
|---|
| [df26b81] | 32 | <li>After keyboard controlled movement, the measuring line/circle doesn't | 
|---|
 | 33 | reappear until the mouse is moved (e.g. plan/elevation transition with P/L). | 
|---|
| [f39a2e8] | 34 |  | 
|---|
| [df26b81] | 35 | <li>Fix depth clipping on grid | 
|---|
| [f39a2e8] | 36 |  | 
|---|
| [df26b81] | 37 | <li>Reword "Shift Survey Left", etc? | 
|---|
| [f39a2e8] | 38 |  | 
|---|
| [ac3f376] | 39 | <li>Does anyone use Controls->"Reverse Sense"?  It made some sense with | 
|---|
 | 40 | caverot but now seeing the mouse pointer makes people expect the default | 
|---|
 | 41 | motions (for right button drag particularly). | 
|---|
| [f39a2e8] | 42 |  | 
|---|
| [ce77e4f] | 43 | <li>Clean up export.cc and allow line width, etc to be specified | 
|---|
| [f39a2e8] | 44 |  | 
|---|
 | 45 | <li>Better handling of missing LRUD values | 
|---|
 | 46 |  | 
|---|
 | 47 | <li>Smooth wrinkles in presentation code (stop pres on Open or | 
|---|
 | 48 | New, changing focus on listctrl as presentation plays doesn't really work | 
|---|
 | 49 | properly) | 
|---|
 | 50 |  | 
|---|
 | 51 | <li>Draw the measuring line directly onto the front buffer, so we can remove it | 
|---|
 | 52 | with a copy from the back buffer and redraw it in the new position without a | 
|---|
 | 53 | re-render. | 
|---|
 | 54 |  | 
|---|
| [ac3f376] | 55 | <li>Round the measuring line coords so the ring is a nice shape?  Or just | 
|---|
 | 56 | antialias the ring, "there" blob and line? | 
|---|
| [f39a2e8] | 57 |  | 
|---|
 | 58 | <li>Process all pending input before rerendering to improve responsiveness. | 
|---|
 | 59 |  | 
|---|
 | 60 | <li>Check timing code - we need to glFinish to ensure it's all drawn, and that | 
|---|
 | 61 | may be needed to get meaningful timing info. | 
|---|
 | 62 |  | 
|---|
| [85ed935] | 63 | <li>Add "colour by survey" - colour by cave (and more generally by sub-prefix): | 
|---|
 | 64 | maybe "aven --survey 161 --colour-by-sub-prefix all.3d" would result in | 
|---|
 | 65 | lhroute, rhroute, adrian, etc all getting different colours... | 
|---|
| [f39a2e8] | 66 |  | 
|---|
 | 67 | <li>Implement "Skip blank pages" in aven printing | 
|---|
 | 68 |  | 
|---|
| [df26b81] | 69 | <li>Terrain data (patch from PhilU) "surface.png is for a textured landscape -- | 
|---|
 | 70 | there needs to be a menu option to select the texturing on/off, and this should | 
|---|
 | 71 | be the texture used. map.png is just a different surface overlay for Loser." | 
|---|
| [f39a2e8] | 72 |  | 
|---|
 | 73 | <li>different keyboard layouts mean that some key choices don't make much sense... | 
|---|
 | 74 |  | 
|---|
 | 75 | <li>Easy way to "print extended elevation" | 
|---|
 | 76 |  | 
|---|
 | 77 | <li>Optional lazy label redraw during drags?  Or turn on at some redraw time | 
|---|
 | 78 | threshold... | 
|---|
 | 79 |  | 
|---|
 | 80 | <li>Some way to view older/newer version of survey | 
|---|
 | 81 |  | 
|---|
 | 82 | <li>Label lengths aren't considered when working out image size when | 
|---|
 | 83 | printing so a long label can spill off the edge of the printout | 
|---|
 | 84 |  | 
|---|
| [df26b81] | 85 | <li>print to an image file? | 
|---|
| [f39a2e8] | 86 |  | 
|---|
 | 87 | <li>grid on printouts | 
|---|
 | 88 | <ul> | 
|---|
 | 89 | <li>grid crosses option (only draw cross at intersections, not a full grid). | 
|---|
 | 90 | <li>[(x,y) of a point to go through (easting, northing) | 
|---|
 | 91 | <li>x spacing, y spacing (default to x spacing) | 
|---|
 | 92 | <li>orientation (bearing of y-axis?) (defaults to 0)] | 
|---|
 | 93 | </ul> | 
|---|
 | 94 |  | 
|---|
 | 95 | <li>Profile aven further (for both speed and memory usage) | 
|---|
 | 96 |  | 
|---|
 | 97 | <li>by default put crosses on those points with no legs attached (unused | 
|---|
 | 98 | fixed points)? | 
|---|
 | 99 |  | 
|---|
 | 100 | <li>label junctions/dead ends? | 
|---|
 | 101 |  | 
|---|
 | 102 | <li>section colouring/selective labelling | 
|---|
 | 103 |  | 
|---|
 | 104 | <li>clipping - want to select a clip sphere (or maybe cube) centred on | 
|---|
 | 105 | centre on rotation I think. | 
|---|
 | 106 |  | 
|---|
 | 107 | <li>Some way to display all the names of an equated station (e.g. in pop-up | 
|---|
 | 108 | window or the info panel). | 
|---|
| [e03199f] | 109 |  | 
|---|
| [27b8b59] | 110 | <li>check on monochrome, 16, and 256 colour displays - especially that depth | 
|---|
 | 111 | colouring looks OK | 
|---|
| [0e26b3a] | 112 |  | 
|---|
| [a8e9fde] | 113 | <li>Feed back redraw time to key based movement as in caverot?  Or perhaps best | 
|---|
 | 114 | not to?  It depends on whether we expect people to hold down keys or not... | 
|---|
 | 115 | Perhaps something smart where the first press is a fixed size, then after that | 
|---|
 | 116 | it depends on the redraw? | 
|---|
| [df26b81] | 117 |  | 
|---|
 | 118 | <li>Save cavern log from aven? | 
|---|
 | 119 |  | 
|---|
 | 120 | <li>improve .plt export to include less crude survey structure. | 
|---|
 | 121 |  | 
|---|
 | 122 | <li>If multiple methods for drawing crosses and/or blobs pass the | 
|---|
 | 123 | visual fidelity check, check which is fastest. | 
|---|
 | 124 |  | 
|---|
 | 125 | <li>Lots of aven things need documenting. | 
|---|
 | 126 |  | 
|---|
| [0e26b3a] | 127 | </ul> | 
|---|
 | 128 |  | 
|---|
 | 129 | <H2>Documentation</H2> | 
|---|
 | 130 |  | 
|---|
 | 131 | <ul> | 
|---|
 | 132 |  | 
|---|
| [ce77e4f] | 133 | <li>Document averaging of repeated legs | 
|---|
 | 134 |  | 
|---|
| [0e26b3a] | 135 | <li>Platform specific versions of docs? | 
|---|
 | 136 |  | 
|---|
 | 137 | <li>Put more terms in terminology in docs ? trip, instrument, ... | 
|---|
 | 138 |  | 
|---|
| [2e53e55] | 139 | <li>Finish off manual loose ends. | 
|---|
 | 140 |  | 
|---|
| [398863fc] | 141 | <li>Look at using docbook2man instead of docbook-to-man (command is | 
|---|
| [b4fe9fb] | 142 | <i>nsgmls man_aven.sgml | sgmlspl /usr/lib/perl5/sgmlspl-specs/docbook2man-spec.pl</i>).  Issues are: double space between sentences is lost; | 
|---|
| [f39a2e8] | 143 | double blank lines appear in output. | 
|---|
| [398863fc] | 144 |  | 
|---|
| [65ad692] | 145 | <li>Make sure there's documentation for all the various settings in print.ini | 
|---|
 | 146 | (colours aren't documented at present) | 
|---|
 | 147 |  | 
|---|
| [91f6661] | 148 | <li>Document dump3d | 
|---|
 | 149 |  | 
|---|
| [df26b81] | 150 | <li>Look at rewording extend.sgml (AndyA comments) | 
|---|
| [b462168] | 151 |  | 
|---|
| [0e26b3a] | 152 | </ul> | 
|---|
 | 153 |  | 
|---|
| [65ad692] | 154 | <H2>Internationalisation and Localisation</H2> | 
|---|
| [0e26b3a] | 155 |  | 
|---|
 | 156 | <ul> | 
|---|
 | 157 |  | 
|---|
| [df26b81] | 158 | <li>Update translations. | 
|---|
| [0e26b3a] | 159 |  | 
|---|
| [65ad692] | 160 | <li>control of output units in .err file and in stats at end of cavern run? | 
|---|
 | 161 | In fact anywhere we report a value in degrees or metres, the units should be | 
|---|
 | 162 | selectable | 
|---|
 | 163 |  | 
|---|
 | 164 | </ul> | 
|---|
 | 165 |  | 
|---|
 | 166 | <H2>Test Suite</H2> | 
|---|
 | 167 |  | 
|---|
 | 168 | <ul> | 
|---|
 | 169 |  | 
|---|
 | 170 | <li>test diving data with compass omitted (plumbed) | 
|---|
 | 171 |  | 
|---|
 | 172 | <li>more tests for direction | 
|---|
 | 173 |  | 
|---|
 | 174 | <li>improve 3d torture test and try to automate its use if possible. | 
|---|
 | 175 |  | 
|---|
| [b462168] | 176 | <li>Compass .mak and .plt and CMAP .xyz in test suite? | 
|---|
| [65ad692] | 177 |  | 
|---|
| [df26b81] | 178 | <li>img.c: explicitly test routines in test suite? | 
|---|
| [65ad692] | 179 |  | 
|---|
| [0e26b3a] | 180 | </ul> | 
|---|
 | 181 |  | 
|---|
 | 182 | <H2>Miscellaneous</H2> | 
|---|
 | 183 |  | 
|---|
 | 184 | <ul> | 
|---|
 | 185 |  | 
|---|
| [ac3f376] | 186 | <li>resolve FIXMEs in code | 
|---|
| [0e26b3a] | 187 |  | 
|---|
| [df26b81] | 188 | <li>diffpos: compare connectivity (i.e legs as well as stations) - e.g. | 
|---|
 | 189 |  | 
|---|
 | 190 | <pre> | 
|---|
 | 191 | foo.1 moved by (0.02, 0.10, -0.06) | 
|---|
 | 192 | leg between foo.1 and bar.2 removed | 
|---|
 | 193 | ... | 
|---|
 | 194 | bar.2 moved by (-0.02, -0.05, 0.03) | 
|---|
 | 195 | </pre> | 
|---|
 | 196 |  | 
|---|
 | 197 | </ul> | 
|---|
 | 198 |  | 
|---|
 | 199 | <H2>Cavern</H2> | 
|---|
 | 200 |  | 
|---|
 | 201 | <ul> | 
|---|
 | 202 |  | 
|---|
 | 203 | <li>This gives "*** Singular!!!" warning with DEBUG_INVALID on: | 
|---|
 | 204 | <pre> | 
|---|
 | 205 | 1 2 50000 0 - | 
|---|
 | 206 | 1 2 5 0 -30 | 
|---|
 | 207 | </pre> | 
|---|
 | 208 |  | 
|---|
| [0e26b3a] | 209 | <li>Default variance for topofil counter? (currently same as that of tape) | 
|---|
 | 210 |  | 
|---|
 | 211 | <li>Rather than forming a linked list of components, solve each as it is | 
|---|
 | 212 | identified?  Beware of issues like those that revcomplist test checks. | 
|---|
 | 213 |  | 
|---|
 | 214 | <li>Don't split other traverses at articulating traverses when reporting error | 
|---|
 | 215 | stats. | 
|---|
 | 216 |  | 
|---|
| [4c5c5f3] | 217 | <li>sort out title which goes in .3d file for this (if no *includes in ... | 
|---|
 | 218 | it gets the title of the leafname of this .svx file, otherwise it's the | 
|---|
 | 219 | leafnames of the *include-d files, comma-separated): | 
|---|
 | 220 |  | 
|---|
 | 221 | <pre> | 
|---|
 | 222 | *begin mycave | 
|---|
 | 223 | *title "My Cave" | 
|---|
 | 224 | ... | 
|---|
 | 225 | *end mycave | 
|---|
 | 226 | </pre> | 
|---|
| [3ede867] | 227 |  | 
|---|
| [df26b81] | 228 | <li>look at solution by QR factorisation in matrix.c more | 
|---|
| [3ede867] | 229 |  | 
|---|
| [df26b81] | 230 | <li>consider disabling the more expensive asserts - turning them all off | 
|---|
 | 231 | speeds up cavern by about 10%. | 
|---|
| [3ede867] | 232 |  | 
|---|
| [df26b81] | 233 | <li> | 
|---|
 | 234 | Warn bearings not 3 digits, gradient not <sign><digit><digit> | 
|---|
| [3ede867] | 235 |  | 
|---|
| [df26b81] | 236 | <li>cavern: auto declination? | 
|---|
 | 237 |  | 
|---|
 | 238 | <li>Sort out gross error detection code | 
|---|
 | 239 |  | 
|---|
 | 240 | <li>For warnings such as "Suspicious compass reading", report the reading | 
|---|
 | 241 | in question in the error message (in the text form given in the file). | 
|---|
 | 242 | Also report values when warning about problems with processed readings. | 
|---|
 | 243 |  | 
|---|
 | 244 | <li>legs: implied flags: inloop/plumb | 
|---|
 | 245 |  | 
|---|
 | 246 | <li>legs: "dubious" for "tapeless" legs - bearing along continuation... | 
|---|
| [3ede867] | 247 |  | 
|---|
| [df26b81] | 248 | <li>station flags: "important" - e.g. top camp "fixed" point / | 
|---|
 | 249 | junction,deadend (implied by order) / | 
|---|
 | 250 | articulation pt (know for nodes I think a station is if at least one | 
|---|
 | 251 | of its nodes is) | 
|---|
 | 252 |  | 
|---|
 | 253 | <li>Maybe station lists should know how long they are? | 
|---|
 | 254 |  | 
|---|
 | 255 | <li>Articulation point code: ideally the articulation point code should allow | 
|---|
 | 256 | further network reductions to happen after splitting at articulation | 
|---|
 | 257 | points? | 
|---|
 | 258 |  | 
|---|
 | 259 | </ul> | 
|---|
 | 260 |  | 
|---|
 | 261 | <H2>Survex file format</H2> | 
|---|
 | 262 |  | 
|---|
 | 263 | <ul> | 
|---|
 | 264 |  | 
|---|
 | 265 | <li>*data chamber ... | 
|---|
 | 266 |  | 
|---|
 | 267 | <li>*data nsew ... for pitches (bearings rather than having to be NSEW) | 
|---|
 | 268 |  | 
|---|
 | 269 | <li>Allow angles as deg/min/sec (for theodolite data) (060°10'15" as 060 10 | 
|---|
 | 270 | 15, or 060.1005 (crap notation)) | 
|---|
 | 271 |  | 
|---|
 | 272 | <li>Add support for bearings of form N20E (ie [NS][0-9]+[EW])? | 
|---|
 | 273 |  | 
|---|
 | 274 | <li>should % after a clino reading work? | 
|---|
 | 275 |  | 
|---|
 | 276 | <li>Fixing a point by triangulation? | 
|---|
 | 277 |  | 
|---|
 | 278 | <li>multiple readings: | 
|---|
 | 279 | <p> | 
|---|
 | 280 | average bearings specially - they don't average like normal numbers | 
|---|
 | 281 | <p> | 
|---|
 | 282 | %age gradients should probably average the same as angle gradients | 
|---|
 | 283 | <p> | 
|---|
 | 284 | Document - works like so: | 
|---|
| [3ede867] | 285 | <pre> | 
|---|
| [df26b81] | 286 | *set open { | 
|---|
 | 287 | *set close } | 
|---|
 | 288 | *calibrate compass {000.5 001.0 001.25} | 
|---|
 | 289 | 1 2 10.23 {000 001} -02 | 
|---|
 | 290 | 2 3 {10.16 10.17} 127 {+06 +05} | 
|---|
 | 291 | 3 4 11.98 007 {+03 +03} | 
|---|
| [3ede867] | 292 | </pre> | 
|---|
| [df26b81] | 293 | Implement as extension to number format so any suitable numeric value to be | 
|---|
 | 294 | repeated? | 
|---|
 | 295 | <li>Theodolite + level: | 
|---|
 | 296 | <ul> | 
|---|
 | 297 |   <li>delta(bearing (relative to 0 at start) | 
|---|
 | 298 |   <li>delta(horizontal) | 
|---|
 | 299 |   <li>delta(vertical) / maybe "clino" instead | 
|---|
 | 300 | </ul> | 
|---|
| [3ede867] | 301 |  | 
|---|
| [df26b81] | 302 | <li>Theodolite only: | 
|---|
 | 303 | <ul> | 
|---|
 | 304 |   <li>delta(bearing (relative to 0 at start) | 
|---|
 | 305 |   <li>delta(horizontal) | 
|---|
 | 306 |   <li>infinite sd for z | 
|---|
 | 307 | </ul> | 
|---|
| [3ede867] | 308 |  | 
|---|
| [df26b81] | 309 | <li>Infinite sds so we can fix in x and y only (or z only)? | 
|---|
| [7c663ef] | 310 |  | 
|---|
| [df26b81] | 311 | <li>legs: "commented out" flag?  syntax check data but otherwise ignore | 
|---|
| [6cd4aab] | 312 |  | 
|---|
| [df26b81] | 313 | <li>legs: hydrology - fossil/active/not recorded/static water/underwater | 
|---|
 | 314 | (sump) [diving underwater by default? except style can mean altimeter | 
|---|
 | 315 | too...] | 
|---|
 | 316 |  | 
|---|
 | 317 | <li>legs: floor type - mud/sand/breakdown/flowstone/etc and can then used | 
|---|
 | 318 | LRUD to draw crude survey... | 
|---|
 | 319 |  | 
|---|
 | 320 | <li>Allow valid range for an instrument to be specified.  Tie in with | 
|---|
 | 321 | *instrument.  *units date - ranges for dates - e.g. "1990-" or | 
|---|
 | 322 | "jun-aug"... | 
|---|
 | 323 |  | 
|---|
 | 324 | <li>cope with any combination of readings which gives enough info ??? | 
|---|
 | 325 |  | 
|---|
 | 326 | <li>leg and station "comments": | 
|---|
 | 327 |  | 
|---|
 | 328 | <pre>*data passage station left right up down comment | 
|---|
 | 329 |  | 
|---|
 | 330 | 1 1.0 - 50+ 0.5 "large cairn" | 
|---|
 | 331 |  | 
|---|
 | 332 | 2 ... | 
|---|
 | 333 |  | 
|---|
 | 334 | *data normal station l r u d comment newline tape compass clino | 
|---|
 | 335 |  | 
|---|
 | 336 | 1 1.0 - 50+ 0.5 "large cairn" | 
|---|
 | 337 |  | 
|---|
 | 338 |   10.78 123 -03 | 
|---|
 | 339 |  | 
|---|
 | 340 | 2 ... | 
|---|
 | 341 | </pre> | 
|---|
 | 342 |  | 
|---|
 | 343 | comment can be omitted "-" or not present if at end of line...? | 
|---|
 | 344 | commentall? | 
|---|
 | 345 |  | 
|---|
 | 346 | <li>Allow covariances to be specified in cartesian style? | 
|---|
 | 347 |  | 
|---|
 | 348 | <li>flag legs as "skeletal" or something? (i.e. not in the cave passage) - | 
|---|
 | 349 | e.g. a radiolocation leg from one passage to another isn't surface, | 
|---|
 | 350 | but it isn't in the cave itself either (it's through rock).  You could | 
|---|
 | 351 | just call it surface but maybe later we want to use the surface | 
|---|
 | 352 | flag to produce points for a surface triangulation... | 
|---|
 | 353 |  | 
|---|
 | 354 | <li>?outlaw prefixes on stations in data legs (as Todd has lobbied for) | 
|---|
 | 355 | and then the prefix of a leg == prefix of each end...? | 
|---|
 | 356 |  | 
|---|
 | 357 | <li>comma separated dates in *date? | 
|---|
 | 358 |  | 
|---|
 | 359 | <li>Find a solution to Thilo's "." problem. | 
|---|
 | 360 |  | 
|---|
 | 361 | <li>Units in *fix (currently metres) | 
|---|
 | 362 |  | 
|---|
 | 363 | </ul> | 
|---|
 | 364 |  | 
|---|
 | 365 | <H2>img library</H2> | 
|---|
 | 366 |  | 
|---|
 | 367 | <ul> | 
|---|
 | 368 |  | 
|---|
 | 369 | <li>eliminate duplicate img_LABELs when reading .PLT files. | 
|---|
 | 370 |  | 
|---|
 | 371 | <li>img should return img_XSECT from Compass PLT files. | 
|---|
 | 372 |  | 
|---|
 | 373 | <li>make img more modular (convert to C++?) | 
|---|
 | 374 |  | 
|---|
 | 375 | <li>add support for .KST?  Gary says documentation is out of date, and recent | 
|---|
 | 376 | releases of winkarst have broken .KST export/import... | 
|---|
 | 377 |  | 
|---|
 | 378 | <li>resolve documentation/examples mismatch for station based XYZ files and | 
|---|
 | 379 | implement reading of legs from them. | 
|---|
| [a775268] | 380 |  | 
|---|
| [0e26b3a] | 381 | </ul> | 
|---|
 | 382 |  | 
|---|
 | 383 | </BODY></HTML> | 
|---|