source: git/doc/TODO.htm @ 91f6661

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

doc/TODO.htm: Note that dump3d needs documenting.

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