質問: GMap.NETをネットワークのつながっていないローカル環境で使用したいと考えています。 事前にOpenStreetMapのosmファイルをダウンロードしておき、そのファイルを使用したいのですが、 GMap.NETでosmファイル読み込みを調べてみましたが、見つかりませんでした。 osmファイルを直接読む方法、osmファイルを何らかの方法で、gmdbに変換する方法等、 わかる方がいらっしゃれば、よろしくお願いします。
回答: この辺の記事に、キャッシュデータをコピーして使う方法が記載されています。 いずれも古い記事ですので変わっている可能性もありますが、試してみてください。 GMap.NET + C# + postgreSQL without Internet connection GMap .net offline 以下のようなデモプログラム等を動かすと、キャッシュデータがローカルに出来ているそうです。 キャッシュデータはデフォルトで以下の位置にあるそうです。 直上の `en` は、設定等で変わっているかもしれません。 `USERNAME`はログインしているユーザー用のフォルダ名です。 > > C:\Users\USERNAME\AppData\Local\GMap.NET\TileDBv5\en\Data.gmdb > > > 他に明示的にキャッシュの場所を指定できるようです。 > > use `gmap.CacheLocation = @"C:\Users\xxx\Desktop\";` to specify the cache location. > > > SQLiteのファイルで、デフォルトや明示的に指定した、同じ位置にファイルをコピーするだけで動作するとのこと。 そして、こちらの記事に自作プログラムでキャッシュデータ(のみ)を使う方法などが書かれています。 GMap.NET explicit load cache? その他 `OSM`と他のフォーマットとの`Import/Export`対応表(ツールも記載)が以下になります。 Converting map data between formats GMap.NETでGoogleのKMLフォーマットの対応中?というQ&Aおよび記事がこちら。 ただし本家開発元は未対応。 How to import/export kml and display in gmap.net gmap.net|C#|DXF|KML||robot|mission 上で紹介されていたTutorialサイト(参考になるかは不明) GMap.NET | Independent Software **追記:可能かどうか不明ですが、アイデアとして。** PCの中にOpenStreetMapサーバーのコピーを構築し、GMap.NETの参照先をそこに切り替えるとかが考えられます。 古いですが、この記事が使えるかも。 OpenStreet map server installation on windows Local OSM server on windows How to serve OSM mapnik tiles on Windows with Apache for leafLet.js Are there any precanned OSM server setups for Windows that contain the database, data loader and anything else OpenStreetMapを Windows/Mac(ローカル環境) に構築する方法/手順を教えてほしい 参考にUbuntuで独自に立てた記事があります。 OpenStreetMapサーバを自作する(Install OpenStreetMap on AWS EC2/Ubuntu14.04) OpenStreetMap のタイルサーバー立ててみました