source: git/doc/TODO.htm @ 570d62c3

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

Update TODO list with the contents of the "SPUD" list.

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

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