2014年4月11日金曜日

SketchUp で 地理院地図3D

「日本全国、3Dプリンタで立体模型に」(国土地理院:2014/03/19発表)
・・ということで、地理院地図からダウンロード可能となった3D地形データを SketchUp に取込んでみました。

そもそも SketchUp は GoogleMap/Earth との連携で航空写真画像をテクスチャとして貼付けた地形を3Dメッシュサーフェスとして取込む事が可能ですが、その仕様上、1回の操作で取込可能な範囲は約2km四方です。より広範囲のモデルデータが必要となる場合は複数回範囲を変えて取込みを繰り返す必要がありましたが、今回の公開で、広範囲の場合などは、「地理院地図3D」を利用するという使い分けができそうです。
(※地図の縮尺でいうと、「地理院地図3D」は1/25000〜さらに広範囲となる縮尺、「GoogleMap/Earth」は1/2500レベルという感覚でしょうか・・。)

地理院地図3D」にアクセスすると、説明があり、ページ右上の「3Dで見る」というボタンが入口です。(ブラウザの設定で WebGL を有効にする必要あり)

表示されたMAPを拡大・縮小・移動して、取込みたいエリアを選びます。正方形にクリッピングされたエリアを中心に縮尺に応じたメッシュ構成で3D化される様なので、範囲が決まったところで画面下部にある「この地図を3Dで表示」ボタンをクリックします。

ポップアップしたウィンドウで3D化された地形データが表示され、拡大・縮小・回転が可能です。画面下部には、表示されているモデルにアクセスする為の「URLを表示」するボタンと(上のモデルを表示するにはココをクリック)「3Dデータをダウンロードする」ボタンがあります。

ダウンロード可能な3Dデータは3種類用意されています。それぞれ説明があり SketchUp に取込み可能なのは *.STL ですが、SketchUp 上でモデルに地図の画像をテクスチャとして貼りたい場合は、 *.STL だけではなく、VRML か WebGL もダウンロードしておきます。地形データに対応した範囲の地図のテクスチャーデータ (texture.png) が入っています。

[ファイル] メニュー [インポート] で [形式] は[STereo Lithography Files (*.stl)] を選び、SketchUpに ダウンロードした dem.stl を取込みます。(取込み時の [オプション] で、[Merge coplaner faces] にチェックを入れた場合は、同一平面がマージされます。)

取込み後は、高さ方向を示す座標軸が SketchUp と違っている様なので全体を原点中心として回転させます。マージしなかった場合は、地表面だけではなく、厚みを構成する他の面(側面4面と底面)も全て3角形に分割されてしまっていたりするので、ここでは側面は一旦削除してしまい、あとで地表面にテクスチャをマッピングする為のガイドとなる底面を1枚の面となるように、適宜修正します。

取込んだデータはそのままではメッシュ毎に3角形 (またはマージされた面毎) に分割された状態なので、地図のテクスチャを貼る為には全体として1枚のフェースとなるようにする必要があります。

ココで役立つ PlugIn が Fredo6:HoverSelect です。(要 LibFredo6 ライブラリ)
対象となるジオメトリ[エッジと面]を全て選択した状態で HoverSelect コマンドを実行するだけで、選択したジオメトリのうち [エッジ] のみを選択した状態にしてくれます。
3角形 (またはマージされた面) を構成するエッジのみを選択して、マウスは[エッジ]の上で、コンテクストメニュー(右クリック)から [エッジをソフトニング/スムージング]を選び、地形の状況をみながら、法線間の角度をスライダでエッジのラインが全てスムージングされるように調整します。
これで地表面は1枚の面となったので、テクスチャを張り込み可能となりました。テクスチャの位置合わせをしなくて済むように、地表面の垂直方向、真上に1枚底面をコピーして表裏を反転、そこに先にダウンロードした地図データ (texture.png) を取込み、テクスチャサイズを面の対角線いっぱいに貼付けます。張り込んだ後は、さらに、テクスチャ面を右クリックして [テクスチャ] のコンテクストメニューで、[投影]にチェックを入れておく事を忘れずに・・(地表面に垂直投影するためです。)
この状態で、あとは[ペイント]ツールで、テクスチャーを[Command]キーを押しながらコピーして、地表面にペーストして完成です。

3Dだけではなく、「地理院地図」も進化してきており、全国はカバーされていませんが場所によってはGoogleMap/Earth より新しい/高解像度な航空写真もあるので、今回のモデルにテクスチャとして張り込んだ地図データと同じ範囲の写真データをスクリーンショットを組み合わせて作る事で、GoogleMap/Earth と同じ様な、航空写真を張り込んだモデルとすることも可能です。
地理院地図の「地図・空中写真」タブ「写真」ー「最新」をチェック