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