Introduction 3D texture mapping 2D texture mapping Other forms of texture mapping. Graphics 2011/2012, 4th quarter. Lecture 06: texture mapping
|
|
- Noah Garrison
- 7 years ago
- Views:
Transcription
1 Lecture 6 Texture mapping
2 Linear interpolation Texture mapping We already learned a lot: Vectors, basic geometric entities Intersection of objects Matrices, transformations And some shading
3 Motivation Linear interpolation Texture mapping For example, we can... use vectors to represent points use 3 points to represent triangles use matrix multiplication to transform them use our (simple) shading model to put color on them
4 Motivation Linear interpolation Texture mapping For example, we can... use vectors to represent points use 3 points to represent triangles use matrix multiplication to transform them use our (simple) shading model to put color on them
5 Motivation Linear interpolation Texture mapping For example, we can... use vectors to represent points use 3 points to represent triangles use matrix multiplication to transform them use our (simple) shading model to put color on them
6 Motivation Linear interpolation Texture mapping For example, we can... use vectors to represent points use 3 points to represent triangles use matrix multiplication to transform them use our (simple) shading model to put color on them Q: But how do we get the colors in between two vertices?
7 Linear interpolation Linear interpolation Texture mapping Given two vectors a, b, linear interpolation is defined as p(t) = (1 t) a + t b with a (scalar) parameter 0 t 1. Note: If a, b are scalars and t = 1/2 this is usually refered to as average ;) If a, b are color values (r, g, b), this gives us a smooth transition from a to b
8 Linear interpolation Texture mapping Linear interpolation to color triangles With this we can linearly interpolate color 1 between two vertices 2 between two edges Q: How to do this efficiently? What about phong shading? We will learn this in a later lecture
9 Texture mapping Linear interpolation Texture mapping Adding lots of detail to our models to realistically depict skin, grass, bark, stone, etc., would increase rendering times dramatically, even for hardware-supported projective methods.
10 Texture mapping Linear interpolation Texture mapping Adding lots of detail to our models to realistically depict skin, grass, bark, stone, etc., would increase rendering times dramatically, even for hardware-supported projective methods.
11 Basic idea Linear interpolation Texture mapping Basic idea of texture mapping: Instead of calculating color, shade, light, etc. for each pixel we just paste images to our objects in order to create the illusion of realism
12 Different approaches Linear interpolation Texture mapping Different approaches exist, for example 2D vs. 3D: 3D Object 2D mapping (aka image textures): paste an image onto the object 3D mapping (aka solid or volume textures): create a 3D texture and carve the object 2D texture 3D texture
13 Outline 1 Linear interpolation Texture mapping 2 3D stripe textures Texture arrays Solid noise 3 Basic idea Spherical mapping Triangles 4 Bump mapping Displacement mapping Environment mapping Linear interpolation Texture mapping
14 Texturing 3D objects 3D stripe textures Texture arrays Solid noise Let s start with 3D mapping, which is a procedural approach, i.e. we use a mathematical procedure to create a 3D texture, i.e. Then we use the coordinates of each point in our 3D model to calculate the appropriate color value using that procedure, i.e. f(x, y, z) = c with c R 3 f(x p, y p, z p ) = c p
15 3D stripe textures 3D stripe textures Texture arrays Solid noise A simple example: stripes along the X-axis stripe( x p, y p, z p ) { if ( sin x p > 0 ) return color0; else return color1; } } Note: any alternating function will do it (sin is slow)
16 3D stripe textures 3D stripe textures Texture arrays Solid noise A simple example: stripes along the X-axis stripe( x p, y p, z p ) { if ( sin x p > 0 ) return color0; else return color1; } } Note: any alternating function will do it (sin is slow)
17 3D stripe textures 3D stripe textures Texture arrays Solid noise Stripes along the Z-axis: stripe( x p, y p, z p ) { if ( sin z p > 0) return color0; else return color1; } }
18 3D stripe textures 3D stripe textures Texture arrays Solid noise And what happens here? stripe( x p, y p, z p ) { if ( sin x p > 0 & sin z p > 0) return color0; else return color1; } } This looks almost like a checkerboard, and should come in handy when working on practical assignment 1.2
19 3D stripe textures 3D stripe textures Texture arrays Solid noise Stripes with controllable width: stripe( point p, real width ) { if ( sin(π x p /width) > 0 ) return color0; else return color1; } } Try this at home :) Note that we do not multiply but divide by width!
20 3D stripe textures 3D stripe textures Texture arrays Solid noise Smooth variation between two colors, instead of two distinct ones: stripe( point p, real width ) { t = (1 + sin(π x p /width))/ 2 return (1 - t) c 0 + t c 1 } Try this at home :) Note: if that doesn t look familiar, check the slides on linear interpolation again ;)
21 Texture arrays 3D stripe textures Texture arrays Solid noise Again: this is often called solid or volumetric texturing. It is called procedural because we compute the color values for a point p R 3 with a procedure. Carving vs. array lookup Alternatively, we can do an array lookup in a 3D array (using all three coordinates of p for indexing), or in a 2D array (using only two coordinates of p).
22 2D texture arrays 3D stripe textures Texture arrays Solid noise We ll call the two dimensions to be mapped u and v, and assume an n x n y image as texture. Then every (u, v) needs to be mapped to a color in the image, i.e. we need a mapping from pixels to texels.
23 2D texture arrays 3D stripe textures Texture arrays Solid noise A standard way is to remove the integer portion of u and v, so that (u, v) lies in the unit square.
24 2D texture arrays 3D stripe textures Texture arrays Solid noise The pixel (i, j) in the n x n y image for (u, v) is found by i = un x and j = vn y x is the floor function that give the highest integer value x.
25 Nearest neighbor interpolation 3D stripe textures Texture arrays Solid noise This is a version of nearest-neighbor interpolation, because we take the color of the nearest neighbor: c(u, v) = c i,j with i = un x and j = vn y
26 Bilinear interpolation 3D stripe textures Texture arrays Solid noise For smoother effects we may use bilinear interpolation: c(u, v) = (1 u )(1 v )c ij +u (1 v )c (i+1)j +(1 u )v c i(j+1) +u v c (i+1)(j+1) where u = un x un x and v = vn y vn y Notice: all weights are between 0 and 1 and add up to 1, i.e. (1 u )(1 v ) + u (1 v ) + (1 u )v + u v = 1
27 Trilinear interpolation 3D stripe textures Texture arrays Solid noise Using 2D arrays with bilinear interpolation is easily extended to using 3D arrays with trilinear interpolation: c(u, v, w) = (1 u )(1 v )(1 w )c ijk +u (1 v )(1 w )c (i+1)jk +...
28 Using random noise 3D stripe textures Texture arrays Solid noise So far: rather simple textures (e.g. stripes). We can create much more complex (and realistic) textures, e.g. resembling wooden structures. Or we can create some randomness by adding noice, e.g. to create the impression of a marble like structure.
29 Perlin noise 3D stripe textures Texture arrays Solid noise Goal: create texture with random appearance, but not too random (e.g., marble patterns, mottled textures as on birds eggs) 1st idea: random color at each point Problem: too much noise, similar to white noise on TV 2nd idea: smoothing of white noise Problem: bad results and/or computationally too expensive 3rd idea: create lattice with random numbers & interpolate between them Problem: lattice becomes too obvious Perlin noise makes lattice less obvious by using three tricks...
30 Perlin noise 3D stripe textures Texture arrays Solid noise Perlin noise is based on the following ideas: Use a 1D array of random unit vectors and hashing to create a virtual 3D array of random vectors; Compute the inner product of (u, v, w)-vectors with the random vectors Use Hermite interpolation to get rid of visible artifacts
31 Random unit vectors 3D stripe textures Texture arrays Solid noise Random unit vectors are obtained as follows: v x = 2ξ 1 v y = 2ξ 1 v z = 2ξ 1 where ξ, ξ, and ξ are random numbers in [0, 1]. Notice that 1 v i 1, so we get vectors in the unit cube. If (v 2 x + v 2 y + v 2 z) < 1, we normalize the vector and keep it; otherwise not. Why? Perlin reports that an array with 256 such random unit vectors works well with his technique.
32 Hashing 3D stripe textures Texture arrays Solid noise We use this 1D array of random unitvectors to create a (pseudo-)random 3D array of random unitvectors, using the following hashing function: Γ ijk = G(φ(i + φ(j + φ(k)))) where G is our array of n random vectors, and φ(i) = P [i mod n] where P is an array of length n containing a permutation of the integers 0 through n 1.
33 Hashing 3D stripe textures Texture arrays Solid noise
34 Hashing 3D stripe textures Texture arrays Solid noise
35 Perlin noise 3D stripe textures Texture arrays Solid noise Perlin noise is based on the following ideas: Use a 1D array of random unit vectors and hashing to create a virtual 3D array of random vectors; Compute the inner product of (u, v, w)-vectors with the random vectors Use Hermite interpolation to get rid of visible artifacts
36 Hermite interpolation 3D stripe textures Texture arrays Solid noise With our random vectors and hashing function in place, the noise value n(x, y, z) for a point (x, y, z) is computed as: n(x, y, z) = x +1 y +1 z +1 i= x j= y k= z Ω ijk (x i, y j, z k) where Ω ijk (u, v, w) = ω(u)ω(v)ω(w)(γ ijk (u, v, w)) and ω(t) = { 2 t 3 3 t if t < 1 0 otherwise
37 Hermite interpolation 3D stripe textures Texture arrays Solid noise Characteristics of hermite interpolation (or why this creates better noise than linear ): Linear interpolation: linear weights, i.e. ω t Hermite interpolation: cubic weights, i.e. ω t 3
38 Summary 3D stripe textures Texture arrays Solid noise Perlin noise: Virtual 3D array & hashing Scalar product with random unit vector Hermite interpolation
39 Outline 1 Linear interpolation Texture mapping 2 3D stripe textures Texture arrays Solid noise 3 Basic idea Spherical mapping Triangles 4 Bump mapping Displacement mapping Environment mapping 3D stripe textures Texture arrays Solid noise
40 Basic idea Spherical mapping Triangles Now let s look at 2D mapping, which maps an image onto an object (cf. wrapping up a gift) Instead of a procedural, we use a lookup-table approach here, i.e. for each point in our 3D model, we look up the appropriate color value in the image. How do we do this? Again, let s look at some simple examples.
41 Spherical texture mapping Basic idea Spherical mapping Triangles How do we map a rectangular image onto a sphere?
42 Spherical texture mapping Basic idea Spherical mapping Triangles Example: use world map and sphere to create a globe
43 Spherical texture mapping Basic idea Spherical mapping Triangles We have seen the parametric equation of a sphere with radius r and center c: x = x c + r cos φ sin θ y = y c + r sin φ sin θ z = z c + r cos θ Given a point (x, y, z) on the surface of the sphere, we can find θ and φ by θ = arccos z zc r φ = arctan y yc x x c
44 Spherical texture mapping Basic idea Spherical mapping Triangles For each point (x, y, z) we have θ = arccos z zc r φ = arctan y yc x x c Since both u and v must range from [0, 1], and (θ, φ) [0, π] [ π, π], we must convert: u = v = π θ π φ mod 2π 2π
45 Texturing triangles Basic idea Spherical mapping Triangles Mapping an image onto a triangle is done by specifying (u, v) coordinates for the vertices. So, our triangle vertices a = (x a, y a ), b = (xb, y b ), c = (x c, y c ) become a = (u a, v a ), b = (u b, v b ), c = (u c, v c ) (0.8, 0.7) (0.1, 0.9) (0.6, 0.1)
46 Texturing triangles Basic idea Spherical mapping Triangles Remember that barycentric coordinates are very useful for interpolating over a triangle and related textures ;) p(β, γ) = a + β( b a) + γ( c a) (0.8, 0.7) (0.1, 0.9) (0.6, 0.1) now becomes u(β, γ) = u a + β(u b u a ) + γ(u c u a ) v(β, γ) = v a + β(v b v a ) + γ(v c v a ) We get the texture coordinates by linearly interpolating the vertex coordinates over β, γ for 0 β + γ 1.
47 Texturing triangles Basic idea Spherical mapping Triangles (0.8, 0.7) Again, we can use bilinear interpolation to avoid artifacts. Note that the area and shape of the triangle don t have to match that of the mapped triangle. (0.1, 0.9) (0.6, 0.1) Also, (u, v) coordinates for the vertices may lie outside the range [0, 1] [0, 1].
48 Texturing triangles Basic idea Spherical mapping Triangles Be careful with perspective, because objects further away appear smaller, so linear interpolation can lead to artifacts: To avoid this, we have to consider the depth of vertices with respect to the viewer. Perspective projection is covered in a later lecture. Fortunately, this is supported by modern hardware and APIs.
49 MIP-mapping Basic idea Spherical mapping Triangles If viewer is close: Object gets larger Magnify texture Perfect distance: Not always perfect match (misalignment, etc.) If viewer is further away: Object gets smaller Minify texture Problem with minification: efficiency (esp. when whole texture is mapped onto one pixel!)
50 MIP-mapping Basic idea Spherical mapping Triangles Solutions: MIP maps Pre-calculated, optimized collections of images based on the original texture Dynamically chosen based on depth of object (relative to viewer) Supported by todays hardware and APIs
51 Outline 1 Linear interpolation Texture mapping 2 3D stripe textures Texture arrays Solid noise 3 Basic idea Spherical mapping Triangles 4 Bump mapping Displacement mapping Environment mapping Basic idea Spherical mapping Triangles
52 Bump mapping Bump mapping Displacement mapping Environment mapping One of the reasons why we apply texture mapping: Real surfaces are hardly flat but often rough and bumpy. These bumps cause (slightly) different reflections of the light.
53 Bump mapping Bump mapping Displacement mapping Environment mapping Instead of mapping an image or noise onto an object, we can also apply a bump map, which is a 2D or 3D array of vectors. These vectors are added to the normals at the points for which we do shading calculations. The effect of bump mapping is an apparent change of the geometry of the object.
54 Bump mapping Displacement mapping Environment mapping Bump mapping Major problems with bump mapping: silhouettes and shadows
55 Displacement mapping Bump mapping Displacement mapping Environment mapping To overcome this shortcoming, we can use a displacement map. This is also a 2D or 3D array of vectors, but here the points to be shaded are actually displaced. Normally, the objects are refined using the displacement map, giving an increase in storage requirements.
56 Displacement mapping Bump mapping Displacement mapping Environment mapping
57 Environment mapping Bump mapping Displacement mapping Environment mapping Let s look at image textures again: If we can map an image of the environment to an object...
58 Environment mapping Bump mapping Displacement mapping Environment mapping... why not use this to make objects appear to reflect their surroundings specularly? Idea: place a cube around the object, and project the environment of the object onto the planes of the cube in a preprocessing stage; this is our texture map. During rendering, we compute a reflection vector, and use that to look-up texture values from the cubic texture map.
59 Environment mapping Bump mapping Displacement mapping Environment mapping
60 Bump mapping Displacement mapping Environment mapping
61 And now? Bump mapping Displacement mapping Environment mapping In case you didn t notice: it s halftime :)... so let s sit back and have a break before we continue. Lifted, copyrighted by Pixar/Disney (but you find various versions of it on YouTube)
62 What s next? Bump mapping Displacement mapping Environment mapping The midterm exam! Time and date: Friday, :00-12:00 h Zaal: EDUC-GAMMA Note: no responsibility is taken for the correctness of this information. For final information about time and room see
63 The midterm exam Bump mapping Displacement mapping Environment mapping What do I have to do? Come in time Bring a pen (no pencil) Bring your student id And know the answers ;) Note: You may not use books, notes, or any electronic equipment (including cell phones!).
64 The midterm exam Bump mapping Displacement mapping Environment mapping The exam covers lectures 1-5 and tutorials 1-3. If you followed the lectures... read the textbook... and actively did the exercises... you should be fine.
65 Important dates Bump mapping Displacement mapping Environment mapping Today (Tue, 15.5.) Only one tutorial (room 61) Thu, No tutorial and lecture (holiday) Tue, Lecture 7 and Thursday tutorial Thu, No tutorial(?) and lecture Fri, Midterm exam
INTRODUCTION TO RENDERING TECHNIQUES
INTRODUCTION TO RENDERING TECHNIQUES 22 Mar. 212 Yanir Kleiman What is 3D Graphics? Why 3D? Draw one frame at a time Model only once X 24 frames per second Color / texture only once 15, frames for a feature
More informationROCKS AND MINERALS. Richard L. Yepez and Kathleen E. Yepez. An Art Skills Tutorial
ROCKS AND MINERALS Richard L. Yepez and Kathleen E. Yepez An Art Skills Tutorial Commissioned by the Center for Science Education Research at the University of Texas at Dallas Copyright 2005-2006 by Richard
More informationGPU Shading and Rendering: Introduction & Graphics Hardware
GPU Shading and Rendering: Introduction & Graphics Hardware Marc Olano Computer Science and Electrical Engineering University of Maryland, Baltimore County SIGGRAPH 2005 Schedule Shading Technolgy 8:30
More informationTEXTURE AND BUMP MAPPING
Department of Applied Mathematics and Computational Sciences University of Cantabria UC-CAGD Group COMPUTER-AIDED GEOMETRIC DESIGN AND COMPUTER GRAPHICS: TEXTURE AND BUMP MAPPING Andrés Iglesias e-mail:
More informationImage Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg
Image Processing and Computer Graphics Rendering Pipeline Matthias Teschner Computer Science Department University of Freiburg Outline introduction rendering pipeline vertex processing primitive processing
More informationActivity Set 4. Trainer Guide
Geometry and Measurement of Solid Figures Activity Set 4 Trainer Guide Mid_SGe_04_TG Copyright by the McGraw-Hill Companies McGraw-Hill Professional Development GEOMETRY AND MEASUREMENT OF SOLID FIGURES
More informationMaking natural looking Volumetric Clouds In Blender 2.48a
I think that everyone using Blender has made some trials about making volumetric clouds. The truth is that a kind of volumetric clouds is already available in Blender for a long time, thanks to the 3D
More informationChapter 19. General Matrices. An n m matrix is an array. a 11 a 12 a 1m a 21 a 22 a 2m A = a n1 a n2 a nm. The matrix A has n row vectors
Chapter 9. General Matrices An n m matrix is an array a a a m a a a m... = [a ij]. a n a n a nm The matrix A has n row vectors and m column vectors row i (A) = [a i, a i,..., a im ] R m a j a j a nj col
More informationCOMP-557: Fundamentals of Computer Graphics McGill University, Fall 2010
COMP-557: Fundamentals of Computer Graphics McGill University, Fall 2010 Class times 2:25 PM - 3:55 PM Mondays and Wednesdays Lecture room Trottier Building 2120 Instructor Paul Kry, kry@cs.mcgill.ca Course
More informationComputer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)
Computer Graphics CS 54 Lecture 1 (Part 1) Curves Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) So Far Dealt with straight lines and flat surfaces Real world objects include
More informationMD5-26 Stacking Blocks Pages 115 116
MD5-26 Stacking Blocks Pages 115 116 STANDARDS 5.MD.C.4 Goals Students will find the number of cubes in a rectangular stack and develop the formula length width height for the number of cubes in a stack.
More informationReflection and Refraction
Equipment Reflection and Refraction Acrylic block set, plane-concave-convex universal mirror, cork board, cork board stand, pins, flashlight, protractor, ruler, mirror worksheet, rectangular block worksheet,
More informationArea of Parallelograms (pages 546 549)
A Area of Parallelograms (pages 546 549) A parallelogram is a quadrilateral with two pairs of parallel sides. The base is any one of the sides and the height is the shortest distance (the length of a perpendicular
More informationA Short Introduction to Computer Graphics
A Short Introduction to Computer Graphics Frédo Durand MIT Laboratory for Computer Science 1 Introduction Chapter I: Basics Although computer graphics is a vast field that encompasses almost any graphical
More informationSummary: Transformations. Lecture 14 Parameter Estimation Readings T&V Sec 5.1-5.3. Parameter Estimation: Fitting Geometric Models
Summary: Transformations Lecture 14 Parameter Estimation eadings T&V Sec 5.1-5.3 Euclidean similarity affine projective Parameter Estimation We will talk about estimating parameters of 1) Geometric models
More informationDhiren Bhatia Carnegie Mellon University
Dhiren Bhatia Carnegie Mellon University University Course Evaluations available online Please Fill! December 4 : In-class final exam Held during class time All students expected to give final this date
More informationComputer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example.
An Example 2 3 4 Outline Objective: Develop methods and algorithms to mathematically model shape of real world objects Categories: Wire-Frame Representation Object is represented as as a set of points
More informationALGEBRA. sequence, term, nth term, consecutive, rule, relationship, generate, predict, continue increase, decrease finite, infinite
ALGEBRA Pupils should be taught to: Generate and describe sequences As outcomes, Year 7 pupils should, for example: Use, read and write, spelling correctly: sequence, term, nth term, consecutive, rule,
More informationWe can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model
CHAPTER 4 CURVES 4.1 Introduction In order to understand the significance of curves, we should look into the types of model representations that are used in geometric modeling. Curves play a very significant
More informationName Class. Date Section. Test Form A Chapter 11. Chapter 11 Test Bank 155
Chapter Test Bank 55 Test Form A Chapter Name Class Date Section. Find a unit vector in the direction of v if v is the vector from P,, 3 to Q,, 0. (a) 3i 3j 3k (b) i j k 3 i 3 j 3 k 3 i 3 j 3 k. Calculate
More informationName: Section Registered In:
Name: Section Registered In: Math 125 Exam 3 Version 1 April 24, 2006 60 total points possible 1. (5pts) Use Cramer s Rule to solve 3x + 4y = 30 x 2y = 8. Be sure to show enough detail that shows you are
More informationAbstract. These two vectors define a plane tangent to the surface at that point. Their cross product is Recent work in computer graphics has been
Abstract SIMULATION OF WRINKLED SURFACES James F. Blinn Caltech/JPL Computer generated shaded images have reached an impressive degree of realism with the current state of the art. They are not so realistic,
More informationCOMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies
COMP175: Computer Graphics Lecture 1 Introduction and Display Technologies Course mechanics Number: COMP 175-01, Fall 2009 Meetings: TR 1:30-2:45pm Instructor: Sara Su (sarasu@cs.tufts.edu) TA: Matt Menke
More informationGeometry and Measurement
The student will be able to: Geometry and Measurement 1. Demonstrate an understanding of the principles of geometry and measurement and operations using measurements Use the US system of measurement for
More informationCopyright 2011 Casa Software Ltd. www.casaxps.com. Centre of Mass
Centre of Mass A central theme in mathematical modelling is that of reducing complex problems to simpler, and hopefully, equivalent problems for which mathematical analysis is possible. The concept of
More informationChapter 8 Geometry We will discuss following concepts in this chapter.
Mat College Mathematics Updated on Nov 5, 009 Chapter 8 Geometry We will discuss following concepts in this chapter. Two Dimensional Geometry: Straight lines (parallel and perpendicular), Rays, Angles
More informationThe small increase in x is. and the corresponding increase in y is. Therefore
Differentials For a while now, we have been using the notation dy to mean the derivative of y with respect to. Here is any variable, and y is a variable whose value depends on. One of the reasons that
More informationBasic Shapes. Most paintings can be broken down into basic shapes. See how this famous painting by Cézanne can be broken down into basic shapes.
Basic Shapes Squares, rectangles, triangles, cones, cylinders, circles, ovals...these are the basic shapes that will aid you in drawing objects more accurately. This technique can be used when doing a
More informationSolving Simultaneous Equations and Matrices
Solving Simultaneous Equations and Matrices The following represents a systematic investigation for the steps used to solve two simultaneous linear equations in two unknowns. The motivation for considering
More informationSolutions to Homework 10
Solutions to Homework 1 Section 7., exercise # 1 (b,d): (b) Compute the value of R f dv, where f(x, y) = y/x and R = [1, 3] [, 4]. Solution: Since f is continuous over R, f is integrable over R. Let x
More informationRecent Advances and Future Trends in Graphics Hardware. Michael Doggett Architect November 23, 2005
Recent Advances and Future Trends in Graphics Hardware Michael Doggett Architect November 23, 2005 Overview XBOX360 GPU : Xenos Rendering performance GPU architecture Unified shader Memory Export Texture/Vertex
More informationAlgebra Geometry Glossary. 90 angle
lgebra Geometry Glossary 1) acute angle an angle less than 90 acute angle 90 angle 2) acute triangle a triangle where all angles are less than 90 3) adjacent angles angles that share a common leg Example:
More informationH.Calculating Normal Vectors
Appendix H H.Calculating Normal Vectors This appendix describes how to calculate normal vectors for surfaces. You need to define normals to use the OpenGL lighting facility, which is described in Chapter
More informationWhat Resolution Should Your Images Be?
What Resolution Should Your Images Be? The best way to determine the optimum resolution is to think about the final use of your images. For publication you ll need the highest resolution, for desktop printing
More information9.4. The Scalar Product. Introduction. Prerequisites. Learning Style. Learning Outcomes
The Scalar Product 9.4 Introduction There are two kinds of multiplication involving vectors. The first is known as the scalar product or dot product. This is so-called because when the scalar product of
More informationIntroduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012
CSE 167: Introduction to Computer Graphics Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012 Today Course organization Course overview 2 Course Staff Instructor Jürgen Schulze,
More information4. How many integers between 2004 and 4002 are perfect squares?
5 is 0% of what number? What is the value of + 3 4 + 99 00? (alternating signs) 3 A frog is at the bottom of a well 0 feet deep It climbs up 3 feet every day, but slides back feet each night If it started
More informationCreating Your Own 3D Models
14 Creating Your Own 3D Models DAZ 3D has an extensive growing library of 3D models, but there are times that you may not find what you want or you may just want to create your own model. In either case
More informationGeometry Notes PERIMETER AND AREA
Perimeter and Area Page 1 of 57 PERIMETER AND AREA Objectives: After completing this section, you should be able to do the following: Calculate the area of given geometric figures. Calculate the perimeter
More informationShear :: Blocks (Video and Image Processing Blockset )
1 of 6 15/12/2009 11:15 Shear Shift rows or columns of image by linearly varying offset Library Geometric Transformations Description The Shear block shifts the rows or columns of an image by a gradually
More informationMicroStation V8i Training Manual 3D Level 3
You are viewing sample pages from our textbook: MicroStation V8i Training Manual 3D Level 3 The sample subject matter includes pages from Modules 15 and 17, and range from material assignments and attachment,
More informationLecture 7. Matthew T. Mason. Mechanics of Manipulation. Lecture 7. Representing Rotation. Kinematic representation: goals, overview
Matthew T. Mason Mechanics of Manipulation Today s outline Readings, etc. We are starting chapter 3 of the text Lots of stuff online on representing rotations Murray, Li, and Sastry for matrix exponential
More informationPerimeter, Area, and Volume
Perimeter, Area, and Volume Perimeter of Common Geometric Figures The perimeter of a geometric figure is defined as the distance around the outside of the figure. Perimeter is calculated by adding all
More informationMatrix Multiplication
Matrix Multiplication CPS343 Parallel and High Performance Computing Spring 2016 CPS343 (Parallel and HPC) Matrix Multiplication Spring 2016 1 / 32 Outline 1 Matrix operations Importance Dense and sparse
More informationLargest Fixed-Aspect, Axis-Aligned Rectangle
Largest Fixed-Aspect, Axis-Aligned Rectangle David Eberly Geometric Tools, LLC http://www.geometrictools.com/ Copyright c 1998-2016. All Rights Reserved. Created: February 21, 2004 Last Modified: February
More informationVolume visualization I Elvins
Volume visualization I Elvins 1 surface fitting algorithms marching cubes dividing cubes direct volume rendering algorithms ray casting, integration methods voxel projection, projected tetrahedra, splatting
More informationMath 1B, lecture 5: area and volume
Math B, lecture 5: area and volume Nathan Pflueger 6 September 2 Introduction This lecture and the next will be concerned with the computation of areas of regions in the plane, and volumes of regions in
More informationArea of Parallelograms, Triangles, and Trapezoids (pages 314 318)
Area of Parallelograms, Triangles, and Trapezoids (pages 34 38) Any side of a parallelogram or triangle can be used as a base. The altitude of a parallelogram is a line segment perpendicular to the base
More information(Refer Slide Time: 1:42)
Introduction to Computer Graphics Dr. Prem Kalra Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture - 10 Curves So today we are going to have a new topic. So far
More information1 Review of Least Squares Solutions to Overdetermined Systems
cs4: introduction to numerical analysis /9/0 Lecture 7: Rectangular Systems and Numerical Integration Instructor: Professor Amos Ron Scribes: Mark Cowlishaw, Nathanael Fillmore Review of Least Squares
More informationHigh Dynamic Range and other Fun Shader Tricks. Simon Green
High Dynamic Range and other Fun Shader Tricks Simon Green Demo Group Motto If you can t make it good, make it big. If you can t make it big, make it shiny. Overview The OpenGL vertex program and texture
More informationTask: Representing the National Debt 7 th grade
Tennessee Department of Education Task: Representing the National Debt 7 th grade Rachel s economics class has been studying the national debt. The day her class discussed it, the national debt was $16,743,576,637,802.93.
More informationAdding vectors We can do arithmetic with vectors. We ll start with vector addition and related operations. Suppose you have two vectors
1 Chapter 13. VECTORS IN THREE DIMENSIONAL SPACE Let s begin with some names and notation for things: R is the set (collection) of real numbers. We write x R to mean that x is a real number. A real number
More information12.5 Equations of Lines and Planes
Instructor: Longfei Li Math 43 Lecture Notes.5 Equations of Lines and Planes What do we need to determine a line? D: a point on the line: P 0 (x 0, y 0 ) direction (slope): k 3D: a point on the line: P
More informationVector Math Computer Graphics Scott D. Anderson
Vector Math Computer Graphics Scott D. Anderson 1 Dot Product The notation v w means the dot product or scalar product or inner product of two vectors, v and w. In abstract mathematics, we can talk about
More informationAP Physics - Vector Algrebra Tutorial
AP Physics - Vector Algrebra Tutorial Thomas Jefferson High School for Science and Technology AP Physics Team Summer 2013 1 CONTENTS CONTENTS Contents 1 Scalars and Vectors 3 2 Rectangular and Polar Form
More informationSpace Perception and Binocular Vision
Space Perception and Binocular Vision Space Perception Monocular Cues to Three-Dimensional Space Binocular Vision and Stereopsis Combining Depth Cues 9/30/2008 1 Introduction to Space Perception Realism:
More informationGraphic Design. Background: The part of an artwork that appears to be farthest from the viewer, or in the distance of the scene.
Graphic Design Active Layer- When you create multi layers for your images the active layer, or the only one that will be affected by your actions, is the one with a blue background in your layers palette.
More informationCurves and Surfaces. Goals. How do we draw surfaces? How do we specify a surface? How do we approximate a surface?
Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] Goals How do we draw surfaces? Approximate with polygons Draw polygons
More information6 Space Perception and Binocular Vision
Space Perception and Binocular Vision Space Perception and Binocular Vision space perception monocular cues to 3D space binocular vision and stereopsis combining depth cues monocular/pictorial cues cues
More informationIndicator 2: Use a variety of algebraic concepts and methods to solve equations and inequalities.
3 rd Grade Math Learning Targets Algebra: Indicator 1: Use procedures to transform algebraic expressions. 3.A.1.1. Students are able to explain the relationship between repeated addition and multiplication.
More informationPhysics Midterm Review Packet January 2010
Physics Midterm Review Packet January 2010 This Packet is a Study Guide, not a replacement for studying from your notes, tests, quizzes, and textbook. Midterm Date: Thursday, January 28 th 8:15-10:15 Room:
More information1 Symmetries of regular polyhedra
1230, notes 5 1 Symmetries of regular polyhedra Symmetry groups Recall: Group axioms: Suppose that (G, ) is a group and a, b, c are elements of G. Then (i) a b G (ii) (a b) c = a (b c) (iii) There is an
More informationVectors Math 122 Calculus III D Joyce, Fall 2012
Vectors Math 122 Calculus III D Joyce, Fall 2012 Vectors in the plane R 2. A vector v can be interpreted as an arro in the plane R 2 ith a certain length and a certain direction. The same vector can be
More information521493S Computer Graphics. Exercise 2 & course schedule change
521493S Computer Graphics Exercise 2 & course schedule change Course Schedule Change Lecture from Wednesday 31th of March is moved to Tuesday 30th of March at 16-18 in TS128 Question 2.1 Given two nonparallel,
More informationCSE 167: Lecture 13: Bézier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011
CSE 167: Introduction to Computer Graphics Lecture 13: Bézier Curves Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011 Announcements Homework project #6 due Friday, Nov 18
More information6. LECTURE 6. Objectives
6. LECTURE 6 Objectives I understand how to use vectors to understand displacement. I can find the magnitude of a vector. I can sketch a vector. I can add and subtract vector. I can multiply a vector by
More informationLinear Programming for Optimization. Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc.
1. Introduction Linear Programming for Optimization Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc. 1.1 Definition Linear programming is the name of a branch of applied mathematics that
More informationThnkwell s Homeschool Precalculus Course Lesson Plan: 36 weeks
Thnkwell s Homeschool Precalculus Course Lesson Plan: 36 weeks Welcome to Thinkwell s Homeschool Precalculus! We re thrilled that you ve decided to make us part of your homeschool curriculum. This lesson
More informationLinear Algebra Notes for Marsden and Tromba Vector Calculus
Linear Algebra Notes for Marsden and Tromba Vector Calculus n-dimensional Euclidean Space and Matrices Definition of n space As was learned in Math b, a point in Euclidean three space can be thought of
More informationThe GED math test gives you a page of math formulas that
Math Smart 643 The GED Math Formulas The GED math test gives you a page of math formulas that you can use on the test, but just seeing the formulas doesn t do you any good. The important thing is understanding
More informationPlatonic Solids. Some solids have curved surfaces or a mix of curved and flat surfaces (so they aren't polyhedra). Examples:
Solid Geometry Solid Geometry is the geometry of three-dimensional space, the kind of space we live in. Three Dimensions It is called three-dimensional or 3D because there are three dimensions: width,
More informationMAC 1114. Learning Objectives. Module 10. Polar Form of Complex Numbers. There are two major topics in this module:
MAC 1114 Module 10 Polar Form of Complex Numbers Learning Objectives Upon completing this module, you should be able to: 1. Identify and simplify imaginary and complex numbers. 2. Add and subtract complex
More informationShader Model 3.0. Ashu Rege. NVIDIA Developer Technology Group
Shader Model 3.0 Ashu Rege NVIDIA Developer Technology Group Talk Outline Quick Intro GeForce 6 Series (NV4X family) New Vertex Shader Features Vertex Texture Fetch Longer Programs and Dynamic Flow Control
More informationUsing Photorealistic RenderMan for High-Quality Direct Volume Rendering
Using Photorealistic RenderMan for High-Quality Direct Volume Rendering Cyrus Jam cjam@sdsc.edu Mike Bailey mjb@sdsc.edu San Diego Supercomputer Center University of California San Diego Abstract With
More informationCourse Overview. CSCI 480 Computer Graphics Lecture 1. Administrative Issues Modeling Animation Rendering OpenGL Programming [Angel Ch.
CSCI 480 Computer Graphics Lecture 1 Course Overview January 14, 2013 Jernej Barbic University of Southern California http://www-bcf.usc.edu/~jbarbic/cs480-s13/ Administrative Issues Modeling Animation
More informationMaterials in NX Render
Materials in NX Render Overview Where materials are stored in NX Render Internal material definition and the NX interface Material types and their characteristics Material components Colour Pattern Reflectance
More information4 The Rhumb Line and the Great Circle in Navigation
4 The Rhumb Line and the Great Circle in Navigation 4.1 Details on Great Circles In fig. GN 4.1 two Great Circle/Rhumb Line cases are shown, one in each hemisphere. In each case the shorter distance between
More informationPhysical Quantities and Units
Physical Quantities and Units 1 Revision Objectives This chapter will explain the SI system of units used for measuring physical quantities and will distinguish between vector and scalar quantities. You
More informationGrade 8 Mathematics Geometry: Lesson 2
Grade 8 Mathematics Geometry: Lesson 2 Read aloud to the students the material that is printed in boldface type inside the boxes. Information in regular type inside the boxes and all information outside
More informationPre-Algebra 2008. Academic Content Standards Grade Eight Ohio. Number, Number Sense and Operations Standard. Number and Number Systems
Academic Content Standards Grade Eight Ohio Pre-Algebra 2008 STANDARDS Number, Number Sense and Operations Standard Number and Number Systems 1. Use scientific notation to express large numbers and small
More informationSection 1.7 22 Continued
Section 1.5 23 A homogeneous equation is always consistent. TRUE - The trivial solution is always a solution. The equation Ax = 0 gives an explicit descriptions of its solution set. FALSE - The equation
More informationAn Overview of the Finite Element Analysis
CHAPTER 1 An Overview of the Finite Element Analysis 1.1 Introduction Finite element analysis (FEA) involves solution of engineering problems using computers. Engineering structures that have complex geometry
More informationPushes and Pulls. TCAPS Created June 2010 by J. McCain
Pushes and Pulls K i n d e r g a r t e n S c i e n c e TCAPS Created June 2010 by J. McCain Table of Contents Science GLCEs incorporated in this Unit............... 2-3 Materials List.......................................
More informationGeometry Unit 6 Areas and Perimeters
Geometry Unit 6 Areas and Perimeters Name Lesson 8.1: Areas of Rectangle (and Square) and Parallelograms How do we measure areas? Area is measured in square units. The type of the square unit you choose
More informationRelevant Reading for this Lecture... Pages 83-87.
LECTURE #06 Chapter 3: X-ray Diffraction and Crystal Structure Determination Learning Objectives To describe crystals in terms of the stacking of planes. How to use a dot product to solve for the angles
More informationComputer-Generated Photorealistic Hair
Computer-Generated Photorealistic Hair Alice J. Lin Department of Computer Science, University of Kentucky, Lexington, KY 40506, USA ajlin0@cs.uky.edu Abstract This paper presents an efficient method for
More informationn 2 + 4n + 3. The answer in decimal form (for the Blitz): 0, 75. Solution. (n + 1)(n + 3) = n + 3 2 lim m 2 1
. Calculate the sum of the series Answer: 3 4. n 2 + 4n + 3. The answer in decimal form (for the Blitz):, 75. Solution. n 2 + 4n + 3 = (n + )(n + 3) = (n + 3) (n + ) = 2 (n + )(n + 3) ( 2 n + ) = m ( n
More informationSection 1.1. Introduction to R n
The Calculus of Functions of Several Variables Section. Introduction to R n Calculus is the study of functional relationships and how related quantities change with each other. In your first exposure to
More information3. INNER PRODUCT SPACES
. INNER PRODUCT SPACES.. Definition So far we have studied abstract vector spaces. These are a generalisation of the geometric spaces R and R. But these have more structure than just that of a vector space.
More informationB2.53-R3: COMPUTER GRAPHICS. NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions.
B2.53-R3: COMPUTER GRAPHICS NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions. 2. PART ONE is to be answered in the TEAR-OFF ANSWER
More informationRealtime 3D Computer Graphics Virtual Reality
Realtime 3D Computer Graphics Virtual Realit Viewing and projection Classical and General Viewing Transformation Pipeline CPU Pol. DL Pixel Per Vertex Texture Raster Frag FB object ee clip normalized device
More informationSolids. Objective A: Volume of a Solids
Solids Math00 Objective A: Volume of a Solids Geometric solids are figures in space. Five common geometric solids are the rectangular solid, the sphere, the cylinder, the cone and the pyramid. A rectangular
More informationFinite Element Formulation for Plates - Handout 3 -
Finite Element Formulation for Plates - Handout 3 - Dr Fehmi Cirak (fc286@) Completed Version Definitions A plate is a three dimensional solid body with one of the plate dimensions much smaller than the
More informationHow To Make A Texture Map Work Better On A Computer Graphics Card (Or Mac)
Improved Alpha-Tested Magnification for Vector Textures and Special Effects Chris Green Valve (a) 64x64 texture, alpha-blended (b) 64x64 texture, alpha tested (c) 64x64 texture using our technique Figure
More information1 Review of Newton Polynomials
cs: introduction to numerical analysis 0/0/0 Lecture 8: Polynomial Interpolation: Using Newton Polynomials and Error Analysis Instructor: Professor Amos Ron Scribes: Giordano Fusco, Mark Cowlishaw, Nathanael
More informationGeometry of Minerals
Geometry of Minerals Objectives Students will connect geometry and science Students will study 2 and 3 dimensional shapes Students will recognize numerical relationships and write algebraic expressions
More informationGUI GRAPHICS AND USER INTERFACES. Welcome to GUI! Mechanics. Mihail Gaianu 26/02/2014 1
Welcome to GUI! Mechanics 26/02/2014 1 Requirements Info If you don t know C++, you CAN take this class additional time investment required early on GUI Java to C++ transition tutorial on course website
More informationVisual Arts Scope and Sequence
ART PRODUCTION Visual Arts Scope and Sequence LINE Recognize lines and line characteristics in the environment I R R R Identify and explore tools that make lines (pencils, crayons, markers, paint brushes)
More information10.1. Solving Quadratic Equations. Investigation: Rocket Science CONDENSED
CONDENSED L E S S O N 10.1 Solving Quadratic Equations In this lesson you will look at quadratic functions that model projectile motion use tables and graphs to approimate solutions to quadratic equations
More information