1 / 26

Graphics II 91.547 B-Splines NURBS

Graphics II 91.547 B-Splines NURBS. Session 3A. B-splines. Suppose you wanted C 0 , C 1 and C 2 continuity at curve boundaries. Use all four control points to determine boundary continuities and only require that the curve pass “close” to the points. B-splines: Sharing of Control Points.

porter
Download Presentation

Graphics II 91.547 B-Splines NURBS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Graphics II 91.547B-SplinesNURBS Session 3A

  2. B-splines Suppose you wanted C0, C1 and C2continuity at curve boundaries. Use all four control points to determine boundary continuities and only require that the curve pass “close” to the points.

  3. B-splines: Sharing of Control Points

  4. B-splines: Using continuity requirements tocompute geometry matrix/blending functions C0 continuity here requires:

  5. B-splines: Using continuity requirements tocompute geometry matrix/blending functions

  6. B-splines: Using continuity requirements tocompute geometry matrix/blending functions Similarly, the C1 and C2 continuity conditions give:

  7. B-spline blending functions 1 0

  8. B-splines:Local versus global parameter

  9. B-splines:Recursively defined basis functions Order i For any “knot vector”:

  10. First order basis functions:

  11. Second order basis functions:

  12. Knot Vectors Only Requirement: Image: David Rogers

  13. Definition of B Spline Curve Order of the spline Number of control points Number of knots in knot vector * * Notation according to D.F. Rogers

  14. Knot Vectors:Open, Uniform Result: spline passes through end control vertices Image: David Rogers

  15. Building Up Basis Functions Image: David Rogers

  16. Methods of Control • Change number and/or position of control vertices • Change order k • Change type of knot vector • Open uniform • Open non uniform • Use multiple coincident control vertices • Use multiple internal knot values Image: David Rogers

  17. Control: Change Order Image: David Rogers

  18. Control: Non Uniform Knot Vectors Image: David Rogers

  19. Control: Knot Vector Type Image: David Rogers

  20. Control:Multiple Coincident Vertices Image: David Rogers

  21. Control: Duplicate Knot Values Image: David Rogers

  22. Rational B-Splines (NURBS) Equivalency between Homogeneous representations: Doing the perspective division gives: Interpreted as “weighting factor” for control vertices

  23. NURBSEffect of weighting factor Image: David Rogers

  24. Drawing NURBS in OpenGL GLUnurbsObj *curveName; curveName = gluNewNurbsRenderer(); gluBeginCurve (curveName); gluNurbsCurve (curveName, nknots, *knotVector, stride, *ctrlPts, degParam, GL_MAP1_VERTEX_3); gluEndCurve (curveName); See OpenGL Programming Guide Ch. 12 for details of using the glu NURBS interface

  25. NURBS:Code Example 120 goto 120

  26. Extending from Curves to Surfaces • Cartesian product of B-Spline basis functions • Order can be different for u and v directions

More Related