10.1. Lesson: Web Mapping Services

Web Mapping Service (WMS) は、リモートサーバ上でホストされたサービスです。ウェブサイトと同じ様に、サーバーへ接続することでアクセスができます。QGIS を使用すると、既存の地図に直接 WMS をロードできます。

プラグインのレッスンから、例えばGoogleから新しいラスタ画像をロードできることを記憶しているでしょう。しかし、これは一度きりの処理です:画像はダウンロードしたら変更されません。WMSは、地図上でパンや拡大すると自動的に表示が更新されるライブサービスであるところが異なります。

このレッスンの目標: WMSを使用して制限を知ること。

10.1.1. basic Follow Along: WMSレイヤを読み込む

この演習では、コースの開始時に作られた基本地図を使用するか、または単に新しい地図を開始し、その中にいくつかの既存のレイヤを読み込むことができます。この例では、新しい地図を使用して、元の placeslanduse および protected_areas レイヤをロードし、シンボルを調整しました:

../../../_images/new_map.png
  1. 新しい地図にこれらのレイヤを読み込みます。またはこれらのレイヤを表示のみ行いオリジナルの地図を使用します。

  2. WMSレイヤの追加を開始する前に、"オンザフライ" 投影を無効にします(プロジェクト ► プロパティ... ► 座標参照系(CRS) タブで、 CRSなし(または未知/非地球) をチェックします。これにより、レイヤが正しく重ならなくなることがありますが、後で修正しますので安心してください。

  3. WMSレイヤを追加するには、dataSourceManager ボタンをクリックして データソースマネージャ ダイアログを開き、addWmsLayer WMS/WMTS タブを有効にしてください。

    ../../../_images/datasourcemanager_wms.png

    コースの冒頭でSpatiaLiteまたはGeoPackageデータベースに接続した方法を思い出してください。 landusebuildings 、および roads レイヤは、1つのデータベース内に格納されています。これらのレイヤを使用するには、まずそのデータベースに接続する必要がありました。WMSを使用するレイヤは、リモートサーバー上にあることを除いて、同様です。

  4. WMSへの新しい接続を作成するには、 新規 ボタンをクリックしてください。

    続けるにはWMSアドレスが必要です。インターネットには利用できる無料のWMSサーバがいくつかあります。そのうちのひとつは terrestris 、で OpenStreetMap データセットを使用しています。

  5. このWMSを利用するには、このように、今表示しているダイアログで設定します。

    ../../../_images/new_wms_connection.png
    • Name フィールドの値は terrestris にします。

    • URL フィールドの値は https://ows.terrestris.de/osm/service にします。

  6. OK をクリックします。リストされている新しいWMSサーバが表示されます。

    ../../../_images/new_connection_listed.png
  7. 接続 をクリックしてください。すると下のリストに、これらの新しいエントリがロードされるはずです:

    ../../../_images/new_wms_entries.png

    これらはこのWMSサーバーにホストされているすべてのレイヤです。

  8. OSM-WMS レイヤを一度クリックします。デフォルトで使われる 座標参照系 が表示され、データセットがサポートしている CRS の数が表示されます:

    ../../../_images/osm_wms_selected.png

    私たちの地図には``EPSG:4326 - WGS 84`` は使わないので、ニーズに合うものを探しましょう。

    1. setProjectionCRSを選択 ボタンをクリックします。標準の 座標参照系選択 ダイアログが表示され、データが公開されているすべてのCRSが表示されます。

    2. 私たちには 投影された CRSが必要なので、EPSG:3857WGS 84 / Pseudo-Mercator を選択してみましょう。一番上の search フィルタ ウィジェットを使うことができます。

      ../../../_images/pseudo_mercator_selected.png
      1. OK をクリックします。入力したものに関係した座標参照系が変わりました。

  9. Add をクリックし、 レイヤ名` を使ってレイヤをプロジェクトに読み込みます(デフォルトは OpenStreetMap WMS - by terrestris)。

  10. 自動的に閉じないときは データソースマネージャ ダイアログを閉じてください

  11. レイヤ パネルで、それをリストの最下部にクリック&ドラッグします。

  12. レイヤを全体的に表示するには、ズームアウトします。レイヤが正しく配置されていないことがわかります(アフリカの西に近い)。これは、「オンザフライ」投影が無効になっているためです。

    ../../../_images/reprojection_off.png
  13. その投影を再度有効にしましょう。ただし OpenStreetMap WMS レイヤーと同じ投影を使用すること。それは WGS 84/擬似メルカトル です。

    1. プロジェクト ► プロパティ... ► CRS タブを開きます

    2. Uncheck CRSなし(または未知/非地球) のチェックを外します

    3. リストから WGS 84 / 疑似メルカトル を選択します。

      ../../../_images/enable_projection.png
    4. OK をクリックします。

  14. 次に、 レイヤ パネルで自分のレイヤの一つを右クリックして、 レイヤの領域にズーム をクリックします。すると、Swellendam 領域が表示されるはずです:

    ../../../_images/wms_result.png

WMSレイヤの街路と私たちの街路がどれほど重なっているかに注目してください。それは良い兆候です!

WMSの性質と限界

今までに、このWMSレイヤはその中に実際に多くの地物を持っていることに気づいたかもしれません。それは道路、河川、自然保護区、などなどがあります。しかも、それはベクターで構成されているように見えるにもかかわらず、ラスターのようですが、そのシンボルを変更できません。何故でしょうか?

これがWMSが動作する方法です:この地図は、紙面の通常の地図のように、画像として受け取っています。普段使うのは、QGISが地図としてレンダリングする、ベクタレイヤです。しかしWMSを使うと、それらのベクタレイヤはWMSサーバー上にあり、地図としてレンダリングされ、画像としてその地図が送信されます。QGISではこの画像を表示できますが、すべてのことはサーバー上で処理されるため、そのシンボルは変更できません。

これはいくつかの利点を有しています。なぜならシンボルを心配する必要はありません。すでにできあがっていますし、的確に設計されたWMS上で見栄え良くなるはずです。

他方、気に入らなかったとしてもシンボルは変更できません。そして何かがWMSサーバー上で変更されると、それらは地図上でも同様に変更されます。ときどき代わりにWeb地物サービス(WFS)を使いたくなるのはこのためです。それはWMSスタイルの地図の一部としてではなく、別のベクタレイヤを与えます。

ただし、これは次のレッスンでカバーされます。まず、別のWMSレイヤーを追加しましょう。

10.1.2. basic Try Yourself

  1. 次の URL にある、eAtlas WMS サーバーを追加します: https://maps.eatlas.org.au/maps/wms

  2. マップに World: Hillshading レイヤを読み込みます。

  3. その エンコーディングJPEG に、その タイルサイズ オプションを 200 × 200 に設定して、読み込みを速くしたくなるかもしれません。

  4. マップはこのようになるはずです(レイヤーの順序を変えたり、透過率を適用する必要があるかもしれません):

    ../../../_images/world_hillshading_result.png

10.1.3. hard Try Yourself

WMSを使用する難しさの一部は、良い(無料)サーバーを見つけることです。

  • 新しいWMSを directory.spatineo.com (またはオンラインの他の場所)で見つけてください。それは、関連する料金や制限がなく、Swellendam の研究領域をカバーしている必要があります。

    WMSを使用するために必要なことだけでそのURL(と説明の好ましいいくつかの並べ替え)であることを忘れないでください。

10.1.4. hard Try Yourself

  • MapServer Demonstration Server から bluemarble レイヤーを追加してください。これは私たちの調査地域に適したデータセットでしょうか?

10.1.5. In Conclusion

WMSを使用して、既存の地図データのための背景として、非アクティブ地図を追加できます。

10.1.6. Further Reading

10.1.7. What's Next?

背景として動かない地図を追加しましたが、地物(例えば以前に追加した他のベクタレイヤなど)を追加することも可能だということがわかるとうれしいでしょう。リモートサーバから地物を追加することは、ウェブ地物サービス(WFS)を使用することにより可能です。それが次のレッスンのトピックです。