Using Delaunay triangulation to approximate the area
2 次查看(过去 30 天)
显示 更早的评论
Hi,
I try to use delaunay triangulation but it also connected the boundary point
As you an see the X shape, thats what I wanted only, not the square too.
thank you
2 个评论
John D'Errico
2018-11-14
编辑:John D'Errico
2018-11-14
Why did you need to ask this question twice? As I showed the last time you asked the question, you cannot use a Delaunay triangulation to do what you want, at least not without understanding how to code an alpha shape.
madhan ravi
2018-11-14
please don‘t ask the same question twice , this discourages the answerers who answer the question
回答(1 个)
KSSV
2018-11-14
xy = rand(5000,2);
k = (sqrt(sum((xy - [1 .5]).^2,2)) < 0.3) | ...
(sqrt(sum((xy - [0 .5]).^2,2)) < 0.3) | ...
(sqrt(sum((xy - [0.5 1]).^2,2)) < 0.3) | ...
(sqrt(sum((xy - [0.5 0]).^2,2)) < 0.3);
xy(k,:) = [];
x = xy(:,1) ; y = xy(:,2) ;
idx = boundary(x,y) ; % gives boundary
plot(x,y,'.r')
hold on
plot(x(idx),y(idx),'b')
A = polyarea(x(idx),y(idx))
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!