Main Content

voronoiDiagram

Delaunay 三角形分割のボロノイ線図

説明

[V,r] = voronoiDiagram(DT) は、Delaunay 三角形分割内の点集合のボロノイ頂点 V とボロノイ領域 r を返します。r 内の各領域は、三角形分割内でその他すべての頂点よりもその頂点に近い、三角形分割の頂点を囲む点集合を表します。ボロノイ領域の集合がボロノイ線図を構成します。

すべて折りたたむ

2 次元 Delaunay 三角形分割のボロノイ頂点とボロノイ領域を計算します。

一連の 2 次元の点から Delaunay 三角形分割を作成します。

P = [ 0.5    0
      0      0.5
     -0.5   -0.5
     -0.2   -0.1
     -0.1    0.1
      0.1   -0.1
      0.1    0.1 ];
DT = delaunayTriangulation(P);

ボロノイ頂点とボロノイ領域を計算します。

[V,r] = voronoiDiagram(DT);

三角形分割の 3 番目の点に関連付けられたボロノイ領域の連結を表示します。

r{3}
ans = 1×4

     1     6    10     3

3 番目の領域の境界となるボロノイ頂点の座標を表示します。Inf 値は、領域に凸包上の点が含まれていることを示します。

V(r{3},:)
ans = 4×2

       Inf       Inf
    0.7000   -1.6500
   -0.0500   -0.5250
   -1.7500    0.7500

入力引数

すべて折りたたむ

Delaunay 三角形分割。スカラーの delaunayTriangulation オブジェクトとして指定します。

データ型: delaunayTriangulation

出力引数

すべて折りたたむ

ボロノイ頂点。2 列の行列 (2 次元) または 3 列の行列 (3 次元) として返されます。V の各行は、ボロノイ頂点の座標を含んでいます。

三角形分割の頂点の凸包上にある点に関連するボロノイ領域は非有界です。これらの領域のエッジを囲むと無限に広がります。V の最初の頂点は、その頂点が無限大の位置にあることを表し、Inf で示されます。

データ型: double

ボロノイ領域。cell 配列として返され、その要素には V 内のボロノイ頂点の連結が含まれます。r の各行の点は、Points プロパティ内の対応する行に関連する境界領域を形成します。

データ型: double

拡張機能

スレッドベースの環境
MATLAB® の backgroundPool を使用してバックグラウンドでコードを実行するか、Parallel Computing Toolbox™ の ThreadPool を使用してコードを高速化します。

バージョン履歴

R2013a で導入