Dropbox

PDAとGPS」で知りました。MGMaps 1.34.00 α版にてStored Map機能が搭載されました。PC上で予めマップ・ファイルをインターネット経由で取り込み、携帯電話の外部メモリーに書き込んでおくというものです。ダウンロード先等詳しいことはPDAとGPSの記事を参照願います。

[ Signed になった ]
MIDPであるMGMapsはJSR75でローカルファイルのアクセスをします。その時に表示されるダイアログを抑制するための証明書添付(Signed)と思われます。設定にもよりますが最初にダイアログが一度出るだけなので必ずしもSignedである必要は無いように思えます。中文版E61は問題ないのですが、これが災いして705NKでは導入の最後で「証明書エラー」になって導入できません。JADを指定して導入する時に証明書の情報を見ることが出来ます。そこで表示される証明書チェーンは正しそうに見えるのですが、詳しいことは今のところ不明です。ということで以下E61でテストを行いました。

[ Mapファイルを作る ]
PC上でMapファイルを作るにはMapTileCacher.perlというPerlスクリプトを使用します。Linuxもしくはcygwinでしたら、おそらく何の苦労もなく動くと思います。Windowsの場合はActivePerlに加えてwgetコマンドの入手が必要と思われます。

wgetはhttpでサーバー上のファイルを取得しローカルファイルを作るプログラムです。私はMac OS X上でMapを作ろうと思いました。Mac OS Xにはwgetの代わりにcurlという同じ目的のコマンドがあります。wgetを導入しても良いのですが標準で入っているcurlを使ってみました。これについては後述します。

Perl MapTileCacher.perlで起動して対話式にMapを取得します。どの種類のMapを作るか(GoogleMapとかYahooMapとかいったもの)、Zoomレベル、必要な地図の経度緯度を左上と右下で指定します。一度の操作で一つのズームレベルしか取得出来ません。Zoomレベルの数値が大きいほど詳細な地図になります。

試しに地図を作る場合は荒くて広い範囲のものを作るとデバイスで表示したときに迷子になりにくくて良いです。とりあえずはZoomレベル10で関東一円という感じが良いでしょう。デバイス上では取得したZoomレベル以外では表示できないので’#’, ‘*’を押して表示できるレベルを探してみてください。Zoomレベル10の場合、デバイス上に表示されるスケールが3Kmの時に地図があらわれると思います。

実用的に使うには同じ地域の地図を複数のZoomレベルで取得しておくべきでしょう。そういう意味ではMapTileCacher.perlに何度も同じ座標を入力しないといけないので今ひとつです。現在はα版ですので、いずれ良いツールが出てくる物と期待します。

Zoomレベル10から15(地図スケールで3Kmから100m)で関東全域(左上は狭山市、右下は茂原市) の地図を作ってみました。ファイルサイズの合計は約46MBくらいでした。これくらいで実用的に使えるように思います。因みに同じ地域をZoomレベル16で取得していますが5時間ほどかかってまだ終わりません。

[ Mac OS XでMapTileCacher.perlを動かす ]
wgetを入手している方、もしくは入手予定の方は問題ないです。せっかくcurlというコマンドがMac OS Xに入っているので、それを使いたいと思い試してみました。Mac OS X専用になってしまいますが、とりあえずエディターで以下の変更をMapTileCacher.perlに加えみてください。

13行目 $wget = “wget -Y off -nv -O TempTile “;
これを $wget = “curl -# -o TempTile “;

152行目、三項演算子の真ん中部分 “–referer=http://maps.google.com/ ”
これを “-e http://maps.google.com/ ” にします。

以上の変更で動くと思います。もう少し真面目な変更の提案はMGMapsのフォーラムにポストしていますので興味のある方は見てください。

追記 (2007/06/10 19:01)
wgetのMac OS X用のBinaryパッケージがあることをMGMapsのフォーラムで教わりました。これを入れる方が簡単です。最初wgetを探した時はmake installみたいなのしか見つからなくてcurlを使うようにしていました。wgetを http://www.merenbach.com/?page_id=17 から入手すればコザイクすることなく普通にマップが作れます。

追記(2007/06/11 08:31)
長文のため変なとこもあり、何カ所か訂正しました。まだ読みづらいかなぁ。

Trackback

6 comments untill now

  1. 情報ありがとうございます。
    UIQ3 の場合、頼れるアプリが極端に少ないので、この情報はかなり有力です。
    助かります。

    ただ、小生は見ていて理解できるレベル(とは言っても地図データがない)ですが、普通の方には敷居が高いかもしれません。

  2. kAbajyUさん、
    どうも。コマンドラインというだけで敷居が高くなりますよね。MGMapsの作者の方もGUIの方が良いとは思っているでしょう。あのMGMapsの操作性の良さを考えると何か良い方法を考えられているのではと思います。

  3. むむむ、MGMapsは着実に進化していますね。

  4. ま〜さん、
    ですね。ローカルマップ機能を持ったプログラム無ければ自分で作るかって思ってました。どのあたりが難しいかなぁとか考えている間にMGMapsに搭載されてしまいました 🙂

  5. おはようございます。徹夜ついでに色々と試してみたんですが、地図作成成功までたどり着けずにスネています。
    環境はすべて揃っているはずなのですが、なかなかどうして素人には難しいみたいです。

    もしかしたら、座標の打ち込み方がおかしいのかも知れないと思っているのですが、緯度経度の打ち込みで、(X,Y)のうちY座標は“-”表示をする必要があるのでしょうか?試しで色々と打ち込んだのですが、どうやってもうまくいかずに頭を抱えています。

    いずれはMap カッターなんかが出てくるとは思いますが、出来れば今のうちにとあせっています。

  6. おはようございます(わたしは無意味に早起きしてしまいました)。
    具体的なMapTileCacher.perlの実行例を書いてみようと思います。今日中にはエントリーします。

Add your comment now