15-462: Computer Graphics
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Quaternions and Cli Ord Geometric Algebras
Quaternions and Cliord Geometric Algebras Robert Benjamin Easter First Draft Edition (v1) (c) copyright 2015, Robert Benjamin Easter, all rights reserved. Preface As a rst rough draft that has been put together very quickly, this book is likely to contain errata and disorganization. The references list and inline citations are very incompete, so the reader should search around for more references. I do not claim to be the inventor of any of the mathematics found here. However, some parts of this book may be considered new in some sense and were in small parts my own original research. Much of the contents was originally written by me as contributions to a web encyclopedia project just for fun, but for various reasons was inappropriate in an encyclopedic volume. I did not originally intend to write this book. This is not a dissertation, nor did its development receive any funding or proper peer review. I oer this free book to the public, such as it is, in the hope it could be helpful to an interested reader. June 19, 2015 - Robert B. Easter. (v1) [email protected] 3 Table of contents Preface . 3 List of gures . 9 1 Quaternion Algebra . 11 1.1 The Quaternion Formula . 11 1.2 The Scalar and Vector Parts . 15 1.3 The Quaternion Product . 16 1.4 The Dot Product . 16 1.5 The Cross Product . 17 1.6 Conjugates . 18 1.7 Tensor or Magnitude . 20 1.8 Versors . 20 1.9 Biradials . 22 1.10 Quaternion Identities . 23 1.11 The Biradial b/a . -
Vectors, Matrices and Coordinate Transformations
S. Widnall 16.07 Dynamics Fall 2009 Lecture notes based on J. Peraire Version 2.0 Lecture L3 - Vectors, Matrices and Coordinate Transformations By using vectors and defining appropriate operations between them, physical laws can often be written in a simple form. Since we will making extensive use of vectors in Dynamics, we will summarize some of their important properties. Vectors For our purposes we will think of a vector as a mathematical representation of a physical entity which has both magnitude and direction in a 3D space. Examples of physical vectors are forces, moments, and velocities. Geometrically, a vector can be represented as arrows. The length of the arrow represents its magnitude. Unless indicated otherwise, we shall assume that parallel translation does not change a vector, and we shall call the vectors satisfying this property, free vectors. Thus, two vectors are equal if and only if they are parallel, point in the same direction, and have equal length. Vectors are usually typed in boldface and scalar quantities appear in lightface italic type, e.g. the vector quantity A has magnitude, or modulus, A = |A|. In handwritten text, vectors are often expressed using the −→ arrow, or underbar notation, e.g. A , A. Vector Algebra Here, we introduce a few useful operations which are defined for free vectors. Multiplication by a scalar If we multiply a vector A by a scalar α, the result is a vector B = αA, which has magnitude B = |α|A. The vector B, is parallel to A and points in the same direction if α > 0. -
2D and 3D Transformations, Homogeneous Coordinates Lecture 03
2D and 3D Transformations, Homogeneous Coordinates Lecture 03 Patrick Karlsson [email protected] Centre for Image Analysis Uppsala University Computer Graphics November 6 2006 Patrick Karlsson (Uppsala University) Transformations and Homogeneous Coords. Computer Graphics 1 / 23 Reading Instructions Chapters 4.1–4.9. Edward Angel. “Interactive Computer Graphics: A Top-down Approach with OpenGL”, Fourth Edition, Addison-Wesley, 2004. Patrick Karlsson (Uppsala University) Transformations and Homogeneous Coords. Computer Graphics 2 / 23 Todays lecture ... in the pipeline Patrick Karlsson (Uppsala University) Transformations and Homogeneous Coords. Computer Graphics 3 / 23 Scalars, points, and vectors Scalars α, β Real (or complex) numbers. Points P, Q Locations in space (but no size or shape). Vectors u, v Directions in space (magnitude but no position). Patrick Karlsson (Uppsala University) Transformations and Homogeneous Coords. Computer Graphics 4 / 23 Mathematical spaces Scalar field A set of scalars obeying certain properties. New scalars can be formed through addition and multiplication. (Linear) Vector space Made up of scalars and vectors. New vectors can be created through scalar-vector multiplication, and vector-vector addition. Affine space An extended vector space that include points. This gives us additional operators, such as vector-point addition, and point-point subtraction. Patrick Karlsson (Uppsala University) Transformations and Homogeneous Coords. Computer Graphics 5 / 23 Data types Polygon based objects Objects are described using polygons. A polygon is defined by its vertices (i.e., points). Transformations manipulate the vertices, thus manipulates the objects. Some examples in 2D Scalar α 1 float. Point P(x, y) 2 floats. Vector v(x, y) 2 floats. Matrix M 4 floats. -
ROTATION THEORY These Notes Present a Brief Survey of Some
ROTATION THEORY MICHALMISIUREWICZ Abstract. Rotation Theory has its roots in the theory of rotation numbers for circle homeomorphisms, developed by Poincar´e. It is particularly useful for the study and classification of periodic orbits of dynamical systems. It deals with ergodic averages and their limits, not only for almost all points, like in Ergodic Theory, but for all points. We present the general ideas of Rotation Theory and its applications to some classes of dynamical systems, like continuous circle maps homotopic to the identity, torus homeomorphisms homotopic to the identity, subshifts of finite type and continuous interval maps. These notes present a brief survey of some aspects of Rotation Theory. Deeper treatment of the subject would require writing a book. Thus, in particular: • Not all aspects of Rotation Theory are described here. A large part of it, very important and deserving a separate book, deals with homeomorphisms of an annulus, homotopic to the identity. Including this subject in the present notes would make them at least twice as long, so it is ignored, except for the bibliography. • What is called “proofs” are usually only short ideas of the proofs. The reader is advised either to try to fill in the details himself/herself or to find the full proofs in the literature. More complicated proofs are omitted entirely. • The stress is on the theory, not on the history. Therefore, references are not cited in the text. Instead, at the end of these notes there are lists of references dealing with the problems treated in various sections (or not treated at all). -
The Devil of Rotations Is Afoot! (James Watt in 1781)
The Devil of Rotations is Afoot! (James Watt in 1781) Leo Dorst Informatics Institute, University of Amsterdam XVII summer school, Santander, 2016 0 1 The ratio of vectors is an operator in 2D Given a and b, find a vector x that is to c what b is to a? So, solve x from: x : c = b : a: The answer is, by geometric product: x = (b=a) c kbk = cos(φ) − I sin(φ) c kak = ρ e−Iφ c; an operator on c! Here I is the unit-2-blade of the plane `from a to b' (so I2 = −1), ρ is the ratio of their norms, and φ is the angle between them. (Actually, it is better to think of Iφ as the angle.) Result not fully dependent on a and b, so better parametrize by ρ and Iφ. GAViewer: a = e1, label(a), b = e1+e2, label(b), c = -e1+2 e2, dynamicfx = (b/a) c,g 1 2 Another idea: rotation as multiple reflection Reflection in an origin plane with unit normal a x 7! x − 2(x · a) a=kak2 (classic LA): Now consider the dot product as the symmetric part of a more fundamental geometric product: 1 x · a = 2(x a + a x): Then rewrite (with linearity, associativity): x 7! x − (x a + a x) a=kak2 (GA product) = −a x a−1 with the geometric inverse of a vector: −1 2 FIG(7,1) a = a=kak . 2 3 Orthogonal Transformations as Products of Unit Vectors A reflection in two successive origin planes a and b: x 7! −b (−a x a−1) b−1 = (b a) x (b a)−1 So a rotation is represented by the geometric product of two vectors b a, also an element of the algebra. -
Rotation Matrix - Wikipedia, the Free Encyclopedia Page 1 of 22
Rotation matrix - Wikipedia, the free encyclopedia Page 1 of 22 Rotation matrix From Wikipedia, the free encyclopedia In linear algebra, a rotation matrix is a matrix that is used to perform a rotation in Euclidean space. For example the matrix rotates points in the xy -Cartesian plane counterclockwise through an angle θ about the origin of the Cartesian coordinate system. To perform the rotation, the position of each point must be represented by a column vector v, containing the coordinates of the point. A rotated vector is obtained by using the matrix multiplication Rv (see below for details). In two and three dimensions, rotation matrices are among the simplest algebraic descriptions of rotations, and are used extensively for computations in geometry, physics, and computer graphics. Though most applications involve rotations in two or three dimensions, rotation matrices can be defined for n-dimensional space. Rotation matrices are always square, with real entries. Algebraically, a rotation matrix in n-dimensions is a n × n special orthogonal matrix, i.e. an orthogonal matrix whose determinant is 1: . The set of all rotation matrices forms a group, known as the rotation group or the special orthogonal group. It is a subset of the orthogonal group, which includes reflections and consists of all orthogonal matrices with determinant 1 or -1, and of the special linear group, which includes all volume-preserving transformations and consists of matrices with determinant 1. Contents 1 Rotations in two dimensions 1.1 Non-standard orientation -
5 Spinor Calculus
5 Spinor Calculus 5.1 From triads and Euler angles to spinors. A heuristic introduction. As mentioned already in Section 3.4.3, it is an obvious idea to enrich the Pauli algebra formalism by introducing the complex vector space V(2; C) on which the matrices operate. The two-component complex vectors are traditionally called spinors28. We wish to show that they give rise to a wide range of applications. In fact we shall introduce the spinor concept as a natural answer to a problem that arises in the context of rotational motion. In Section 3 we have considered rotations as operations performed on a vector space. Whereas this approach enabled us to give a group-theoretical definition of the magnetic field, a vector is not an appropriate construct to account for the rotation of an orientable object. The simplest mathematical model suitable for this purpose is a Cartesian (orthogonal) three-frame, briefly, a triad. The problem is to consider two triads with coinciding origins, and the rotation of the object frame is described with respect to the space frame. The triads are represented in terms of their respective unit vectors: the space frame as Σs(x^1; x^2; x^3) and the object frame as Σc(e^1; e^2; e^3). Here c stands for “corpus,” since o for “object” seems ambiguous. We choose the frames to be right-handed. These orientable objects are not pointlike, and their parametrization offers novel problems. In this sense we may refer to triads as “higher objects,” by contrast to points which are “lower objects.” The thought that comes most easily to mind is to consider the nine direction cosines e^i · x^k but this is impractical, because of the six relations connecting these parameters. -
2-D Drawing Geometry Homogeneous Coordinates
2-D Drawing Geometry Homogeneous Coordinates The rotation of a point, straight line or an entire image on the screen, about a point other than origin, is achieved by first moving the image until the point of rotation occupies the origin, then performing rotation, then finally moving the image to its original position. The moving of an image from one place to another in a straight line is called a translation. A translation may be done by adding or subtracting to each point, the amount, by which picture is required to be shifted. Translation of point by the change of coordinate cannot be combined with other transformation by using simple matrix application. Such a combination is essential if we wish to rotate an image about a point other than origin by translation, rotation again translation. To combine these three transformations into a single transformation, homogeneous coordinates are used. In homogeneous coordinate system, two-dimensional coordinate positions (x, y) are represented by triple- coordinates. Homogeneous coordinates are generally used in design and construction applications. Here we perform translations, rotations, scaling to fit the picture into proper position 2D Transformation in Computer Graphics- In Computer graphics, Transformation is a process of modifying and re- positioning the existing graphics. • 2D Transformations take place in a two dimensional plane. • Transformations are helpful in changing the position, size, orientation, shape etc of the object. Transformation Techniques- In computer graphics, various transformation techniques are- 1. Translation 2. Rotation 3. Scaling 4. Reflection 2D Translation in Computer Graphics- In Computer graphics, 2D Translation is a process of moving an object from one position to another in a two dimensional plane. -
Coordinate Transformation
Coordinate Transformation Coordinate Transformations In this chapter, we explore mappings – where a mapping is a function that "maps" one set to another, usually in a way that preserves at least some of the underlyign geometry of the sets. For example, a 2-dimensional coordinate transformation is a mapping of the form T (u; v) = x (u; v) ; y (u; v) h i The functions x (u; v) and y (u; v) are called the components of the transforma- tion. Moreover, the transformation T maps a set S in the uv-plane to a set T (S) in the xy-plane: If S is a region, then we use the components x = f (u; v) and y = g (u; v) to …nd the image of S under T (u; v) : EXAMPLE 1 Find T (S) when T (u; v) = uv; u2 v2 and S is the unit square in the uv-plane (i.e., S = [0; 1] [0; 1]). Solution: To do so, let’s determine the boundary of T (S) in the xy-plane. We use x = uv and y = u2 v2 to …nd the image of the lines bounding the unit square: Side of Square Result of T (u; v) Image in xy-plane v = 0; u in [0; 1] x = 0; y = u2; u in [0; 1] y-axis for 0 y 1 u = 1; v in [0; 1] x = v; y = 1 v2; v in [0; 1] y = 1 x2; x in[0; 1] v = 1; u in [0; 1] x = u; y = u2 1; u in [0; 1] y = x2 1; x in [0; 1] u = 0; u in [0; 1] x = 0; y = v2; v in [0; 1] y-axis for 1 y 0 1 As a result, T (S) is the region in the xy-plane bounded by x = 0; y = x2 1; and y = 1 x2: Linear transformations are coordinate transformations of the form T (u; v) = au + bv; cu + dv h i where a; b; c; and d are constants. -
Projective Geometry Lecture Notes
Projective Geometry Lecture Notes Thomas Baird March 26, 2014 Contents 1 Introduction 2 2 Vector Spaces and Projective Spaces 4 2.1 Vector spaces and their duals . 4 2.1.1 Fields . 4 2.1.2 Vector spaces and subspaces . 5 2.1.3 Matrices . 7 2.1.4 Dual vector spaces . 7 2.2 Projective spaces and homogeneous coordinates . 8 2.2.1 Visualizing projective space . 8 2.2.2 Homogeneous coordinates . 13 2.3 Linear subspaces . 13 2.3.1 Two points determine a line . 14 2.3.2 Two planar lines intersect at a point . 14 2.4 Projective transformations and the Erlangen Program . 15 2.4.1 Erlangen Program . 16 2.4.2 Projective versus linear . 17 2.4.3 Examples of projective transformations . 18 2.4.4 Direct sums . 19 2.4.5 General position . 20 2.4.6 The Cross-Ratio . 22 2.5 Classical Theorems . 23 2.5.1 Desargues' Theorem . 23 2.5.2 Pappus' Theorem . 24 2.6 Duality . 26 3 Quadrics and Conics 28 3.1 Affine algebraic sets . 28 3.2 Projective algebraic sets . 30 3.3 Bilinear and quadratic forms . 31 3.3.1 Quadratic forms . 33 3.3.2 Change of basis . 33 1 3.3.3 Digression on the Hessian . 36 3.4 Quadrics and conics . 37 3.5 Parametrization of the conic . 40 3.5.1 Rational parametrization of the circle . 42 3.6 Polars . 44 3.7 Linear subspaces of quadrics and ruled surfaces . 46 3.8 Pencils of quadrics and degeneration . 47 4 Exterior Algebras 52 4.1 Multilinear algebra . -
Spinors for Everyone Gerrit Coddens
Spinors for everyone Gerrit Coddens To cite this version: Gerrit Coddens. Spinors for everyone. 2017. cea-01572342 HAL Id: cea-01572342 https://hal-cea.archives-ouvertes.fr/cea-01572342 Submitted on 7 Aug 2017 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Spinors for everyone Gerrit Coddens Laboratoire des Solides Irradi´es, CEA-DSM-IRAMIS, CNRS UMR 7642, Ecole Polytechnique, 28, Route de Saclay, F-91128-Palaiseau CEDEX, France 5th August 2017 Abstract. It is hard to find intuition for spinors in the literature. We provide this intuition by explaining all the underlying ideas in a way that can be understood by everybody who knows the definition of a group, complex numbers and matrix algebra. We first work out these ideas for the representation SU(2) 3 of the three-dimensional rotation group in R . In a second stage we generalize the approach to rotation n groups in vector spaces R of arbitrary dimension n > 3, endowed with an Euclidean metric. The reader can obtain this way an intuitive understanding of what a spinor is. We discuss the meaning of making linear combinations of spinors. -
A Tutorial on Euler Angles and Quaternions
A Tutorial on Euler Angles and Quaternions Moti Ben-Ari Department of Science Teaching Weizmann Institute of Science http://www.weizmann.ac.il/sci-tea/benari/ Version 2.0.1 c 2014–17 by Moti Ben-Ari. This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/ by-sa/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. Chapter 1 Introduction You sitting in an airplane at night, watching a movie displayed on the screen attached to the seat in front of you. The airplane gently banks to the left. You may feel the slight acceleration, but you won’t see any change in the position of the movie screen. Both you and the screen are in the same frame of reference, so unless you stand up or make another move, the position and orientation of the screen relative to your position and orientation won’t change. The same is not true with respect to your position and orientation relative to the frame of reference of the earth. The airplane is moving forward at a very high speed and the bank changes your orientation with respect to the earth. The transformation of coordinates (position and orientation) from one frame of reference is a fundamental operation in several areas: flight control of aircraft and rockets, move- ment of manipulators in robotics, and computer graphics. This tutorial introduces the mathematics of rotations using two formalisms: (1) Euler angles are the angles of rotation of a three-dimensional coordinate frame.