国土地理院 SVG 地図について

JavaScript オブジェクト化データから 18 倍体の SVG 地図を作る

国土地理院 SVG 地図を JavaScript オブジェクト化(以下略)

http://d.hatena.ne.jp/hfu/20070822/1187780360

この記事のときに作った JavaScript オブジェクトを使って,地図タイルをつなぎ合わせました:
18倍体の国土地理院 SVG 地図
国土地理院から提供されているデータ(を JavaScript オブジェクトにしたもの)を横に6枚,縦に3枚並べて,大きな地図を作っています。
前回と同じように,表示後にマウスをクリックするかキーボードのキーを押すと,適当な別の位置の地図を表示するようになっています。

注記が途切れてしまうという問題は解決しましたか?

この国土地理院 SVG 地図を見てみてください。「御在所ロー」と書かれています。しかし,ソースを見るとわかるのですが,この注記は本来「御在所ロープウエイ」です。(中略)
しかし,この注記は,隣のタイルであるこっちの国土地理院 SVG 地図には入ってくれないのです。

http://d.hatena.ne.jp/hfu/20070802

上記で指摘したような,タイル単体で表示した場合には途切れてしまう注記も,今回採用した方式ならば途切れません:

御在所ロープウェイの注記が途切れず表示される様子
18倍体の国土地理院 SVG 地図

これにより,

SVG仕様によれば、このような記述によって、地図タイルを張り合わせて(タイリングして)表示することが可能です。すなわち、W3Cが規定したオリジナルのSVG仕様の範囲で、タイリングされた地図の表示が可能です。(これは仕様上の話で、実際に可能かどうかはビューアの実装に依存します。例えば、FirefoxSVGビューアでは今のところまだ要素ではsvgの参照ができませんので、SVGのタイルの表示はできません。(中略))

http://blog.svg-map.com/2007/05/post_8a9a.html

で提案されているような,既存の実装がうまく対応できていない手法を使わなくても,Web ブラウザなら今すぐタイリングを実現する方法があることを示すことができました。
但し,18倍体の国土地理院 SVG 地図では,描画順番の都合で,注記が隣のタイルの他の描画要素の下に隠れてしまうという現象が発生していることが確認されています。これは JavaScript プログラムの工夫で解決できると思います。追って解決したいと思います。

その他,例えばどのような地図が見れますか。
柏崎市
18倍体の国土地理院 SVG 地図柏崎市の地図です。ニュースで取り上げられた「リケン工場」の位置がよくわかります。
空木岳
18倍体の国土地理院 SVG 地図
三俣蓮華岳
18倍体の国土地理院 SVG 地図
薬師岳
18倍体の国土地理院 SVG 地図
丹沢山
18倍体の国土地理院 SVG 地図
ブラウザ別動作確認状況

以下,すべて Mac OS X 上での確認結果になります。

Safari3
おおむね良好に表示します。印刷もできるようです。
Opera
おおむね良好に表示します。文字化けが見られます。印刷もできるようです。
Firefox
残念ながら処理がとても重いです。ブラウザクラッシャ?と思わせるほどかもしれません。印刷しようとしても,白紙しか出てきません。

Firefox については,Windows 版の方も残念ながらパフォーマンスは良くないようです。工夫の余地がありそうです。印刷時の挙動の違いは面白いところだと思います。