Flex Link Routing
Flex is a legacy routing option, shown as Flex (legacy) in the Link Routing menu. It's retired from the default menu for new diagrams — see Legacy Diagram Layout and Routing Options for why. Direct and Tracks now include Flex's core benefit as standard behaviour: entities stay where you put them, and their links re-route automatically. This article remains accurate for diagrams and organisations still using Flex.
Flex link routing helps you keep the entity positions you have arranged while asking StructureGram to redraw the relationship lines between them.
It is useful when the entities are roughly where you want them, but the links have become crowded, tangled, or hard to read.
Where Link Routing Fits
An ownership diagram has two related layout jobs:
- Entity placement decides where entities sit on the canvas.
- Link routing decides how the relationship lines travel between those entities.
Auto-layout normally does both jobs together. It places the entities and then creates link paths between them.
Manual layout gives you direct control of entity positions. Once you start moving entities yourself, the diagram needs a way to keep the links readable without taking over the entity layout again. Flex routing is designed for that middle ground.
What Flex Routing Does
Flex routing keeps your entity positions and refreshes the links around them.
When Flex is selected:
- Your entities stay where you place them.
- StructureGram calculates fresh link paths between the current entity positions.
- Edit Links is turned on automatically so you can see and adjust routes immediately.
- Routes refresh automatically after you move or resize entities.
- Routes you shape by hand are kept, so your hand-tuned paths survive those refreshes.
Flex is best understood as: manual entities, assisted links.
What Flex Routing Does Not Do
Flex routing is not a full entity placement engine.
It does not decide that a company should move left, a trust should move down, or a group of entities should spread apart. It only works with the positions already on the canvas.
If the entities are all bunched together, Flex cannot make the diagram readable by itself. Use Refresh ▸ Layout first to spread the entities out, then use Flex to refine and maintain the link routes.
When to Use Flex Routing
Use Flex routing when:
- You have manually arranged entities and want to keep them in place.
- Links cross over entities or each other after moving entities.
- You want to tidy link paths without resetting the whole diagram.
- You are preparing a diagram for review, export, or presentation.
- You are working in a scenario and want the scenario step to keep its own hand-tuned layout.
Avoid starting with Flex when:
- The whole diagram is cluttered or bunched together.
- Many new entities have been added and there is no useful layout yet.
- You want to change the overall direction of the diagram flow.
In those cases, start with Refresh ▸ Layout.
How to Turn On Flex Routing
- Open an ownership diagram.
- Open the layout dropdown in the toolbar. It may show Auto-layout, Manual-layout, or Flex-layout depending on the current diagram state.
- Find Link Routing.
- Select Flex.
When you select Flex, the diagram moves into a manual-style layout state. Your entity positions become the authority, and Flex focuses on recalculating relationship lines.
Edit Links
When you enter Flex routing, Edit Links turns on automatically.
Edit Links lets you see and adjust relationship routes directly on the canvas. It is helpful because Flex is about link geometry, and you often want to inspect the route points immediately after switching modes.
You can turn Edit Links off again from the toolbar if you want a cleaner canvas.
Refresh Links
When Flex routing is active, the toolbar shows a link refresh control.
Use Refresh ▸ Links when you want StructureGram to recalculate the visible link paths from the current entity positions.
Because routes you shape by hand are otherwise kept, this is the control that rebuilds them.
This is helpful after:
- Moving several entities
- Adding or deleting relationships
- Hand-editing routes you have since decided against
- Returning to a scenario step where routes need a tidy-up
Refreshing links does not intentionally move your entities.
Automatic Route Refreshing
Flex routes refresh automatically after you move or resize entities, or change the diagram's structure. The diagram avoids rerouting while you are still dragging, so movement stays responsive.
Routes you have shaped by hand are kept through every automatic refresh. To rebuild them deliberately and drop your edits, use Refresh ▸ Links in the layout panel. See Understanding Auto-layout and Manual-layout.
Refresh All Entities and Links While in Flex
Flex keeps entity positions, so it is not the right tool for fixing a poor entity layout.
Use Refresh ▸ Layout when you want StructureGram to reset the whole diagram geometry. In the Flex context, this means:
- Entities are placed again using the auto-layout engine.
- Link vertices are reset and recalculated.
- Flex routing can then be reapplied from the new entity positions.
- The diagram ends back in a manual-style state so later actions do not unexpectedly keep replacing your layout.
This is the best option when the diagram has become crowded, collapsed, or hard to untangle manually.
Direction Buttons
The direction buttons control the flow of auto-layout, such as top-to-bottom or left-to-right.
In Flex routing, direction buttons are disabled because Flex does not place entities. Direction only applies when auto-layout is deciding where entities go.
If you want to change the direction of the diagram:
- Choose the direction while using auto-layout.
- Run Refresh ▸ Layout.
- Switch back to Flex if you want to refine links while keeping the new entity positions.
Connector Options
Connector options control how links are drawn visually.
Common connector choices include:
- Rounded for softer bends and presentation-friendly diagrams.
- Straight for sharper, simpler connection lines.
Connector style and link routing work together. Routing decides the path; the connector decides how that path is drawn.
Flex Routing and Auto-Save
Ownership diagrams use working-copy auto-save.
Flex-related changes are saved as part of the diagram's working copy, including:
- Entity positions
- Link vertices
- Manual route edits
- Layout and routing settings
After you stop interacting, StructureGram saves the current working state in the background. If the toolbar shows Saved, the current layout state has been persisted.
Flex Routing and Scenarios
Scenarios preserve Flex routing state.
When you create a scenario from a base diagram that is using Flex:
- The first scenario step starts with the current base entity positions.
- Link vertices and routing state are copied into the new scenario step.
- The scenario then has its own layout life.
When you create a new scenario step:
- The new step starts from the current scenario step.
- Flex settings and link geometry carry forward once.
- Later changes to the previous step do not automatically overwrite the new step.
This lets each scenario step keep its own presentation work.
Recommended Workflows
Clean up a generated diagram
- Run Refresh ▸ Layout to get a good starting structure.
- Move key entities into better presentation positions.
- Select Flex under Link Routing.
- Use Refresh ▸ Links to tidy the routes.
- Adjust important paths by hand — those edits are kept through later refreshes.
Work on a large diagram
- Start with auto-layout to spread the structure out.
- Use the entity filter to reduce the diagram to the entities that matter.
- Switch to Flex after the main groups are in useful positions.
- Move entities freely — routes refresh themselves as you go.
Prepare a diagram for export
- Arrange entities manually.
- Use Flex to refresh the links.
- Manually adjust important link routes if needed — they are kept from here on.
- Confirm the toolbar shows Saved before exporting.
Fix a messy Flex diagram
- Use Refresh ▸ Links to rebuild every route, including edits that are no longer helping.
- If entities are still too crowded, run Refresh ▸ Layout.
- Move back into Flex for final link cleanup.
Troubleshooting
Links Still Look Tangled
Flex can only route links around the current entity positions. If the entities are too close together, move them apart or run Refresh ▸ Layout first.
A Link Will Not Change When I Refresh
Routes you edited by hand are protected from automatic refreshing. To rebuild them deliberately, use Refresh ▸ Links — it discards those edits and recalculates every route.
Direction Buttons Do Not Work
This is expected in Flex. Direction applies when auto-layout places entities. Flex keeps entity positions and only refreshes link paths.
Entities Are Bunched in the Middle
Run Refresh ▸ Layout. Flex does not spread entities out by itself.
The Flex Engine Fails to Load
In a development or interrupted network session, the routing engine may fail to load. Refresh the browser page and try again. Saved diagram state is not intentionally changed by a failed route refresh.
Quick Reference
| Control | What It Does |
|---|---|
| Flex | Keeps entity positions and refreshes link routes |
| Edit Links | Shows handles for inspecting and editing link paths |
| Refresh ▸ Links | Rebuilds every link route, discarding hand-made edits |
| Refresh ▸ Layout | Repositions entities and rebuilds every route |
| Direction buttons | Control auto-layout flow, not Flex routing |
The Simple Rule
Use auto-layout when you want StructureGram to arrange the diagram.
Use Flex routing when you like where the entities are and want help making the lines readable.