Corner radius
Round a rectangle's corners together or one by one: a scrubbable radius, presets up to a pill, a 2×2 grid and radius dots on the stage.
Rectangles in EaseKit can round all four corners together or each corner on its own, like independent corners in Figma and a four-value border-radius in CSS. You set the radius in the inspector's Corners row or by dragging the radius dots on the stage, and a keyframed radius animates every corner together.
The Corners row
| Control | What it does |
|---|---|
| Corner style | Smooth (continuous corners, Apple style; the default) or Rounded (circular arcs) |
| Radius field with a corner mark | The radius in points. Type a value, step it with ↑ / ↓, or drag the corner mark to scrub. With independent corners it sets all four at once |
| Presets (the chevron) | 0, 4, 8, 12, 16, 24, 32 and Full. Full makes a pill: half the shorter side |
| Independent corners (the single-corner button) | Opens a 2×2 grid of radii: top left, top right, bottom left, bottom right, laid out like the corners they set. Click it again (Same radius on every corner) to go back to one radius, the largest corner's |
Radius dots on the stage
Select a rectangle and a small dot sits inside each corner, at the centre of its curve. Drag a dot toward the middle to round the corners, back out to sharpen them. The value shows while you drag, and it stops at a pill.
- A dot changes all four corners together.
- Hold ⌥ while dragging to change only that corner. The rectangle gets independent corners.
- The dots follow the rectangle at any rotation and zoom. They hide while playing and on rectangles smaller than about 56 pt on screen: zoom in to use them.
- Like any edit, a drag applies at the playhead. On a keyframed radius, it changes the value there.
How corners animate
Corners animate through one track, cornerRadius, the radius shown in the field. With independent corners, that radius is the largest corner, and all four scale together with it. A tab with 16 / 16 / 0 / 0 animated to a radius of 32 shows 32 / 32 / 0 / 0 at the end: its shape stays a tab while it grows.
- Set the corners you want at rest, for example 16 / 16 / 0 / 0.
- Key the radius in the timeline, or ask the AI (“round the tab to 32 on hover”).
- Play: the rounded corners grow together, the square ones stay square.
In exports
| Export | Uniform radius | Independent corners |
|---|---|---|
| HTML, CSS, Web Animations | border-radius | Four-value border-radius, static and keyframed |
| Motion (React) | A number | A four-value borderRadius string |
| SwiftUI | RoundedRectangle | UnevenRoundedRectangle |
| SVG (Figma) | A rounded rectangle | A path with the four corners |
| Lottie | A rounded rectangle | A path; sampled into shape keys when the radius animates |
| Video, GIF, PNG | Yes | Yes |
With the AI and Figma
- Ask for it in words: “round only the top corners of the sheet by 24”, “make the button a pill”.
- In the spec,
cornerRadiiholds the four corners (top left, top right, bottom right, bottom left); acornerRadiustrack scales all four. - Import from Figma keeps per-corner radii from Figma rectangles and frames.
Troubleshooting
| If this happens | Try this |
|---|---|
| There's no Corners row | The layer isn't a rectangle: ellipses, stars and shapes whose points you edited are vector paths; images and videos can take one radius (ask the AI) but not independent corners yet. |
| The radius dots don't show | Pause playback, select the rectangle, and zoom in if it's small on screen. |
| Double-clicking the rectangle turned it into a path | Double-click opens a shape's points and converts rectangles to vectors. Undo (⌘Z) to get the rectangle back. |
| Full doesn't look round after a resize | Full sets the radius for the current size. Pick Full again after resizing, or animate the radius with the size. |