» Curves
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

Curves

In mathematics a Curve is "a line that does not need to be straight". With that definition a large number of different curves exist each of which can be described by a mathematical formula.

Different mathematical curves

In computer graphics we're most interested in curves that can be described by mathematical formulas that are called polynomial functions. In order to be able to draw arbitrarily curved lines often multiple such curve-segments are combined to a Spline. The term "Spline" originates from an old draftsmen tool called a Flat Spline.

Curves that are piecewise defined by polynomial functions are called Splines

There are many different types of splines (hermite, bézier, catmull-rom, b-spline,..). but they all share the following key properties:

  • they are continuous at the Knots
  • Control Points influence their shape
Splines with their segments, control points and knots

Bézier Spline

Quadratic Bézier Curve with its Control Point

Cubic Bézier Curve with its two Control Points

The most popular Bézier curves are quadratic and cubic in nature as higher degree curves are expensive to draw, evaluate and not so intuitive to handle.

Characteristics

  • they cannot exactly describe circles and ellipses
  • they are a special cases of B-Spline
Related nodes

BezierEditor (2d)
BezierEditor (3d)
See also nodes from the 'BezierSegment' category.

BezierEditor nodes are operating with cubic Bézier splines.

See also:

B-Spline

An open B-Spline does not go through its control points

A clamped B-Spline which at least goes through its first and last control point

B-Spline is short for "basis spline".

Characteristics

  • they do not go through their control points
  • they have C2 continuity!
  • they are a special case of NURBS
  • in order to have a sharp corner in a B-Spline it takes three control-points at the same position
  • it is hard to insert a control point without changing the curve
  • it is hard to make a straight line
  • depending on its degree, changing one point changes large parts of the curve
  • they cannot exactly describe circles and ellipses.

In order to make it more intuitive to handle a B-Spline can also be constructed in a way it at least goes through its first and last control point.

Related nodes

B-Spline (Value)
B-Spline (2d)
B-Spline (3d)
B-Spline (3d Wryly)

See also:

NURBS

A NURBS with its weighted control points

NURBS (short for "non uniform rational b-spline") are essentially B-Splines with a weight for each control point. If all its weights equal 1 the NURBS is a B-Spline.

  • NURBS generalizes both B-splines and Bézier curves
  • they can accurately represent circles and ellipses
Related nodes

NURBS (2d)
NURBS (3d)

See also:


Sources

anonymous user login

Shoutbox

~2d ago

mediadog: Aha! Right-click on an image to get the source link

~2d ago

~3d ago

antokhio: @luper vc redist 2013

~6d ago

guest: @Luper, you'll probably need to make the PhongDirectional etc node have one of the pins → NoTexture, and then voilà!

~7d ago

Luper: hey guy, just reinstalled VVVV and text(DX11.Geometry) not working, any idea why?

~8d ago

joreg: Reminder: Show us what you're patching on: #vvvv meetup tomorrow, Tue, Feb 23, 8pm CET: 8.-worldwide-meetup

~12d ago

vux: Hey all, we now in Berlin with @idwyr, say if you want to catch up :)