Download presentation

Presentation is loading. Please wait.

Published byMyra Bledsoe Modified over 2 years ago

1
Anupam Saxena Associate Professor Indian Institute of Technology KANPUR

2
Geometric/PARAMETRIC Modeling Solid Modeling Perception of Solids Topology and Solids Solid Modeling 1- 2 Transformations and Projections 1-2 Modeling of Curves Representation, Differential Geometry Ferguson Segments Bezier Segments 1-2 B-spline curves 1- 5 NURBS Modeling of Surfaces (Patches) Differential Geometry Tensor Product Boundary Interpolating Composite NURBS Geometric/PARAMETRIC Modeling Solid Modeling Perception of Solids Topology and Solids Solid Modeling 1-2 Transformati ons and Projections 1-2 Modeling of Curves Representati on, Differential Geometry Ferguson Segments Bezier Segments 1- 2 B-spline curves 1-5 NURBS Modeling of Surfaces (Patches) Differential Geometry Tensor Product Boundary Interpolating Composite NURBS

3
Geometric/PARAMETRIC Modeling Solid Modeling Perception of Solids Topology and Solids Solid Modeling 1-2 Transformati ons and Projections 1-2 Modeling of Curves Representati on, Differential Geometry Ferguson Segments Bezier Segments 1- 2 B-spline curves 1-5 NURBS Modeling of Surfaces (Patches) Differential Geometry Tensor Product Boundary Interpolating Composite NURBS

4
Given n+1 control points b 0, b 1,..., b n, a knot vector T = {t 0, t 1,..., t m } the B-spline curve, b(t) of order p t0t0 t1t1 t2t2 … tptp tmtm tmptmp … t m p+1

5
– very similar to a Bézier curve wherein the basis functions are the Bernstein polynomials – In a Bézier curve, the degree of Bernstein basis functions is the same as the number of control points – For B-spline curves, the degree of the basis functions is an independent choice specified by the user – The number of knots (m+1) get determined by the relation, m = n + p - the total number of basis functions (n+1) = number of control points - P is the order of the B-spline basis functions and hence the curve

6
B-spline curve definition is valid for all t in [ , ], b(t) = 0 for t t 0 and t > t m range [t 0, t m ] seems reasonable More restrictive range: in which full support of the basis functions is achieved i.e., over any knot span [t j, t j+1 ) in [t 0, t m ], all p B-splines of order p are non-zero first such span is [t p-1, t p ) where N p,p, …, N p,2p-1 are non-zero last span is [t m-p, t m-p+1 ) where basis functions N p,m-p+1, …, N p,m are non-zero range of definition of a B-spline curve [t p-1, t m-p+1 ) wherein for any t all p basis functions are non-zero t0t0 t1t1 t2t2 … tptp tmtm tmptmp … t m p+1 t p-1 First span to include all p basis functions Last span to include all p basis functions

7
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10) X(t) Y(t) For data points, (0, 0), (0, 1), (2, 3), (2.5, 6), (5, 2), (6, 0) and (7, 3), design a B-spline curve Number of data points Order of basis function : 7 : 4 Number of knots: = 11 Our choice to specify knots [0, 3, 3, 3, 4, 5, 6, 7, 8, 9, 10) [0, 3, 3, 3, 4, 5, 6, 7, 7, 7, 10) 3 7 3

8
Strong Convex Hull Property: The B-spline curve, b(t) is contained in the convex hull defined by the polyline, [b j, b j+1,..., b j+p-1 ] for t in [t j+p-1, t j+p ). This convex hull is the subset of the parent hull [b 0, b 1,..., b n ] A B-spline curve is a piecewise curve with each component an order p segment Equality m = n + p must be satisfied t0t0 t1t1 tjtj t j+p tmtm tmptmp t m p+1 t j+p-1 t j+2p-1 … bjbj b j+p-1 p basis splines are barycentric Hence, the property

9
t < 4 4 t < 5 5 t < 6 6 t < 7 Actual Convex hull

10
b(t) is C p-k-1 continuous at a knot of multiplicity k At t = t i, a knot of multiplicity k, since N p,i (t) is C p-k-1 continuous, so is b(t) at that knot Local Modification Scheme: Relocating b i only affects the curve b(t) in the interval [t i, t i+p ) Let the control point b i be moved to a new position b i + v N p,i+p (t) is non-zero in [t i, t i+p )for t [t i, t i+p ), b(t) gets locally modified

11

12
Anupam Saxena Associate Professor Indian Institute of Technology KANPUR

13
Shape manipulation can be done using Control points knots Use strong convex hull property Use knot multiplicity Changing knot positions can also cause shape change but Is non-intuitive and thus avoided

14
Recall… Strong Convex Hull Property: The B-spline curve, b(t) is contained in the convex hull defined by the polyline, [b j, b j+1,..., b j+p-1 ] for t in [t j+p-1, t j+p ). This convex hull is the subset of the parent hull [b 0, b 1,..., b n ] WHAT if b i, b i+1,..., b i+p-1, all are in a straight line ? the curve segment lying their convex hull for t in [t i+p-1, t i+p ) will be a straight line What if p 1 of these control points are identical, say, b i = b i+1 =... b i+p-2 ? the convex hull degenerates to a line segment b i b i+p-1 and the curve passes through b i What if b i-1, b i = b i+1 =... b i+p-2 and b i+p-1 are collinear ? the line segment b i-1 b i+p-1 is tangent to the curve at b i

15

16

17

18

19

20
Changing knot positions can also cause shape change but is non-intuitive and thus NOT RECOMMENDED Change in curve’s shape using knot multiplicity is predictable Recall At a knot i of multiplicity k, the basis function N p i (t) is C p 1 k continuous at that knot At each internal knot of multiplicity k, the number of non-zero order p basis functions is at most p k

21
t0t0 t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 N 4,4 N 4,5 N 4,6 N 4,7 N 4,8 N 4,9 N 4,10 At t = t 5, N 4,9 = 0N 4,6 (t 5 ) + N 4,7 (t 5 ) + N 4,8 (t 5 ) = 1

22
t0t0 t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 N 4,6 N 4,7 N 4,8 N 4,9 For t 4 = t 5, N 4,8 = 0N 4,6 (t 5 ) + N 4,7 (t 5 ) = 1

23
t0t0 t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 N 4,6 N 4,7 N 4,8 N 4,9 For t 3 = t 4 = t 5, N 4,7 = 0N 4,6 (t 5 ) = 1 Control point associated with N 4,6 (t) is b 2 : the spline passes through b 2

24
if t i+1 = t i+2 =,…, = t i+p-1 with t i+p-1 having multiplicity p–1 only one basis function N p,i+p will be non-zero over t i+p-1 from the barycentric property, N p,i+p will be 1 the B-spline curve will pass through b i

25
t i = i, i = 0, …, 15 range of full support [3, 12) For spline to pass through (0, 0), the knot t = t 7 = 7 should have multiplicity 3. t 5 = t 6 = t 7 = 7 For spline to pass through (8, 0), the knot t = t 10 = 10 should have multiplicity 3. t 8 = t 9 = t 10 = 10

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google