source: git/doc/TODO.htm @ 0b7cc90

debug-cidebug-ci-sanitisersfaster-cavernloglog-selectstereo-2025walls-datawalls-data-hanging-as-warningwarn-only-for-hanging-survey
Last change on this file since 0b7cc90 was 8d444ba, checked in by Olly Betts <olly@…>, 20 months ago

Update TODO

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