Mapboxについて


こちらの記事では、Mapboxの概要およびMapboxノードの詳細や、HoudiniでMapBoxノードを使用した事例についてご紹介します。

Mapboxについて

Mapboxは、様々な形式で地図データを閲覧およびダウンロードすることができます。MapBoxノードは、mapbox.com APIのラッパーを提供します。Houdiniでは、Mapboxのデータを元に、色や標高、そしてOpen Street Map (OSM) カーブを生成します。

Mapboxのアカウント登録

最初に、Mapboxのウェブサイトにアクセスします。トップページの[Start mapping for free]をクリックします。

アカウント登録画面に進みます。下画像の赤枠、氏名/メールアドレス/パスワードを入力します。入力後、[I agree to the Mapbox Terms of Service and Privacy Policy.]にチェックを入れ、[Get Started]ボタンをクリックします。

すると、登録したメールアドレス宛に確認メールが送信されます。

メールを展開して、[Verify my email]ボタンをクリックします。

以上で、アカウントの登録は完了です。アカウントを登録することで、Mapbox Studio beta版などを利用することができます。
次に、Houdiniで使用するMapboxノードのパラメーターについてご紹介します。

Mapboxノードのパラメーターについて

①Look Up

GUIを起動して、ダウンロードするマップ領域を選択します。

API Key

②Mapbox API Key

Mapboxが必要とするAPIキーです。mapbox.comでアカウントを登録します。ウェブサイトでキーをコピーして、フィールドに貼り付け、プリセットの保存または環境変数MAPBOX_APIとして保存します。

Base Settings

③Lat Lon Zoom

ダウンロードするマップ領域の座標です。[Look Up]ボタンで起動したGUIブラウザから自動的に入力することができます。また、手動で座標を設定することも可能です。

④Refresh

現在の座標からマップを再ダウンロードします。

⑤Offsets

緯度経度からのタイル単位のオフセットです。ダウンロードしたタイルを設定する際に役立ちます。

⑥Height Scale

height multiplierは、Mapboxデータから読み取られた地形の高さを人工的に増減することができます。

⑦Resolution Scale

Heightフィールドの解像度の乗数です。デフォルトは2048×2048です。Resolution Scaleを0.25に設定した場合、heightフィールドの解像度が512×512に減少します。また、Resolution Scaleを2に設定した場合、heightフィールドの解像度は4096×4096に設定されます。

⑧Terrain Mode

地形をHeight FieldまたはPolygonsに設定します。Polygonsの場合、計算処理は極めて遅くなります。

⑨Height Data Blur Strength

Height Mapにぼかしを適用して、ディテールを削減します。

OSM Settings

⑩Offset

OSMデータに適用される垂直なオフセットです。

⑪Snap To Terrain

OSMデータをheightフィールドに投影します。このパラメーターが無効な場合、OSMデータはフラットになります。

⑫Building Height From Terrain

OSMデータが存在する場合は、heightアトリビュートを設定します。(それ以外の場合は、地形に投影してheightアトリビュートを計算します)

⑬Color From Terrain

ダウンロードしたcolorマップを使用して、建物のプリミティブカラーを設定します。

⑭Resample OSM Curves

追加のポイントを建物の曲線に挿入します。

⑮Segment Length

建物に対して、追加のカーブポイントを生成するために使用される長さです。

Local Download Paths

⑯Download Path Color

ダウンロードしたcolorマップの場所と名前が表示されます。

⑰Download Path Height

ダウンロードしたheightマップの場所と名前が表示されます。

⑱Download Path OSM

ダウンロードしたOSMパスデータの場所と名前が表示されます。

Mapboxノードの使用例

最初に、Mapboxのウェブサイトにアクセスします。サイトでは、デフォルトで公開されたトークンがあります。今回は、そちらを使用してMapboxノードから地形データをダウンロードします。
サイトトップページの右上アイコンをクリックし、[Account]を選択します。

アカウントページに進み、Access tokens > Default public token のコピーボタンをクリックします。

次に、Houdiniに移動します。今回は、Houdini18.0.416を使用しています。
Houdiniを起動して、最初にSideFX Labsツールが適切に読み込まれていることを確認します。

Geometryネットワーク上でMapboxノードを作成します。

パラメーターからAPI key > Mapbox API keyに、ウェブサイトでコピーしたAPIキーをペーストします。ペーストした後、[Look Up]ボタンをクリックします。

ボタンをクリックすると、Mapbox – Select Locationウィンドウが展開されます。[Download]をクリックします。

ビューポート上に地形データがマッピングされたことが確認できます。
※ビューポート上で地形データが確認出来ない場合、キーボード[F]キーを押すことで地形が表示される場合があります。

Mapboxパラメーターを見ると、Lat Lon Zoom [X:0 Y:0 Z:0]が確認できます。

次に、Mapbox – Select Locationウィンドウでマップの範囲を指定する方法についてご紹介します。この状態で、パラメーターの[Look Up]を再度クリックします。

Mapbox – Select Locationウィンドウから作成するマップ範囲を指定します。こちらでは、日本列島付近を指定しています。範囲指定後、[Download]をクリックします。

パラメーターを確認すると、Lat Lon Zoom [X:37.6838 Y:139.175 Z:5]と値が変更されたことが確認できます。

■Mapbox 各パラメーターについて

Height Scaleを調整することで、地形に凹凸を付けることが出来ます。

Resolution Scaleを設定することで、凹凸のディテールを調整することが出来ます。
※数値を大きくした場合、解像度が高くなる為、計算処理に時間が掛かります。

下画像は、パラメーターのTerrain ModeHeight Field、Polygonsに変換した結果です。

Terrain ModeをPolygonsに変換した場合、ハイポリゴンでシーンが構成されていることがノード情報から確認できます。

地形データをダウンロードした場合、heightマップ、colorマップ、OSMファイルが自動生成されます。データの保存先は、パラメーターのLocal Download Pathsで確認することが出来ます。

下画像は、指定したマップから自動生成されたheight及びcolorマップの画像です。