01-bezier

Upload: antonio-baptista

Post on 07-Apr-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/3/2019 01-Bezier

    1/20

    COMPUTER-AIDED GEOMETRIC DESIGNCOMPUTER-AIDED GEOMETRIC DESIGN

    ANDAND COMPUTER GRAPHICSCOMPUTER GRAPHICS::

    BEZIER CURVES AND SURFACESBEZIER CURVES AND SURFACES

    Andrs Iglesiase-mail: [email protected]

    Web pages: http://personales.unican.es/iglesias

    http://etsiso2.macc.unican.es/~cagd

    Department of Applied M athemat ics

    and Comput ational S ciences

    University ofCantabria

    UC-CAGDUC-CAGD GroupGroup

    2001A

    ndrsIglesias.See:http://pers

    onales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    2/20

    Bzier curves

    BEZIER CURVES

    Bzier curve with n=5

    (six control orBzier points)

    Bernstein polynomialsBi4(t)

    ni=0PiB

    ni (t)

    LetP={P0,P

    1,...,P

    n} be a set of

    points , d=2,3.Pi IRd

    The Bzier curve associated with the

    setPis defined by:

    where represent the Bernstein

    polynomials, which are given by:

    Bni (t)

    n being the polynomial degree.

    i = 0, . . . , n

    Bni (t) =

    ni

    (1 t)niti

    2

    001AndrsIglesias.See:http://personales.unican.es

    /iglesias

  • 8/3/2019 01-Bezier

    3/20

    Bzier curves

    1 2 3 4 5 6 7

    -2

    0

    2

    4

    6

    1 2 3 4 5 6 7

    -2

    0

    2

    4

    6

    Control polygon

    Bzier

    curve

    1 2 3 4 5 6 7

    -2

    0

    2

    4

    6

    ni=0

    PiBni (t)

    Control points

    7 control points

    n=6

    2001Andrs Iglesias. See: http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    4/20

    Bernstein polynomials

    Bni

    (t) =n

    i(1 t)niti

    i = 0, . . . , n

    Given by: n the degree

    i the indext the variableProperties:

    Bin(0)=Bi

    n(1)=0 i=1,...,n-1

    B0n(0)=Bn

    n(1)=1

    Bin(1)=Bin(0)=0

    Extreme

    values:

    Positivity: Bin(t) 0 in [0,1]

    Normalizing

    property:

    ni=0

    Bni (t)=1

    Simmetry: Bi

    n(t) =Bn-i

    n(1-t)

    Maxima: Bin(t) attains exactly one maximum

    on the interval [0,1], at t=i/n.

    2001Andrs Iglesias. See:

    http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    5/20

    1 2 3 4 5 6 7

    -2

    0

    2

    4

    6

    Properties of the Bzier curves

    TheBzier curve generally follows the shape

    of the control polygon, which consists of the

    segments joining the control points.

    Control polygon

    1 2 3 4 5 6 7

    -2

    0

    2

    4

    6

    3D curve

    2D curve

    Bzier scheme is

    useful for design. 2001Andrs Iglesias. See: http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    6/20

    Properties of the Bzier curves

    LOCALvs. GLOBAL CONTROL

    Bzier curves exhibitglobal

    control: moving a control pointalters the shape of the whole curve.

    B-splines allow local control: only

    a part of the curve is modifiedwhen changing a control point.

    (2,4)

    (4,4)

    Control point traslation. Control point traslation.

    (2,2)

    (2,4)

    The curve does

    not change hereThe curve changes here 2001Andrs Iglesias. See: http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    7/20

    Properties of the Bzier curves

    Variation disminishing property . No straight line intersects a Bzier

    curve more times than it intersects its control polygon.Intersections

    Curve: 0 Polygon: 2

    Curve: 1 Polygon: 2

    Curve: 2 Polygon: 2

    For a three-dimensional Bzier curve, replaces the words straight line

    with the wordplane.

    Interpolation. A Bzier curve always interpolates the end control points.

    Tangency. The endpoint tangent vectors are parallel to P1-P0 andPn-Pn-1

    Convex hull property. The curve is contained in the convex hull of its

    defining control points.2001A

    ndrsIglesias.See:http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    8/20

    Properties of the Bzier curves

    A given Bzier curve can be subdivided at a point t=t0into two Bzier segments

    which join together at the point corresponding to the parameter value t=t0 .

    2 3 4 5 6

    1

    2

    3

    4

    t=0.4Original curve:

    4 control points

    Right-hand side:

    4 control points

    t=0.4

    t=0.4Subdivided curve: 7 control points

    Left-hand side:

    4 control points

    2

    001Andrs

    Iglesias.See:http://personale

    s.unican.es/iglesias

  • 8/3/2019 01-Bezier

    9/20

    Properties of the Bzier curves

    Degree raising: any Bzier curve of degree n (with control points Pi)

    can be expressed in terms of a new basis of degree n+1. The new

    control points Qi are given by:

    2 3 4 5 6

    1

    2

    3

    4

    2 3 4 5 6

    1

    2

    3

    4

    Original cubic curve:

    4 control pointsFinal quartic curve:

    5 control points

    Q i = Pi-1 + (1- )Pii

    n+1

    1

    n+1

    i=0,...,n+1

    P-1= Pn+1=0

    2001Andrs Iglesias. See: http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    10/20

    2 3 4 5 6

    0.5

    1

    1.5

    2

    2.5

    3

    3.5

    4

    2 3 4 5 6

    0.5

    1

    1.5

    2

    2.5

    3

    3.5

    4

    2 3 4 5 6

    0.5

    1

    1.5

    2

    2.5

    3

    3.5

    4

    2 3 4 5 6

    0.5

    1

    1.5

    2

    2.5

    33.5

    4

    2 3 4 5 6

    0.5

    1

    1.5

    2

    2.5

    33.5

    4

    2 3 4 5 6

    0.5

    1

    1.5

    2

    2.5

    33.5

    4

    2 3 4 5 6

    0.5

    1

    1.5

    2

    2.5

    3

    3.5

    4

    2 3 4 5 6

    0.5

    1

    1.5

    2

    2.5

    3

    3.5

    4

    2 3 4 5 6

    0.5

    1

    1.5

    2

    2.5

    3

    3.5

    4

    Bzier curves

    Degree raising of the Bzier curve of degree n=3 to degree n=11200

    1AndrsIglesias.See:http://p

    ersonales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    11/20

    Rational Bzier curves

    There are a number of important curves and surfaces which cannot be

    represented faithfully using polynomials, namely, circles, ellipses,

    hyperbolas, cylinders, cones, etc.

    All the conics can be well represented using rational functions, which

    are the ratio of two polynomials.

    R(t) =

    ni=0

    Pi wi Bni (t)

    n

    i=0wi Bni (t)

    Rational

    Bzier curve

    If all wi= 1, we

    recover the Bzier

    curve.

    wi weights

    Farin, G.: Curves and Surfaces for CAGD, Academic Press, 3rd. Edition, 1993 (Chapters 14

    and 15).

    Hoschek, J. and Lasser, D.:Fundamentals of CAGD, A.K. Peters, 1993 (Chapter 4).

    Anand, V.: Computer Graphics and Geometric Modeling for Engineers, John Wiley & Sons,

    1993 (Chapter 10).

    2

    001AndrsIglesias.See:http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    12/20

    Rational Bzier curves

    Changing the weights:

    2 3 4 5 6

    1

    2

    3

    4

    2 3 4 5 6

    1

    2

    3

    4

    2 3 4 5 6

    1

    2

    3

    4

    2 3 4 5 6

    1

    2

    3

    4

    1

    1 1

    1

    1

    3 1

    1

    1

    0.3 0.1

    1

    1

    1 5

    1

    wi> 1 -> the curve approximates to Piwi < 1 -> the curve moves away from Pi

    2

    001AndrsIglesias.See:http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    13/20

    Rational Bzier curves

    Influence of the weights:

    The effect of changing a weight is different from that of moving a control point.

    Changing a weight: a rationalBzier curve with one weight

    changed.

    Original curve

    Final curve

    1

    1

    11

    41

    1

    1

    1 1

    1

    1

    1

    1

    1

    1

    Moving a control point: a nonrational

    Bzier curve with a change in one

    control point.

    2001Andrs Iglesias. See: http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    14/20

    Rational Bzier curves

    Rational Bzier curves are useful to representconics, which become an

    important tool in the aircraft industry.

    Let c(t) be a point on a conic. Then, there exist numbers w0, w1 and w2and two-dimensional points P0, P1 and P2 such that:

    w0 P0B02(t) +w1 P1B1

    2(t)+w2 P2B22(t)

    w0 B02(t) +w1B1

    2(t)+w2B22(t)

    c(t) =

    s = gives aparabolic arc

    s < gives an elliptic arc

    s > gives a hyperbolic arc1

    2

    12

    1

    2

    If we take w0 = w2 =1 and we define :w1

    1+ w1s =

    elipse

    parabola

    hyperbola

    w1 =1

    3

    w1 =2

    w1 =1

    2

    001AndrsIglesias.See:http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    15/20

    Rational Bzier curves

    Example: the circle

    1

    11/2

    1

    1 1/2

    1 1

    1/2

    w0=1

    w1= 1/2

    w2 = 1

    0.5 1 1.5 2

    0.25

    0.5

    0.75

    1

    1.25

    1.5

    1.75(1, 3)

    (0,0)(1,0)

    (2,0)

    (3/2, 3/2)(1/2, 3/2)

    2001Andrs Iglesias. See:

    http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    16/20

    Bzier surfaces

    BEZIER SURFACES

    LetP={{P00,P01,...,P0n},

    {P10,P11,...,P1n},........................,

    {Pm0,Pm1,...,Pmn}}

    be a set of points

    (i=0,1,...,m ; j=0,1,...n)

    Pij IR

    The Bzier surface associated with

    the setP is defined by:

    where and represent

    the Bernstein polynomials of degrees

    m andn and in the variables u andv,

    respectively.

    Bmi (u) Bnj (v)

    x y z x y z x y z x y z x y z x y z0 0 1 0 1 2 0 2 3 0 3 3 0 4 2 0 5 11 0 2 1 1 3 1 2 4 1 3 4 1 4 3 1 5 2

    2 0 3 2 1 4 2 2 5 2 3 5 2 4 4 2 5 33 0 3 3 1 4 3 2 5 3 3 5 3 4 4 3 5 34 0 2 4 1 3 4 2 4 4 3 4 4 4 3 4 5 25 0 1 5 1 2 5 2 3 5 3 3 5 4 2 5 5 1

    S(u, v) =m

    i=0n

    j=0PijB

    mi (u)B

    nj (v)

    2001Andrs Iglesias. See: http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    17/20

    Bzier surfaces

    Note that along the isoparametric lines u=u0 and v=v0, the surface

    reduces to Bzier curves:

    Isoparametric

    lines v=v0

    Isoparametric

    lines u=u0

    u

    }

    }v

    with control

    points:

    DOMAIN

    S(u0, v) =n

    j=0

    bj Bnj (v) S(u, v0) =

    mi=0

    ci Bmi (u)

    3D space

    S(u,v)

    X

    Z Y

    ci =n

    j=0Pij B

    nj (v0)bj =

    m

    i=0Pij B

    mi (u0)

    2001Andrs Iglesias. See:

    http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    18/20

    Bzier surfaces

    is obtained from a control point and the product of two univariate Bernstein

    polynomials. Each product makes up a basis function of the surface. For instance:

    FunctionB22(u).B1

    3(v):

    0

    0.25

    0.5

    0.75

    1

    0

    0.25

    0.5

    0.75

    1

    0

    0.2

    0.4

    0.6

    0.8

    1

    0

    0.2

    0.4

    0.6

    0.8

    1B22(u)

    B13(v)

    0.2 0.4 0.6 0.8 1

    0.1

    0.2

    0.3

    0.4 B13(v)

    0.2 0.4 0.6 0.8 1

    0.2

    0.4

    0.6

    0.8

    1

    B22(u)

    From the equation: it is clear that each termS(u, v) =m

    i=0n

    j=0PijB

    mi (u)B

    nj (v )

    2001Andr

    sIglesias.See:

    http://persona

    les.unican.es/iglesias

  • 8/3/2019 01-Bezier

    19/20

    F1

    Bzier surfaces

    BLENDING SURFACES

    If a single surface does not approximate

    enough a given set of points, we may

    use several patches joined together.

    F0

    F2 BLENDING

    Two Bzier patches F0 andF2 are

    connected with C1-continuity by using

    a BzierF1 patch.

    2001Andrs Iglesias. See: http://personales.unican.es/iglesias

  • 8/3/2019 01-Bezier

    20/20

    Rational Bzier surfaces

    If we introduce weights wijto a nonrational Bzier

    surface, we obtain a rational Bzier surface:

    S(u, v) =

    mi=0

    nj=0

    Pij wij Bmi (u)B

    nj (v)

    mi=0

    nj=0

    wij Bmi (u)B

    nj (v)

    0

    1

    2

    3

    40

    0.5

    1

    1.5

    2

    0

    1

    2

    3

    0

    0.5

    1

    1.5

    2

    0

    1

    2

    3

    w ij=1

    0

    1

    2

    3

    40

    0.5

    1

    1.5

    2

    0

    1

    2

    3

    0

    0.5

    1

    1.5

    2

    0

    1

    2

    3

    1

    0.2

    11

    7

    1

    1 7 1

    1 0.2 1( )

    0

    1

    2

    3

    40

    0.51

    1.5

    2

    0

    1

    2

    3

    0

    0.51

    1.5

    2

    0

    1

    2

    3

    1

    4

    0.4

    1 1

    11 0.4 1

    1 4 1( )

    Example:

    2

    001And

    rsIglesias.See:

    http://personales.unican.es/iglesias