How to do Delaunay Triangulation and return an adjacency matrix?

4 ビュー (過去 30 日間)
Mohammad Bhat
Mohammad Bhat 2017 年 11 月 25 日
回答済み: Christine Tobler 2017 年 11 月 27 日
I want to get back Adjacency Matrix from Delaunay Triangulised object...How to do .....

採用された回答

Christine Tobler
Christine Tobler 2017 年 11 月 27 日
If your goal in computing the adjacency matrix is to construct a graph object, you can also do that (a bit) more directly:
% Construct tri as in Akira's code above
g = digraph(tri, tri(:, [2 3 1]));
A = adjacency(g);
A = A | A';
g = graph(A);
plot(g)

その他の回答 (1 件)

Akira Agata
Akira Agata 2017 年 11 月 27 日
By using the output variable of delaunay function, you can create adjacency matrix like:
% N: Number of points
N = 8;
x = rand(N,1);
y = rand(N,1);
% Delaunay triangulation
tri = delaunay(x,y);
% Calculate adjacency matrix
AdjMat = false(N);
for kk = 1:size(tri,1)
AdjMat(tri(kk,1), tri(kk,2)) = true;
AdjMat(tri(kk,2), tri(kk,3)) = true;
AdjMat(tri(kk,3), tri(kk,1)) = true;
end
AdjMat = AdjMat | AdjMat';

カテゴリ

Help Center および File ExchangeGeometric Transformation and Image Registration についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by