QGISはGeoRSSをリアルタイムで表示できますか?


8

QGISには、次の手順に従ってGeoRSSを表示する機能があります。

  1. 「ベクターレイヤーを追加...」アイコンをクリックします
  2. データソースが「ファイル」であることを確認し、GeoRSSに接頭辞「/ viscurl /」を付けたGeoRSS URLを入力します(例:/vsicurl/http://earthquake.usgs.gov/earthquakes/catalogs/eqs1day-M0.xml)。

私が抱えている問題は、新しい地震が発生したときにキャンバスが更新されないことです。更新を確認するには、qgisを終了し、qgisを再起動してから、GeoRSSをロードする必要があります。

誰かがリアルタイムでGeoRSSを表示する方法を知っていますか?この問題に対する他のFOSSソリューションについてお聞かせください。


上記の方法を使用してGeoRSSフィードを開くこともできません。
ネイサンW

@Nathan、ベクターレイヤーを追加しながら、URLを[ファイル]の[データセット]フィールドに貼り付けることで、マスタービルドに読み込むことができました。
dakcarto

回答:


6

レイヤーのリロードは最近、開発者のメーリングリストで議論されました。その議論から、簡潔な答えは、GeoRSSプロバイダー向けではないかもしれません...まだです。

GeoRSSのデータプロバイダーは、おそらくreloadData()メソッドが実装されていないように見えるQgsOgrProviderです。/ src / providersディレクトリを検索すると、QgsWFSProviderとQgsWmsProviderがメソッドを持っていることがわかります。QgsWFSProvider はベクター機能用のreloadData()関数を持つ唯一のプロバイダーであるようです(giohappyによるメーリングリストの投稿で参照されています)。

新しい地震を確認したり、一定期間の変更を解析したりする場合は、Pythonを使用してGeoRSSフィードのダウンロード(および場合によってはQGISプロジェクトファイルへのロード)の自動化を検討してください。その後、にレイヤーを読み込むアンダーダークの優れたTimeManagerPlugin追加のブログ記事を)。現時点では、そのプラグイン以外に、QGISで時間的な変化を視覚化する別の方法は知りません。


あなたの答えを受け入れます。あとは、GeoRSSフィードのダウンロードを自動化する方法を見つけるだけです。私はそれを行う方法についてのヒントをいただければ幸いです!
cgs_bob

1
@ cgs_bob、GeoRSSフィードのダウンロードの自動化に関するヒントのリクエストを新しい質問として投稿します。これにより、良いヘルプが得られる可能性が高くなります。
Spatialを

@ cgs_bob、Webからのファイルのダウンロード«Pythonレシピ«ActiveStateコード機械化0.2.5:Pythonパッケージインデックス。また、wgetやcurlなどのシステムバイナリは、シェルスクリプト(Unixバリアント上)でうまく機能します。
dakcarto
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.