2016年04月30日

libiglについてのメモ その3

いつの間にか4月が終わって5月ですね。困ったものです。月1回は更新しておきたいので小ネタです。チュートリアルの501〜503ですが、UV展開のようなサンプルがあります。ただ、サンプルのcamelhead以外では、boundary_loopの所でエラー終了してしまうので、凸包など、何か適用できる条件があるのかもしれません。

harmonic関数で、展開したUVの計算ができるようです。その際、5番目の引数で展開方法が選べるようです。
(1: harmonic function, 2: biharmonic, 3: triharmonic, ...)

igl::harmonic(V, F, bnd, bnd_uv, 1, V_uv);

実行結果

数値を変えて画像として出力した結果です。V_uvは各頂点のUV座標ですが、0〜1の範囲ではなく、今回の結果では-1.2〜1.1等中途半端な値になっていましたので、適切に0〜1の間にマッピングする必要がありそうです。


libigl_camelhead1.png libigl_camelhead2.png libigl_camelhead3.png
   1: harmonic      2: biharmonic      3: triharmonic

次はAOを計算してテクスチャに焼き込むテストでもするかもしれません。

[1] http://libigl.github.io/libigl/tutorial/tutorial.html
web拍手 by FC2
posted by シンドラー at 23:20 | Comment(0) | TrackBack(0) | OpenGL & Metasequoia | このブログの読者になる | 更新情報をチェックする