Understanding B-Spline Curves: Properties and Derivatives
Explore the mathematical properties and derivatives of B-Spline curves in Computer Graphics, including basis functions, local control, interval, and derivative computation. Learn how to derive mathematical expressions for different properties and solve problems related to B-Splines. Understand the impact of multiple knots on basis function computation and the significance of knot multiplicity on non-zero domains.
Uploaded on Sep 22, 2024 | 0 Views
Download Presentation
Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
E N D
Presentation Transcript
CS552: Computer Graphics Lecture 22: B Spline Curve Properties
Recap B Spline o Degree o Knots o Local control B Spline Basis functions o Interval o Derivative
Objective After completing this lecture, students will be able to o Derive mathematical expressions for different properties of the B-Spline curve o Solve problems related to B Splines
B spline Curves The user supplies: the degree p, n+1 control points, and m+1 knot vectors Write the curve as: n ( ) t ( ) t = i = p P P N i i 0 The functions Nipare the B-Spline basis functions 0? = 1,?? ? ??+1 ?? ?????? Cox-de Boor recursion formula ?? ? 1? +??+?+1 ? ??+?+1 ?? ? ?? ??+? ?? ?? = ? 1? ?? ?? ??+1
Derivatives of B Spline Curve n ( ) t ( ) t = i = p P P N i i 0 The derivative of each of these basis functions can be computed as follows: ? ? ?? ? ? ?(?) = ? 1? ? 1? ? ? = ???? ?? ??+?+1 ??+1??+1 ??+? ?? ?=0 Plugging these derivatives back ? 1 ? ? ?? ? 1? ?? ? ???,??= ??+1 ?? ? ? = ??+1 ??+?+1 ??+1 ?=0 Derivative of a B-spline curve is another B-spline curve of degree ? ? on the original knot vector with a new set of ? control points, ??,??, ,?? ?
Properties of B-Spline p(?) is a degree ? polynomial in ? Ni ?(?) is non-negative Non-negativity: For all ?,? and ?, ?? ?(?) is a non-zero polynomial on ??,??+?+1 Local Support: ?? On any span ??,??+?+1, at most ? + ? degree ? basis functions are non-zero ?(?) , ?? ?+1 ? ?(?) o?? ? (?), , ?? Partition of Unity o The sum of all non-zero degree ? basis functions on span [??,??+?+1) is unity, i.e. ?=0 ?? ? = 1 ? ?
Properties of B-Spline m = n+p+1 ?(?) is a composite curve of degree ? polynomials Basis function ?? with joining points at knots in [??,??+?+1 ) ?(?) is Cp ?continuous. At a knot of multiplicity ?, basis function ?? Convex hull property
Impact of Multiple Knots Significant impact on the computation of basis functions Counting properties Each knot of multiplicity ? reduces at most ? ? basis functions' non-zero domain.
Impact of Multiple Knots At each internal knot of multiplicity k, the number of non-zero basis functions is at most p - k + 1, where p is the degree of the basis functions.
B Spline Moving Control Points Local control scheme p=4, n=12, m=17 Span [?4,?5) [?5,?6) [?6,?7) [?7,?8) [?8,?9) [?9,?10) [?10,?11) [?11,?12) [?12,?13) Segment 1 2 3 4 5 6 7 8 9
B-spline Curves: Knot insertion Adding a new knot into the existing knot vector o Without changing the shape of the curve. m = n + p + 1 Inserting a new knot causes a new control point to be added Some existing control points are removed and replaced with new ones by corner cutting.
Sub-division Follows exactly the same procedure for subdividing a B zier curve.
Thank you Next Lecture: Surface