I’ve now been at Snowflake Software for about a month (Missed my first blog? Find it here) and it’s been a great learning experience so far, especially being so involved with the development team. Internships not only compliment your studies but provide you with a lot of industry knowledge. I’ve learnt so much already.
Now that I am now much more familiar with the code behind the Aviation Viewer I have been able to contribute with some much needed features.
A key task I’ve been working on is the data loading bar, which now shows the current progress when files are loading. I achieved this by keeping track of the amount of data that has been read by the input stream. A small but really important feature when you are loading large datasets like AIXM!
The Aviation Viewer now displays ElevatedPoint and ElevatedCurve feature types of AIXM in addition to the polygons it already displayed, and I am currently refactoring the SAX parser to more elegantly create the AIXM objects. I am also the Factory design pattern to create my own geometry classes which correlate with the ISO geometry standard, to allow me to use Snowflake’s core GML geometry parser with my geometry factory to parse the geometries straight into Renderable objects to display in NASA World Wind.
As an aside, we’ve been enjoying the Olympics in the office and supporting Team GB with some cupcakes. It really puts tools like the Aviation Viewer into context that with record breaking passenger numbers passing through London Heathrow in a single day - some 236,955 – the importance of data exchange for next generation air traffic management is really significant, not just Aeronautical (AIXM) but also Weather (WXXM) and Flight Information (FIXM) as airspace and airports become even busier places.