Does anybody know how to write a function which returns the coordinates of a convex hull of a list of certain points?

6 views (last 30 days)
Does anybody know how to write a function which returns the coordinates of a convex hull of a list of certain points?
I can't figure out how to use the convhull function, is it easy to write my own function to calculate the points of a convex hull?
What I'm looking to get:
input
List = [x1 y1; x2 y2; x3 y3; etc];
function that computes the x and y coordinates of the convex hull of List
output
convexHull = [xConv1 yConv1; xConv2 yConv2; etc];
Mathworks.png
Can someone please help me understand how to do this in code? I'm clueless..

Answers (2)

Fabio Freschi
Fabio Freschi on 3 Dec 2019
% your data
N = 20;
List = rand(N,2);
% convex hull (k is the pointer to the rows in List with the convex hull
k = convhull(List);
% convex hull points (counterclockwise)
convexHull = List(k,:);

Walter Roberson
Walter Roberson on 3 Dec 2019
convexHull = boundary(x, y, 0);

Categories

Find more on Bounding Regions in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by