2017-02-22 7 views
1

Three.jsを使用して3次元モデルに注釈を付けるツールを構築しています。私は、ユーザーがサーフェスの輪郭に正確に従うモデル上に線を描くことができるようにしたい。たとえば、人の顔のモデルに線を引いて、鼻の両側にポイントを置くと、線は鼻の上を通過し、鼻の上を通過しません。表面に適合する3Dモデル上に線を描画します。

私はテクスチャ上に線を描くことでこれを行うことができますが、線をクリック可能にしたいので、ヒット検出を自分で実装する必要があります。私はThree.jsのラインオブジェクトとしてそれをやりたいです。モデルの表面上の2つの点の間の面を見つける簡単な方法はありますか?

答えて

3

私は思っていたよりも簡単になった:私はモデルを顔のグラフに変換しました。ここで、各顔はノードであり、ノードは隣の他の顔と繋がっていました。それから、ユーザーがクリックした顔を見つけ、最短パスアルゴリズム(私の場合はDijkstra's)を使って各ノード間の顔を見つけるのは簡単なことでした。

+0

結果を見るのが面白いかもしれないので、画像を共有できますか? – prisoner849

関連する問題