Publications » Computers » Computer Graphics

Price **£47.99**

*temporarily out of stock*

# An Introduction to Splines for Use in Computer Graphics and Geome

**Richard Bartels, John Beatty, Brian Barsky**

ISBN **1558604006**

Pages **476**

Description

As the field of computer graphics develops, techniques for modeling complex curves and surfaces are increasingly important. A major technique is the use of parametric splines in which a curve is defined by piecing together a succession of curve segments, and surfaces are defined by stitching together a mosaic of surface patches.

An Introduction to Splines for Use in Computer Graphics and Geometric Modeling discusses the use of splines from the point of view of the computer scientist. Assuming only a background in beginning calculus, the authors present the material using many examples and illustrations with the goal of building the reader's intuition. Based on courses given at the University of California, Berkeley, and the University of Waterloo, as well as numerous ACM Siggraph tutorials, the book includes the most recent advances in computer-aided geometric modeling and design to make spline modeling techniques generally accessible to the computer graphics and geometric modeling communities.

Contents

An Introduction to Splines for Use in Computer Graphics and Geometric Modeling by Richard H. Bartels, John C. Beatty, and Brian A. Barsky 1 Introduction 1.1 General References 2 Preliminaries 3 Hermite and Cubic Spline Interpolation 3.1 Practical Considerations - Computing Natural Cubic Splines 3.2 Other End Conditions For Cubic Interpolating Splines 3.3 Knot Spacing 3.4 Closed Curves 4 A Simple Approximation Technique - Uniform Cubic B-splines 4.1 Simple Preliminaries - Linear B-splines 4.2 Uniform Cubic B-splines 4.3 The Convex Hull Property 4.4 Translation Invariance 4.5 Rotation and Scaling Invariance 4.6 End Conditions for Curves 4.7 Uniform Bicubic B-spline Surfaces 4.8 Continuity for Surfaces 4.9 How Many Patches Are There? 4.10 Other Properties 4.11 Boundary Conditions for Surfaces 5 Splines in a More General Setting 5.1 Preliminaries 5.2 Continuity 5.3 Segment Transitions 5.4 Polynomials 5.5 Vector Spaces 5.6 Polynomials as a Vector Space 5.7 Bases and Dimension 5.8 Change of Basis 5.9 Subspaces 5.10 Knots and Parameter Ranges: Splines as a Vector Space 5.11 Spline Continuity and Multiple Knots 6 The One-Sided Basis 6.1 The One-Sided Cubic 6.2 The General Case 6.3 One-Sided Basis 6.5 Linear Combinations and Cancellation 6.6 Cancellation as a Divided Difference 6.7 Cancelling the Quadratic Term - The Second Difference 6.8 Cancelling the Linear Term - The Third Difference 6.9 The Uniform Cubic B-Spline - A Fourth Difference 7 Divided Differences 7.1 Differentiation and One-Sided Power Functions 7.2 Divided Differences in a General Setting 7.3 Algebraic and Analytic Properties 8 General B-splines 8.1 A Simple Example - Step Function B-splines 8.2 Linear B-splines 8.3 General B-spline Bases 8.4 Examples - Quadratic B-splines 8.5 The Visual Effect of Knot Multiplicities - Cubic B-splines 8.6 Altering Knot Spacing - More Cubic B-splines 9 B-spline Properties 9.1 Differencing Products - The Leibniz Rule 9.2 Establishing a Recurrence 9.3 The Recurrence and Examples 9.4 Evaluating B-splines Through Recurrence 9.5 Compact Support, Positivity, and the Convex Hull Property 9.6 Practical Implications 10 Bezier Curves 10.1 Increasing the Degree of a Bezier Curve 10.2 Composite Bezier Curves 10.3 Local vs. Global Curves 10.4 Subdivision and Refinement 10.5 Midpoint Subdivision of Bezier Curves 10.6 Arbitrary Subdivision of Bezier Curves 10.7 Bezier Curves From B-Splines 10.8 A Matrix Formulation 10.9 Converting Between Representations 10.10 Bezier Surfaces 11. Knot Insertion 11.1 Knots and Vertices 11.2 Representation Results 12 The Oslo Algorithm 12.1 Discrete B-spline Recurrence 12.2 Discrete B-spline Properties 12.3 Control Vertex Recurrence 12.4 Illustrations 13 Parametric vs. Geometric Continuity 13.1 Geometric Continuity 13.2 Continuity of the First Derivative Vector 13.3 Continuity of the Second Derivative Vector 14 Uniformly-Shaped Beta-spline Surfaces 14.1 Uniformly-Shaped Beta-spline Surfaces 14.2 An Historical Note 15 Geometric Continuity, Reparametrization, and the Chain Rule 16 Continuously-Shaped Beta-splines 16.1 Locality 16.2 Bias 16.3 Tension 16.4 Convex Hull 16.5 End Conditions 16.6 Evaluation 16.7 Continuously-Shaped Beta-spline Surfaces 17 An Explicity Formulation for Cubic Beta-splines 17.1 Beta-splines with Uniform Knot Spacing 17.2 Formulas 17.3 Recurrence 17.4 Examples 18 Discretely-Shaped Beta-splines 18.1 A Truncated Power Basis for the Beta-splines 18.2 A Local Basis for the Beta-splines 18.3 Evaluation 18.4 Equivalence 18.5 Beta2-splines 18.6 Examples 19 B-spline Representations for Beta-splines 19.1 Linear Equations 19.2 Examples 20 Rendering and Evaluation 20.1 Values of B-splines 20.2 Sums of B-splines 20.3 Derivatives of B-splines 20.4 Conversion to Segment Polynomials 20.5 Rendering Curves: Horner's Rule and Forward Differencing 20.6 The Oslo Algorithm - Computing Discrete B-splines 20.7 Parial Derivatives and Normals 20.8 Locality 20.9 Scan-Line Methods 20.10 Ray-Tracing B-spline Surfaces 21 Selected Applications 21.1 The Hermite Basis and C1 Key-Frame Inbetweening 21.2 A Cardinal Basis Spline for Interpolation 21.3 Interpolation Using B-splines 21.4 Catmull-Rom Splines 21.5 B-splines and Least Squares Fitting References Index Series: The Morgan Kaufmann Series in Computer Graphics