source: git/doc/TODO.htm

Last change on this file was 1e62715, checked in by Olly Betts <olly@…>, 6 weeks ago

img: Improve PLT station reading

Eliminate duplicate img_LABEL items, which used to happen for
stations where more than two shots meet within a single survey.

We now infer img_SFLAG_WALL for the to station of a leg which
is flagged as a splay, since the Compass PLT format specification
documents this flag as meaning:

The shot is a "splay" shot, which is a shot from a station to the
wall to define the passage shape.

We now infer img_SFLAG_EXPORTED for any station that appears in more
than one survey in the PLT file.

We now set flag img_SFLAG_FIXED for any station which is listed as
a fixed point in the PLT file (a more recent addition to the format).

  • Property mode set to 100644
File size: 9.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>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>CMAP .xyz in test suite?
151
152</ul>
153
154<H2>Miscellaneous</H2>
155
156<ul>
157
158<li>resolve FIXMEs in code
159
160<li>diffpos: compare connectivity (i.e legs as well as stations) - e.g.
161
162<pre>
163foo.1 moved by (0.02, 0.10, -0.06)
164leg between foo.1 and bar.2 removed
165...
166bar.2 moved by (-0.02, -0.05, 0.03)
167</pre>
168
169</ul>
170
171<H2>Cavern</H2>
172
173<ul>
174
175<li>This gives "*** Singular!!!" warning with DEBUG_INVALID on:
176<pre>
1771 2 50000 0 -
1781 2 5 0 -30
179</pre>
180
181<li>Default variance for topofil counter? (currently same as that of tape)
182
183<li>Rather than forming a linked list of components, solve each as it is
184identified?  Beware of issues like those that revcomplist test checks.
185
186<li>Don't split other traverses at articulating traverses when reporting error
187stats.
188
189<li>sort out title which goes in .3d file for this (if no *includes in ...
190it gets the title of the leafname of this .svx file, otherwise it's the
191leafnames of the *include-d files, comma-separated):
192
193<pre>
194*begin mycave
195*title "My Cave"
196...
197*end mycave
198</pre>
199
200<li>look at solution by QR factorisation in matrix.c more
201
202<li>consider disabling the more expensive asserts - turning them all off
203speeds up cavern by about 10%.
204
205<li>
206Warn bearings not 3 digits, gradient not &lt;sign&gt;&lt;digit&gt;&lt;digit&gt;
207
208<li>Sort out gross error detection code
209
210<li>For warnings such as "Negative adjusted tape reading" report the
211value of the adjusted tape reading (currently we just highlight the
212reading as it appears in the Survex file).
213
214<li>legs: implied flags: inloop/plumb
215
216<li>legs: "dubious" for "tapeless" legs - bearing along continuation...
217
218<li>station flags: "important" - e.g. top camp "fixed" point /
219junction,deadend (implied by order) /
220articulation pt (know for nodes I think a station is if at least one
221of its nodes is)
222
223<li>Maybe station lists should know how long they are?
224
225<li>Articulation point code: ideally the articulation point code should allow
226further network reductions to happen after splitting at articulation
227points?
228
229</ul>
230
231<H2>Survex file format</H2>
232
233<ul>
234
235<li>*data chamber ...
236
237<li>*data nsew ... for pitches (bearings rather than having to be NSEW)
238
239<li>Allow angles as deg/min/sec (for theodolite data) (060&deg;10'15" as 060 10
24015, or 060.1005 (crap notation))
241
242<li>should % after a clino reading work?
243
244<li>Fixing a point by triangulation?
245
246<li>multiple readings:
247<p>
248average bearings specially - they don't average like normal numbers
249<p>
250%age gradients should probably average the same as angle gradients
251<p>
252Document - works like so:
253<pre>
254*set open {
255*set close }
256*calibrate compass {000.5 001.0 001.25}
2571 2 10.23 {000 001} -02
2582 3 {10.16 10.17} 127 {+06 +05}
2593 4 11.98 007 {+03 +03}
260</pre>
261Implement as extension to number format so any suitable numeric value to be
262repeated?
263<li>Theodolite + level:
264<ul>
265  <li>delta(bearing (relative to 0 at start)
266  <li>delta(horizontal)
267  <li>delta(vertical) / maybe "clino" instead
268</ul>
269
270<li>Theodolite only:
271<ul>
272  <li>delta(bearing (relative to 0 at start)
273  <li>delta(horizontal)
274  <li>infinite sd for z
275</ul>
276
277<li>Infinite sds so we can fix in x and y only (or z only)?
278
279<li>legs: "commented out" flag?  syntax check data but otherwise ignore
280
281<li>legs: hydrology - fossil/active/not recorded/static water/underwater
282(sump) [diving underwater by default? except style can mean altimeter
283too...]
284
285<li>legs: floor type - mud/sand/breakdown/flowstone/etc and can then used
286LRUD to draw crude survey...
287
288<li>Allow valid range for an instrument to be specified.  Tie in with
289*instrument.  *units date - ranges for dates - e.g. "1990-" or
290"jun-aug"...
291
292<li>cope with any combination of readings which gives enough info ???
293
294<li>leg and station "comments":
295
296<pre>*data passage station left right up down comment
297
2981 1.0 - 50+ 0.5 "large cairn"
299
3002 ...
301
302*data normal station l r u d comment newline tape compass clino
303
3041 1.0 - 50+ 0.5 "large cairn"
305
306  10.78 123 -03
307
3082 ...
309</pre>
310
311comment can be omitted "-" or not present if at end of line...?
312commentall?
313
314<li>Allow covariances to be specified in cartesian style?
315
316<li>flag legs as "skeletal" or something? (i.e. not in the cave passage) -
317e.g. a radiolocation leg from one passage to another isn't surface,
318but it isn't in the cave itself either (it's through rock).  You could
319just call it surface but maybe later we want to use the surface
320flag to produce points for a surface triangulation...
321
322<li>?outlaw prefixes on stations in data legs (as Todd has lobbied for)
323and then the prefix of a leg == prefix of each end...?
324
325<li>comma separated dates in *date?
326
327<li>Find a solution to Thilo's "." problem.
328
329<li>Units in *fix (currently metres)
330
331</ul>
332
333<H2>img library</H2>
334
335<ul>
336
337<li>make img more modular (convert to C++?)
338
339<li>add support for .KST?  Gary says documentation is out of date, and recent
340releases of winkarst have broken .KST export/import...
341
342<li>resolve documentation/examples mismatch for station based XYZ files and
343implement reading of legs from them.
344
345</ul>
346
347</BODY></HTML>
Note: See TracBrowser for help on using the repository browser.