.
 
 
Amazon Books Don  Lancaster's Guru's Lair
Cubic Spline
Library
     
 
  
auctions bargains books contact email home library map ?new? rss
 
search Guru's Lair
must read tutorials links books newsgroups help


Cubic Splines ( some of which are called Bezier curves ) are the
key secret to creating smoothly flowing graphic curves. Curves
such as those used in PostScript fonts or in Nurbs solid models.

This library shelf holds tutorials and utilities on cubic spline use,
modification, and generation. Many of the files need fancy math
techniques. Especially those from author Jim Fitzsimmons.

Most library files require an Adobe Acrobat 4.0 plug in for online
viewing.  Offline, these may be accessed by an Acrobat Reader or
an eBook Reader or any other .pdf" accepting program.


  "Must Read" Tutorials: .
 top   bot 


   The math behind Cubic Splines CUBEMATH.PDF #58
      A tutorial on exactly where the underlying math behind Bezier
     cubic splines comes from.
Includes plots of Basis Functions and
     the "snake in the box" visualation.

Click here for the GuruGram library.
Click here for the Guru 58
source code.
Click here to Contact the Author
directly.

   Hardware Hacker #62 HACK62.PDF 
 
    Using cubic splines. Switchmode resources. Electrorheological
     
fluids. National's simple switcher. Colorized avuncular sleezoids.
     
Curvetracing contest. Non-ionizing radiation safety.

Click here for the Hardware Hacker library.
Click here to Contact the Author
directly.

   Cubic Spline through four points NUBZ4PTS1.PDF #59
       A tutorial and companion utility that lets you draw a Bezier Cubic
     spline through four data points, all of which are on the curve
.
     Both "good" and iterative "shortest" solutions are shown.

Click for the PostScript 4 point utility.
Click here for the GuruGram
library.
Click here for the Guru 59 source code.
Click here to Contact the Author
directly.

   Cubic Spline Length & Subdivision NUBZLEN1.PDF #60
     A tutorial and companion utility that lets you find the length of a
     Bezier Cubic Splin
e, as well as moving to any point on that curve,
     and subdividing into linear segments.

Click for the Spline Length & Subdivide utility.
Click here for the PostScript
library.
Click here for the GuruGram
library.
Click here for the Guru 60
source code.
Click here to Contact the Author
directly.

   Cubic Spline min point distance CMINDIST.PDF #80
       A tutorial and math derivation of finding the mininum distance
     between a point and a cubic spline
. Successive approximation
     is required for an exact solution.                                                        08/07

Click here for the Cubic Spline library.
Click here for the GuruGram 80
source code.
Click here to Contact the Author
directly.

   Pixel Interpolation Algorithms PIXINTPL.PDF #83
       A review of popular pixel interpolation schemes including Bilinear,
     Nearest Neighbor, Bilinear with lookup, Modified 3x3, and Bicubic.
     Includes detailed bicubic math derivation. .                                    11/07

Click here for the Pixel Interpolation utility.
Click here for the Pixel Interpolation
demo..

Click here for the PostScript library.
Click here for the GuruGram 83
source code.
Click here to Contact the Author
directly.

  Additional Tutorials: .
 top   bot 

.
   Circle Cubic Spline Approximation ELLIPSE4.PDF #57
     Circles and ellipses can be accurately approximated by four properly
    chosen cubic splines
. Tutorial derives the approximation math for
    various spline fits from two through eight.

Click here for the PostScript library.
Click here for the Guru 57
source code.
Click here to Contact the Author
directly.

   Bezier curve recursive midpoint rule  MIDPOINT.PDF 
 
    Jim Fitzsimmons TEX tutorial shows how to approximate a Bezier
     curve
by successive midpoint line segments. This is also called the
     Casteljau
method using Bernshtein Polynomials.
   Bezier curve through four points  BEZ4PTS.PDF 
     
Jim Fitzsimmons TEX tutorial shows how to fit a Bezier curve
     
through two end points and two intermediate points, all of which
     
are on the desired cubic polynomial curve.

       Click here for a practical example of BEZ4PTS.PDF:
       
Click here for a new and improved version:

   Cubic Spline Catenary Approx. BEZCAT.PDF #69
        A catenary is the shape a chain will assume hanging on its own
      weight. Tutorial explores cubic Bezier spline approximations to
      catenary curves.
. Includes examples .                                               11/06

Click here for the Cubic Spline library.
Click here for the Math Stuff
library.

Click here for the GuruGram 69 source code.
Click here to Contact the Author
directly
Click for our Images & Fonts library pag .

   Using Cubic Splines for Image Iterpolation BASIS.PDF
      Cubic spline Basis Functions are a powerful but little understood
      method of curve control. Tutorial includes fundamentals along with
      application of hires cubic splines to image interpolationn .

Click here for the BASIS.PSL sourcecode.

   Image Interp Table Lookup Generator IMTABLE.PSL
      Complex cubic functions can be replaced by simple table lookups
      when using Basis Functions. This example shows how to create the
      PostScript needed tables for hires cubic spline image interpolation.

Click here for the IMTABLE.PDF checkplot .

   Swings & Tilts for your Digital Camera! SWINGT01.PSL
     A PS language .BMP file modifier that adds view camera effects to
     your digital camera! Uses true Bicubic Interpolation. View in wp or
     editor, change filenames & params, resave, send to Distiller.

Click here for the Before .BMP testfile.
Click here for the Before .JPG example.
Click here for the After .JPG example.

Click here for the Gonzo utilities.
Coming soon: GuruGram tutorial.

   Pixel Interpolation Algorithms PIXINTPL.PDF #83
     A review of popular pixel interpolation schemes including Bilinear,
     Nearest Neighbor, Bilinear with lookup, Modified 3x3, and Bicubic.
     Includes detailed bicubic math derivation. .

Click here for the Pixel Interpolation utility.
Click here for the Pixel Interpolation
demo..

Click here for the PostScript library.
Click here for the GuruGram 83
source code.
Click here to Contact the Author
directly.

   Bezier approximation to circular arc I  BEZARC1.PDF 
    
 Jim Fitzsimmons TEX tutorial shows how to use a Bezier curve
     
to approximate a circular arc while exactly meeting end points and
     end slopes
of the desired circular segment.
   Bezier approximation to circular arc II  BEZCIRC2.PDF 
    
 Richard DeVeneza PDF tutorial shows a second method of using a
     Bezier curve to approximate a circular arc
while exactly meeting end
     points and end slopes of the desired circular segment.
   Subdividing a cubic spline  BEZCHORD.HTML 
    
 Don Lancaster tutorial and demo shows how to subdivide a cubic
     
spline using the "constant error", "constant t", and the "constant
     
chord methods. Includes Postscript-as-language demo plot.
Click here for the PostScript Sourcecode
Or here for an Acrobat PDF Demo.
 
   Fitting points to a bezier curve  BEZDIST.PDF 
    
 Jim Fitzsimmons TEX tutorial shows how to fit a Bezier curve
     
to a group of data points. Includes an iterative BASIC program and
     
several demo plots that do a least squares fit to multiple points.
   Fast Bezier curve evaluation FASTBEZ.PDF 
    
 Jim Fitzsimmons TEX tutorial shows a rapid method of
    
generating a bezier curve. Includes TEX sourcecode that
    
shows one method of showing math equations.
   Connecting two Bezier curves  BEZCONN.PDF 
    
 Jim Fitzsimmons TEX tutorial shows a way to connect two
     
adjacent Bezier curves and replace them with a new pair of
     
Bezier curves whose slope is identical at the common point.
   Hyperbolic cubic spline fitting  HYSPLINE.PDF 
    
 Don Lancaster Acrobat tutorial shows the steps involved in
     
approximating a 1/x hyperbola with a pair of cubic splines, done
     
to exceptional accuracy.
   Fitting 3 points to a quadratic curve PARAFIT.PSL 
    
Brief Don Lancaster tutorial and PostScript demo of fitting three
    data points to a parabola and quickly finding the x and y values of
    the minimum. For curve fitting and minimization.

Click here for additional PostScript Resources.
Or here for additional Math Tutorials.

   An alternate view of a Bezier curver BEZIERU.PDF 
    
Jim Fitzsimmons TEX tutorial shows a "balanced" way of viewing
    
a Bezier curve. Instead of a "t" variable that goes from 0 to 1, a
    
"u" variable (u = 2t-1) is used, ranging from -1 to +1.
   Some more cubic spline math  BEZMATH.PS 
    
 Don Lancaster tutorial and demo shows how to find y values for
     
x values of a cubic spline. Even when loops and cubic equations
    
are involved. Read as tutorial, then extract PostScript utilities.
Click here for the PostScript Sourcecode
 
   Bezier curve sinewave approximation  BEZSINE.PDF 
    
 Jim Fitzsimmons TEX tutorial shows an eight step approximation
     
to a full sinewave that uses Bezier cubic splines. Each spline curve fits
     
45 degrees and exactly matches value and slope at end points.
   Accuracy of PostScript circles  BEZCIRC.PDF 
     
Jim Fitzsimmons TEX tutorial analyzes the errors involved in a
     
four curveto approximation to a PostScript circle. Worst case
     error is one pixel at 1200 DPI for a 230 point diameter circle. 
   Bezier curve through fuzzy data!  FUZZYBEZ.HTML 
    
Don Lancaster tutorial demo shows how to fit a Bezier curve to fuzzy
   
data points. While preserving end points and the exit and entry
   
angles. Read PS sourcecode in editor, modify then send to Distiller.
Click here for the PostScript Sourcecode
Or here for an Acrobat PDF Demo.
 
   Graphics on a Bezier Surface  GURU68.PDF 
    
 Don Lancaster column reprint that gives a summary of how to
    
 map text and graphics onto a Bezier surface. Text on a waving
     
flag is used as an example.
   Length of a Bezier Curve  GURU60.PDF 
    
 Don Lancaster column reprint that gives a summary of how to
     
quickly approximate the length of a Bezier curve. Apparently
     
no simple and closed form math solution is known.
   Real length of a Bezier curve! BEZLENJF.PDF 
    
 Jim Fitzsimmons tutorial shows how to use elliptic integrals to find
     
the real length of a Bezier curve. For most users, approximations
     
will often end up faster. Advanced math skills needed.
   3 Bezier curve drawing algorithms  BEZGEN3.HTML 
    
 Don Lancaster tutorial demo shows three ways to generate a cubic
     
spline or Bezier curve. Includes PostScript's curveto operator, brute
     
force t parameters, and elegant "addition only" differencing.
Click here for the PostScript Sourcecode
Or here for an Acrobat PDF Demo.
 
   Bezier curve book review  MUSE89.PDF 
    
 Brief reviewof Knot Insertion and Deletion Algorithms for
     
B-Spline Curves textbook. On the tricky process of breaking up
     
a curve into any number of subcurves. Lots of references.
  Bezier & Spline Books: .
 top   bot 
.

Here's a tentative collection of Bezier books.Please let me
know of any that should be added to this list...

B-Spline Knot Insertion and Deletion Algorithms ( Roger Goldman )
Curves and Surfaces  ( Academic Press )
Curve and Surface Fitting  ( Peter Lancaster )
An Introduction to Nurbs  ( David Rodgers )
Geometric Modeling using Beta Splines  ( Brian Barsky )
Handbook of Splines  ( Gheorghe Micula )
Handbook of Splines for the User  ( Eugene Shikin )
Interpolating Cubic Splines  ( Gary Knott )
Methods of Shape; Preserving Spline Approximation ( Boris Kvasov )
The Nurbs Book  ( Les Piegelr )
Nurbs for Curves and Surface Design  ( Gerald Farin )
PostScript Language Reference Manual   ( Adobe Systems )
A Practical Guide to Splines ( Carl De Booer )
Spline Functions ( K. Bohmer )
Theory of Splines and Applications  ( J. Ahlberg )
Two Dimensional Spline Interpolation Algorithms  ( Helmuth Spath )
  Tutorials: .
 top   bot 
.

Here are a few worthwhile Bezier and Cubic Spline links that you
might like to check into...

http://www.sunsite.ubc.ca/LivingMathematicsl
http://www.moshplant.com/direct-or/bezier/
http://www.gamasutra.com/features/19991027/deloura_01.htm
http://www.webreference.com/dlab/9902/bezier.html
http://www.cs.princeton.edu/~min/cs426/jar/bezier.html
http://www.cnet.com/Resources/Info/Glossary/Terms

  Newsgroups: .
 top   bot 
.

Subscription details will vary with your choice of news server...
Possibilities appear here and here.

alt.math
comp.graphics
comp.graphics.algorithms
comp.graphics.misc
comp.graphics.rendering
comp.lang.postscript
comp.soft-sys.math
sci.math
sci.math.research

  For Further Assistance: .
 top   bot 
.

  Ask Don a Cubic Spline or Bezier question. 
  Place a Cubic Spline Consulting Order.
  Find Instant Research Solutions.
 
 

Please click here to... 

 
   View our eBay Auctions.  Send Don Lancaster email.
   Go to the site directory  Learn patent alternatives.    
   Pick up surplus bargains.  Explore magic sinewaves
   Sponsor a display banner.  Find out what a tinaja is.
   Find research solutions  View recommended books.
   Place an order.  Return to the home page.