2013年9月4日水曜日

OpenStreetMap(JAPAN KANJI ver.) for GARMIN DAKOTA20,OREGON450...etc

OpenStreetMap(日本全域 漢字対応版) GARMIN DAKOTA20,OREGON450等用
Unfortunately this text is in Japanese only.

2015/03/01 追記
this contents is obsolete.
以下の情報は古いです。記録のために残してます。
[より新しい情報] を参照してください。
 
GARMIN DAKOTA20 と OREGON450 の日本語表示対応のOSM地図が出来ました。
eTrex30/20あたりでも使用可能でしょう(他のblogで同じ事やってたし)

公開しときますので物好きの方はご自由に(自己責任にて)。
リンクの物置に入ってます(/pub/GISGPS/data/osmjapan_utf8.img)

これは mkgmap.jar で --code-page=65001と指定してもエラーとなるため、 --charset=utf8 --code-page=932 として生成した後、コードページが932(S-JIS)の個所を65001に書き換えたもの。splitter.jarで分割生成→合成したためバイナリエディタで目視にて60数ヶ所手動で書き直したが、疲れるため置換プログラムを作成した。
GARMIN imgフォーマットの仕様書を読み切って正確なプログラムを書きたいところだが時間が惜しいので、"GARMIN LBL" の文字列を検索し、その次から158バイトオフセット位置に指定コード(932)があれば65001に置換する単純な処理とした。以下が実行結果。

D:\TMP>utf8gmap -t gmapsupp.img
display only mode
   1 : 0027800C = A4 03 (932)
   2 : 0075C00C = A4 03 (932)
   3 : 00E0400C = A4 03 (932)
〜〜〜以下省略〜〜〜
"-t" オプションで検索文字列がヒットしたオフセット位置のコードを表示のみのモード。

D:\TMP>utf8gmap 932 gmapsupp.img
   1 : 0027800C = A4 03 (932) ==> E9 FD (65001)
   2 : 0075C00C = A4 03 (932) ==> E9 FD (65001)
   3 : 00E0400C = A4 03 (932) ==> E9 FD (65001)
〜〜〜以下省略〜〜〜
そのコードが932の個所をUTF-8(65001)に置換(書き込む)した結果。

D:\TMP>utf8gmap -t gmapsupp.img
display only mode
   1 : 0027800C = E9 FD (65001)
   2 : 0075C00C = E9 FD (65001)
   3 : 00E0400C = E9 FD (65001)
〜〜〜以下省略〜〜〜
表示モードで実際に書き込めたかを確認した結果。

ゴミプログラムですが物置に入ってます(/pub/GISGPS/software/utf8gmap.zip)
Microsoft VB.NETのソースもご自由に。
utf8gmap.exeはMicrosoft Visual Studio Express 2012 でビルドしたものです。

※実行すると直接ファイルを書き換えるので事前にバックアップをお忘れなく!

さて、次は国土地理院の基盤地図情報から10m等高線オーバーレイ地図を生成するプログラムを目下作成してテスト中。本日はこの辺にて。

2013/09/05 追記
mkgmapのオプションヘルプを眺めてたら
--charset=name
    This option is obsolete. Change the character set with the --code-page option.
...と、いう事らしいので --charset=utf8 オプションは効いてない模様。

2 件のコメント:

  1. こんにちは
    "うのだ"と申します。Garmin E9 FDでGoogle検索から飛んでまいりました。
    私は、英語版etrex30で表示されない日本語POIを
    0x2eを”E9” 0x2fを”FD”に書き換えると、日本語表示されることに気付き、検索したところこちらがヒットしたというわけです。

    そうですか、地図でも同様だったんですね。参考になりました。ありがとうございました。

    返信削除
    返信
    1. ♪うのだ様 場末のblogにようこそ♥

      ワタシの公開しているツールの実証はできていますが、あくまでもmkgmapで生成したOSM地図の話です。他の地図は固定文字列からのoffsetでは位置を特定できないと思います。新しいGpsMapEdit では地図のプロパティーでUTF-8に更新できるとのBlogも見ましたよ。
      もっと詳しく解析しツール類を作成して公開したいのですが、この時期は水遊びが忙しく手が出せてません(T_T
      何か面白そうな情報等ありましたら書き込みヨロシクお願いいたします♪

      削除