An Introduction to Computational Geometry:
Polyhedra
Joseph S. B. Mitchell Stony Brook University
Chapter 6: Devadoss-O’Rourke
Polyhedra
Definition: Solid (closed) region whose boundary is a union of a finite number of (2D) convex polygons, subject to some conditions
2
Polyhedra
Definition: Solid (closed) region whose boundary is a union of a finite number of (2D) convex polygons, subject to some conditions: •
•
• 3
vertices (0-faces), edges (1-faces), faces/facets (2-faces)
Polyhedra
•
4
Polyhedra
5
Convex Polyhedra
6
Polyhedra: Combinatorics
7
More General Surfaces
Topological invariants of a surface S, homeomorphic to a polyhedron
8
Proof: By induction on genus
9
Example/Exercise
10
Platonic Solids: Regular Convex Polyhedra in 3D
Generalize the notion of a “regular polygon” (2D)
11
Euclid, Elements (Book XIII)
Platonic Solids: Regular Convex Polyhedra in 3D
12
Faces: regular k-gons Sum of k interior angles= Thus, each interior angle= Vertex degrees = m
Platonic Solids: Regular Convex Polyhedra in 3D
13
More General “Regular” Polyhedra
Allow facets that are different regular polygons, but still require vertices to “look the same”: Archimedean polyhedra (13 of them)
Example: truncated icosahedron (12 pentagons, 20 hexagons): “soccer ball”
14
More General “Regular” Polyhedra
Allow facets that are different regular polygons, and allow nonconvex: uniform polyhedra (75 of them)
Example: great dodecahedron
15
4D Polytopes
Project to 3D and show the “wire diagram”: Schlegel diagram
16
4D Regular Polytopes
6 regular 4D polytopes: • 4-simplex (“tetrahedron”)
• hypercube (“cube”)
• 4-orthoplex, or cross polytope (“octohedron”)
• 24-cell
• 120-cell
• 600-cell
17
d-D Regular Polytopes
3 regular d-dimensional polytopes, d≥5: • d-simplex (“tetrahedron”)
• hypercube (“cube”)
• d-orthoplex, or cross polytope (“octohedron”)
18
Convex Hull in 3D
19
Convex Hull in 3D
20
Data Structures
Winged-edge
Quad-edge
DCEL
21
Winged Edge Data Structure
22
e
e0-
e0+
e1- e1+
v0
f1
f0
v1
CH in Higher Dimensions
3D: Divide and conquer: • T(n) 2T(n/2) + O(n) • O(n log n)
• Output-sensitive: O(n log h) [Chan]
Higher dimensions: (d 4) • O(n d/2 ), which is worst-case OPT, since
point sets exist with h=(n d/2 ) • Output-sensitive: O((n+h) logd-2 h), for d=4,5
23
merge
h= O(n)
Qhull website
applet
http://www.qhull.org/http://www.cse.unsw.edu.au/~lambert/java/3d/hull.html?dimension=2D&model=Gift+Wrap&seed=45123&npoints=20&frame=1&labels=15
Convex Hull in 3D
24
Convex Hull in 3D
25