*[[球面に地球の画像を貼る]] [#a5bf44e5]

可視化ソフトウェア[[ParaView:http://www.paraview.org]]で、地球を表現するには、テキスチャーマッピングの機能を使用して、球面に地球の画像を貼りつけます。

この記事は、
[[Using an earth texture as background:https://www.dkrz.de/up/services/analysis/visualization/sw/paraview/tutorial/earth-texture]]を参考にしています。

**地球画像の用意 [#bcfa2480]

まずは、地球の画像を用意します。

[[NASA visible earth:https://visibleearth.nasa.gov/collection/1484/blue-marble]]から、NASA Blue Marble画像をダウンロードします。

例えば、
December, Blue Marble Next Generation w/ Topography and Bathymetry
の5400 x 2700 2MB-JPEGをダウンロードします。

この画像をそのまま、球面に貼ると上手くいきません。そのため、Imagemagicなどで、以下の加工を画像に施します。

-垂直方向のフリップ
-画像中央で切断し、左右2枚の画像を作成し、2画像の位置を交換
-2画像をマージして底面のノイズを除去

Imagemagickでのコマンドは以下の通りです。

  convert -flip -crop 50%x100% filename.png converted.png
  convert converted-1.png converted-0.png +append outfile.png

#ref(converted_earth.png,center,nowrap,50%, 変換前後);

**球面の作成 [#l2676831]

次に、ParaViewで球面を作成します。

  Sources > Sphere

- 詳細設定に切り替え
- 半径:1, Theta ResolutionとPhi Resolution:50、Start Theta: 1e-5
- Applyボタン

  
#ref(sphere.png,center,nowrap,40%, sphere);

球面半径は、所望の値を入れても問題ありません。ただし、地球の画像を貼ったときにつなぎ目がおかしいくなるときは、Start Thetaの値を調整する必要があります。

**テキスチャー座標の計算 [#d0f45dc9]

次は、作成した球面に画像を貼りつけます。

球面に画像を貼りつけるには、画像を貼るための座標が必要です。これを計算するには、"Texture Map To Sphere"を使用します。

  Filters > Alphabetical > Texture Map to Sphere

- Prevent Seamをオフ
- Apply

#ref(texture_map_to_sphere.png,center,nowrap,40%, texture_map_to_sphere);

**地球画像の貼り付け [#c189d340]

最後に、画像を球面に貼り付けます。

Pipeline Browserで、上記で作成したTextureMaptoSphere1を選択し、
"Propoerties"タブに、ある"texture"から、作成した地球の画像を"Load"します。

こうすると、以下のように球面に地球が貼られます。

#ref(texture.png,center,nowrap,40%, texture);

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS