Repository navigation
flatten
Home > Flatten
< Previous: Regions & booleans | Next: Expand Strokes >
Keep the shape being drawn, and let go of whatever was producing it.
Menu: Edit > Flatten | In depth: Compound paths
Note
This is not the Flatten node. Flatten, in the node graph, drops list structure and leaves the geometry alone. This command changes the geometry and has nothing to do with lists. They share the word and nothing else.
Edit > Flatten, just after Release Compound Path, or by name in the command palette. There is no right-click row and no icon.
A compound set to union becomes its merged outline. The union a compound draws was reachable by nothing before: it is stored and recomputed on every change, but the sub-splines underneath stay as you drew them, and Convert to Spline refuses a compound outright. Two overlapping squares stop being two sub-splines and become the one rectangle they were drawing all along.
A boolean becomes its result. The same answer Convert to Spline already gives for a boolean, reached from this name as well.
Several splines selected together become their union. Overlaps counted once, any enclosed area kept as a hole. This is the one most people are looking for, and it is the one the name says least about.
The merged shape comes back as a spline, with anchors, so it can be edited straight away. It used to come back as a baked path that had to go through Convert to Spline first.
When the union leaves a hole, or leaves two pieces that do not touch, the result is a compound rather than a single spline, and the Layers panel row says so.
Selected together they become one object. Flattened one at a time they would each commit their own merge and stay separate, which is a different drawing.
A selected group stands for the splines inside it, so there is no need to open the group first.
- The sources are hidden, not deleted. Make Compound Path consumes its inputs because Release can hand them back; nothing undoes a flatten, so the exact originals stay recoverable. Unhide All brings them back.
- The style comes from the backmost spline in a multi-spline union, the rule Make Compound already uses.
- A locked spline stops the whole union rather than being quietly left out, the answer Make Compound and Release both give.
- It is one way. A compound's sub-splines lose the names and styles Release would have handed back, because the merged outline corresponds to no one sub-spline. Undo is the way back, and the only way back. The command says so in its own description rather than leaving it to be found out.
Two refusals, and the difference between them is the useful part.
- A compound cutting holes is refused with "Switch that compound to union mode before flattening." A compound in compound mode has nothing computed to commit: its sub-splines already describe exactly what is drawn.
- A plain spline is refused with "only a union compound or a boolean can be flattened", because it has no mode to switch and the first message would send you somewhere that is not there.
- Compound paths: the union switch this reads, and Release, which is the other direction.
- Convert to Spline: the same answer for a boolean, and the way to make a circle or a region editable.
- Regions & booleans: where a boolean comes from.
- Unhide All: how the sources come back.
- Expand Strokes: the other command that makes a drawn shape into geometry.
< Previous: Regions & booleans | Next: Expand Strokes >
Found a bug or have feedback? Open an issue | Docs home | Videos | Credits
Getting Started
- Welcome
- How Locus came to be
- Videos
- Community & support
- Installing & launching
- Licensing & activation
- Beta License Agreement
- Core concepts
- Interface tour
- Your first pattern
Modeling - Drawing
- Canvas basics
- Points
- Typing coordinates
- Lines, rays & segments
- Circles & arcs
- Ellipses
- Compass & straightedge
- Rectangles & squares
- Splines
- The spline menu
- Segments
- Add Extremes
- Constraining with Shift
Modeling - Editing
- Selecting objects
- Transform tools
- Align & distribute
- Duplicate, detach & ownership
- Regions & booleans
- Flatten
- Expand Strokes
- Cleanup
- Weld & seams
- Style palettes & Re-ink
Annotation
Layers
Modeling Menus
- File
-
Edit
- Undo and Redo
- Group
- Ungroup
- Copy
- Paste
- Paste in Place
- Duplicate
- Duplicate in Place
- Hide
- Reverse Direction
- Convert to Spline
- Cut Spline
- Close Spline
- Compound paths
- Unhide All
- Detach
- Bake
- Clean Up: Merge Coincident Points
- Copy Style
- Reference in Nodes
- Snap to Points
- Snap to Objects
- Snap to Intersections
- Snap to Guides
- View
-
Draw
- Select
- Point
- Pen
- Segment
- Line
- Ray
- Circle: Center Point
- Circle: Center Radius
- Circle: Through 3 Points
- Arc: Center, Start, End
- Straightedge
- Compass
- Compass: Radius
- Ellipse: Center + Axes
- Elliptical Arc
- Rectangle: XY-Aligned
- Rectangle: Directed
- Square
- Regular Polygon: Edge
- Regular Polygon: Center, Vertex
- Regular Polygon: Center, Edge Midpoint
- Dimension: Linear
- Dimension: Angle
- Dimension: Radial
- Label
- Construct
- Combine
- Transform
- Select
- Nodes
The Nodes Window
- Basics of visual programming
- How the node graph works
- Sockets & wires
- Adding & connecting nodes
- Sliders & number inputs
- Keeping the node graph tidy
- View menu (Nodes)
- Lists & collections
- Constants & unit conversions
Node Library
- Overview
- Input
-
Primitives
- Point
- Point: Polar
- Segment
- Line
- Ray
- Circle: Center Point
- Circle: Center Radius
- Circle: Apollonius
- Circle Tangent to...
- Circle: 3 Points
- Arc
- Ellipse
- Elliptical Arc
- Rectangle: XY-Aligned
- Rectangle: Directed
- Square
- Regular Polygon: Edge
- Regular Polygon: Center
- Rectangular Grid
- Oblique Grid
- Triangular Grid
- Construct
- Transform
- Image & Fields
- Combine
-
Data
- Measure
- Numbers
- Lists
- Select
- Clean up
- Display
Clusters
Bridging Modeling & Nodes
Patterns & Symmetry
Image-Driven Fields
Saving, Exporting & Files
Preferences & Language
CLI
- CLI server
- Locus Shell
- CLI commands
- Tangent circles
- Tick and strike
- Making regions
- Boolean commands
- The node graph from the command line
Reference