ポイントセット(つまり、頂点の3XN配列)が与えられていると、どのようにしてmatlabを使用して三角形分割できますか? ポイントセットはオブジェクトのある表面を表し、ノイズを含まないと仮定します。matlab:三角測量ポイントセット
EDIT: 選ばれた回答は、メッシュの四面体を作成するための方法を提供します。私は三角測量を探していた。凸形状の私の具体的なケースでは、凸包(回答のコメントに示唆されているようにconvhulln
を使用)は十分でした。
ポイントセット(つまり、頂点の3XN配列)が与えられていると、どのようにしてmatlabを使用して三角形分割できますか? ポイントセットはオブジェクトのある表面を表し、ノイズを含まないと仮定します。matlab:三角測量ポイントセット
EDIT: 選ばれた回答は、メッシュの四面体を作成するための方法を提供します。私は三角測量を探していた。凸形状の私の具体的なケースでは、凸包(回答のコメントに示唆されているようにconvhulln
を使用)は十分でした。
ドロネー三角形分割を作成するには、クラスDELAUNAYTRI使用することができます:あなたはcoordinates
は、バイ・3 N-(または2)の配列である
DT = DelaunayTri(coordinates);
を呼び出すことにより、三角測量のオブジェクトを作成
は、頂点座標。
、三角測量にアクセスプロットに
tri = DT.triangulation;
を呼び出し、例えばを呼び出すこと
patch('Vertices',DT.X,'Faces',DT.triangulation)
'???定義されていない関数または変数 'DelaunayTri'.' - これはmatlabのバージョン> 2008(これは私のものです)でのみ動作すると思います - これを投票しましたが、2008年に動作するこれを実現する明確なコードがありますか? – olamundo
@noam:少なくともあなたのバージョンには、同様の機能を提供する 'delanauy'(http://www.mathworks.com/help/techdoc/ref/delaunay.html)が含まれている必要があります。ありがとう – eat
@eat - delaunayは2Dで三角形分割します。すなわち、[X Y]座標ではなく[X Y]座標になります。 delaunay3もありますが、それは三角形分割ではなく四面体の分解を生成します(メッシュは表面だけでなく体積も持っていると仮定しています)。 – olamundo
使用delaunay3と[MATLABにおける内部3D散乱点の集合から表面をプロット](HTTPの三角1つの
可能重複に四面体メッシュを変換:// stackoverflowの.com/questions/5492806/plotting-a-surface-from-interior-3d-scatter-points-in-matlab) – gnovice