ardryの日記: まっぷこーどリサーチ 1
日記 by
ardry
MAPCODE について興味が出てきたのでぐぐってみたが...どうやら企業秘密らしい。
http://guide.e-mapcode.com/business/business_005/b_p005_01.html に「大手カーナビメーカーへの技術開示は完了しております」とあることから、非公開技術っぽいのだ...
好奇心で、どんなテーブルを調べているのかしらみつぶしに調べてみることにした。すると、以下の表が得られた (MAPCODE 0~99999まで)
00000 N35.30.00.0/E139.37.30.0
1 31
+n 30+n
29 59
30 01 /E139.37.30.0
59 59
60 02 /E139.37.30.0
89 59
90 03 30
120 04 30
240 08 30
480 16 30
720 24 30
725 24 35
730 24 40
740 24 50
750 25 30
800 26 50
810 27 30
840 28 30
870 29 30
899 30 29
900~999(エラー)
1000 N35.30.00.0/E139.38.00.0
1001 01
1029 29
1030 01 00
1899 29 29
1900~1999 エラー
2000 N35.30.00.0/E139.38.30.0
2899 29 59
2900~2999 エラー
3000 N35.30.00.0/E139.39.00.0
4000 30
5000 40.00
7000 41
9000 42
10000 N35.30.00.0/E139.42.30.0
20000 47.30
29000 52.00
29899 52 29
30000 N35.30.30.0/E139.37.30.0
59899 52.29
60000 N35.31.00.0/E139.37.30.0
90000 N35.31.30.0/E139.37.30.0
99899 N35.31.59.0/E139.42.29.0
(以下略)
適当に略しているのは、どうやら「下3桁が900~999は欠番」「30秒単位きざみでコード変換してるらしい」ことがわかったため。
これって、技術公開云々以前に、しらみつぶしアタックで個人でもアルゴリズム/変換テーブルを割り出すことができると思うのだが...デンソーさん(マップコードの権利者)に訴えられたりしそうだから、誰も手を付けないのかなあ?
# この日記エントリそのものも権利侵害とやらで公開自粛をせまられたりしたらどうしよう(汗)
1:30 追記:
http://member.nifty.ne.jp/GURI/MM34.htm
マップコードとは、と直接デンソーに聞いたらしい強者発見。詳細はそのページを参照するとして、調べた情報とそのページの情報を自分なりにまとめてみる。
- 10桁からなるコードらしい。
- 0000/000/000 にコード分割する。地区/ブロック/ユニットの単位になる。
- 地区は1162に分類。900x900秒(15分あるいは 1/4度) 単位の大きさ。
- 地区0000は東京や横浜北部などに該当(東京は6桁以下、より)
- ブロックは地区を30x30、1/900に分割したもの。
30x30秒単位の大きさ。
- ユニットは1秒単位の大きさ。30メートル四方になるらしい。
- ユニットの 900~999 は欠番。
ということは、だ。0~999999 (除く下3桁900代) を片っ端から調査して法則を割り出し、地区コード0~1161を割り出せば、自前でMAPCODEを算出するプログラムが作れることになる。問題は、MAPCODE そのものが企業秘密かつ登録商標なので、ソフト作っても公開することはできないんだろうなということか。
利用規約確認中...ぎゃあ、もしもネットのサービス利用して得たMAPCODEの場合は、禁止事項に該当するっぽい。MAPCODE 取得に利用した Navin'You5 の契約書には「公然と知られていないものの秘密保持」以外では問題ないっぽい。白っぽいグレーと判断したけど、どうなんだろう?
インターネット有料サービス版:第8条
インターネット無料サービス版:第7条
http://guide.e-mapcode.com/business/business_005/b_p005_01.html に「大手カーナビメーカーへの技術開示は完了しております」とあることから、非公開技術っぽいのだ...
好奇心で、どんなテーブルを調べているのかしらみつぶしに調べてみることにした。すると、以下の表が得られた (MAPCODE 0~99999まで)
00000 N35.30.00.0/E139.37.30.0
1 31
+n 30+n
29 59
30 01 /E139.37.30.0
59 59
60 02 /E139.37.30.0
89 59
90 03 30
120 04 30
240 08 30
480 16 30
720 24 30
725 24 35
730 24 40
740 24 50
750 25 30
800 26 50
810 27 30
840 28 30
870 29 30
899 30 29
900~999(エラー)
1000 N35.30.00.0/E139.38.00.0
1001 01
1029 29
1030 01 00
1899 29 29
1900~1999 エラー
2000 N35.30.00.0/E139.38.30.0
2899 29 59
2900~2999 エラー
3000 N35.30.00.0/E139.39.00.0
4000 30
5000 40.00
7000 41
9000 42
10000 N35.30.00.0/E139.42.30.0
20000 47.30
29000 52.00
29899 52 29
30000 N35.30.30.0/E139.37.30.0
59899 52.29
60000 N35.31.00.0/E139.37.30.0
90000 N35.31.30.0/E139.37.30.0
99899 N35.31.59.0/E139.42.29.0
(以下略)
適当に略しているのは、どうやら「下3桁が900~999は欠番」「30秒単位きざみでコード変換してるらしい」ことがわかったため。
これって、技術公開云々以前に、しらみつぶしアタックで個人でもアルゴリズム/変換テーブルを割り出すことができると思うのだが...デンソーさん(マップコードの権利者)に訴えられたりしそうだから、誰も手を付けないのかなあ?
# この日記エントリそのものも権利侵害とやらで公開自粛をせまられたりしたらどうしよう(汗)
1:30 追記:
http://member.nifty.ne.jp/GURI/MM34.htm
マップコードとは、と直接デンソーに聞いたらしい強者発見。詳細はそのページを参照するとして、調べた情報とそのページの情報を自分なりにまとめてみる。
- 10桁からなるコードらしい。
- 0000/000/000 にコード分割する。地区/ブロック/ユニットの単位になる。
- 地区は1162に分類。900x900秒(15分あるいは 1/4度) 単位の大きさ。
- 地区0000は東京や横浜北部などに該当(東京は6桁以下、より)
- ブロックは地区を30x30、1/900に分割したもの。
30x30秒単位の大きさ。
- ユニットは1秒単位の大きさ。30メートル四方になるらしい。
- ユニットの 900~999 は欠番。
ということは、だ。0~999999 (除く下3桁900代) を片っ端から調査して法則を割り出し、地区コード0~1161を割り出せば、自前でMAPCODEを算出するプログラムが作れることになる。問題は、MAPCODE そのものが企業秘密かつ登録商標なので、ソフト作っても公開することはできないんだろうなということか。
利用規約確認中...ぎゃあ、もしもネットのサービス利用して得たMAPCODEの場合は、禁止事項に該当するっぽい。MAPCODE 取得に利用した Navin'You5 の契約書には「公然と知られていないものの秘密保持」以外では問題ないっぽい。白っぽいグレーと判断したけど、どうなんだろう?
インターネット有料サービス版:第8条
インターネット無料サービス版:第7条
公然と知られていないもの (スコア:2)