Curves and surfaces


Published on

Alzaiem Alazhari University
Advanced Computer Graphics -Curves and Surfaces

Published in: Technology, Art & Photos
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Curves and surfaces

  1. 1. Curves and SurfaceAlzaiem Alazhari UniversityCollege of computer Science and Information TechnologyChapter 10 – Advanced Computer Graphics1
  2. 2. Curves and Surface The world around us is full of objects of remarkable shapes. Nevertheless, in computer graphics, we continue to populate our virtual worlds with flat objects. We have a good reason for such persistence. Graphics systems can render flat three-dimensional polygons at high rates, including doing hidden-surface removal, shading, and texture mapping.. 2
  3. 3. Curves and Surface We introduce three ways to model curves and surfaces, paying most attention to the parametric polynomial forms. We also discuss how curves and surfaces can be rendered on current graphics systems, a process that usually involves subdividing the curved objects into collections of flat primitives. 3
  4. 4. 4
  5. 5. REPRESENTATION OF CURVES AND SURFACES Explicit Representation  The explicit form of a curve in two dimensions  gives the value of one variable,  the dependent variable,  in terms of the other,  the independent variable.  In x, y space, we might write y = f (x).  a surface represented by an equation of the form z = f (x, y) 5
  6. 6. REPRESENTATION OF CURVES AND SURFACES Implicit Representations In two dimensions, an implicit curve can be represented by the equation f (x, y) = 0  The implicit form is less coordinate-system dependent than is the explicit form.  In three dimensions, the implicit form f (x, y, z) = 0  Curves in three dimensions are not as easily represented in implicit form.  We can represent a curve as the intersection, if it exists, of the two surfaces: f (x, y, z) = 0, g(x, y, z) = 0. 6
  7. 7. REPRESENTATION OF CURVES AND SURFACES Parametric Form  The parametric form of a curve expresses the value of each spatial variable for points on the curve in terms of an independent variable, u, the parameter. In three dimensions, we have three explicit functions: x = x(u) , y = y(u) , z = z(u).  One of the advantages of the parametric form is that it is the same in two and three dimensions. In the former case, we simply drop the equation for z.  Parametric surfaces require two parameters. We can describe a surface by three equations of the form : x = x(u, v) , y = y(u, v) , z = z(u, v), 7
  8. 8. 8
  9. 9. DESIGN CRITERIA There are many considerations that determine why we prefer to use parametric polynomials of low degree, including:  Local control of shape  Smoothness and continuity  Ability to evaluate derivatives  Stability  Ease of rendering 9
  10. 10. CROSSE SECTIONApproximation of cross-section curve Derivative discontinuity at join point10
  11. 11. PARAMETRIC CUBIC POLYNOMIAL CURVES Once we have decided to use parametric polynomial curves, we must choose the degree of the curve. if we choose a high degree, we will have many parameters that we can set to form the desired shape, but evaluation of points on the curve will be costly. In addition, as the degree of a polynomial curve becomes higher, there is more danger that the curve will become rougher. On the other hand, if we pick too low a degree, we may not have enough parameters with which to work. 11
  12. 12. PARAMETRIC CUBIC POLYNOMIAL CURVES However, if we design each curve segment over a short interval, we can achieve many of our purposes with low- degree curves. Although there may be only a few degrees of freedom these few may be sufficient to allow us to produce the desired shape in a small region. For this reason, most designers, at least initially, work with cubic polynomial curves 12
  13. 13. Cubic interpolating polynomial• First example of a cubic parametric polynomial.• Although we rarely used• Illustrates the steps we must follow for our other types . 13
  14. 14. Interpolating Curve• Given 4 control points P0, P1, P2, P3• Space 0 <= u <= 1 evenly• P0 = P(0), P1 = P(1/3), P2 = P(2/3), P3 = P(1) 14
  15. 15. Interpolation Equations Apply the interpolating conditions at u=0, 1/3, 2/3, 1 15
  16. 16. Interpolation Equations We can write these equations in matrix form as 16
  17. 17. Interpolation Matrix Solving for c we find the interpolation matrix 17
  18. 18. Blending Functions Rewriting the equation for p(u) . 18
  19. 19. The Cubic Interpolating Patch Shows that we can build and analyze surfaces from our knowledge of curves 19
  20. 20. HERMITE CURVES AND SURFACES Another cubic polynomial curve Specify two endpoints and their tangents 20
  21. 21. The Hermite Form As Before Calculate derivative Yields 21
  22. 22. Bezier Curves Widely used in computer graphics Approximate tangents by using control points 22
  23. 23. Analysis Bezier form Is much better than the interpolating form But the derivatives are not continuous at join points What shall we do to solve this ? 23
  24. 24. B-Splines Basis Splines Allows us to apply more continuity the curve must lie in the convex hull of the control points 24
  25. 25. Spline Surfaces B-spline surfaces can be defined in a similar way 25
  26. 26. GENERAL B-SPLINES We can extend to splines of any degree Data and conditions to not have to given at equally spaced values (the knots)  Nonuniform and uniform splines  Can have repeated knots Cox-deBoor recursion gives method of evaluation 26
  27. 27. NURBS Nonuniform Rational B-Spline curves and surfaces add a fourth variable w to x,y,z  Can interpret as weight to give more importance to some control data  Can also interpret as moving to homogeneous coordinate Requires a perspective division  NURBS act correctly for perspective viewing Quadrics are a special case of NURBS 27
  28. 28. Rendering Curves and Surfaces Introduce methods to draw curves For explicit and parametric: we can evaluate the curve or surface at a sufficient number of points that we can approximate it with our standard flat objects For implicit surfaces: we can compute points on the object that are the intersection of rays from the center of projection through pixels with the object 28
  29. 29. Evaluating Polynomials Simplest method to render a polynomial curve is to evaluate the polynomial at many points and form an approximating polyline For surfaces we can form an approximating mesh of triangles or quadrilaterals Use Horner’s method to evaluate polynomials p(u)=c0+u(c1+u(c2+uc3)) 29
  30. 30. Recursive Subdivision of Be´zier Polynomials The most elegant rendering method performs based on the use of the convex hull ‫الهياكل المحدبة‬ never requires explicit evaluation of the polynomial ‫ال يتطلب‬ ‫عرض واضح لكثيرة الحدود‬ 30
  31. 31. THE UTAH TEAPOT Most famous data set in computer graphics Widely available as a list of 306 3D vertices and the indices that define 32 Bezier patches 31
  32. 32. THE UTAH TEAPOT - con We can shows the teapot as a wireframe and with constant shading 32
  33. 33. ALGEBRAIC SURFACES - Quadrics Although quadrics can be generated as special case of NURBS curves Quadrics are described by implicit algebraic equations Quadric can be written in the form : 33
  34. 34. Quadrics This class of surfaces includes ellipsoids, parabaloids, and hyperboloids We can write the general equation 34
  35. 35. Rendering of Surfaces by Ray Casting Quadrics are easy to render we can find the intersection of a quadric with a ray by solving a scalar quadratic equation We represent the ray from p0 in the direction d parametrically as scalar equation for α: 35
  37. 37. Mesh Subdivision A theory of subdivision surfaces has emerged that deals with both the theoretical and practical aspects of these ideas. We have two type of meshes:  triangles meshes.  quadrilaterals meshes. 37
  38. 38. 38
  39. 39. Meshes methods Catmull Clark method: use to form a quadrilateral mesh. produces a smoother surface This method tends to move edge vertices at corners more than other outer vertices. 39
  40. 40. 40
  41. 41. 2- Loop subdivision method:- 41
  42. 42. 42
  43. 43. 43
  44. 44. Seminar Team: Theoretical :  Mawada Sayed Mohammed Mohammed  Mohammed Mahmoud Ibrahim Musa  Hams Ibrahim Mohammed Idris  Abdallah Ahmed Modawi Mohammed  Ethar Abasher Musa Hamad Practical :  Mujahid Ahmed Mohammed Babeker  Eltayb Babeker Mohammed Ahmed  Salah Eldeen Mohammed Ismail Ibrahim 44
  45. 45. Any Questions ?45