Shapes

Once you're past the workspace basics, drawing usually starts the same way: not with a blank stroke, but with a shape. Six shape tools live in the toolbar in Prototyping mode, always available: Rectangle, Ellipse, Star, Polygon, Line, and Arrow. Every one of them is parametric (built from numbers, not fixed geometry), so the shape you get isn't the final word. Change a number later, or drag a handle right on the canvas, and it rebuilds itself live.

Formo shapes toolbar

All six shapes are created the same way once you've picked a tool: click where you want the shape to start, drag to where you want it to end, and release. It appears sized to exactly the area you dragged out, immediately selected and ready to edit in the right panel.

TL;DR:

- Six shape tools, all parametric: nothing is baked in the moment you draw it.

- Corner radius is shared behavior across rectangle, star, and polygon.

- Star and polygon share the same point-count range (3–120) and can be edited point-by-point with a double-click.

- Ellipse hides two extra tools inside it: start/end angle for pie slices and arcs, inner radius for rings.

- Line and Arrow are the same shape with different default end caps — mix and match either end freely.

- Every shape shares the same right-panel structure. Rectangle below walks through it in full; the other shapes only call out what's different.

Rectangle

To create one: select the Rectangle tool from the toolbar, or press R, then click and drag on the canvas.

Formo rectangle tool

Drag one out, and it's immediately fillable and strokeable. Select it, and here's everything the right panel shows, in full. Every other shape shares this same structure, so this  is the one place worth reading in detail.

Header. The shape's type (Rectangle) and its name (editable), plus a tags field for labeling it with your own keywords.

Transform: Position (X/Y). Where the shape sits. By default this measures its top-left corner relative to its container; switch this in Settings to measure from the rotation pivot instead, a document-wide preference.

Transform: Dimensions (W/H). Width and height: drag the shape's own resize handles on the canvas, or type exact numbers here; both stay in sync.

Transform: Rotation. The angle, in degrees, with rotate/flip-horizontal/flip-vertical icon buttons next to it. Every shape also has a draggable rotation origin (the small crosshair at its center). Move it outside the shape's own bounds, and rotation sweeps a wide arc around that external point instead of spinning in place.

Corner radius. Rectangle-specific: a small round handle appears just inside each corner once selected; drag it toward the center and all four corners round together, from sharp to a fully pill-shaped edge. Typing an exact number into the field does the same thing.

Fill. Solid color, gradient, image, or shader fill, with a visibility toggle and opacity. This section can hold more than one fill stacked on top of each other, layered in paint order.

Stroke. A shape's outline, with its own depth beyond just a color and a width:

- Weight: the stroke's thickness in pixels. Click and type, or drag to scrub.

- Position: Inside, Center, or Outside the shape's own edge, changing whether the stroke eats into the fill, straddles it, or sits entirely outside.

- Join: how corners are drawn where two stroke segments meet: Miter (a sharp point), Round, or Bevel.

- Miter Limit: only appears when Join is set to Miter. Controls how sharp a corner is allowed to get before it's clipped off instead of tapering to an infinitely thin point.

- Dash and Gap: for a dashed look, set independently. Both fields show ∞ specifically when their value is 0, meaning "solid, no dash pattern" rather than a literal zero. A link/unlink toggle sits between them so dash and gap can move together, or be set independently once unlinked.

Appearance. Overall opacity and blend mode, applied on top of whatever the Fill section's own per-fill opacity already looks like.

Effects. Additional visual effects layered on beyond fill and stroke.

Events and Methods. These two sections are where Formo's reactive system becomes directly available to you, per-object, without needing a separate scripting panel. Events lets you attach handlers to things that happen to this specific object — a click, for instance. Methods let you define callable functions on the object itself, so something elsewhere in the document can trigger Rect1.hit() (or whatever you name it) the same way you'd call a function in code, except it's scoped to this one object, and it's available from a formula anywhere else in the document.

Ellipse

To create one: select the Ellipse tool, or press O, then click and drag.

Formo ellipse tool

Same panel structure as Rectangle: Fill, Stroke, Appearance, Effects, Events, Methods are identical. What's different: no corner radius. Instead, two shape-specific controls replace it.

A circle is just an ellipse with equal width and height; there's no separate circle tool. Draw one freely, then hold Shift while dragging a corner resize handle to lock its proportions to a perfect circle (or square up any oval back to round) — the same uniform-scale behavior Shift gives you on a corner handle of any shape, not something ellipse-specific.

Start angle and end angle work as a linked pair: pull them apart and the ellipse becomes a pie wedge or an open arc, exactly the sweep you set. Inner radius hollows out the center as you push it up, turning the shape into a ring: a donut, a dial, a loading-spinner segment. Combine both and you can build a partial ring from one tool, no boolean operations needed.

Formo ellipse shape settings

Star

To create one: click the small flyout arrow on the Ellipse tool to reveal Star, select it, then click and drag. Star doesn't have its own dedicated shortcut key; it lives specifically as Ellipse's flyout alternate.

Formo star tool

Same panel structure as Rectangle, with corner radius carried over plus two more shape-specific controls. Hold Shift while dragging a corner resize handle to scale a star uniformly, keeping its proportions locked instead of stretching it unevenly — the same behavior as any other shape's corner handle.

Editing the three main controls. Each one works both ways: drag its dedicated handle directly on the canvas for a live, by-eye adjustment, or type an exact number into the right panel for a precise value; the two stay in sync no matter which you use.

Formo star shape settings

- Point count runs from 3 up to 120: low for something closer to a spiky triangle, high for a dense, textured burst.

- Inner radius controls how deep the notches between points cut, from long needle points to stubby, rounded-off ones.

- Corner radius rounds every point and notch at once, for a soft star instead of a sharp one.

Symmetric point editing

Double-click a star to go past those three global controls and edit it point by point directly. Under the hood, Formo treats one "arm" of the star as the real, authored source. Every other arm is a mirrored copy of it.

- That means moving a point on any arm moves the matching point on every other arm to match, simultaneously, so you only ever have to reshape one arm by hand. Adding a point works the same way: split an edge on one arm to add a new vertex there, and the same split appears on every mirrored arm at once. Removing a point removes it from every arm together too; you can't accidentally make one arm different from the rest through this kind of edit. The result stays perfectly symmetric no matter how far you push it, because every arm besides the one you're touching is derived from your edits, not independently editable.

- Adding a point works the same way: split an edge on one arm to add a new vertex there, and the same split appears on every mirrored arm at once.

- Removing a point removes it from every arm together too — you can't accidentally make one arm different from the rest through this kind of edit.

- The result stays perfectly symmetric no matter how far you push it, because every arm besides the one you're touching is derived from your edits, not independently editable.

This is what lets you turn a plain star into something far more specific — a slightly irregular-looking "hand-drawn" starburst, a shape with subtly different point lengths, a custom badge silhouette — while keeping the whole thing symmetric without having to match six or eight points by hand.

Polygon

To create one: same flyout as Star — click the arrow on the Ellipse tool, select Polygon, then click and drag.

Formo polygon tool

Same panel structure and corner radius as Rectangle and Star, minus inner radius. Hold Shift while dragging a corner resize handle to scale a polygon uniformly, keeping its proportions locked instead of stretching it unevenly — the same behavior as any other shape's corner handle.

Editing the two main controls. Each one works both ways: drag its dedicated handle directly on the canvas for a live, by-eye adjustment, or type an exact number into the right panel for a precise value; the two stay in sync no matter which you use.

Formo polygon shape settings

- Point count runs from 3 up to 120, the same range as the star, but with straight edges instead of notches: a triangle, a hexagon, something that reads as a near-perfect circle once you push toward 100+ sides.

- Corner radius rounds every vertex the same amount, so a hexagon can go from sharp-cornered to pill-soft with one number.

Symmetric point editing

Double-click a polygon to go past those two global controls and edit it point by point directly. Under the hood, Formo treats one edge/segment of the polygon as the real, authored source. Every other segment is a mirrored copy of it.

- That means moving a point on one segment moves the matching point on every other segment to match, simultaneously, so you only ever have to reshape one segment by hand. Adding a point works the same way: split an edge on one segment to add a new vertex there, and the same split appears on every mirrored segment at once. Removing a point removes it from every segment together too; you can't accidentally make one segment different from the rest through this kind of edit. The result stays perfectly symmetric no matter how far you push it, because every segment besides the one you're touching is derived from your edits, not independently editable.

- Adding a point works the same way: split an edge on one segment to add a new vertex there, and the same split appears on every mirrored segment at once.

- Removing a point removes it from every segment together too — you can't accidentally make one segment different from the rest through this kind of edit.

- The result stays perfectly symmetric no matter how far you push it, because every segment besides the one you're touching is derived from your edits, not independently editable.

This is what lets you turn a plain hexagon or octagon into something far more specific (a custom badge shape, a subtly irregular-looking gem silhouette, a repeating decorative motif) while keeping the whole thing symmetric without having to match points on every side by hand.

Line and arrow

To create an arrow: select the Arrow tool, or press L (this is the default tool in its toolbar slot), then click and drag. To create a plain line instead: press Shift+L, or click the flyout arrow on Arrow to reveal Line underneath it.

Formo line and arrow tools

The one shape where the panel structure differs: no Fill section at all — a line has no enclosed area to fill — and no corner radius. Dimensions work differently too, since a line is really just its two endpoints rather than a filled bounding box.

These are the same underlying shape, just started from a different default. Each end of the line has its own cap, set independently: a solid arrowhead, a swallowtail notch, a slim needle for fine annotation, a couple of inverted/fletching variants, or plain round, square, and open endings when you don't want a point at all. Cap size is one shared setting across both ends, so switching from a fine line to a bold callout arrow is a single change. Stroke (weight, position, join, dash/gap) works the same as it does on any other shape.

Turning a shape into a brush stroke

Every shape on this page (Rectangle, Ellipse, Star, Polygon, Line, Arrow) can become a fully brush-edited stroke.

How to do it. Select the shape, right-click it, and choose Ink with brush from the context menu. There's no dedicated keyboard shortcut for this; it's reached only through the right-click menu.

What happens. The shape's own outline becomes the centerline for a brand-new brush stroke, painted with whatever nib, size, and curve settings your brush is currently set to. The result is ink — same nib, same pressure profile as anything drawn freehand — following your shape's exact geometry, and just as editable afterward: selectable, sculptable, with its smoothing and size adjustable the normal way.

One limitation. Because the shape was never a hand-drawn gesture, there's no raw pressure-and-tilt recording behind it the way there is for something you actually drew. Adjusting nib and size afterward still works normally, it's specifically the "regenerate from an original hand movement" behavior  that has nothing to regenerate from here.

Going back. The reverse conversion (flattening a brush stroke back into a plain vector shape) is covered in the Brush & freehand drawing guide's article on converting strokes to vector paths and back.

On this page

Formo

The browser studio where drawings become animations, toys, and games. Your files, open HTML export, nothing to install.