2017-12-14 10 views
1

に相当する座標変換(フロントに、バック、左、右、上、下)は、以下のように:は私が6-画像キューブマップの座標のセット持っているキューブマップは、正距円筒

[ [160, 314], Front; [253, 231], Front; [345, 273], Left; [347, 92], Bottom; ... ] 

各画像は500x500pあり、 [0、0]は左上隅です。 2500x1250pイメージの場合、これらの座標を等価な等価の座標に変換したいと考えています。レイアウトは、このようなものです:私は、全体の画像を変換するために座標のセットだけを必要としない

cubemap

。特定のピクセルに直接的な変換はありますか?

+1

を使用すると、共通のXYZの原点からの相対座標を投稿していますか?等角とは何ですか?これらのことを説明すると、誰かが助けてくれるチャンスが増えます。 – Ripi2

答えて

1
  1. イメージを変換+ 2Dは

    (0,0,0)が意図したとおりにこの作業を行うためにあなたのキューブマップの中心である3次元正規化ベクトルに調整します。したがって、基本的に座標にスケールされたU,V方向ベクトルをテクスチャポイント(0,0)の3D位置に追加する必要があります。方向ベクトルは単位ベクトルであり、各軸には3つのオプション{-1, 0 , +1}があり、各ベクトルの軸座標は1つのみがゼロではありません。キューブマップの各辺には1つの組み合わせがあります。どちらが特定のものを共有していないとしても知らないあなたの慣習に依存します。

  2. 使用Cartesian to spherical座標系の変換

    あなたは

  3. があなたの2Dテクスチャに球状の角度を変えるだけで二つの角度の半径を...必要

    これを調整していませんステップは2Dテクスチャのジオメトリに依存します。最も簡単なのは四角形のテクスチャです(私はそれが等角度であると思います)が、そこには特定の機能があり、それぞれ異なる変換が必要な他のマッピングがあります。ここではいくつかの例:あなただけのテクスチャ解像度サイズに球状の角度をスケールする矩形テクスチャの場合

    ...

    U = lon * Usize/(2*Pi) 
    V = (lat+(Pi/2)) * Vsize/Pi 
    

    プラス/マイナスいくつかのオリエンテーションあなたの座標系に合った看板。

btw。ちょうどこの(おそらくQAを複製)が見つかりました:

+0

解決策が正しく説明されています。 私のコンベンションは[this one](https://upload.wikimedia)のようです。org/wikipedia/commons/b/b4/Skybox_example.png)、私は既にそれに単位ベクトルを適用しました。 最後の_V_は、ピクセル[0,0]が左上隅にあるか、または左下にあるかによっても異なります。この場合、それは私のために働く、ありがとう。 – Finfa811

+0

@ Finfa811喜んで助けになるでしょう。あなたの質問に画像を追加しました(リンクを '![bla bla](リンク)'の前に '!'を追加するだけで、画像であることを伝えることができます... – Spektre

関連する問題