source: git/doc/TODO.htm @ 85c0078

RELEASE/1.2debug-cidebug-ci-sanitisersstereowalls-data
Last change on this file since 85c0078 was 85c0078, checked in by Olly Betts <olly@…>, 9 years ago

doc/TODO.htm,lib/,src/,tests/: In cavern, use the currently set units
when outputting measurements in warnings, errors, and the stats at
the end of the run.

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