convex_hull


convex_hull, a MATLAB code which reads a file containing the coordinates of a set of points in 2D, computes the convex hull of the points, and displays it.

The MATLAB code convhull ( ) is used to create the image. For practical calculations, convhull ( ) should be used. This program is designed instead to demonstrate the ideas behind a simple version of the convex hull algorithm in 2D, known as the gift wrapping algorithm.

It is intended to augment this program by including a function which computes and displays the convex hull one edge at a time. This has the advantage of displaying the logic behind the calculation.

Usage:

convex_hull ( 'prefix' )
where

Licensing:

The computer code and data files described and made available on this web page are distributed under the MIT license

Languages:

convex_hull is available in a MATLAB version.

Related Data and Programs:

cg_lab_triangles, a MATLAB code which deals with computational geometry and triangles;

convex_hull_test

geometry, a MATLAB code which performs geometric calculations in 2, 3 and M dimensional space.

polygon, a dataset directory which contains examples of polygons.

triangulate, a MATLAB code which triangulates a (possibly nonconvex) polygon, based on a C program by Joseph ORourke.

Reference:

  1. Marc deBerg, Marc Krevald, Mark Overmars, Otfried Schwarzkopf,
    Computational Geometry,
    Springer, 2000,
    ISBN: 3-540-65620-0,
    LC: QA448.D38.C65.
  2. William Eddy,
    CONVEX, a dnew convex hull algorithm for planar sets,
    ACM Transactions on Mathematical Software,
    Volume 3, 1977, pages 411-412.
  3. Joseph ORourke,
    Computational Geometry in C,
    Second Edition,
    Cambridge, 1998,
    ISBN: 0521649765,
    LC: QA448.D38.

Source Code:


Last modified on 16 December 2018.