Geometry

Parametric Curves

Express x and y as functions of a parameter t — describe paths, animations, and curves no function can

A parametric curve gives x and y (and possibly z) as functions of a parameter t — usually time. Equation form (x(t), y(t)) traces a path in the plane as t varies. Parametric forms describe curves that fail the vertical-line test (circles, figure-8s), encode motion (projectile trajectories), and underpin computer graphics (Bézier curves), physics (particle paths), and animation. They unify diverse curves under a single framework.

  • Form(x(t), y(t)) — coordinates as functions of parameter t
  • Velocity vector(dx/dt, dy/dt) — direction and speed of motion
  • Arc length∫ √((dx/dt)² + (dy/dt)²) dt
  • Common parameterizationt = time, t ∈ [0, 1] for finite curves
  • Bézier curvesBuilt from parametric polynomials, foundational in graphics
  • Implicit vs parametricImplicit F(x, y) = 0 vs parametric (x(t), y(t)) — different views of the same curve

Interactive visualization

Press play, or step through manually. The visualization is yours to drive — try it before reading on.

Open visualization fullscreen ↗

Watch the 60-second explainer

A condensed visual walkthrough — narrated, captioned, under a minute.

Parametric form

A parametric curve in the plane is given by:

x = x(t)
y = y(t)

where t (the parameter) ranges over some interval. Both x and y are functions of t — as t varies, the point (x(t), y(t)) traces a curve.

The parameter t typically represents time in physical applications — t = 0 is the start, t increases through the path. But t can be anything (an angle, an arclength, just a label).

Common parametric curves

CurveParametric formRangeShape
Line through (a, b)x = a + ct, y = b + dtt ∈ ℝStraight line, direction (c, d)
Circle radius rx = r cos t, y = r sin tt ∈ [0, 2π]Counterclockwise from (r, 0)
Ellipsex = a cos t, y = b sin tt ∈ [0, 2π]Stretched circle
Parabola y = x²x = t, y = t²t ∈ ℝUpward parabola
Cycloidx = r(t − sin t), y = r(1 − cos t)t ∈ ℝWheel rolling on ground
Astroidx = cos³t, y = sin³tt ∈ [0, 2π]Star-shaped, 4 cusps
Lissajous (1:2)x = sin(t), y = sin(2t)t ∈ [0, 2π]Figure-8
Helix (3D)x = cos t, y = sin t, z = tt ∈ ℝSpiral up the z-axis

Why parametric instead of y = f(x)?

Functions y = f(x) have limitations:

  • Vertical-line test. Each x has one y. Circles, figure-8s, and loops fail this — can't be expressed as y = f(x).
  • No motion encoding. A curve like y = x² is a static shape. Parametric forms (x(t), y(t)) encode the path AND the speed/direction of traversal.
  • 3D and higher dimensions. Parametric forms generalize naturally — (x(t), y(t), z(t)) for 3D curves. Functions don't.

Velocity and acceleration

The first derivative gives the velocity vector:

v(t) = (x'(t), y'(t))

Its direction is tangent to the curve; its magnitude |v(t)| = √(x'² + y'²) is the speed.

The second derivative gives the acceleration vector:

a(t) = (x''(t), y''(t))

For uniform circular motion (x = cos t, y = sin t):

  • v = (−sin t, cos t) — tangent to circle, speed = 1.
  • a = (−cos t, −sin t) — points toward origin (centripetal acceleration).

Arc length

The total arc length from t = a to t = b is:

L = ∫[a, b] √((dx/dt)² + (dy/dt)²) dt

The integrand is the speed; integrating speed over time gives distance. For a circle of radius r over t ∈ [0, 2π]:

L = ∫[0, 2π] √(r²sin²t + r²cos²t) dt = ∫[0, 2π] r dt = 2πr ✓

Bézier curves — parametric in graphics

Quadratic Bézier — three control points P₀, P₁, P₂:

B(t) = (1−t)² P₀ + 2(1−t)t P₁ + t² P₂,  t ∈ [0, 1]

Cubic Bézier — four control points:

B(t) = (1−t)³ P₀ + 3(1−t)²t P₁ + 3(1−t)t² P₂ + t³ P₃

The curve starts at P₀ (t=0), ends at P₃ (t=1), and is "pulled" toward intermediate control points P₁ and P₂. The coefficients are Bernstein polynomials (related to Pascal's triangle).

Bézier curves are everywhere — TrueType fonts, Adobe Illustrator paths, animation easing curves (CSS cubic-bezier), CAD design.

JavaScript — parametric curves and animation

// Sample a parametric curve at n points
function sampleCurve(xFunc, yFunc, tMin, tMax, n = 100) {
  const points = [];
  for (let i = 0; i <= n; i++) {
    const t = tMin + (i / n) * (tMax - tMin);
    points.push([xFunc(t), yFunc(t)]);
  }
  return points;
}

// Circle
const circle = sampleCurve(
  t => Math.cos(t),
  t => Math.sin(t),
  0, 2 * Math.PI
);

// Cycloid
const cycloid = sampleCurve(
  t => t - Math.sin(t),
  t => 1 - Math.cos(t),
  0, 4 * Math.PI
);

// Lissajous (3:2 ratio)
const lissajous = sampleCurve(
  t => Math.sin(3 * t),
  t => Math.sin(2 * t),
  0, 2 * Math.PI,
  500  // higher resolution
);

// Quadratic Bézier curve
function quadraticBezier(p0, p1, p2, t) {
  const u = 1 - t;
  return [
    u * u * p0[0] + 2 * u * t * p1[0] + t * t * p2[0],
    u * u * p0[1] + 2 * u * t * p1[1] + t * t * p2[1]
  ];
}

// Cubic Bézier
function cubicBezier(p0, p1, p2, p3, t) {
  const u = 1 - t;
  return [
    u**3 * p0[0] + 3*u*u*t * p1[0] + 3*u*t*t * p2[0] + t**3 * p3[0],
    u**3 * p0[1] + 3*u*u*t * p1[1] + 3*u*t*t * p2[1] + t**3 * p3[1]
  ];
}

// Numerical arc length via discretization
function arcLength(points) {
  let total = 0;
  for (let i = 1; i < points.length; i++) {
    const dx = points[i][0] - points[i-1][0];
    const dy = points[i][1] - points[i-1][1];
    total += Math.sqrt(dx * dx + dy * dy);
  }
  return total;
}

console.log(`Circle circumference: ${arcLength(circle).toFixed(4)}`);  // ~6.28 (= 2π)

Where parametric curves show up

  • Computer graphics. Bézier curves, NURBS, splines for fonts, paths, animation. Every CAD package uses parametric curves.
  • Physics. Particle trajectories — projectile (parabola), planetary orbit (ellipse), spring oscillation (sinusoid). Velocity and acceleration are derivatives of position.
  • Animation easing. CSS cubic-bezier(x1, y1, x2, y2) describes timing curves. Common easings — ease, ease-in, ease-out are specific Bézier curves.
  • Robotics. Robot arm trajectories, drone flight paths, autonomous vehicle paths. All parametric, often with time as parameter.
  • Engineering — gears and cams. Cycloid teeth, involute curves for gear profiles. Lissajous figures in oscillating mechanisms.
  • Signal processing. Lissajous figures show frequency relationships. Polar plots of complex signals.
  • Calculus textbooks. Parametric forms test understanding of derivatives, arc length, and motion.

Common mistakes

  • Confusing parametric with implicit. Parametric (x(t), y(t)) generates points by varying t. Implicit F(x, y) = 0 describes the locus where F is zero. Same curve can have both forms; they convey different information (parametric encodes traversal).
  • Forgetting parameter range. A parametric curve isn't fully defined without specifying t ∈ [a, b]. The same parametric form over different ranges traces different (sub)curves.
  • Mistaking parameter for x-coordinate. In y = f(x), parameter is x. In parametric (x(t), y(t)), t is independent of x. Beginners often write x = t and call it "parametric" when they could just use a function.
  • Treating different parameterizations as different curves. x = cos t, y = sin t and x = cos(2t), y = sin(2t) trace the same circle (just at different speeds). Reparameterization changes the parameter but not the curve.
  • Confusing velocity vector with tangent direction. Velocity (x'(t), y'(t)) is the tangent times speed. To get a unit tangent, normalize — divide by |velocity|. Important for curvature and Frenet frame computations.
  • Wrong formula for arc length. ∫ √((dx/dt)² + (dy/dt)²) dt — not √(dx² + dy²) treated as differential. Arc length integrates speed over time.

Frequently asked questions

What's the difference between a function y = f(x) and a parametric curve?

A function y = f(x) gives one y for each x — passes the vertical-line test. A parametric curve (x(t), y(t)) can have multiple y's for the same x (loops, figure-8s). Parametric curves can describe paths that retrace, cross themselves, or move in 3D — things functions can't. Most importantly, they encode the order of traversal and speed, not just the shape.

How do you parameterize a circle?

x(t) = r cos t, y(t) = r sin t, t ∈ [0, 2π]. As t increases, (x, y) traces the circle counterclockwise starting from (r, 0). Speed is constant (= r) — uniform circular motion. The same circle can be parameterized differently (e.g., x = r cos(2t), y = r sin(2t) traces it twice as fast, twice in [0, 2π]).

What's the velocity of a parametric curve?

The derivative (dx/dt, dy/dt) is the velocity vector — its direction is tangent to the curve, its magnitude is the speed. For circle x = cos t, y = sin t — velocity = (−sin t, cos t), tangent to the circle, with speed √(sin²t + cos²t) = 1. Speed and direction together specify motion completely.

How do you compute arc length parametrically?

Arc length = ∫ √((dx/dt)² + (dy/dt)²) dt over the parameter range. The integrand is the speed; integrating speed over time gives total distance. For a circle radius r over t ∈ [0, 2π] — ∫ √(sin²t + cos²t) · r dt = ∫ r dt from 0 to 2π = 2πr — checks out (circumference).

What's a Bézier curve?

A parametric polynomial curve, foundational in computer graphics and design. Quadratic Bézier — B(t) = (1−t)² P₀ + 2(1−t)t P₁ + t² P₂, t ∈ [0, 1]. Cubic Bézier — uses 4 control points and t³ coefficients (binomial weights). Bézier curves smoothly interpolate from start to end with control points shaping the curve. Used in fonts (TrueType, PostScript), Adobe Illustrator paths, animation.

What's a cycloid?

The curve traced by a point on a wheel rolling along a flat surface. Parametric form — x = r(t − sin t), y = r(1 − cos t). Discovered around 1500. Famously the brachistochrone — the path of fastest descent under gravity from a high point to a lower one (not a straight line!). Also the tautochrone — descent time is independent of starting position on the cycloid.

What's a Lissajous figure?

Curves of the form x = A sin(at + δ), y = B sin(bt). When a/b is rational, the curve is closed and periodic; irrational, it fills a rectangle densely. Used in oscilloscope demonstrations to compare two frequencies — a 1:1 ratio gives an ellipse, 1:2 a figure-8, etc. Discovered by Bowditch (1815) and Lissajous (1857). Common in art and signal analysis.