Newsgroups: comp.graphics
Path: utzoo!utgpu!watserv1!watcgl!rhbartls
From: rhbartls@watcgl.waterloo.edu (Richard Bartels)
Subject: Re: curve represenation
Message-ID: <1990Nov14.193732.570@watcgl.waterloo.edu>
Keywords: bezier or b-spline
Organization: University of Waterloo
References: <1990Nov14.160528.10333@progress.com>
Date: Wed, 14 Nov 90 19:37:32 GMT
Lines: 51

In article <1990Nov14.160528.10333@progress.com>
as@progress.COM (Amitabh  Shukla) writes:
>
>What I want to know is what is the industry standard to store information about
>curves? The choices being bezier curve or uniform/non-uniform
>b-spline represenation.
>

Given those choices, the answer would have to be Bezier.
Any of the possibilities listed can easily, and reasonably, be represented
in Bezier format.  The same cannot be said for uniform B-spline
representation.  The same could be said for non-uniform B-spline
representation, but the storage costs are somewhat higher.
Thus it is that one sees Bezier representation as a frequent industry
choice for representation and interchange.

A curve in x format   Can be represented in y format   Yes/No
-------------------   ------------------------------   ------

    Bezier                      Bezier                  Yes
    Bezier                 uniform B-spline         Generally not
    Bezier               non-uniform B-spline           Yes

uniform B-spline                Bezier                  Yes
uniform B-spline           uniform B-spline             Yes
uniform B-spline         non-uniform B-spline           Yes

non-uniform B-spline            Bezier                  Yes
non-uniform B-spline       uniform B-spline         Generally not
non-uniform B-spline     non-uniform B-spline           Yes


Comparing a Bezier representation and a non-uniform B-spline representation
that are made for the same curve, roughly:

   Each segment of the Bezier representation
   would require degree+1 numbers per coordinate (x,y,z) and an additional
   two numbers for the parametric interval (sometimes compressed to one
   number for contiguous segments or discarded by reparameterizing each
   interval to [0,1]).

   Each segment of the non-uniform representation would require
   degree+1 numbers per coordinate, an additional two numbers for the
   parametric interval (compressable to one for contiguous segments,
   but not discardable, and some indication of the multiplicity
   of the knots at the ends of the segment (e.g. two integers, compressable
   to one for contiguous segments).
   The evaluation algorithm is more complicated than the one for Bezier
   splines.

-Richard
