Arrange — alignment, distribution, transform, boolean
The Arrange menu and the Align / Transform / Boolean toolbar groups cover every geometric transform.
Alignment and distribution
When 2+ shapes are selected, the alignment buttons light up:
- Align left, horizontal centers, right
- Align bottom, vertical centers, top
- Distribute horizontally (requires 3+ selected)
- Distribute vertically (requires 3+ selected)
Transform
With a selection, the Properties panel shows an inline Transform section — no modal dialogs. Type a value and press Enter (or click the button); the panel stays open so you can repeat (e.g. Rotate +90 twice):
- Move — translate by Δx / Δy in the active display unit.
- Rotate — arbitrary angle about the selection's centroid, with ±45/±90/180 preset chips.
]/[are still the quick ±90° keyboard steps. - Scale — uniform scale about the centroid (×0.25 / ×0.5 / ×2 / ×4 presets).
- Offset / Inflate / Deflate — polygon offset on selected boundaries (outset positive, inset negative; runs via
polygon-clipping).
Array… (Arrange → Array… or the toolbar) and Chamfer / Fillet corners… (Arrange) remain their own parameter dialogs.
Generate identifiers… (Arrange) stamps systematic labels in one undo step — the no-scripting replacement for Clewin's label function. Array labels mode writes an A1..H12 grid (rows × cols, configurable pitch, alpha/numeric row & column schemes, prefix, A1/1A order) across a die array; Mask ID block mode stacks large human-readable lines (project / designer / version / mask turn). Both use the normal text + font pipeline, so the labels flatten to polygons on GDS export like any other text.
Search & replace cell references
Ctrl+Shift+F (or Edit → Search & replace cell refs…) opens a dialog that rewrites every SREF/AREF whose target is the "from" cell to point at the "to" cell instead. The dialog shows a live count of how many refs will be affected before you commit. Scope is the whole document.
Find shapes & instances
Ctrl+F (or Edit → Find shapes & instances…) opens a searchable list of everything in the active cell. Predicate grammar (terms separated by space = AND):
layer:N— only shapes on layer idNdatatype:N— only shapes on datatypeNkind:shape|path|text— restrict by shape kindref:CELL— match SREF/AREF whose target isCELLtext:NEEDLE— substring match on text-shape contentsarea>NUM/area<NUM— true polygon area filter (in nm²; bbox area for non-polygon shapes)width>NUM/width<NUM/width=NUM— path width filter (in nm) — e.g.kind:path width<450flags sub-min-width routes as a cheap pre-DRC pass
Click any row to centre the viewport on it and select it, or Select all to select every match in the active cell at once. (You can also select every shape on a layer from the Layers panel — hover a row and click the marquee icon.)
Related pages
- Boolean operations and layer merge — Union, difference, intersect, and XOR selected shapes, and merge every shape on the active layer into one polygon.
- Design-rule check (DRC) — Run min-width, min-spacing, and min-area checks with hierarchy flattening; step through violation markers on the canvas.