source: git/doc/TODO.htm @ fe340a5

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

doc/TODO.htm: "Save cavern log from aven" now implemented.

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