Geometric Objects and Transformations Geometric Entities Representation vs. Reference System Geometric ADT (Abstract Data Types)

Slides:



Advertisements
Similar presentations
Transformations Ed Angel Professor Emeritus of Computer Science
Advertisements

Informationsteknologi Wednesday, November 7, 2007Computer Graphics - Class 51 Today’s class Geometric objects and transformations.
Math 1Hofstra University – CSC171A1 Modeling Objects by Polygonal Approximations Define volumetric objects in terms of surfaces patches that surround the.
Math Foundations of CG Math 1 Hofstra University.
HCI 530 : Seminar (HCI) Damian Schofield. HCI 530: Seminar (HCI) Transforms –Two Dimensional –Three Dimensional The Graphics Pipeline.
2/7/2001Hofstra University – CSC290B1 Review: Math (Ch 4)
Modeling Objects by Polygonal Approximations
CS5500 Computer Graphics March 22, Angel: Interactive Computer Graphics 3E © Addison-Wesley 2002 Coordinate-Free Geometry When we learned simple.
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Geometry Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and.
Math Foundations of CG Math 1 Hofstra University.
Math Foundations of CG Math 1 Hofstra University.
Transformations. 2 Angel: Interactive Computer Graphics 3E © Addison-Wesley 2002 Coordinate-Free Geometry When we learned simple geometry, most of us.
Transformations CS4395: Computer Graphics 1 Mohan Sridharan Based on slides created by Edward Angel.
CHAPTER 7 Viewing and Transformations © 2008 Cengage Learning EMEA.
Mathematical Fundamentals
COS 397 Computer Graphics Svetla Boytcheva AUBG, Spring 2013.
Graphics CSE 581 – Interactive Computer Graphics Mathematics for Computer Graphics CSE 581 – Roger Crawfis (slides developed from Korea University slides)
Basics of Rendering Pipeline Based Rendering –Objects in the scene are rendered in a sequence of steps that form the Rendering Pipeline. Ray-Tracing –A.
Geometry CSC 2141 Introduction to Computer Graphics.
1 Geometry. 2 Objectives Introduce the elements of geometry ­Scalars ­Vectors ­Points Develop mathematical operations among them in a coordinate-free.
CS 480/680 Computer Graphics Representation Dr. Frederick C Harris, Jr. Fall 2012.
Geometric Transformation. So far…. We have been discussing the basic elements of geometric programming. We have discussed points, vectors and their operations.
1 Chapter 4 Geometric Objects and Transformation.
Transformations Dr. Amy Zhang.
CS 480/680 Computer Graphics Transformations Dr. Frederick C Harris, Jr.
Mathematical Foundations Sections A-1 to A-5 Some of the material in these slides may have been adapted from university of Virginia, MIT and Åbo Akademi.
Graphics Graphics Korea University kucg.korea.ac.kr Transformations 고려대학교 컴퓨터 그래픽스 연구실.
Geometric Transformations Jehee Lee Seoul National University.
Intro to 3D Models Angel Angel: Interactive Computer Graphics5E © Addison-Wesley
Mathematics for Graphics. 1 Objectives Introduce the elements of geometry  Scalars  Vectors  Points Develop mathematical operations among them in a.
Geometric Transformations
Transformations Angel Angel: Interactive Computer Graphics5E © Addison-Wesley
Geometric Objects and Transformation
Representation. Objectives Introduce concepts such as dimension and basis Introduce coordinate systems for representing vectors spaces and frames for.
16/5/ :47 UML Computer Graphics Conceptual Model Application Model Application Program Graphics System Output Devices Input Devices API Function.
C O M P U T E R G R A P H I C S Guoying Zhao 1 / 52 C O M P U T E R G R A P H I C S Guoying Zhao 1 / 52 Computer Graphics Three-Dimensional Graphics I.
Background Mathematics Aaron Bloomfield CS 445: Introduction to Graphics Fall 2006.
Geometric Objects and Transformations
CAP 4730 Computer Graphic Methods Prof. Roy Levow Chapter 4.
CSE Real Time Rendering Week 5. Slides(Some) Courtesy – E. Angel and D. Shreiner.
Geometric Transformations
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
Comparing Two Motions Jehee Lee Seoul National University.
1 Graphics CSCI 343, Fall 2015 Lecture 9 Geometric Objects.
Affine Geometry.
1 Representation. 2 Objectives Introduce concepts such as dimension and basis Introduce coordinate systems for representing vectors spaces and frames.
2/28/2016 CS 551 / 645: Introductory Computer Graphics Framebuffer Mathematical Foundations The Rendering Pipeline.
Computer Graphics I, Fall 2010 Geometry.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Computer Graphics I, Fall 2010 Transformations.
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Geometry.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Transformations Ed Angel Professor of Computer Science, Electrical and Computer Engineering,
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Graphics Graphics Korea University kucg.korea.ac.kr Geometric Primitives 고려대학교 컴퓨터 그래픽스 연구실.
Graphics Graphics Korea University kucg.korea.ac.kr Mathematics for Computer Graphics 고려대학교 컴퓨터 그래픽스 연구실.
Viewing. Classical Viewing Viewing requires three basic elements - One or more objects - A viewer with a projection surface - Projectors that go from.
4. Geometric Objects and Transformations
Modeling Transformations Mario Costa Sousa University of Calgary CPSC 453, Fall 2001 Mario Costa Sousa University of Calgary CPSC 453, Fall 2001.
Objectives Introduce standard transformations Introduce standard transformations Derive homogeneous coordinate transformation matrices Derive homogeneous.
Unit-4 Geometric Objects and Transformations- I
Math Fundamentals Maths revisit.
Geometric Transformations
Modeling 101 For the moment assume that all geometry consists of points, lines and faces Line: A segment between two endpoints Face: A planar area bounded.
CSC4820/6820 Computer Graphics Algorithms Ying Zhu Georgia State University Transformations.
Transformations 고려대학교 컴퓨터 그래픽스 연구실 kucg.korea.ac.kr.
Geometric Objects and Transformations (II)
PPT&Programs
Presentation transcript:

Geometric Objects and Transformations Geometric Entities Representation vs. Reference System Geometric ADT (Abstract Data Types)

Goals  Coordinate-free representation of objects  Homogeneous coordinates  Distinction of an object from its representation

Scalars, Points, and Vectors  Geometric View  Mathematical View –Vector –Affine Spaces  Computer-Science View  Other issues –Geometric ADTs –Lines –Affine Sums –Convexity –Dot and Cross Products –Planes

Geometric View  Point: a location in space  Scalar: real number  Vector: directed line segment Directed Line Segment That Connects Points

Identical Vectors

Combination of Directed Line Segments

A Dangerous Representation of a Vector

Mathematical View  Vector space: vectors and scalars  Operations –Scalar-vector multiplication –Vector-vector addition  Affine space: vector space + point –Vector-point addition (or point-point subtraction)  Euclidean space: affine space + measure of size or distance

Point-Point Subtraction

Computer-Science View  Scalars, points, and vectors as abstract data types (ADTs)  ADT –Object-oriented –Data and operations  Object declarations vector u,v; point p,q; scalar a,b; q = p + a * v;

Use of the Head-to-Tail Axiom - - -

Lines  The sum of a point and a vector (or subtraction of two points) leads to the notion of a line in an affine space.

Line in an Affine Space

Affine Operations  In an affine space, scalar-vector multiplication vector-vector addition are defined. However, point-point addition and scalar-point multiplication are not.  Affine addition has certain elements of the above two latter operations.

Affine Addition

Convexity  A convex object is one for which any point lying on the line segment connecting any two points in the object is also in the object. Line segment that connects two points

Convex Hull  Geometrically, a convex hull is the set of points that we form by stretching a tight fitting surface over the given set of points – shrink wrapping the points.

Dot Product and Projection u

Cross Product  Right-handed coordinate system

Formation of a Plane  Normal vector:

Three-Dimensional Primitives  Three features characterize three-dimensional objects that fit well with existing graphics hardware and software: –Objects described by surfaces and hollow – 2D primitives modeling 3D primitives; –Objects can be specified through vertices – efficient implementation; –The objects either are composed of or can be approximated by flat convex polygons.

Primitives in Three Dimensions

Vector Derived From Three Basis Vectors w

Coordinate Systems

Changes of Coordinate Systems

Changes of Coordinate Systems (2)

Rotation and Scaling of a Basis  The changes in basis leave the origin unchanged. We can use them to represent rotation and scaling of a set of basis vectors to derive another basis set.

Translation of a Basis  However, a simple translation of the origin, or change of frame cannot be represented in this way.  Homogeneous coordinates.

Example of Change of Representation

Homogeneous Coordinates  Represent frame change (translation)  Avoid point vs. vector confusion

Example of Change in Frames

Example (continued)

Camera and World Frames In OpenGL, the model-view matrix positions the world frame relative to the camera frame.

One Frame of Cube Animation Tasks: Modeling (8 vertices, 12 edges) Converting to the camera frame Clipping Projecting Removing hidden surfaces Rasterizing

Traversal of the Edges of a Polygon Counterclockwise: (0,3,2,1) (3,2,1,0) (2,1,0,3) (1,0,3,2) Outward facing

Vertex-List Representation of a Cube

Bilinear Interpolation

Projection of Polygon A polygon is first projected onto the two-dimensional plane and then filled with colors.

Scan-Line Interpolation OpenGL Approach

Transformation

Translation

Two-Dimensional Rotation

Rotation About a Fixed Point

Three-Dimensional Rotation

Non-Rigid Body Transformation

Uniform and Non-uniform Scaling

Effect of Scale Factor

Reflection

Shear

Computation of the Shear Matrix X’, y’

Application of Pipeline Transformation

Rotation of a Cube About Its Center

Rotation of a Cube About Its Center – Sequence of Transformation –

Rotation of a Cube About the z Axis

Rotation of a Cube About y Axis

Rotation of a Cube About The x Axis

Scene of Simple Objects Instance transformation Instead of defining each object and its size, position, orientation, we define the object types and create each instance with its size, position, orientation.

Instance Transformation

Rotation of a Cube About an Arbitrary Axis

Movement of The Fixed Point to Origin

Sequence of Rotations

Direction Angles

Computation of the x Rotation

Computation of the y Rotation

Current Transformation Matrix (CTM)

Model-View and Projection Matrices CTM: current transformation matrix

Symmetric Orientation of Cube  Start with a cube centered at the origin and aligned with the coordinate axes. Find a rotation matrix that will orient the cube symmetrically, as shown here.