source: git/doc/TODO.htm @ d0b5a12

v1.1.15
Last change on this file since d0b5a12 was 1324d6c, checked in by Olly Betts <olly@…>, 15 years ago

Say "wxWidgets" instead of "wxWindows" consistently.
Require wxWidgets 2.6.0 or newer - 2.4 is really old now.

git-svn-id: file:///home/survex-svn/survex/branches/survex-1_1@3341 4b37db11-9a0c-4f06-9ece-9ab7cdaee568

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