Friday, September 12, 2008

Viewing Hurricane Track in Smallworld using FME and SOMs

I realized today that I have customers and friends in the track of Hurricane Ike.


View Larger Map


So I was thinking... what would it take to view hurricane track information in Smallworld?

Here is what I came up with...
  1. Figure out which Smallworld SOMs (Spatial Object Managers) you have licensed.
  2. Create a FME workspace that reads hurricane data from a provider (eg., Google has http://mw1.google.com/mw-weather/tropical/kml/all_hurricanes.kmz) and converts it into a format that your SOMs are licensed for.   You can download the workspace file here (right-click and Save As... the link)
  3. Create a .bat file that calls your FME workspace and can be scheduled using a task scheduler.
    fme.exe %~dp0Hurricane_KML2MapInfoTab.fmw --SourceDataset_KML21 http://mw1.google.com/mw-weather/tropical/kml/all_hurricanes.kmz --DestDataset_MITAB %~dp0
  4. Create Smallworld SOM configuration that reads the regularly-updated SOM data.
  5. Create Smallworld ACE and Style changes that render the storm data on Smallworld.
I have tried this preliminarily with MapInfo and it seems to work.  What is not clear to me yet is if the MapInfo SOM will refresh the data on Smallworld each time the underlying MapInfo data is refreshed.  Anyone interested in trying this?

[UPDATE: It seems that once a MapInfo SOM is connected to a MapInfo file, then that file is locked for other processes.  Ie., FME won't be able to update it.  So that is likely not a very good idea.  We could use the WMS SOM but then we would need to set up a WMS server.  You can definitely do that with FME Server but I am willing to bet that most Smallworld customers do not have FME Server set up yet.  Maybe another option would be to modify the FME Workspace to write out to a text (or XML) file that could then be read by a Smallworld post-render-set plugin that would then dynamically draw the storm track information each time the map is refreshed.]

Anyone doing something else with tracking storms in Smallworld?

Stay safe and dry.

5 comments:

mark2atsafe said...

Isn't there an Oracle SOM now? You have to think it wouldn't lock the table in the same way as a MapInfo file.

No Smallworld - but here's my take on using FME to map hurricane tracks: http://evangelism.safe.com/fme-evangelist-21/

Alfred Sawatzky said...

Hi Mark,

You are correct that an Oracle SOM would behave better as far as file locking is concerned. Using Oracle had crossed my mind, but that would require the extra admin effort of setting up Oracle. I had hoped that using a file-based SOM might allow a quick rollout of this functionality. Alas, that was not to be.

Which leads me to my next idea for a project... a Google-Earth-type folder/placemark Navigator for Smallworld. If we can build an easy-to-use interface that handles at least the basic components of the latest KML specification, we could provide an easy mechanism with which to allow Smallworld administrators and users to create mashups on top of their enterprise data.

If anyone has done this or would like to collaborate on this, please let me know. I suspect this easy-to-use mashup capability would be benefit to Smallworld users.

Alfred

sandeep said...

Hi Alfred,
I have implemented a vehicle tracker on smallworld. Basically, in this application coordinates are generated by the code itself, with the help of gps_simulator class which keeps on writing the coordinate data in the xml files and later the file information is rendered on the map.
For applications like hurricane tracking can't we have some gps device which send the location of hurrcane in form of xml , which in turn will be rendered on the map.And as far as FME is concerened i have never worked on that, so was not able to appreciate its role in hurricane tracking!
Moreover, can we play with google maps in smallworld , i mean even if we are able to import the map how can we control the object information over it?
Cheers!
Sandeep

Luciano said...

Hi Alfred,
We implemented a lightning bolt track system in combination with INPE (Spatial Research Institute) and an energy company, Bandeirante.
We made a database in Oracle that receive lightning bolt information and a process that read this information inserting in a dataset Smallworld. An application developed made an overlap with lightning bolt and network information drawing to the user this intersections. Very useful to plan network protections and outage emergencies.

Cheers,
Luciano

Anonymous said...

There is a weather SOM available from GE directly that includes hurricane data and a range of other weather products.