SlideShare ist ein Scribd-Unternehmen logo
1 von 45
Downloaden Sie, um offline zu lesen
Curves and Surface

Alzaiem Alazhari University
College of computer Science and Information Technology
Chapter 10 – Advanced Computer Graphics




1
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
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
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
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
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
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
CROSSE SECTION




Approximation of cross-section curve   Derivative discontinuity at join point
10
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
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
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
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
Interpolation Equations



    Apply the interpolating conditions at u=0, 1/3, 2/3, 1




    15
Interpolation Equations
    We can write these equations in matrix form as




    16
Interpolation Matrix
    Solving for c we find the interpolation matrix




    17
Blending Functions
    Rewriting the equation for p(u) .




    18
The Cubic Interpolating Patch
    Shows that we can build and analyze surfaces from our
     knowledge of curves




    19
HERMITE CURVES AND SURFACES
    Another cubic polynomial curve
    Specify two endpoints and their tangents




    20
The Hermite Form

    As Before



    Calculate derivative



    Yields




    21
Bezier Curves
    Widely used in computer graphics
    Approximate tangents by using control points




    22
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
B-Splines
    Basis Splines
    Allows us to apply more continuity
    the curve must lie in the convex hull of the control points




    24
Spline Surfaces
    B-spline surfaces can be defined in a similar way




    25
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
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
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
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
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
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
THE UTAH TEAPOT - con
    We can shows the teapot as a wireframe and with
     constant shading




    32
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
Quadrics
    This class of surfaces includes ellipsoids, parabaloids, and
     hyperboloids
    We can write the general equation




    34
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
SUBDIVISION CURVES AND SURFACES




36
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
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
2- Loop subdivision method:-




 41
42
43
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
Any Questions ?



45

Weitere ähnliche Inhalte

Was ist angesagt?

Window to viewport transformation
Window to viewport transformationWindow to viewport transformation
Window to viewport transformation
Ankit Garg
 

Was ist angesagt? (20)

Back face detection
Back face detectionBack face detection
Back face detection
 
Unit 3
Unit 3Unit 3
Unit 3
 
Computer graphics notes
Computer graphics notesComputer graphics notes
Computer graphics notes
 
Bresenham circle
Bresenham circleBresenham circle
Bresenham circle
 
HOMOGENEOUS CO-ORDINATES IN COMPUTER GRAPHICS PPT
HOMOGENEOUS CO-ORDINATES IN COMPUTER GRAPHICS PPTHOMOGENEOUS CO-ORDINATES IN COMPUTER GRAPHICS PPT
HOMOGENEOUS CO-ORDINATES IN COMPUTER GRAPHICS PPT
 
Output primitives in Computer Graphics
Output primitives in Computer GraphicsOutput primitives in Computer Graphics
Output primitives in Computer Graphics
 
Projection In Computer Graphics
Projection In Computer GraphicsProjection In Computer Graphics
Projection In Computer Graphics
 
Depth Buffer Method
Depth Buffer MethodDepth Buffer Method
Depth Buffer Method
 
Shading
ShadingShading
Shading
 
Character generation techniques
Character generation techniquesCharacter generation techniques
Character generation techniques
 
3D transformation in computer graphics
3D transformation in computer graphics3D transformation in computer graphics
3D transformation in computer graphics
 
Window to viewport transformation
Window to viewport transformationWindow to viewport transformation
Window to viewport transformation
 
3D Transformation
3D Transformation3D Transformation
3D Transformation
 
Monitors & workstation,Donald ch-2
Monitors & workstation,Donald ch-2Monitors & workstation,Donald ch-2
Monitors & workstation,Donald ch-2
 
Composite transformation
Composite transformationComposite transformation
Composite transformation
 
Dda algorithm
Dda algorithmDda algorithm
Dda algorithm
 
2 d viewing computer graphics
2 d viewing computer graphics2 d viewing computer graphics
2 d viewing computer graphics
 
Computer graphics chapter 4
Computer graphics chapter 4Computer graphics chapter 4
Computer graphics chapter 4
 
Computer graphics realism
Computer graphics realismComputer graphics realism
Computer graphics realism
 
Halftoning in Computer Graphics
Halftoning  in Computer GraphicsHalftoning  in Computer Graphics
Halftoning in Computer Graphics
 

Andere mochten auch (16)

Curves And Surfaces Representation And Application
Curves And Surfaces Representation And ApplicationCurves And Surfaces Representation And Application
Curves And Surfaces Representation And Application
 
Engineering garphics section and development
Engineering garphics   section and developmentEngineering garphics   section and development
Engineering garphics section and development
 
Curves
CurvesCurves
Curves
 
Geometric model & curve
Geometric model & curveGeometric model & curve
Geometric model & curve
 
Presentation on bezier curve
Presentation on bezier curvePresentation on bezier curve
Presentation on bezier curve
 
Windows to viewport transformation
Windows to viewport transformationWindows to viewport transformation
Windows to viewport transformation
 
Coons bicubic surface
Coons bicubic surfaceCoons bicubic surface
Coons bicubic surface
 
Surface representation
Surface representationSurface representation
Surface representation
 
Hermite bicubic-surface-patch
Hermite bicubic-surface-patchHermite bicubic-surface-patch
Hermite bicubic-surface-patch
 
Windows and viewport
Windows and viewportWindows and viewport
Windows and viewport
 
B spline
B splineB spline
B spline
 
Group Technology
Group TechnologyGroup Technology
Group Technology
 
Cellular manufacturing and group technology
Cellular manufacturing and group technologyCellular manufacturing and group technology
Cellular manufacturing and group technology
 
FLEXIBLE MANUFACTURING SYSTEM
FLEXIBLE MANUFACTURING SYSTEMFLEXIBLE MANUFACTURING SYSTEM
FLEXIBLE MANUFACTURING SYSTEM
 
Concurrent Engineering
Concurrent EngineeringConcurrent Engineering
Concurrent Engineering
 
Concurrent Engineering
Concurrent EngineeringConcurrent Engineering
Concurrent Engineering
 

Ähnlich wie Curves and surfaces

UNIT 2 GEOMETRIC MODELING.pptx
UNIT 2  GEOMETRIC MODELING.pptxUNIT 2  GEOMETRIC MODELING.pptx
UNIT 2 GEOMETRIC MODELING.pptx
CHINNARASUK
 
57892883 geometric-modeling
57892883 geometric-modeling57892883 geometric-modeling
57892883 geometric-modeling
manojg1990
 
57892883 geometric-modeling
57892883 geometric-modeling57892883 geometric-modeling
57892883 geometric-modeling
manojg1990
 
ResearchPaper
ResearchPaperResearchPaper
ResearchPaper
Ian Bloom
 
Beginning direct3d gameprogrammingmath01_primer_20160324_jintaeks
Beginning direct3d gameprogrammingmath01_primer_20160324_jintaeksBeginning direct3d gameprogrammingmath01_primer_20160324_jintaeks
Beginning direct3d gameprogrammingmath01_primer_20160324_jintaeks
JinTaek Seo
 

Ähnlich wie Curves and surfaces (20)

Implicit Interpolation Analytical Curves
Implicit Interpolation Analytical CurvesImplicit Interpolation Analytical Curves
Implicit Interpolation Analytical Curves
 
Curves
CurvesCurves
Curves
 
UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )
UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )
UNIT II GEOMETRIC MODELING (COMPUTER AIDED DESIGN AND MANUFACTURING )
 
CAD
CADCAD
CAD
 
Unit 2-ME8691 & COMPUTER AIDED DESIGN AND MANUFACTURING
Unit 2-ME8691 & COMPUTER AIDED DESIGN AND    MANUFACTURINGUnit 2-ME8691 & COMPUTER AIDED DESIGN AND    MANUFACTURING
Unit 2-ME8691 & COMPUTER AIDED DESIGN AND MANUFACTURING
 
Synthetic Curves.pdf
Synthetic Curves.pdfSynthetic Curves.pdf
Synthetic Curves.pdf
 
UNIT 2-Geometric Modeling.pptx
UNIT 2-Geometric Modeling.pptxUNIT 2-Geometric Modeling.pptx
UNIT 2-Geometric Modeling.pptx
 
Cs8092 computer graphics and multimedia unit 3
Cs8092 computer graphics and multimedia unit 3Cs8092 computer graphics and multimedia unit 3
Cs8092 computer graphics and multimedia unit 3
 
Geometric modeling
Geometric modelingGeometric modeling
Geometric modeling
 
Geomentric Modelling
Geomentric Modelling Geomentric Modelling
Geomentric Modelling
 
Image segmentation
Image segmentationImage segmentation
Image segmentation
 
UNIT 2 GEOMETRIC MODELING.pptx
UNIT 2  GEOMETRIC MODELING.pptxUNIT 2  GEOMETRIC MODELING.pptx
UNIT 2 GEOMETRIC MODELING.pptx
 
57892883 geometric-modeling
57892883 geometric-modeling57892883 geometric-modeling
57892883 geometric-modeling
 
57892883 geometric-modeling
57892883 geometric-modeling57892883 geometric-modeling
57892883 geometric-modeling
 
ResearchPaper
ResearchPaperResearchPaper
ResearchPaper
 
Techniques for Geometric Modelling
Techniques for Geometric ModellingTechniques for Geometric Modelling
Techniques for Geometric Modelling
 
NCIT civil Syllabus 2013-2014
NCIT civil Syllabus 2013-2014NCIT civil Syllabus 2013-2014
NCIT civil Syllabus 2013-2014
 
Beginning direct3d gameprogrammingmath01_primer_20160324_jintaeks
Beginning direct3d gameprogrammingmath01_primer_20160324_jintaeksBeginning direct3d gameprogrammingmath01_primer_20160324_jintaeks
Beginning direct3d gameprogrammingmath01_primer_20160324_jintaeks
 
Surface models
Surface modelsSurface models
Surface models
 
1st trimester exam coverage
1st trimester exam coverage1st trimester exam coverage
1st trimester exam coverage
 

Kürzlich hochgeladen

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Kürzlich hochgeladen (20)

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 

Curves and surfaces

  • 1. Curves and Surface Alzaiem Alazhari University College of computer Science and Information Technology Chapter 10 – Advanced Computer Graphics 1
  • 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. 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
  • 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. 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. 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
  • 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. CROSSE SECTION Approximation of cross-section curve Derivative discontinuity at join point 10
  • 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. 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. 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. 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. Interpolation Equations  Apply the interpolating conditions at u=0, 1/3, 2/3, 1 15
  • 16. Interpolation Equations  We can write these equations in matrix form as 16
  • 17. Interpolation Matrix  Solving for c we find the interpolation matrix 17
  • 18. Blending Functions  Rewriting the equation for p(u) . 18
  • 19. The Cubic Interpolating Patch  Shows that we can build and analyze surfaces from our knowledge of curves 19
  • 20. HERMITE CURVES AND SURFACES  Another cubic polynomial curve  Specify two endpoints and their tangents 20
  • 21. The Hermite Form  As Before  Calculate derivative  Yields 21
  • 22. Bezier Curves  Widely used in computer graphics  Approximate tangents by using control points 22
  • 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. B-Splines  Basis Splines  Allows us to apply more continuity  the curve must lie in the convex hull of the control points 24
  • 25. Spline Surfaces  B-spline surfaces can be defined in a similar way 25
  • 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. 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. 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. 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. 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. 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. THE UTAH TEAPOT - con  We can shows the teapot as a wireframe and with constant shading 32
  • 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. Quadrics  This class of surfaces includes ellipsoids, parabaloids, and hyperboloids  We can write the general equation 34
  • 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
  • 36. SUBDIVISION CURVES AND SURFACES 36
  • 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
  • 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
  • 41. 2- Loop subdivision method:- 41
  • 42. 42
  • 43. 43
  • 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