SlideShare ist ein Scribd-Unternehmen logo
1 von 22
NURBS
             n
   P(u) = ∑ wiNi,k(u)pi
            i=0
                 n
           ∑ wiNi,k(u)
             i=0

 NURBS curve degree = k-1
 P0, P1,..Pn – control points
 Knot vector u = (u0, u1…um)
 W= (w0, w1…wm) – weight  non negative
 The number of control points and the number
  of weights must agree
 Use homogenous coordinates
NURBS
If all wi are set to the value 1 or all wi have the
 same value  we have the standard B-Spline
 curve
NURBS curve equation is a general form that can
 represent both B-Spline and NURBS curves. A
 Bezier curve is a special case of a B-Spline curve,
 so the NURBS equation can also represent Bezier
 and rational Bezier curves.
NURBS :important properties
 NURBS have all properties of B-Spline.(pls refer to
  the notes)
 Extra properties
   More versatile modification of a curve becomes
     possible if the curve is represented by a NURBS
     equation. It is due to  B-spline curve is modified by
     changing the x, y, z coord, but NURBS curve use
     homogenous coord (x, y, z, h)
    Or B-Spline (degree, control points & knots) but
     NURBS (degree, control points, knots & weights)
NURBS :important properties
• Extra properties (cont)
  – NURBS equations can exactly represent the conic curves
     (circles, ellipse, parabola…)
  – Projective invariance  If a projective transformation is
     applied to a NURBS curve, the result can be constructed from
     the projective images of its control points. Therefore, we do
     not have to transform the curve. We can obtain the correct
     view (no distortion).
   * Bézier curves and B-spline curves only satisfy the affine
     invariance property rather than this projective invariance
     property. This is because only NURBS curves involve
     projective transformations.
NURBS : modifying weights
increasing the value of wi will pull the curve toward
 control point Pi. In fact, all affected points on the
 curve will also be pulled in the direction to Pi
When wi approaches infinity, the curve will pass
 through control point Pi
decreasing the value of wi will push the curve away
 from control point Pi
NURBS : modifying weights
NURBS : circle
NURBS equations represents the circle
  Consider a half circle
  Split the half circle into two circular arcs -1 and 2
  (actually many ways)


                             P2
                   P3                 P1
                         2        1
                  P4                  P0
NURBS : circle
•   Consider arc 1
•   Conic section (quadratic) – degree = 2
•   3 control points, P0= (1,0) ,P1 =(1,1), P2 = (0,1)
•   Knot value (0,0,0,1,1,1)
•   Weights w0 =1 w1 = cos θ = cos 45 = 1/√2 w2=1

                       P2
                            θ
                                P1
                            1
                                P0
NURBS : circle
• Follow the same procedure for arc 2
• We obtain
   P2= (0,1) ,P3 =(-1,1), P4 = (-1,0)
   Weights w2 =1, w3 = cos 45 = 1/√2, w4=1
Knot value =(0, 0, 0,1,1,1) shifted to (1, 1, 1, 2, 2, 2)
  for the composition
                           P2
                  P3
                       2
                 P4
NURBS : circle
• Composite curve (arc 1 and arc 2)
• P0= (1,0) ,P1 =(1,1), P2 = (0,1),P3 =(-1,1), P4 = (-1,0)
• Weights w0 =1 w1 = 1/√2 w2=1, w3 = 1/√2, w4=1
   k = 3, n= 4 number of knot = 8
   Knot value =(0, 0, 0,1,1,1) + (1, 1, 1, 2, 2, 2)
     Knot value = (0, 0, 0, 1, 1, 1, 2, 2, 2) shift 1 value
              (0, 0, 0,1, 1, 2, 2, 2)
                              P2
                     P3                P1
                          2        1
                    P4                 P0
NURBS : circle
                            P2
• So, for a circle P3                P1
                        2        1
                  P4                  P0 P8


                  P5                 P7
                             P6

• P0= P8= (1,0) ,P1 =(1,1), P2 = (0,1),P3 =(-1,1),
  P4 = (-1,0), P5 =(-1,-1), P6 =(0,-1), P7 =(1,-1)
• Weights w0 =1 w1 = 1/√2 w2=1, w3 = 1/√2, w4=1
   k = 3, n= 8 number of knot = 12
              (0, 0, 0,1, 1, 2, 2, 3, 3, 4, 4, 4)
NURBS : circle
Other way  split into 3 arcs
θ = 60°            P3


             P2         P4


                  θ
        P1                   P5
                  P0
NURBS : circle
show that NURBS equations exactly represent the circle
Consider arc 1
NURBS equation is
  P(u) = ∑ wiNi,k(u)pi
         ∑ wiNi,k(u)
P(u) = w0P0N0, 3(u) + w1P1N1, 3(u) + w2P2N2, 3(u)
         w0N0, 3(u) + w1N1, 3(u) + w2N2, 3(u)
NURBS : circle
• w0 = w2 =1, w1 = √2 /2
• N0, 3= (1-u) 2, N1, 3= 2u(1-u), N2, 3= u2  pls refer to last topic
    (Curve1.pdf, slide 30)
•   P(u) = P0 (1-u) 2 +√2 /2[P1 2u(1-u)]+ P2 u2
•              (1-u) 2 +√2 /2[ 2u(1-u)]+ u2
•   P0 = [1,0,1] P1 = [1,1,1], P2 = [0,1,1]  homogenous
•   x(u) = (1- √2) u2 +√2 (1-√2)u + 1
•            (2- √2) u2 +(√2-2)u + 1
•   y(u) = ( 1- √2) u2 +√2u           .
•           (2- √2) u2 +(√2-2)u + 1
•   x(u) 2 + y(u) 2 = 1 - circle radius 1  prove!!
Knot Insertion : NURBS
three steps:
 (1) converting the given NURBS curve in 3D to a
  B-spline curve in 4D
(2) performing knot insertion to this four
  dimensional B-spline curve
 (3) projecting the new set of control points
  back to 3D to form the the new set of control
  points for the given NURBS curve.
Knot Insertion : NURBS
                                                   u0 to u3        u4        u5 to u8
                                                   0           0.5           1
 EXAMPLE
 a NURBS curve of degree 3 with a knot vector as follows:


 5 control points in the xy-plane and weights:




 Insert new knot t = 0.4

                            P0          P1         P2         P3        P4
                X        -70          -70         74         74      -40
                Y        -76          75          75         -77     -76
                w        1            0.5         4          5       1
Knot Insertion : NURBS
t= 0.4 lies in knot span [u3 ,u4)
the affected control points are P3, P2, P1 and P0.
1) convert to 3D B-Spline (homogenous coord)  multiply
  all control points with their corresponding weights

                       Pw0    Pw1    Pw2    Pw3
                X      -70    -35 296      370
                Y      -76    37.5 300     -385
                w      1      0.5 4        5
Knot Insertion : NURBS
2) Perform knot insertion
compute a3, a2 and a1
a3 = t - u3 = 0.4 –0 = 0.4
     u6 -u3 1 – 0
a2 = t - u2 = 0.4 –0 = 0.4
     u5 -u2 1 – 0
a1 = t – u1 = 0.4 –0 = 0.8
     u4 -u1 0.5 – 0
Knot Insertion : NURBS
2) Perform knot insertion (cont)
• The new control points Qw3, Qw2 and Qw1 are:
• Qw3 = (1-a3)Pw2+ a3Pw3 = (325.6, 26, 4.4)
• Qw2 = (1-a2)Pw1+ a2Pw2 = (97.4, 142.5, 1.9)
• Qw1 = (1-a1)Pw0+ a1Pw1 = (-42, 14.8, 0.6)
Knot Insertion : NURBS
3) Projecting these control points back to 2D by
 dividing the first two components with the third (the
 weight),
Q3 = (74, 5.9 ) with weight 4.4
Q2 = (51.3, 75 ) with weight 1.9
Q1 = (-70, 24.6) with weight 0.6
Knot Insertion : NURBS after
 *control points in the xy-plane and weights
   knot insertion
             P0     Q1      Q2    Q3    P3    P4
     X      -70     74     51.3 -70 74       -40
     Y      -76     5.9    75   24.6 -77     -76
     w      1       4.4    1.9 0.6 5         1
 *new knot vector
              u0 to u3      u4     u5    u6 to u9
              0           0.4    0.5     1

Weitere ähnliche Inhalte

Was ist angesagt?

Hermite bicubic-surface-patch
Hermite bicubic-surface-patchHermite bicubic-surface-patch
Hermite bicubic-surface-patch
Rohit Gothwal
 
Part 4-Types and mathematical representations of Curves .pptx
Part 4-Types and mathematical representations of Curves .pptxPart 4-Types and mathematical representations of Curves .pptx
Part 4-Types and mathematical representations of Curves .pptx
Khalil Alhatab
 

Was ist angesagt? (20)

Assembly modelling
Assembly modellingAssembly modelling
Assembly modelling
 
Hermite bicubic-surface-patch
Hermite bicubic-surface-patchHermite bicubic-surface-patch
Hermite bicubic-surface-patch
 
Curves
CurvesCurves
Curves
 
Unit 4 assembly of parts
Unit 4 assembly of partsUnit 4 assembly of parts
Unit 4 assembly of parts
 
Cad standards
Cad standardsCad standards
Cad standards
 
visual realism in geometric modeling
visual realism in geometric modelingvisual realism in geometric modeling
visual realism in geometric modeling
 
Introduction to solid modeling
Introduction to solid modelingIntroduction to solid modeling
Introduction to solid modeling
 
Synthetic curve
Synthetic curveSynthetic curve
Synthetic curve
 
Bezier Curve and Spline Curve
Bezier Curve and Spline CurveBezier Curve and Spline Curve
Bezier Curve and Spline Curve
 
Geometric Modelling approaches
Geometric Modelling approachesGeometric Modelling approaches
Geometric Modelling approaches
 
ME6501 Unit 2 geometric modeling
ME6501 Unit 2 geometric modelingME6501 Unit 2 geometric modeling
ME6501 Unit 2 geometric modeling
 
Solid modeling-Sweep Representation and B-representation
Solid modeling-Sweep Representation and B-representationSolid modeling-Sweep Representation and B-representation
Solid modeling-Sweep Representation and B-representation
 
Solids
SolidsSolids
Solids
 
Curves wire frame modelling
Curves wire frame modellingCurves wire frame modelling
Curves wire frame modelling
 
Bezeir curve na B spline Curve
Bezeir curve na B spline CurveBezeir curve na B spline Curve
Bezeir curve na B spline Curve
 
Part 4-Types and mathematical representations of Curves .pptx
Part 4-Types and mathematical representations of Curves .pptxPart 4-Types and mathematical representations of Curves .pptx
Part 4-Types and mathematical representations of Curves .pptx
 
Surface modelling
Surface modellingSurface modelling
Surface modelling
 
B-spline
B-spline B-spline
B-spline
 
Hermit curves & beizer curves
Hermit curves & beizer curvesHermit curves & beizer curves
Hermit curves & beizer curves
 
Solid modelling
Solid modellingSolid modelling
Solid modelling
 

Andere mochten auch

B spline surfeces
B spline surfecesB spline surfeces
B spline surfeces
ramac123
 

Andere mochten auch (11)

An introduction to isogeometric analysis
An introduction to isogeometric analysisAn introduction to isogeometric analysis
An introduction to isogeometric analysis
 
On NURBS Geometry Representation in 3D modelling
On NURBS Geometry Representation in 3D modellingOn NURBS Geometry Representation in 3D modelling
On NURBS Geometry Representation in 3D modelling
 
CS 354 Bezier Curves
CS 354 Bezier Curves CS 354 Bezier Curves
CS 354 Bezier Curves
 
Curves and surfaces
Curves and surfacesCurves and surfaces
Curves and surfaces
 
Curve and surface interpolation and approximation
Curve and surface interpolation and approximationCurve and surface interpolation and approximation
Curve and surface interpolation and approximation
 
B spline surfeces
B spline surfecesB spline surfeces
B spline surfeces
 
B spline
B splineB spline
B spline
 
Bezier Curve
Bezier Curve Bezier Curve
Bezier Curve
 
Bezier curves
Bezier curvesBezier curves
Bezier curves
 
3 d viewing
3 d viewing3 d viewing
3 d viewing
 
Nc Machine
Nc MachineNc Machine
Nc Machine
 

Ähnlich wie Nurbs (1)

planes and distances
planes and distancesplanes and distances
planes and distances
Elias Dinsa
 
ANAND CLASSES-Best NDA Coaching Center In Jalandhar Punjab-Coaching Classes F...
ANAND CLASSES-Best NDA Coaching Center In Jalandhar Punjab-Coaching Classes F...ANAND CLASSES-Best NDA Coaching Center In Jalandhar Punjab-Coaching Classes F...
ANAND CLASSES-Best NDA Coaching Center In Jalandhar Punjab-Coaching Classes F...
ANAND CLASSES
 
9463138669|NDA Coaching Center In Jalandhar|ANAND CLASSES
9463138669|NDA Coaching Center In Jalandhar|ANAND CLASSES9463138669|NDA Coaching Center In Jalandhar|ANAND CLASSES
9463138669|NDA Coaching Center In Jalandhar|ANAND CLASSES
ANAND CLASSES - A SCHOOL OF COMPETITIONS
 

Ähnlich wie Nurbs (1) (11)

Nyquist Stability Criterion
Nyquist  Stability CriterionNyquist  Stability Criterion
Nyquist Stability Criterion
 
Bezier curve
Bezier curveBezier curve
Bezier curve
 
Representation
RepresentationRepresentation
Representation
 
Birkhoff coordinates for the Toda Lattice in the limit of infinitely many par...
Birkhoff coordinates for the Toda Lattice in the limit of infinitely many par...Birkhoff coordinates for the Toda Lattice in the limit of infinitely many par...
Birkhoff coordinates for the Toda Lattice in the limit of infinitely many par...
 
Bezier Curve
Bezier CurveBezier Curve
Bezier Curve
 
planes and distances
planes and distancesplanes and distances
planes and distances
 
Write a program to draw a cubic Bezier curve.
Write a program to draw a cubic Bezier curve. Write a program to draw a cubic Bezier curve.
Write a program to draw a cubic Bezier curve.
 
Computer Graphic - Transformations in 2D
Computer Graphic - Transformations in 2DComputer Graphic - Transformations in 2D
Computer Graphic - Transformations in 2D
 
Computer Graphics - transformations in 2d
Computer Graphics - transformations in 2dComputer Graphics - transformations in 2d
Computer Graphics - transformations in 2d
 
ANAND CLASSES-Best NDA Coaching Center In Jalandhar Punjab-Coaching Classes F...
ANAND CLASSES-Best NDA Coaching Center In Jalandhar Punjab-Coaching Classes F...ANAND CLASSES-Best NDA Coaching Center In Jalandhar Punjab-Coaching Classes F...
ANAND CLASSES-Best NDA Coaching Center In Jalandhar Punjab-Coaching Classes F...
 
9463138669|NDA Coaching Center In Jalandhar|ANAND CLASSES
9463138669|NDA Coaching Center In Jalandhar|ANAND CLASSES9463138669|NDA Coaching Center In Jalandhar|ANAND CLASSES
9463138669|NDA Coaching Center In Jalandhar|ANAND CLASSES
 

Kürzlich hochgeladen

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Kürzlich hochgeladen (20)

Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
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
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 

Nurbs (1)

  • 1.
  • 2. NURBS n P(u) = ∑ wiNi,k(u)pi i=0 n  ∑ wiNi,k(u) i=0 NURBS curve degree = k-1 P0, P1,..Pn – control points Knot vector u = (u0, u1…um) W= (w0, w1…wm) – weight  non negative The number of control points and the number of weights must agree Use homogenous coordinates
  • 3. NURBS If all wi are set to the value 1 or all wi have the same value  we have the standard B-Spline curve NURBS curve equation is a general form that can represent both B-Spline and NURBS curves. A Bezier curve is a special case of a B-Spline curve, so the NURBS equation can also represent Bezier and rational Bezier curves.
  • 4. NURBS :important properties NURBS have all properties of B-Spline.(pls refer to the notes) Extra properties More versatile modification of a curve becomes possible if the curve is represented by a NURBS equation. It is due to  B-spline curve is modified by changing the x, y, z coord, but NURBS curve use homogenous coord (x, y, z, h) Or B-Spline (degree, control points & knots) but NURBS (degree, control points, knots & weights)
  • 5. NURBS :important properties • Extra properties (cont) – NURBS equations can exactly represent the conic curves (circles, ellipse, parabola…) – Projective invariance  If a projective transformation is applied to a NURBS curve, the result can be constructed from the projective images of its control points. Therefore, we do not have to transform the curve. We can obtain the correct view (no distortion). * Bézier curves and B-spline curves only satisfy the affine invariance property rather than this projective invariance property. This is because only NURBS curves involve projective transformations.
  • 6. NURBS : modifying weights increasing the value of wi will pull the curve toward control point Pi. In fact, all affected points on the curve will also be pulled in the direction to Pi When wi approaches infinity, the curve will pass through control point Pi decreasing the value of wi will push the curve away from control point Pi
  • 8. NURBS : circle NURBS equations represents the circle Consider a half circle Split the half circle into two circular arcs -1 and 2 (actually many ways) P2 P3 P1 2 1 P4 P0
  • 9. NURBS : circle • Consider arc 1 • Conic section (quadratic) – degree = 2 • 3 control points, P0= (1,0) ,P1 =(1,1), P2 = (0,1) • Knot value (0,0,0,1,1,1) • Weights w0 =1 w1 = cos θ = cos 45 = 1/√2 w2=1 P2 θ P1 1 P0
  • 10. NURBS : circle • Follow the same procedure for arc 2 • We obtain P2= (0,1) ,P3 =(-1,1), P4 = (-1,0) Weights w2 =1, w3 = cos 45 = 1/√2, w4=1 Knot value =(0, 0, 0,1,1,1) shifted to (1, 1, 1, 2, 2, 2) for the composition P2 P3 2 P4
  • 11. NURBS : circle • Composite curve (arc 1 and arc 2) • P0= (1,0) ,P1 =(1,1), P2 = (0,1),P3 =(-1,1), P4 = (-1,0) • Weights w0 =1 w1 = 1/√2 w2=1, w3 = 1/√2, w4=1 k = 3, n= 4 number of knot = 8 Knot value =(0, 0, 0,1,1,1) + (1, 1, 1, 2, 2, 2) Knot value = (0, 0, 0, 1, 1, 1, 2, 2, 2) shift 1 value  (0, 0, 0,1, 1, 2, 2, 2) P2 P3 P1 2 1 P4 P0
  • 12. NURBS : circle P2 • So, for a circle P3 P1 2 1 P4 P0 P8 P5 P7 P6 • P0= P8= (1,0) ,P1 =(1,1), P2 = (0,1),P3 =(-1,1), P4 = (-1,0), P5 =(-1,-1), P6 =(0,-1), P7 =(1,-1) • Weights w0 =1 w1 = 1/√2 w2=1, w3 = 1/√2, w4=1 k = 3, n= 8 number of knot = 12  (0, 0, 0,1, 1, 2, 2, 3, 3, 4, 4, 4)
  • 13. NURBS : circle Other way  split into 3 arcs θ = 60° P3 P2 P4 θ P1 P5 P0
  • 14. NURBS : circle show that NURBS equations exactly represent the circle Consider arc 1 NURBS equation is P(u) = ∑ wiNi,k(u)pi  ∑ wiNi,k(u) P(u) = w0P0N0, 3(u) + w1P1N1, 3(u) + w2P2N2, 3(u)  w0N0, 3(u) + w1N1, 3(u) + w2N2, 3(u)
  • 15. NURBS : circle • w0 = w2 =1, w1 = √2 /2 • N0, 3= (1-u) 2, N1, 3= 2u(1-u), N2, 3= u2  pls refer to last topic (Curve1.pdf, slide 30) • P(u) = P0 (1-u) 2 +√2 /2[P1 2u(1-u)]+ P2 u2 • (1-u) 2 +√2 /2[ 2u(1-u)]+ u2 • P0 = [1,0,1] P1 = [1,1,1], P2 = [0,1,1]  homogenous • x(u) = (1- √2) u2 +√2 (1-√2)u + 1 • (2- √2) u2 +(√2-2)u + 1 • y(u) = ( 1- √2) u2 +√2u . • (2- √2) u2 +(√2-2)u + 1 • x(u) 2 + y(u) 2 = 1 - circle radius 1  prove!!
  • 16. Knot Insertion : NURBS three steps: (1) converting the given NURBS curve in 3D to a B-spline curve in 4D (2) performing knot insertion to this four dimensional B-spline curve (3) projecting the new set of control points back to 3D to form the the new set of control points for the given NURBS curve.
  • 17. Knot Insertion : NURBS u0 to u3 u4 u5 to u8 0 0.5 1  EXAMPLE  a NURBS curve of degree 3 with a knot vector as follows:  5 control points in the xy-plane and weights:  Insert new knot t = 0.4 P0 P1 P2 P3 P4 X -70 -70 74 74 -40 Y -76 75 75 -77 -76 w 1 0.5 4 5 1
  • 18. Knot Insertion : NURBS t= 0.4 lies in knot span [u3 ,u4) the affected control points are P3, P2, P1 and P0. 1) convert to 3D B-Spline (homogenous coord)  multiply all control points with their corresponding weights Pw0 Pw1 Pw2 Pw3 X -70 -35 296 370 Y -76 37.5 300 -385 w 1 0.5 4 5
  • 19. Knot Insertion : NURBS 2) Perform knot insertion compute a3, a2 and a1 a3 = t - u3 = 0.4 –0 = 0.4 u6 -u3 1 – 0 a2 = t - u2 = 0.4 –0 = 0.4 u5 -u2 1 – 0 a1 = t – u1 = 0.4 –0 = 0.8 u4 -u1 0.5 – 0
  • 20. Knot Insertion : NURBS 2) Perform knot insertion (cont) • The new control points Qw3, Qw2 and Qw1 are: • Qw3 = (1-a3)Pw2+ a3Pw3 = (325.6, 26, 4.4) • Qw2 = (1-a2)Pw1+ a2Pw2 = (97.4, 142.5, 1.9) • Qw1 = (1-a1)Pw0+ a1Pw1 = (-42, 14.8, 0.6)
  • 21. Knot Insertion : NURBS 3) Projecting these control points back to 2D by dividing the first two components with the third (the weight), Q3 = (74, 5.9 ) with weight 4.4 Q2 = (51.3, 75 ) with weight 1.9 Q1 = (-70, 24.6) with weight 0.6
  • 22. Knot Insertion : NURBS after *control points in the xy-plane and weights knot insertion P0 Q1 Q2 Q3 P3 P4 X -70 74 51.3 -70 74 -40 Y -76 5.9 75 24.6 -77 -76 w 1 4.4 1.9 0.6 5 1 *new knot vector u0 to u3 u4 u5 u6 to u9 0 0.4 0.5 1