curve() \ Language (API) \ Processing 1.0
Author: Casey Reas & Ben Fry
Description: Processing is an electronic sketchbook for developing ideas. It is a context for learning fundamentals of computer programming within the context of the electronic arts.
Keywords: Processing, Processing, Interactive Media, Electronic Arts, Programming, Java, Ben Fry, Casey Reas

Reference for Processing version 1.5. If you have a previous version, use the reference included with your software. If you see any errors or have suggestions, please let us know. If you prefer a more technical reference, visit the Processing Javadoc.

Name | ### curve()
Examples |
    noFill();
    stroke(255, 102, 0);
    curve(5, 26, 5, 26, 73, 24, 73, 61);
    stroke(0);
    curve(5, 26, 73, 24, 73, 61, 15, 65);
    stroke(255, 102, 0);
    curve(73, 24, 73, 61, 15, 65, 15, 65);
Description | Draws a curved line on the screen. The first and second parameters specify the beginning control point and the last two parameters specify the ending control point. The middle parameters specify the start and stop of the curve. Longer curves can be created by putting a series of curve() functions together or using curveVertex(). An additional function called curveTightness() provides control for the visual quality of the curve. The curve() function is an implementation of Catmull-Rom splines. Using the 3D version of requires rendering with P3D or OPENGL (see the Environment reference for more information).
Syntax |
    curve(x1, y1, x2, y2, x3, y3, x4, y4);
    curve(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4);
Parameters |
x1, y1, z1 | int or float: coordinates for the beginning control point
x2, y2, z2 | int or float: coordinates for the first point
x3, y3, z3 | int or float: coordinates for the second point
x4, y4, z4 | int or float: coordinates for the ending control point
Returns | None
Usage | Web & Application
Related | curveVertex() curveTightness() bezier()

Updated on August 30, 2010 04:29:39pm EDT