How to do Delaunay Triangulation and return an adjacency matrix?
6 次查看(过去 30 天)
显示 更早的评论
I want to get back Adjacency Matrix from Delaunay Triangulised object...How to do .....
0 个评论
采纳的回答
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)
0 个评论
更多回答(1 个)
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';
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Delaunay Triangulation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!