Student Name: __________________
Class and Section __________________
Total Points (20 pts) __________________
Due: Feb 22, 2019 before the class
Project: Convex Hull
CSCI 3230 Data Structures
Georgia Southern University
Problem Description:
Given a set of points, a convex hull is a smallest convex polygon that
encloses all these points, as shown in Figure 22.8a. A polygon is
convex if every line connecting two vertices is inside the polygon. For
example, the vertices v0, v1, v2, v3, v4, and v5 in Figure 23.5a form a
convex polygon, but not in Figure 22.8b, because the line that connects
v3 and v1 is not inside the polygon.
Figure 22.8
A convex hull is a smallest convex polygon that
contains a set of points.
Convex hull has many applications in game programming, pattern
recognition, and image processing. Before we introduce the algorithms,
it is helpful to get acquainted with the concept using an interactive
Step 1: Given a list of points S, let the points in S be labeled s0, s1,
…, sk. Select the rightmost lowest point h0 in S. As shown in Figure
22.9a, h0 is such a point. Add h0 to the convex hull H. H is a list
initially being empty. Let t0 be h0.
Step 2: Let t1 be s0.
For every point p in S
if p is on the right side of the direct line from t0 to t1 then
let t1 be p.