CS3621 Midterm Solution (Fall 2005) 150 points

Similar documents
Introduction to Solid Modeling

Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling

Perspective Mappings. Contents

Computer Aided Engineering Design Prof. Anupam Saxena Department of Mechanical Engineering Indian Institute of Technology, Kanpur.

Curves and Surfaces 1

Central issues in modelling

Lecture IV Bézier Curves

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

MA 323 Geometric Modelling Course Notes: Day 21 Three Dimensional Bezier Curves, Projections and Rational Bezier Curves

Curve Representation ME761A Instructor in Charge Prof. J. Ramkumar Department of Mechanical Engineering, IIT Kanpur

GL9: Engineering Communications. GL9: CAD techniques. Curves Surfaces Solids Techniques

Curves and Surfaces Computer Graphics I Lecture 10

Curve and Surface Basics

Course Number: Course Title: Geometry

Fathi El-Yafi Project and Software Development Manager Engineering Simulation

pine cone Ratio = 13:8 or 8:5

Log1 Contest Round 2 Theta Circles, Parabolas and Polygons. 4 points each

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS

Geometric Modeling Mortenson Chapter 11. Complex Model Construction

MA 323 Geometric Modelling Course Notes: Day 14 Properties of Bezier Curves

COMPUTER AIDED GEOMETRIC DESIGN. Thomas W. Sederberg

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

VALLIAMMAI ENGINEERING COLLEGE

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.

Rational Bezier Curves

Gardener s spline curve

Put your initials on the top of every page, in case the pages become separated.

Parametric Curves. University of Texas at Austin CS384G - Computer Graphics

Chapter 5. Projections and Rendering

GEOMETRY. slide #3. 6th Grade Math Unit 7. 6th Grade Unit 7: GEOMETRY. Name: Table of Contents. Area of Rectangles

f xx (x, y) = 6 + 6x f xy (x, y) = 0 f yy (x, y) = y In general, the quantity that we re interested in is

Suggested List of Mathematical Language. Geometry

Parametric Curves. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell

Parametric curves. Brian Curless CSE 457 Spring 2016

ECE 600, Dr. Farag, Summer 09

A Comprehensive Introduction to SolidWorks 2011

Conic Sections: Parabolas

Lesson 1. Unit 2 Practice Problems. Problem 2. Problem 1. Solution 1, 4, 5. Solution. Problem 3

Mathematics Curriculum

INSTRUCTIONS FOR THE USE OF THE SUPER RULE TM

The figures below are all prisms. The bases of these prisms are shaded, and the height (altitude) of each prism marked by a dashed line:

CURVES OF CONSTANT WIDTH AND THEIR SHADOWS. Have you ever wondered why a manhole cover is in the shape of a circle? This

Information Coding / Computer Graphics, ISY, LiTH. Splines

Part 3: 2D Transformation

Curves and Surfaces. Shireen Elhabian and Aly A. Farag University of Louisville

Bezier Curves. An Introduction. Detlef Reimers

Name: Let the Catmull-Rom curve q(u) be defined by the following control points: p 1 = 0, 1 p 2 = 1, 1 p 3 = 1, 0. p 2. p 1.

An introduction to interpolation and splines

form. We will see that the parametric form is the most common representation of the curve which is used in most of these cases.

Math 366 Lecture Notes Section 11.4 Geometry in Three Dimensions

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

Rewrite the equation in the left column into the format in the middle column. The answers are in the third column. 1. y 4y 4x 4 0 y k 4p x h y 2 4 x 0

Fall CSCI 420: Computer Graphics. 4.2 Splines. Hao Li.

Splines. Parameterization of a Curve. Curve Representations. Roller coaster. What Do We Need From Curves in Computer Graphics? Modeling Complex Shapes

Geometry: Semester 2 Practice Final Unofficial Worked Out Solutions by Earl Whitney

(Spline, Bezier, B-Spline)

7) Are HD and HA the same line?

The Essentials of CAGD

EM225 Projective Geometry Part 2

Moore Catholic High School Math Department

Lesson Polygons

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10

Conics on the Cubic Surface

6 Mathematics Curriculum

CS Object Representation. Aditi Majumder, CS 112 Slide 1

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

Geometry Vocabulary. Name Class

2D Object Definition (1/3)

Vocabulary. Term Page Definition Clarifying Example. cone. cube. cylinder. edge of a threedimensional. figure. face of a polyhedron.

Isometries. 1 Identifying Isometries

Module 3: Stand Up Conics

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Introduction p. 1 What Is Geometric Modeling? p. 1 Computer-aided geometric design Solid modeling Algebraic geometry Computational geometry

Curves and Surfaces Computer Graphics I Lecture 9

Lecture 17: Solid Modeling.... a cubit on the one side, and a cubit on the other side Exodus 26:13

PS Computational Geometry Homework Assignment Sheet I (Due 16-March-2018)

EXTREME POINTS AND AFFINE EQUIVALENCE

For each question, indicate whether the statement is true or false by circling T or F, respectively.

Topics and things to know about them:

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

Section 12.2: Quadric Surfaces

9. Three Dimensional Object Representations

CS 4620 Midterm 1. Tuesday 22 October minutes

6.854J / J Advanced Algorithms Fall 2008

1 Appendix to notes 2, on Hyperbolic geometry:

Geometry Vocabulary Math Fundamentals Reference Sheet Page 1

Outline. Properties of Piecewise Linear Interpolations. The de Casteljau Algorithm. Recall: Linear Interpolation

Killingly Public Schools. Grades Draft Sept. 2002

We can use square dot paper to draw each view (top, front, and sides) of the three dimensional objects:

Know it. Control points. B Spline surfaces. Implicit surfaces

Alaska Mathematics Standards Vocabulary Word List Grade 7

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

PRACTICAL GEOMETRY SYMMETRY AND VISUALISING SOLID SHAPES

Homework #2. Hidden Surfaces, Projections, Shading and Texture, Ray Tracing, and Parametric Curves

Lattice Polygon s and Pick s Theorem From Dana Paquin and Tom Davis 1 Warm-Up to Ponder

JEFFERSON COUNTY SCHOOLS 8th Grade Pacing Guide Suggested 9 Weeks Splits

Grade 9 Math Terminology

Analytic Geometry Vocabulary Cards and Word Walls Important Notes for Teachers:

Math 308, Section 101 Solutions to Study Questions for Final Exam (Thursday, December 16, 2004)

336 Geometry for computer graphics

Transcription:

CS362 Midterm Solution Fall 25. Geometric Transformation CS362 Midterm Solution (Fall 25) 5 points (a) [5 points] Find the 2D transformation matrix for the reflection about the y-axis transformation (i.e., x goes to x and y goes to y). Is it an Euclidean transformation? Why? Solution: Since x = x and y = y, the transformation matrix is x y = x y This is certainly an Euclidean transformation because Euclidean transformation include reflections, translations and rotations. (b) [ points] Find a projective transformation and its matrix that can map the points (, ) and (, ), or (,, ) and (,, ) in homogeneous coordinates, to infinity. What is the transformed result of the circle x 2 +y 2 = under your transformation? Note that there are two questions in this problem. Solution: The key is to find a projective transformation that can map both (,, ) and (,, ) to infinity (i.e., the third component of the result being zero). Since both points have a y- coordinatele, the third row of the desired projective transformation may have, and. Thus, the projective transformation can have the following form: a b c d e f We can fill in the remaining six entries, as long as the determinant of the matrix is non-zero. An easy choice would be and we have = and = Therefore, (,, ) and (,, ) are mapped to (,, ) (,, ), both being points at infinity. From the transformation matrix, we have x x y = y w w and, hence, x = x, y = w and w = y. Plugging these equations into the equation of the unit circle in homogenenous coordinate x 2 + y 2 w 2 = yields (x ) 2 +(w ) 2 (y ) 2 =. Rewriting this equation yields x 2 + y 2 =. Thus, under the computed projective transformation, the unit circle is mapped to a hyperbola!

CS362 Midterm Solution Fall 25 2 2. Representations (a) [ points] If two small boxes are subtracted from a large box, list the numbers of vertices, edges, faces, loops, shells and genus. In POV-Ray s language, the solid is constructed as follows: #declare Object = difference { box { < -, -, - >, <,, > } box { < -.75, -.75, -.75 >, < -.5, -.5, -.5 > } box { <.5,.5,.5 >, <.75,.75,.75 > } } Use your finding to verify the Euler-Poincaré formula. Solution: The following table summarizes all required values: Variable Value Reason V 8 3=24 there are three cubes each of which has 8 vertices E 2 3=36 there are three cubes each of which has 2 edges F 6 3=8 there are three cubes each of which has 6 faces G no penetrating holes S 3 one outside and two inside L 8 = F no holes on each face Therefore, we have the following verification: V E + F (L F ) 2(S G) =24 36 + 8 (8 8) 2(3 ) = and the Euler-Poincaré holds. (b) [ points] Why are the regularized Boolean operators used for constructive solid geometry rather than the traditional set operators. Use examples to illustrate your point. You must answer the question first, followed by examples to illustrate your answer. Otherwise, you will receive no credit. Solution: The result of applying the conventional set Boolean operators (i.e., set union, intersection and difference) to two solids may yield lower dimensional components. For example, the intersection of two cubic solids sharing a common face is that face which is a 2-dimensional object. The regularized Boolean operators are used to remove these lower dimensional components by taking the interior of the result and then wrapping it up with its closure. 3. [25 points] Suppose a polyhedron s faces are all triangles. The star of a given vertex consists of all triangles that are adjacent to this vertex listed in clockwise or counter-clockwise order. The link of the given vertex consists of all edges of the triangles in the star that are not adjacent to the given vertex. In the figure on the next page, the given vertex is the yellow square. Its star consists of all triangles whose vertices are the yellow square and its two adjacent circles, and the link is marked with thick light color edges. Suppose you have a winged-edge data structure of such a polyhedron. Design an algorithm that accepts a vertex and reports the star and link of this vertex in clockwise or counter clockwise order. Solution: If you did Exercise 2 correctly, this is a simple problem; otherwise, it could be a little difficult.

CS362 Midterm Solution Fall 25 3 procedure PrintStar(v: vertex) begin e = e original = Vertex table[v]; do if v = Edge table[e].start then // use right face next = Edge table[e].right predecessor; vertex = Edge table[e].end; edge = Edge table[e].right successor; else // use left face next = Edge table[e].left predecessor; vertex = Edge table[e].start; edge = Edge table[e].left successor; end if print vertex and edge e = next; while (e =e original ) end The idea of this algorithm is quite simple. We go through every triangle in clockwise order and print out the opposite vertex of v. The initial edge is saved to e original and e, and use e for working. For each e, if the given vertex v is its start vertex, we take the right face and the vertex on e that is different from v is in the link. In the algorithm above, the other vertex is saved to vertex. The next edge of e of the visited triangle, edge, is an edge of the link. To move to the next edge in clockwise order, we take the right predecessor of e. Ifv is the end vertex of e, we use the left face. After the if-then-else-end if, we print out vertex and edge, set e to next. This process continues until the next edge e is equal to the initial edge e original. 4. Bézier Curves Suppose a Bézier curve C(u) is defined by the following four control points in the xy-plane: P = ( 2, ), P =( 2, 4), P 2 =(2, 4) and P 3 =(2, ). Do the following problems: (a) [5 points] What is the degree of C(u)? Solution: The degree is equal to the number of control points minus. Therefore, the degree of the given Bézier curve is 3. (b) [ points] ABézier curve C(u) defined by three control points P, P and P 2 can only be a parabola. Why? Elaborate your answer in some details. Solution: It was discussed in class that polynomials (in parametric form) can only represent parabolas, and circles, ellipses and hyperbolas require the use of rational form. Since Bézier

CS362 Midterm Solution Fall 25 4 curves are parametric polynomial curves, they can only be parabolas. (c) [5 points] Compute C(/2) with de Casteljau s algorithm. You should show all computation steps and a diagram showing the de Casteljau net. You will receive no credit if you only provide a point and/or a diagram. Solution: Since u =.5, u =.5. The following shows the computation steps: Draw the diagram for yourself. ( 2, ) ( 2, 2) ( 2, 4) (, 3) (, 4) (, 3) (2, 4) (, 3) (2, 2) (2, ) (d) [ points] Divide the curve at C(/2), and list the control points of each curve segment in correct order. Solution: From the above diagram, the left curve segment on [,.5] is a Bézier curve of degree 3 defined by control points ( 2, ), ( 2, 2), (, 3) and (, 3), and the right curve segment on [.5,] is a Bézier curve of degree 3 defined by control points (, 3), (, 3), (2, 2) and (2, ). (e) [5 points] Increase the degree of the original curve by one. Draw a diagram that shows the original and degree-elevated control polygons. You will receive no credit if you only provide a diagram. Solution: The new curve has degree 4 and control points Q, Q, Q 2, Q 3 and Q 4, where Q = P, Q 4 = P 3, and ( Q = 3+ P + ) P =( 2, 3) 3+ ( 2 Q 2 = 3+ P + 2 ) P 2 =(, 4) 3+ ( 3 Q 3 = 3+ P 2 + 3 ) P 3 =(2, 3) 3+ Draw a diagram for yourself. (f) [ points] A programmer wrote a program for drawing Bézier curves. The following figure shows one of his result. This programmer is very certain that the curve is tangent to the first and last legs at the first and last control points, respectively. However, he suspects his program still has problems. Find all problems you can in this figure. You have to () identify each problem explicitly, and (2) provide a convincing explanation. You will receive no credit if you only provide an answer.

CS362 Midterm Solution Fall 25 5 Solution: Consider the straight line shown in the figure below. This line intersects the control polygon and the Bézier curve in two (square) and four (circular) points. This violates the variation diminishing property, and, as a result, this Bézier curve is incorrect. Moreover, since a portion of the curve is not in the convex hull of the control points, this violates the convex hull property. (g) [25 points] Suppose we have two Bézier curves, C (u) and C 2 (u), where C (u) is defined by control points P =(, 2), P =( 2, 2), P 2 =( 2, ) and P 3 =(, ), and C 2 (v) is defined by control points Q = P 3 =(, ), Q =(2, ), Q 2 =(2, 3) and Q 3 =(, 3), and u, v [, ]. Discuss the continuity at P 3 = Q =(, ). More precisely, are these two curves C -, C 2 -, G -, G 2 - and curvature continuous at (, )? You need to show your calculations. Without explicit calculation, you will receive no credit. Solution: Consider curve C (u) first. It has a degree of p = 3, and its first and second derivative curves are 3 C (u) = B 3,i (u)p i 2 C (u) = B 2,i (u) [3(P i+ P i )] C (u) = B,i (u) [6(P i+2 2P i+ + P i )] Since the first and second derivatives of C (u) atu = are C () and C (), respectively, we have C () = P 3 =(, ), C () = (6, ) and C () = (2, 2). Now consider curve C 2 (u). It has a degree of p = 3, and its first and second derivative curves are C 2 (u) = 3 B 3,i (u)q i

CS362 Midterm Solution Fall 25 6 C 2(u) = C 2(u) = 2 B 2,i (u) [3(Q i+ Q i )] B,i (u) [6(Q i+2 2Q i+ + Q i )] Since the first and second derivatives of C 2 (u) atu = are C 2() and C 2(), respectively, we have C 2 () = P 3 =(, ), C 2() = (6, ) and C 2() = ( 2, 8). Since C () = C 2 () = (, ), C (u) and C 2 (u) are C -continuous at (, ). Since C () = C 2() = (6, ), C (u) and C 2 (u) are C -continuous at (, ). They are also G -continuous at (, ). Since C () = (2, 2) C 2 () = ( 2, 8), C (u) and C 2 (u) are not C 2 -continuous at (, ). Since C () C 2 () = (24, 3), which is not parallel to the tangent vector (6, ) at (, ), C (u) and C 2 (u) are not G 2 -continuous at (, ). The curvature of C (u) at (, ) is computed as κ () = C () C (6,, ) (2, 2, ) C = () 3 (6,, ) 3 = 3 and the curvature of C 2 (u) atu = is computed as follows: κ 2 () = C 2 () C 2 C = 2 () 3 (6,, ) ( 2, 8, ) (6,, ) 3 = 2 Since κ () κ 2 (), C (u) and C 2 (u) are not curvature continuous at (, ). In summary, C (u) and C 2 (u) are C -, G - and C - continuous, but not G 2 -, C 2 - and curvature continuous at (, ).