CGT 581 G Geometric Modeling Surfaces (part I)

Similar documents
CGT 581 G Geometric Modeling Curves

Advanced Computer Graphics

Physically-Based Modeling and Animation. University of Missouri at Columbia

CMSC427 Final Practice v2 Fall 2017

From curves to surfaces. Parametric surfaces and solid modeling. Extrusions. Surfaces of revolution. So far have discussed spline curves in 2D

CS 465 Program 4: Modeller

CS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15

Solve 3-D problems using Pythagoras theorem and trigonometric ratios (A*) Solve more complex 2-D problems using Pythagoras theorem & trigonometry (A)

Central issues in modelling

CHAPTER 1 Graphics Systems and Models 3

2D Drawing Primitives

Computer Graphics. Prof. Feng Liu. Fall /21/2016

Computer Graphics 1. Chapter 2 (May 19th, 2011, 2-4pm): 3D Modeling. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2011

Chapter 4-3D Modeling

GLOBAL EDITION. Interactive Computer Graphics. A Top-Down Approach with WebGL SEVENTH EDITION. Edward Angel Dave Shreiner

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into

GEOMETRIC LIBRARY. Maharavo Randrianarivony

MATH 104 First Midterm Exam - Fall (d) A solid has as its base the region in the xy-plane the region between the curve y = 1 x2

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL

2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT

9. Three Dimensional Object Representations

Computer Graphics CS 543 Lecture 13a Curves, Tesselation/Geometry Shaders & Level of Detail

Geometry Vocabulary. acute angle-an angle measuring less than 90 degrees

acute angle An angle with a measure less than that of a right angle. Houghton Mifflin Co. 2 Grade 5 Unit 6

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS

1. Revision Description Reflect and Review Teasers Recall basics of geometrical shapes.

Constructive Solid Geometry and Procedural Modeling. Stelian Coros

4: Polygons and pixels

Curves D.A. Forsyth, with slides from John Hart

Direct Rendering of Trimmed NURBS Surfaces

We have set up our axioms to deal with the geometry of space but have not yet developed these ideas much. Let s redress that imbalance.

3D Modeling & Sketchup

Shading. Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller/Fuhrmann

Mrs. Daniel s Geometry Vocab List

Coordinate Transformations in Advanced Calculus

CS 563 Advanced Topics in Computer Graphics QSplat. by Matt Maziarz

Birkdale High School - Higher Scheme of Work

OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS

SHAPE AND STRUCTURE. Shape and Structure. An explanation of Mathematical terminology

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Surface Mesh Generation

Geometry Primitives. Computer Science Department University of Malta. Sandro Spina Computer Graphics and Simulation Group. CGSG Geometry Primitives

PARAMETERIZATIONS OF PLANE CURVES

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4

Curves & Surfaces. Last Time? Progressive Meshes. Selective Refinement. Adjacency Data Structures. Mesh Simplification. Mesh Simplification

Modeling 3D Objects: Part 2

Indiana State Math Contest Geometry

GEOMETRY AND GRAPHICS EXAMPLES AND EXERCISES. Preface

Three-Dimensional Shapes

Introduction Ray tracing basics Advanced topics (shading) Advanced topics (geometry) Graphics 2010/2011, 4th quarter. Lecture 11: Ray tracing

Until now we have worked with flat entities such as lines and flat polygons. Fit well with graphics hardware Mathematically simple

Homework #2. Shading, Projections, Texture Mapping, Ray Tracing, and Bezier Curves

CSCI 4620/8626. Coordinate Reference Frames

Spring 2012 Final. CS184 - Foundations of Computer Graphics. University of California at Berkeley

High School Geometry

11/1/13. Polygon Meshes and Implicit Surfaces. Shape Representations. Polygon Models in OpenGL. Modeling Complex Shapes

Section 7.2 Volume: The Disk Method

CSE 167: Introduction to Computer Graphics Lecture 12: Bézier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013

Ray Casting of Trimmed NURBS Surfaces on the GPU

CSE 167: Introduction to Computer Graphics Lecture #11: Bezier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016

Complexity Reduction of Catmull-Clark/Loop Subdivision Surfaces

Geometric Modeling Mortenson Chapter 11. Complex Model Construction

Introduction to 2D and 3D Computer Graphics. Realistic Rendering. -- Solids Modeling --

The exam begins at 5:10pm and ends at 8:00pm. You must turn your exam in when time is announced or risk not having it accepted.

CSC418 / CSCD18 / CSC2504

Supporting planning for shape, space and measures in Key Stage 4: objectives and key indicators

Topological Issues in Hexahedral Meshing

Topics in Analytic Geometry Part II

Information Coding / Computer Graphics, ISY, LiTH. Splines

Polygon Meshes and Implicit Surfaces

Basic shapes. Polygon Meshes. Cube - raw triangles. Other things to do with scene graphs

Polygon Meshes and Implicit Surfaces

USING THE DEFINITE INTEGRAL

Chapter 3: Polynomials. When greeted with a power of a power, multiply the two powers. (x 2 ) 3 = x 6

Data Representation in Visualisation

Clipping. CSC 7443: Scientific Information Visualization

Class Generated Review Sheet for Math 213 Final

Math 231E, Lecture 34. Polar Coordinates and Polar Parametric Equations

CSC418 / CSCD18 / CSC2504

Maya Lesson 6 Screwdriver Notes & Assessment

CS452/552; EE465/505. Clipping & Scan Conversion

Modeling. Simulating the Everyday World

Computergrafik. Matthias Zwicker. Herbst 2010

CS602 MCQ,s for midterm paper with reference solved by Shahid

CS451Real-time Rendering Pipeline

Course Number: Course Title: Geometry

The radius for a regular polygon is the same as the radius of the circumscribed circle.

Engineering Drawing II

Solid models and fractals

polygon meshes polygon meshes representation

Ray scene intersections

CS Object Representation. Aditi Majumder, CS 112 Slide 1

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

2 nd Semester Final Exam Review

3D Modeling. Visualization Chapter 4. Exercises

MATHEMATICS. Y4 Understanding shape Visualise, describe and classify 3-D and 2-D shapes. Equipment

3D Rendering and Ray Casting

How shapes are represented in 3D Graphics. Aims and objectives By the end of the lecture you will be able to describe

Polygonization of Implicit Surfaces

Transcription:

CGT 581 G Geometric Modeling Surfaces (part I) Bedrich Benes, Ph.D. Purdue University Department of Computer Graphics Technology Polygonal Representation The common representation is a mesh of triangles product of a conversion from different representation (e.g., CSG, NURBS) or from external data sources (Time of Flight cameras, image reconstruction, etc.) Polygonal Representation Tessellation is a process of converting a complex object into simpler primitives such as triangles or quadrilaterals Polygonal Representation Triangles are preferred, they are simplexes (always flat & convex) (a quadrilateral may be concave or non planar) Polygonal meshes are large so techniques for their simplification are necessary can be lossless or lossy Adaptive tessellation Can cause problems when rendered 1

Triangles Triangle Strips Triangles Triangle strip Triangle fan 4 2 1 3 4 2 1 3 2 3 5 5 4 6 6 less than three vertices per! a sequential triangle strip is defined by an ordered vertex list 0, 1,, the i th triangle 1 1 the vertex list includes 2triangles average # of vertices per triangle 1 5 Triangle Strips Triangle Strips vs. Triangle Fans average # of vertices per triangle 3 1 / 1 2/ where is the length of the list lim 1 e.g., 100, 1.02 (wow!) we save 2/3 of space the same stands for triangle fans some providers (NVIDA) suggest using strips they are better optimized 2

Generalized Triangle Strips the sequence of is not strictly sequential to use them, we need a vertex cache or the swap operation 0,1,2,3, 4,5,6 The vertex must be resend 0,1,2,3,2,4,5,6 Triangle Fans a general convex polygon can be converted into a single fan or a simple strip is the same as for strips (the same startup) any fan can be converted into generalized strip (repeat the center or many swaps), but not vice versa Tessellation Tessellation is a process of converting a complex object into simpler primitives such as triangles or quadrilaterals Tessellation is the most frequently wrongly spelled word in Computer Graphics Sphere Tessellation (Approach 1) Stacks and Slices: not a good approach: generates different Δ generates long Δ involves cos and sin that are usually slow 3

Sphere Tessellation (Approach 1) Parametric equation of sphere Sphere Tessellation (Approach 1) Leads to a tessellation:,,,,,, =,,, sin,,, mδ Δ, Δ 2Δ, Δ Δ, Δ, Δ Δ, Δ 2Δ, Δ Δ, Δ, Δ, 2Δ, Δ, Sphere Tessellation (Approach 1) Results: Sphere Tessellation (Approach 1) Summary: Easy to implement Easy to control (Δ, Δ Not very efficient large and ugly triangles Uses trigonometric functions (can be slow) 4

Circle Tessellation (Approach 2) Recursive Subdivision (let s start with a circle) Two vertices on the unit circle Find the midpoint Move it on the unit circle Do it for all line segments Circle Tessellation (Approach 2) All vertices have unit distance from the origin Algorithm: Subdivide(Vert3d, Vert3d, GLuint ) Input: Vertices,, number of steps Output: 2vertices on the circle 1) if (n==0) return and 2) find 3) Normalize( ); //this will put it on the unit circle 4) Subdivide(a, mid, n-1); 5) Subdivide(mid, b, n-1); Circle Tessellation (Approach 2) Circle Tessellation (Approach 2) Considerations: The input vertices must already be on the unit circle It needs to be rendered as line segments as the algorithm does not provide a continuous polyline 5

Sphere Tessellation (Approach 2) Now this generalizes to the sphere Sphere Tessellation (Approach 2) 2 Each sub triangle has vertices as given here left top mid right Sphere Tessellation (Approach 2) Initial position of the triangles: two tetrahedra Sphere Tessellation (Approach 2) Top view: 120 120 6

Cone Tessellation Circle to point ruled surface make tessallation of a circle and connect each line with the apex can be rendered as a triangle fan Cone Tessellation General Ruled Surface Tessellation Cylinder is a special case of a ruled surface Defined by two curves and Assuming both are parameterized 0 1 The resulting surface is, 1 Note, the connecting curves are line segments General Ruled Surface Tessellation Example (sin to line):, 0,0, t, sin 2π,1 Gives, 1, 0,0 1, 1 2, 1, 1 sin 2, 1 7

General Ruled Surface Tessellation Example (sin to line) General Ruled Surface Tessellation and can be anything Two lines quadrilateral Circle and circle cylinder Circle and point cone Quad and quad cube etc. General Ruled Surface Tessellation Surface of Revolution Surface of revolution is given by a curve rotated around an axis Can we generalize the connecting curve? 8

Surface of Revolution Surface of Revolution Assuming the axis of rotation is The defined curve is The surface, is a set of co centric circles around the axis, sin 2,, cos 2 ( modifies the radius of a circle at level ) Surface of Revolution can be anything Line parallel to axis of rotation cylinder Line from the origin cone Half circle sphere Surface of Revolution Sphere as a surface of revolution We need radius of the sphere as the function of a single parameter We need to reparametrize to be 1,1 1 2 9

Readings Real Time Rendering 2nd edition, Moller, T.A., Haines, E., 481 555 Geometric Modeling, 2nd edition, M. E. Mortenson Edward Engel Interactive Computer Graphics: A Top Down Approach with Shader Based OpenGL (6th Edition) 10