[Xastir-dev] Topic: Supported Platforms, Xastir-NG

Kristian Walsh listreader at byteform.com
Mon Jun 16 16:21:17 EDT 2008


On 16 Jun 2008, at 19:17, Curt, WE7U wrote:
> On Mon, 16 Jun 2008, Kristian Walsh wrote:
>> During development, we had considered xastir , but the need to re- 
>> project all
>> mapping to UTM was a bit of a headache, so we did our own  
>> visualisation
>> system.
>
> Actually -> "unprojected" or "lat/long", but same idea.  hi hi
>
:-)

> Help monitor this new development and keep us honest WRT to map
> projections, datums, etc.  I'd love this to be genuinely useful in
> the SAR field and for other emergency operations.
>
Me too.  We were working on some statistical modelling (based on the  
UK Centre for Search Research models) for missing persons.  I'd like  
to get that working in a more general visualisation system like xastir.

What we did was project the the vector data into the co-ordinate  
system used by the raster mapping (in our case, Irish Grid). This  
projection was only done for display: each recorded 'track' (in say,  
WGS84 Lat/Lon)  had a mirror 'projected track' whose points were in  
the display projection (Irish Grid). Every time you convert from one  
datum to another, you inevitably lose some accuracy.

>
>> Perhaps consider some of the Boost C++ libraries (www.boost.org):  
>> they are
>> cross-platform and well supported.
>
> Have only heard of the name.  Will have to look at what that might
> buy us.
There's a nice regular expression parser in there, as well as some  
very clever serialisation and container classes.  Some of the stuff  
is "too clever by half", and it can throw up some of the most bizarre  
compiler errors I've ever seen (so bad that the code has comments  
like: "if you get a strange error on this line, you've left out a  
'const'" ;-) )

>
>> The language hasn't moved much since the mid 80's.  Apple have  
>> recently
>> brought along an ObjectiveC 2.0, which adds garbage collection to  
>> the mix.
>
>> The Objective-C runtime is the C runtime, with a couple of additional
>> runtime functions.  All the things you hate about C are still there.
>
>> C++ is standardised, Objective-C is not.
>
> The above pretty much blows it out of the water for me.  Sounds like
> C++ would be a better portable language for us than Obj-C.  Thanks
> for the info.
>
> Does C++ have any standardized garbage collection?
>
No, unless you count std::auto_ptr< > as a garbage collected type. To  
be honest, if you use the standard template library containers,  
you'll be surprised how little you need a garbage collector.  (My  
personal choice is to clean up my own rubbish, but I'm not a zealot  
about this).


>
>> We used GTK+ for our UI - it works on MacOS X (on X11) and on  
>> Linux. We never
>> tried it on Windows.
>
>> I would not try to do a "one size fits all" UI - it will not work  
>> well on any
>> platform. Decoupling the "engine" from the UI and allowing  
>> differnt UIs would
>> be a better choice.
>
> The current thought is to do a "reference" implementation for the
> GUI clients using one language & widget set.  Others can than port
> this code to other languages or widget sets to give us more coverage
> across the desired platforms.  Whether we maintain these other ports
> as part of the main body of Xastir-NG code or not will be up for
> debate at the time.  They may be considered entirely different
> projects.
Sounds like a good plan, as it gives you a ready antidote to Second  
System Disease. I'd avoid making the core too generic : it won't be  
so bad that different clients have duplicated code in common if the  
alternative is that every client needs thousands of lines of code to  
convert from some abstract storage type into something useful.

--
Kristian



More information about the Xastir-dev mailing list