結果的にデータがひとつのタイルセットにコンポジットされる。変換されて出力される*1。文字列がそのままに書きだされるようにしてあり、Unicodeエスケープはされない。convert.rbは本エントリでこれから紹介する。これまで、ストリーム処理でMapReduce的にベクトルタイル変換する方法を実現するために、map.rbとreduce.rbを別々に作成してきたが、今回は小手先の工夫を加えて、一つのスクリプトでmapとreduceの両方が処理されるようにした。中におさめてしまっている。結果として、上記のようなコマンドラインで処理できるようにした。コマンドラインパラメータが適切でないときの処理は、現在のところほとんどまともでない。利用例は、例えば次の通りである。ソースコードはこの節で示す通りである。georuby-extする。それ以外には特段、特別なライブラリーは必要としない。存在しない環境では動かないかもしれない。処理系(Hadoop等)を入れることになるのではないだろうか。endend上記とまったく同じものを、gistにも置いておく。用いてサーブしてブラウザで確認すれば良い。表示されることになる。色塗り系ポリゴンファイルを変換してみて、上記の確認用HTMLを用い、問題ない位置に表示されることを確認している。呼び出しを適切にループの外に置くことにより、ナイーブな実装にくらべてそれなりの高速化を実現したりしている。所感やや未熟なところはあるが、読んでくださる方が読んでくだされば、基本的なアイディアはすべて伝わると考える。使って「普通のパソコン」でも使って頂ける形を追求する線と、速度を求めて並列分散処理を追求する線に分化する必要が出てくる。それより前に、処理速度の相場観を得るためにある程度の実戦経験を積む段階が必要になる。*1:状況が違う場合には、convert.rbの該当場所を書き換えること。*2:状況が違う場合には、index.htmlの該当場所を書き換えること。20:55ラインやポリゴンのデータもストリーム処理でベクトルタイルに変換する。2ついでreduce.rbを紹介し、実際にタイルを作成する。月別アーカイブはてなブログをはじめよう!hfuさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。