source: git/doc/TODO.htm @ 5abd525

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

doc/TODO.htm: Remove entries which have now been done.

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

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