Hi, I am finding area enclosed by convex hull using delayunaytriangulation,,,i have pasted the code...I just need someone to tell me..the area i got is right according to my code?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
L K
el 20 de Mzo. de 2017
Comentada: L K
el 21 de Mzo. de 2017
theta1=[88,89,90,91,92,94,96,94,90,89,-100,-102,-104,-105,-104,-102,-101,-100];
radius1=[5,7,11,17,26,39,46,44,32,3,0,18,34,32,33,29,28,20];
%subplot(211)
theta_rad=theta1*pi/180;
polar(theta_rad, radius1, 'b*');
hold on;
[x, y] = pol2cart(theta_rad, radius1);
k = convhull(x, y);
xch = x(k);
ych = y(k);
[thetaCH1, rhoCH1] = cart2pol(xch, ych);
%subplot(212)
polar(thetaCH1, rhoCH1, 'ro-');
DT = delaunayTriangulation(theta_rad(:),radius1(:));
[U,v]=convexHull(DT);
i got v=130.8648.... is it the right way to do it ?
0 comentarios
Respuesta aceptada
John D'Errico
el 20 de Mzo. de 2017
NO. You cannot compute a convex hull of your points when they are represented in polar coordinates!!!!! If you did, the result will be nonsensical. And the area it would compute will certainly be nonsense.
Instead, convert the polar coordinates to cartesian coordinates, then compute the area of the convex hull in Cartesian coordiantes:
DT = delaunayTriangulation(x(:),y(:));
[H,A] = convexHull(DT);
A =
390.270316856299
8 comentarios
Image Analyst
el 21 de Mzo. de 2017
Another quirk of polyarea is that if the perimeter overlaps, you can have a negative area there. For example, the area of a perfect bowtie shape is zero according to polyarea.
Más respuestas (0)
Ver también
Categorías
Más información sobre Elementary Polygons en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!