4

等高線を補間して 3D ビューを生成する方法を探しています。輪郭は画像に保存されず、輪郭の各点の座標は単に std::vector に保存されます。

凸輪郭の場合:

ここに画像の説明を入力ここに画像の説明を入力

、2つの最も近い輪郭の2つの最も近い点の間の距離を使用して、高さを簡単に計算(線形補間)できるようです(私は自分で確認しませんでした)。

私の輪郭は必ずしも凸状ではありません:

ここに画像の説明を入力ここに画像の説明を入力

、だからもっとトリッキーです...実際、どのようなアルゴリズムを使用できるかわかりません。

更新 : 2013 年 11 月 26 日

離散ラプラスの例を書き終えました:

ここに画像の説明を入力

ここでコードを取得できます

4

2 に答える 2

2

頂点と等高線を表す線分の制約付き Delaunay Triangulationを生成し、各頂点で定義された高さを Z 座標として使用できます。

得られた三角形分割は、他の三角形スープと同じようにレンダリングできます。

名前にかかわらず、TetGenを使用して三角形分割を生成できますが、セットアップには少し手間がかかります。

于 2013-11-20T21:09:06.920 に答える