Euler Characteristic - Oregon State...

67
Euler Characteristic

Transcript of Euler Characteristic - Oregon State...

Page 1: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Euler Characteristic

Page 2: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Face Classificationset_view(GL_RENDER);set_scene(GL_RENDER);

glGetDoublev(GL_MODELVIEW_MATRIX, modelview_matrix1);glGetDoublev(GL_PROJECTION_MATRIX, projection_matrix1);glGetIntegerv(GL_VIEWPORT, viewport1);

gluProject((GLdouble) poly->tlist[i]->center.entry[0], (GLdouble) poly->tlist[i]->center.entry[1], (GLdouble)poly->tlist[i]->center.entry[2], modelview_matrix1, projection_matrix1, viewport1, &face_norm_start.entry[0], &face_norm_start.entry[1], &face_norm_start.entry[2]);

Page 3: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Topics Today

• Platonic solids • Corner structure

Page 4: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Topics Today

• Platonic solids• Corner structure

Page 5: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Platonic Solids

shiftingsands.com.au/platonicsolids.html

Page 6: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Platonic Solids

shiftingsands.com.au/platonicsolids.html

Page 7: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Platonic Solids

davidf.faricy.net/polyhedra/Platonic_Solids.html

Page 8: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Platonic Solids

Page 9: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

Page 10: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

• All regular polyhedron must be convex.

Page 11: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

• All regular polyhedron must be convex.• When n=3?

Page 12: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

• All regular polyhedron must be convex.• When n=3?

– m=3: tetrahedron

Page 13: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

• All regular polyhedron must be convex.• When n=3?

– m=3: tetrahedron– m=4: octahedron

Page 14: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

• All regular polyhedron must be convex.• When n=3?

– m=3: tetrahedron– m=4: octahedron– m=5: icosahedron

Page 15: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

• All regular polyhedron must be convex.• When n=3? • When n=4?

Page 16: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

• All regular polyhedron must be convex.• When n=3? • When n=4?

– m=3, Hexahedron (cube)

Page 17: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

• All regular polyhedron must be convex.• When n=3? • When n=4?• When n=5?

Page 18: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

• All regular polyhedron must be convex.• When n=3? • When n=4?• When n=5?

– m=3: dodecahedron

Page 19: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

• For example, is it possible to have– m=3 and n=3 but f<>4?

Page 20: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Euler Characteristics

• L=V-E+F=2• Why?

Page 21: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse on Edges

Page 22: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

Page 23: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

Page 24: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

Page 25: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

Page 26: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

Page 27: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

Page 28: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

Page 29: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

Page 30: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

Page 31: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

Page 32: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

Page 33: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

• V=E for closed a simple planar curve.

Page 34: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

• V=E for closed a simple planar curve.• What about 3D surfaces?

Page 35: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Edges

• V=E for closed a simple planar curve.• What about 3D surfaces?

– Need to consider merging faces.

Page 36: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Elementary Collapse for Faces

Page 37: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

A B A B

E E

G GH H

F

C CD

Page 38: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

A B A B

E E

G GH H

F

C CD

Page 39: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

A B A B

E E

G GH H

F

C CD

Page 40: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

A B A B

E E

G GH H

F

C CD

Page 41: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

A B A B

E E

G GH H

F

C CD

Page 42: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

A B A B

E E

G GH H

F

C CD

Page 43: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

A B A B

E E

G GH H

F

C C

Page 44: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

A B A B

E E

G G

F

C C

Page 45: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

A B A B

G G

F

C C

Page 46: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

A B A B

F

C

Page 47: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

B B

F

Page 48: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

F

Page 49: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof of Euler’s Theorem on a Cube

FF

Page 50: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Another Look

A B A B

E E

G GH H

F

C CD

Page 51: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Another Look

A B A

E E

G GH H

F

C CD D

B

F

Page 52: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Dual of a Hexahedron

A

E

GH

CD

B

F

Page 53: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Dual of a Hexahedron

A

E

GH

CD

F

Page 54: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Dual of a Hexahedron

A

E

GH

CD

F

Page 55: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Dual of a Hexahedron

A

E

GH

CD

F

Page 56: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Dual of a Hexahedron

Page 57: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Dual Shape

• What is the dual of– Octahedron– Icosahedron– Dodecahedron– Tetrahedron

• Does the dual operation change the Euler characteristic?

• What operations will change it?

Page 58: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

• For example, is it possible to have– m=3 and n=3 but f<>4?

Page 59: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Are We Missing Anything?

• For example, is it possible to have– m=3 and n=3 but f<>4?

• No, we are not.

Page 60: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof

v-e+f=2n=number of edges in the polyongm=number of faces (edges) meeting at a

vertex

Page 61: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof

v-e+f=2n=number of edges in the polygonm=number of faces (edges) meeting at a

vertexWe have

2e=nf

Page 62: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof

v-e+f=2n=number of edges in the polygonm=number of faces (edges) meeting at a

vertexWe have

2e=nfmv=nf

Page 63: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof

v-e+f=22e=nfmv=nfWhen m=3, n=3 what is f?nf/m-nf/2+f=2

Page 64: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof

v-e+f=22e=nfmv=nfWhen m=3, n=3 what is f?nf/m-nf/2+f=23f/3-3f/2+f=2

Page 65: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof

v-e+f=22e=nfmv=nfWhen m=3, n=3 what is f?nf/m-nf/2+f=23f/3-3f/2+f=2f/2=2

Page 66: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Proof

v-e+f=22e=nfmv=nfWhen m=3, n=3 what is f?nf/m-nf/2+f=23f/3-3f/2+f=2f/2=2f=4

Page 67: Euler Characteristic - Oregon State Universityclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · 2017-09-21 · Euler Characteristic. Face Classification set_view(GL_RENDER);

Any questions?