source: git/doc/TODO.htm @ 78f02e48

RELEASE/1.2debug-cidebug-ci-sanitisersfaster-cavernloglog-selectstereostereo-2025walls-datawalls-data-hanging-as-warningwarn-only-for-hanging-survey
Last change on this file since 78f02e48 was 78f02e48, checked in by Olly Betts <olly@…>, 14 years ago

doc/TODO.htm: Update (--help messages can now be translated).

git-svn-id: file:///home/survex-svn/survex/trunk@3778 4b37db11-9a0c-4f06-9ece-9ab7cdaee568

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