[GIS] Can QGIS display GeoRSS in real time

gdalgeorssqgis

QGIS has the ability to display GeoRSS by following these steps:

  1. Click on "Add Vector Layer…" icon
  2. Make sure the Data Source is "File" and enter the GeoRSS URL with "/viscurl/" prefix on the GeoRSS (e.g. /vsicurl/http://earthquake.usgs.gov/earthquakes/catalogs/eqs1day-M0.xml).

The problem I'm having is that the canvas is not updated when a new earthquake happens. I have to quit qgis, restart qgis, then load the GeoRSS in order to see any updates.

Anyone knows how to show GeoRSS in real time? I'd love to hear of any other FOSS solutions to this problem.

Best Answer

Reloading a layer was recently discussed on the developers mailing list. From that discussion, the concise answer might be: not for a GeoRSS provider... yet.

The data provider for GeoRSS is probably QgsOgrProvider which does not appear to have the reloadData() method implemented. A search of the /src/providers directory turns up QgsWFSProvider and QgsWmsProvider as having the method. QgsWFSProvider appears to be the only provider with the reloadData() function for vector features (as referenced in the mailing list post by giohappy).

If you want to see new earthquakes, or parse changes over a time span, consider automating the download of the GeoRSS feed (and possibly the loading into a QGIS project file) using Python. Then, load the layers into underdark's excellent TimeManagerPlugin (additional blog posts). Other than that plugin, I don't know of another way to visualize temporal changes in QGIS, at this time.

Related Question