連載:世界のWebサービス 第2回 Microsoft TerraService 1.世界地図データベースTerraServer田口景介 |
Microsoftが運営している、TerraServer(TerraServerのページ)をご存じだろうか。これは簡単に言ってしまえばWebでアクセスできる世界地図なのだが、地図に加え航空画像やレリーフ画像(立体模型写真)も表示できるうえ、北米に限ればかなりの縮尺まで拡大表示が可能だ(指定可能範囲は1mm/ドット〜16km/ドット。ディスプレイに表示されるため縮尺の表現が独特。すべての縮尺の画像が用意されているわけではない)。例えばマンハッタン島をのぞけば、めったに見られない自由の女神の頭頂部を見ることができるし、アリゾナの広野を無数のB52爆撃機が埋め尽くす異様な光景も見ることができる。
また地名で検索して、その土地にある有名施設をリストアップする機能も持つ。例えば、「Tokyo」で検索すると「東京ディズニーランド」や「東京ドーム」などが一覧される。こうして目的の土地をダイレクトに表示することもできるというわけだ。
TerraServer | |||||||||||||||
TerraServerは、Microsoftが運営している世界地図サービス。地図だけでなく、上空からの写真を見ることもできる。 | |||||||||||||||
|
ただし世界中の土地が網羅されているわけではなく、詳細地図が用意されているのは北米だけで、それ以外は各国の都心部など主要地域に限られている。また、後述するWebサービスからアクセス可能なエリアは次の画面で緑色に示されている、USGS(the US Geological Survey)提供の地図(terraserver.microsoft.netにホストされている)だけに限られているようだ。次の画面で赤く示されているSPIN-2(SPace INformation 2 meter。SPIN-2のホームページ)提供の地図(www.terraserver.comにホストされている)は、WWWブラウザからでないとアクセスできない。したがって後述するサンプルプログラムからアクセス可能なエリアも、残念ながら北米地域だけに限定される。もし東京ドームや東京タワーを見てみたかったら、Webサービスを使わずにWWWブラウザからTerraServerへアクセスしてみてほしい。
地図情報の提供エリア |
TerraServerで詳細地図が提供されるのは、この図の緑色の部分だけに限定されているようだ。また後述するWebサービスとしてアクセス可能な地域も、この緑色の部分だけである。 |
Webサービス版TerraServer=TerraService
さて今月紹介するWebサービスは、このTerraServerのデータベースに.NETアプリケーションからアクセス可能にしたTerraServiceである。TerraServiceの利用法については、TerraServiceのホームページに詳しく解説されている。
WebサービスとしてのTerraServiceの仕様について解説したTerraService DocumentationのAPI一覧を見ると、基本的に以下の機能を持つサービスであることが分かる。
- 緯度経度で指定した座標を中心に、指定したサイズの地図画像を取得する。
- 指定した地名が位置する座標を取得する。
このTerraServiceを使って作成したのが、次に示すTerraClientである。
今回作成したTerraServiceクライアント(TerraClient) | ||||||||||||
経度と緯度を指定すると、それに対応する場所の航空画像を表示する。 | ||||||||||||
|
見てのとおり、経度と緯度を指定し、[実行]ボタンをクリックすると、指定場所周辺の航空画像を表示するというものだ。ここで経度は東経を+、西経を−で指定し緯度は北緯を+、南緯を−で指定する。ただし前述したように、表示可能なのは北米エリアだけなので、デフォルトではカルフォルニア州の経度/緯度を指定している。このデフォルト設定のまま実行すると、ゴールデンゲート・ブリッジ近辺が表示されるはずだ。
TerraClientでは、指定した経度/緯度周辺の航空映像を32m/ドットの縮尺で取得しているが、TerraServiceの機能としては、絵地図やレリーフ画像を指定した縮尺で取得することも可能だ。簡単な修正でこれらパラメータも指定可能になるので、興味があれば調べてみてほしい。
関連記事(Insider.NET内) | |
特集
|
.NET Framework入門 |
関連リンク | |
Microsoft TerraServiceのページ | |
SPIN-2のホームページ |
INDEX | ||
[連載]世界のWebサービス―― 究極のWebサービスを求めて ―― | ||
第2回 Microsoft TerraService | ||
1.世界地図データベースTerraServer | ||
2.TerraClientのしくみ | ||
3.TerraClientのコンパイル | ||
「世界のWebサービス」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|