「Dotspatial」を利用して、WMSサービスの簡易版を作成する

「Dotspatial」を利用して、WMSサービスの簡易版を作成する

以前に「Geoserver」のWMSサービスを表示させましたが、脱javaを進めていますので、ASP.NET Webアプリケーションで、「Dotspatial」を利用した、WMSサービスを提供できないか検証してみました。

使用したソフトウェアは以下の通りです。
・Dotspatial
・NetTopologySuite
・ASP.NET
・IIS

1.WMSサービス用のプロジェクトの作成

ASP.NET Webアプリケーションを作成します。デフォルトの場合、色々と不要なファイルが追加されるので、今回は空のプロジェクトを作成します。本プロジェクトでは「Dotspatial」を利用するので、参照に「Dotspatial」のdllを追加しておきます。

2.WMSサービスのクラスを作成

ブラウザからのリクエストに対し、該当するレイヤの画像を作成し、ブラウザに返却するWMSサービスのクラスを作成します。

今回は手っ取り早く表示させるだけなので、DBを使わずに、shpファイルを読み込ませています。

2.WMSサービスをIISに配備

IISに作成したWebアプリケーションを置きます。Web.Configの内容は以下の通りです。wms.aspxでアクセスすると、DotSpatial.WMS.Handlers.WmsHandlerが呼ばれるようにしています。

以下のようなファイル構成になります。

3.WMSサービスにアクセス

ブラウザから以下のURLにアクセスします。


該当するレイヤの画像が表示されました。

続いて、レイヤ名を変更してアクセスします。

変更したレイヤの画像が表示されました。

「Dotspatial」では、WinFormアプリケーションなので、画像が表示されるか心配していましたが、WinFormなしで、レイヤの描画が簡単にできました。
レイヤの読み込み処理、スタイルの管理など検討事項はありますが、意外と簡単に作れそうです。

Print Friendly, PDF & Email

シェアする

  • このエントリーをはてなブックマークに追加

フォローする