I am working through Computational Geometry in C 2nd Ed. and there is a brief talk about non-simple polygons before getting into simple polygons (which are the core of the field).

The book defines a polygon as:

  1. Adjacent segments share a common point
  2. Non-adjacent segments do not intersect

My first confusion came from definition (1) which seems redundant. Doesn't the term adjacent in geometry imply the existence of a common point? If so, wouldn't (1) be unnecessary?

My second confusion came from this shape:

(Credit to this post)

enter image description here

There are two "intersection points" in the center. I have labeled the way I saw the segments below:

enter image description here

Is the reason this violates (2) because s2, s7, and s9 (for example) all share a common point and thus "intersect" there? I am sort of confused because these would all be adjacent because they share a common vertex and so it would be okay (per the definition) for them to intersect like they are.

I wanted to make sure before pressing forward. After getting out of geometry a long time ago before I started my CS degree my knowledge has since degraded on the subject.

Any help would be great - thank you!

  • 2
    $\begingroup$ Perhaps it is easiest to think of a polygon as defined by a sequence of vertices $v_0,v_1,\ldots,v_{n-1}$ which then determine the edges $v_0 v_1, v_1 v_2, \ldots$. Then two successive edges share a vertex. The simplicity condition is that non-adjacent edges have an empty intersection. $\endgroup$ Jan 6, 2020 at 12:40

1 Answer 1


I will attempt to answer at least part of my own question because I think this was a simple problem of framing the polygon correctly. In just looking at a drawing it is unclear what segments exist and what points are used. Some labeling may make the problem more clear:

enter image description here

In the way that I labeled it in my question post using segments it's entirely possible that labeling was just a bunch of simple polygons that share a common point (there's no intersection, just an adjacency at the linking points in the middle - I think this is a correct interpretation but I'm not super sure yet).

This labeling above, chosen for clarity, makes it make far more sense. When we define a polygon we choose a series of points and connect them with segments. There are an infinite number of points in the plane we chose to "draw" the polygon on but these are the ones we chose. We also chose the segments.

So in the above drawing:

  • Points: p1, p2, p3, p4, p5
  • Segments: (p1, p2) = s1, (p2, p5) = s2, (p1, p3) = s3, (p3, p4) = s4, (p4, p5) = s5.

Now it's easier to reason about. This polygon satisfies (1) because each pair of segments we've created using the points in our polygon are adjacent (that is, sharing a common vertex). Examples include s1 -> s2, s3 -> s4, s2 -> s5.

The violation for rule (2) occurs in two places - the two crossing points in the center.

s2 and s3 do not share a common vertex listed in our chosen vertices. However, $S_1 \cap S_3 = {x}$ where x is the point in space (the plane we drew it in) where they cross. In order to satisfy rule (2) $S_1 \cap S_3 = \emptyset$. However, this is not the case. We can also see the same thing occurring between s4 and s2.

The only thing I am left confused with is I feel like my definition of "points we define as in the polygon" that I use to talk about intersection seems a little shaky and I would like to clean up my understanding a bit more there.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .