survex to therion data conversion

Wookey wookey@aleph1.co.uk
Fri, 7 Nov 2003 13:30:58 +0000


+++ Stacho Mudrak [03-11-07 10:43 +0100]:
> >* In therion commands do not have a "*" prefix (lines starting with 
> >reserved
> >words that are not actually commands have a "!" prefix)
> 
> This can't be changed no more :(. But this is probably the most simple 
> thing to do in convertor.

I am not proposing to change the two syntaxes to be identical (as you say
it's probably too late for that, and it may well not be appropriate either)
- but we do need a mechanism for using continuously-updated survex data as
the therion baseline. If therion can just accept survex-systax data directly
(by ignoring the "*"'s in this case when told to do so via a "survexinclude"
command (for example), that should work fine.

Obviously the fewer differences there are between the two syntaxes the
better things are likely to work :-)

> >* therion does not understand "export"
> >this is not a big deal, but it would probably be a good idea if it did
> 
> I do not like this thing - it can happen, that you will not be able to join 
> two datasets, because there will be two different stations exported with 
> the same name. Or is it not true?

'export' only exports up one level - to the surrounding survey, so there are
no 'global' names which might clash. So it is not true that you might not be
able to join caves. However if therion does not want to support export than
it can simply ignore it - it makes no practical difference. Then therion
will work as it does now, and as survex does if there are no export
commands: every station is implicitly exported.

> >* therion uses # for comments, survex uses ; (by default)
> >this is just tiresome - especially for hand-editing conversion
> 
> This has something to do with the very old concept of therion, at that 
> time, it has been quite far away from survex syntax...

If therion could accept both it would be handy. conversion of these chars is
easy in theory but the problem is that ";" is/can be used in places where it
does not mean 'comment' so a simple-minded replacement might make some
comments a bit odd. It shouldn't break anything though. A converter
replacing the first one on a line will probably always work.
(counterexamples?)

> >* Survex uses "begin <surveyname>", therion uses  "survey <surveyname>"
> >* Survex uses "end <surveyname>", therion uses "endsurvey"
> 
> endsurvey can be optionally followed by <surveyname>, than it's checked 
> whether survey and endsurvey parameter match. 

I'm fairly sure I got errors in therion 0.2.15 when I tried this....this
would certainly be better for making the converter simpler (it has to be
careful about begin/end pairs that are do not start/end surveys.

> >therion has no eqivalent of "dog" on the surveying team (general
> >checking-out of leads) . I think 'dog' is a colloquial UK term but there
> >should probably be something
> 
> I still do not understand, what does the term "dog" mean :( Could you 
> please explain it?

"assitant" was the best sensible term I could think of. Someone on the
surveying team who may not actually be surveying but is looking round
corners, up slopes, and behind boulders to be sure nothing is missed.

> The last, I thing very important difference is the station naming. Survex 
> uses prefixes - we use suffixes (svx: survey.1 th: 1@survey). We've chosen 
> this because we're naming also other objects than stations (scraps,maps 
> etc...) and we wanted to be able at single look recognize what is an 
> station/object name and what is a survey.

Yes - this bit of the conversion could be 'interesting'.

> That's all for now. Today we're leaving for some caving (hopefuly), but I 
> believe, next week I'll be able to implement all "implementable" changes to 
> therion.

OK - olly is away for another 8 days or so and it would be useful to hear
what he thinks too before we fiddle with survex/therion and a converter
script (as they need to be somewhat synchronsied.

> I have another question with SVX input. If somebody wants to maintain 
> original survey data in survex format - wouldn't it be sufficient to write 
> independent convertor and some makefiles and call therion via "make" 
> command?
> 
> This would be probably the most "clean" solution, 

Why is that cleaner than a 'survexinclude' directive which does necessary
conversion?. I suppose it is more general, but going through make is going
to be confusing to non-programmers I would have thought?

The make target would need to create new files by converting the existing
survex files, then insert them, or include them, in existing therion files -
right?

> and I'll add this feature 
> to xtherion compiler (to run "make" instead of "therion"). Becuase 
> sometimes also postprocessing will be used (for example to combine plan and 
> elevation maps into one PDF file).


Wookey
-- 
Aleph One Ltd, Bottisham, CAMBRIDGE, CB5 9BA, UK  Tel +44 (0) 1223 811679
work: http://www.aleph1.co.uk/     play: http://www.chaos.org.uk/~wookey/