Equipment Page
Equipment is the page at /equipment. It is one of the three Control-Tree pages: its tree column
names every piece of equipment in the project, the editor column beside it edits whatever is
selected, and the canvas to their right draws the mechanism's shared scene — fixture and workpiece,
the machine and tool solids on demand — with its anchor, mount and controller-coordinate overlays.
A /general-setup link, the page's former address, lands on it with its ?tree= kept. Selection
rides the URL as ?tree=equipment/…, so any branch of it is a link. Its roots are Mechanism, Spindle Capability, Environment and
Controller — the middle two only while Show Physics Options is on — plus the CSV and CL controller
roots a preference or a link reveals, with no wrapper row over them: equipment is the page's scope
key rather than a node, so a bare ?tree=equipment lands on Mechanism.
The page renders four columns in nested splitters — TREE | EDITOR | CANVAS | TOPOLOGY: the Control Tree, the editor panel of whichever node is selected (full page height, beside the tree rather than below it), the shared Equipment canvas, and the Topology column — the whole authored equipment as one anchor / branch graph with an editor card, shown by default only on a window at least 1280 px wide. Each column has a toggle button in the menu bar; column widths are device-local.
Pages
Ordered as the page reads: the three Mechanism items and the Topology column that authors their anchors and branches, then the Spindle Capability and Environment roots, then the Controller branch and the two hidden controller roots after it.
- Machine Tool — The kinematic chain the whole scene hangs from
- Fixture — What holds the workpiece: its file surface, and the three roles — table mount, workpiece mount, geometry anchor — bound on its root panel
- Workpiece — Raw and target geometry, the three roles that locate them, the mesh, and the material
- Equipment Topology — The fourth column: the whole equipment as one anchor / branch graph, the editor card for a picked anchor, branch or part, the arm-and-pick flow with the Roles panels, and the routes and error codes behind it
- Spindle Capability — The spindle envelope: thermal / energy, gear shift, dry-run coefficients, and the power and torque contours
- Environment: Ambient Temperature / Coolant — The Environment root's two thermal leaves, the ones that are not machine parts: the ambient (shop) temperature the thermal model starts from, and the coolant model
- Controller — The SoftNcRunner-native controller branch: its two planes, the brand matrix behind which nodes appear at all, and the contract every leaf edits by
- Hidden Controller Branches — The two runner-suit nodes a fresh installation never builds, the device-local checkboxes that reveal them, and the second kind of invisibility a link cannot undo
A bookmark to the retired /controller address — the Legacy Controller page, which edited the
deprecating HardNcEnv model rather than the runner — redirects here and lands on the Controller
branch.
Source Code Path
See HiNC App Anatomy for git repository links.
Web Application
HiNC-2025-webservice (Quasar CLI SPA):
wwwroot-src/src/pages/EquipmentPage.vue— the routed page at/equipment: the four columns in three nested pixel splitters (tree | editor | canvas | topology, the canvas absorbing every resize), and theequipment-scoped Control Tree host it creates and provides to the tree and editor panes.wwwroot-src/src/components/controlTree/useControlTreeHost.ts—buildEquipmentRoots: Mechanism over Machine Tool, Fixture and Workpiece, the Spindle Capability and Environment roots built only while Show Physics Options is on, Controller, and the CSV / CL controller roots.wwwroot-src/src/components/mech/EquipmentSetupPanel.vue— the canvas column: one rendering canvas bound to the merged fixture + workpiece scene, with its control bar for the shown anchors / mounts, per-part rendering modes and display aids.wwwroot-src/src/router/routes.ts— theequipmentroute, thegeneral-setupredirect that keeps the query, and thecontroller/:rest(.*)*redirect onto the Controller branch.wwwroot-src/src/router/treeRoutes.ts—migrateLegacyTreeId, which lands a bareequipmentid onequipment/mechanismand folds older equipment ids onto the current ones.wwwroot-src/src/composables/useViewPrefs.ts—columnVisibility.equipment(thetree/primary/main/topologybits, the last one on by default only for a window at least 1280 px wide) and the column widths:treeColPx, shared with the Execution dock and the Tool House tree column;editorColPx, shared with the Tool House editor column; andtopologyColPx, this page's own.wwwroot-src/src/components/AppMenuBar.vue— theEquipmentpage switch and this page's four column buttons.
See Also
- Execution Page — the run's Control-Tree page, which stacks the same tree and editor panes as the rows of a left dock instead of side by side
- Tool House Page — the third Control-Tree page, whose tree holds the faces of the one tool picked in its tool list
- Main Panel — the shell whose
Equipmentpage switch reaches this route - Control Tree — the engine behind this page's tree: how a branch is built, rebuilt and selected
- Controller Branch — the branch this page hosts whose node set changes with the controller brand
- Hidden Controller Branches — the two equipment nodes this page withholds until a preference or a link asks for them
- Legacy Controller Model (HardNcEnv) — the deprecating HardNcEnv model the project still carries beside the runner, what it shares with the Controller branch, and the three settings that retire with it rather than gaining an editor in the equipment tree