geometric processing
play

Geometric Processing CS 148: Summer 2016 Introduction of Graphics - PowerPoint PPT Presentation

Geometric Processing CS 148: Summer 2016 Introduction of Graphics and Imaging Zahid Hossain https://en.wikipedia.org/wiki/Ray_tracing_%28graphics%29 Final Project Milestone 1: Get to the crux of the project by this milestone 5%


  1. Geometric Processing CS 148: Summer 2016 Introduction of Graphics and Imaging Zahid Hossain https://en.wikipedia.org/wiki/Ray_tracing_%28graphics%29

  2. Final Project • Milestone 1: • Get to the crux of the project by this milestone • 5% grade on the milestone (out of 20%) ! • Very short writeup – mainly screenshot/images • Final Project Report • Due 12 th Aug by 11:59PM. • Website (encouraged) or PDF 2 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  3. Primitive for Rendering Triangles 3 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  4. Primitive for Rendering Triangles 4 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  5. What Do We Want? Higher-level representation of curves and surfaces that can generate triangles easily. 5 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  6. Polygonal Mesh • Piecewise linear approximation of smooth surface • Error O(h 2 ) • Efficient Rendering 6 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  7. Triangle Mesh as Graph B A G = graph = < V, E > E F V = vertices = { A , B , C , …, K } D C E = edges = {( AB ), ( AE ), ( CD ), …} I H F = faces = {( ABE ), ( DHJG ), …} G K J 7 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  8. Triangle Meshes • Geometry: Vertex Positions • Connectivity: Edges, Triangles/Faces 8 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  9. Planar Graphs Planar Graph = Graph whose vertices and edges can be embedded in R 2 such that its edges do not intersect Planar Graph Plane Graph Straight Line Plane Graph B B B D D D A A A C C C 9 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  10. Triangulation Triangulation : Straight line plane graph where every face is a triangle . 10 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  11. Graph Embedding Embedding : G is embedded in R d , if each vertex is assigned a position in R d Embedded in R 2 Embedded in R 3 11 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  12. Vertex Degree/Valence B Vertex degree or valence = A number of incident edges E deg( A ) = 4 F D C deg( E ) = 5 I H G Regular mesh = all vertex degrees are equal K J 12 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  13. Mesh Vocabulary Mesh : straight-line graph embedded in R 3 Boundary edge : B C adjacent to exactly one face A L M D J Regular edge: I adjacent to exactly two faces H E K Singular edge : F G adjacent to more than two faces Closed mesh: mesh with no boundary edges 13 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  14. Topology [t uh -pol- uh -jee]: The study of geometric properties that remain invariant under certain transformations 14 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  15. Topology and Geometry Geometry: This vertex is at (x,y,z) Topology: These vertices are connected 15 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  16. Global Topology: Genus Genus: Half the maximal number of closed paths that do not disconnect the mesh (= the number of holes) Genus 0 Genus 1 Genus 2 16 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  17. Genus: Coffee Mug and Donut Both: Genus = 1 17 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  18. Euler-Poincaré formula 18 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  19. Euler-Poincaré formula 19 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  20. Euler-Poincaré formula 20 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  21. Special Case: Connected Planar Graph Count the outer ”face” too 21 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  22. Counting (Closed Mesh) 22 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  23. Counting (Closed Mesh) 23 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  24. Counting (Closed Mesh) Show that the average Degree/Valence of a large mesh is ~6 ! 24 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  25. 2D Manifold [rastərʌɪz]: Rasterize [rastərʌɪz] : A 2D manifold is a surface that when cut with a small sphere, always yields a disk To convert vector data to raster format. Disc-like neighborhood 25 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  26. Non-Manifold 26 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  27. Properties of Manifold • A edge connects exactly two faces • An edge connects exactly two vertices • A face consists of a ring of edges and vertices • A vertex consists of a ring of edges and vertices 27 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  28. Differential Geometry Looks like a plane Looks like a line 28 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  29. Mesh Data Structure 29 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  30. Shared Vertices Triangles (Vertex Indices) Vertex Coord List 2 0 1 (10,5,20) … … … (20,0,20) (18,10,20) … 30 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  31. Shared Vertices Triangles (Vertex Indices) Vertex Coord List 2 0 1 (10,5,20) … … … (20,0,20) (18,10,20) … • Connectivity • No neighborhood • Is v 1 adjacent to v 5 ? • Is f 2 adjacent to f 1 ? • Requires a full-pass over all faces 31 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  32. Data Structure Requirement • What it should support ? • Geometric Inquires • What are the vertices of face #2 ? • Is vertex A adjacent to vertex H ? • Which faces are adjacent to face #1 • Modifications • Add/remove a vertex/face • Vertex split, edge collapse 32 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  33. Data Structure Requirement • What it should support ? • Geometric Inquires • What are the vertices of face #2 ? • Is vertex A adjacent to vertex H ? • Which faces are adjacent to face #1 • Modifications • Add/remove a vertex/face • Vertex split, edge collapse There are many data structures 33 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  34. Halfedge Data Structure • Vertex Stores • Position • One outgoing halfedge (1) http://www.openmesh.org/Documentation/OpenMesh-Doc-Latest/a00016.html 34 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  35. Halfedge Data Structure • A Face Stores • 1 halfedge bounding to it (2) http://www.openmesh.org/Documentation/OpenMesh-Doc-Latest/a00016.html 35 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  36. Halfedge Data Structure • A halfedge stores • The vertex it points to (3) • The face is belongs to (4) • The next halfedge inside the face (5) • The opposite halfedge (6) • (optional) previous half edge in the face(7) http://www.openmesh.org/Documentation/OpenMesh-Doc-Latest/a00016.html 36 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  37. Halfedge: Neighborhood Traversal http://www.openmesh.org/media/Documentations/OpenMesh-2.0-Documentation/mesh_navigation.html 37 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  38. Data Structure: Adjacency Matrix Symmetric • 𝐵 " #,% : # paths of length n from 𝑤 # to 𝑤 % • Related to Laplacian ( Put −deg (𝑤 # ) in 𝐵(𝑗, 𝑗) ) for spectral analysis • Pros: • Can represent non-manifold meshes • Cons: • Non Connection between a vertex and its adjacent faces • 38 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  39. Subdivision 39 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  40. Subdivision Surfaces Mainly for mesh smoothing 40 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  41. Subdivision Rules: 1D Approximation Curve: Depends on the rule 41 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  42. Chaikin’s Corner Cutting Method 42 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

  43. Chaikin’s Corner Cutting Method http://www.idav.ucdavis.edu/education/CAGDNotes/Chaikins-Algorithm.pdf 43 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain

Recommend


More recommend