Coordinate Transformations — Translate, Rotate, Reflect, Scale (2D)

Apply common 2D transformations to one or many points. Private by design—everything runs locally in your browser.

Points & Transform

Tip: Paste CSV pairs or type values. Use the Examples button to load shapes.

Transformed points will appear here…

Rotation: (x',y') = (cₓ + cosθ(x−cₓ) − sinθ(y−c_y), c_y + sinθ(x−cₓ) + cosθ(y−c_y)); Scaling about (cₓ,c_y): (x',y') = (cₓ + sₓ(x−cₓ), c_y + s_y(y−c_y)). Reflection across a line at angle θ uses rotate → flip x → rotate back. Press Enter to apply.

Preview

Blue = original, Red = transformed. The view auto-scales to fit all points. Grid and axes are illustrative.

Coordinate Transformations in 2D: A Quick Guide

This tool applies four core geometric transformations—translation, rotation, reflection, and scaling—to one or many points in the plane. These operations are ubiquitous in computer graphics, robotics, CAD, GIS, and classroom geometry, and they can be composed to produce complex motions and mappings.

  • Translation adds a fixed offset: (x',y') = (x + Δx, y + Δy).
  • Rotation by angle θ about a center (cₓ,c_y): x' = cₓ + cosθ(x−cₓ) − sinθ(y−c_y), y' = c_y + sinθ(x−cₓ) + cosθ(y−c_y).
  • Scaling about (cₓ,c_y) with factors sₓ, s_y: x' = cₓ + sₓ(x−cₓ), y' = c_y + s_y(y−c_y) (uniform if sₓ=s_y).
  • Reflection over common lines (axes, y=x, y=−x) or over a line through the origin at angle θ via rotate–flip–rotate back.

Under the hood, these are affine transformations—linear maps optionally combined with translation. In matrix form, a point is extended to homogeneous coordinates (x,y,1) and multiplied by a 3×3 matrix, which makes chaining operations straightforward. This page focuses on direct formulas for clarity, while producing the same results as matrix multiplication.

Pro tip: For “rotate/scale about a point”, set the center to the shape’s centroid if you want to keep it roughly in place as you transform.

5 Fun Facts about Coordinate Transformations

Rotate like a compass

Rotation is just turning every point around a center—like a compass needle swinging about its base.

Spin move

Reflections are mirror worlds

Flipping across a line acts like holding a mirror there—each point gets a twin the same distance on the other side.

Mirror magic

Scaling keeps directions

Scaling stretches or shrinks lengths but doesn’t change angles when it’s uniform—your shape grows without getting “tilted.”

Stretch & shrink

Translation = sliding

Translate just slides every point the same way—no spinning, no stretching. Think of moving a sticker across a page.

Simple slide

Combos make anything

Games and animations chain these moves—slide, spin, flip, stretch—to build dances, camera moves, and on-screen magic.

Action recipe

Frequently Asked Questions

How do I enter multiple points?

Enter one pair per line as x,y. Example: 0,0 then 2,1 then 4,0.

What angle convention is used?

Angles are in degrees, positive counter-clockwise.

Why can’t I reflect across any arbitrary line y=mx+b?

To keep the UI simple, we support axes, y=±x, and any line through the origin at angle θ. For a general line, translate points so the line passes through the origin, apply the angle reflection, then translate back.

Is my data private?

Yes. Everything runs locally in your browser; nothing is uploaded.

Explore more tools