Place: drag any tool onto the grid. Or choose a line tool, click its start, then
click its end.
Light beams (B): click a source point, then click to aim. The beam reflects off
plane and curved mirrors, bends through lenses, and refracts through glass blocks and
prisms by Snell’s law, including total internal reflection. Set a beam to parallel rays
or a fan in Properties; a 360° fan is a point source, and White light splits into a
spectrum in glass. Normals, angle labels, backward extensions, and faint partial
reflections are toggled under Ray tracing. A Wall can be set to block beams.
Object (O): click the tip, then the base of an object arrow. The nearest lens or
curved mirror draws the three principal rays and the image, and Properties shows u, v,
f, and the magnification. Tick Real on a lens or curved mirror to swap the
paraxial model for true spherical surfaces and see spherical aberration.
Worksheet mode (under Ray tracing) hides angle labels, image arrows, and
extensions so students can work them out, then reveals them. Animate light sends
dots along every beam, slowing in glass. The Protractor tool is a draggable
protractor for measuring angles by hand. Share link copies a URL that carries the
whole diagram, so nothing is uploaded anywhere.
Groups: with several objects selected, turn the round handle to rotate them
together, and use the Align and Distribute buttons in Properties. The colour, dash, and
thickness you last gave a tool are remembered on this device for the next one you draw.
Tick the worksheet header in Export to print with title, name, class, and date lines.
Optical elements: curved mirrors and lenses use the thin-element (paraxial)
model, so the three principal rays meet exactly at the image. Rotate them with the round
handle and drag the corner handle to change the aperture. Glass shapes stand on the base
line you draw, on its left-hand side.
Connected rays: each click adds a segment. Press Enter or double-click to finish;
Escape cancels the unfinished segment. Orange junction handles move all connected
segments together.
Grid size: choose large-grid rows and columns, then Apply grid size. Each large
square contains 5 × 5 small squares. For example, 10 rows and 8 columns gives a portrait
grid. Grid Scale refers to one small square.
Labels: drag an endpoint label, measurement, point name, or observer name
independently. Select a label and press Delete to remove just its text. Re-enter text in
its parent object’s Properties to restore it.
Select several: Shift + click objects, drag a box on empty canvas, or press
Ctrl/⌘ A. Drag any selected object or use the arrow keys to move the group. Delete,
copy, paste, and duplicate act on the whole selection.
Edit: select a diagram element. Drag its endpoints to resize, or use the circular
handle to rotate. The Properties panel provides precise controls, including label
offsets.
Navigate: scroll to zoom around the pointer; Space + drag, middle-drag, or the
Pan tool to move. Press 0 to fit the page.
Snap: grid snapping uses square intersections. Object snapping uses existing
endpoints; rays automatically join other ray endpoints. Turn it off to place an
independent endpoint.
Save: Save project downloads an editable .ray.json file. Open reloads it. The
current diagram also autosaves in this browser.