From 3731eb32609175216587a881bf62cb9c0167f9bf Mon Sep 17 00:00:00 2001 From: sudhir Date: Tue, 19 May 2026 02:59:42 +0530 Subject: [PATCH 01/59] Add roof surface placement support for items Items (e.g. solar panels) can now be placed on sloped roof surfaces. The placement system computes euler rotation from the roof surface normal so items sit flush on the slope instead of going inside. - Add roofStrategy to placement-strategies with enter/move/click/leave - Wire roof:enter/move/click/leave events in the placement coordinator - Add calculateRoofRotation in placement-math using surface normals - Support full 3D cursor rotation for sloped surfaces - Items on roofs are parented to the level with world-space rotation Co-Authored-By: Claude Opus 4.6 --- .../src/components/tools/item/move-tool.tsx | 6 +- .../components/tools/item/placement-math.ts | 26 ++++ .../tools/item/placement-strategies.ts | 88 ++++++++++++ .../components/tools/item/placement-types.ts | 5 +- .../tools/item/use-placement-coordinator.tsx | 135 +++++++++++++++++- 5 files changed, 251 insertions(+), 9 deletions(-) diff --git a/packages/editor/src/components/tools/item/move-tool.tsx b/packages/editor/src/components/tools/item/move-tool.tsx index 5b017ed20..eefaa2a79 100644 --- a/packages/editor/src/components/tools/item/move-tool.tsx +++ b/packages/editor/src/components/tools/item/move-tool.tsx @@ -40,12 +40,12 @@ function getInitialState(node: { }): PlacementState { const attachTo = node.asset.attachTo if (attachTo === 'wall' || attachTo === 'wall-side') { - return { surface: 'wall', wallId: node.parentId, ceilingId: null, surfaceItemId: null } + return { surface: 'wall', wallId: node.parentId, ceilingId: null, surfaceItemId: null, roofId: null } } if (attachTo === 'ceiling') { - return { surface: 'ceiling', wallId: null, ceilingId: node.parentId, surfaceItemId: null } + return { surface: 'ceiling', wallId: null, ceilingId: node.parentId, surfaceItemId: null, roofId: null } } - return { surface: 'floor', wallId: null, ceilingId: null, surfaceItemId: null } + return { surface: 'floor', wallId: null, ceilingId: null, surfaceItemId: null, roofId: null } } function MoveItemContent({ movingNode }: { movingNode: ItemNode }) { diff --git a/packages/editor/src/components/tools/item/placement-math.ts b/packages/editor/src/components/tools/item/placement-math.ts index 49eacf304..112273a41 100644 --- a/packages/editor/src/components/tools/item/placement-math.ts +++ b/packages/editor/src/components/tools/item/placement-math.ts @@ -1,4 +1,5 @@ import { type AssetInput, isObject } from '@pascal-app/core' +import { Euler, Matrix3, type Matrix4, Quaternion, Vector3 } from 'three' import useEditor from '../../../store/use-editor' function getGridSnapStep(): number { @@ -118,3 +119,28 @@ export function stripTransient(meta: any): any { const { isTransient, ...rest } = meta as Record return rest } + +const _up = new Vector3(0, 1, 0) +const _normal = new Vector3() +const _quat = new Quaternion() +const _euler = new Euler() + +/** + * Compute euler rotation that tilts an item so its local +Y aligns with a + * roof surface normal. The normal is in the hit mesh's local space and is + * transformed to world space via the mesh's matrixWorld. + */ +export function calculateRoofRotation( + normal: [number, number, number] | undefined, + objectMatrixWorld: Matrix4, +): [number, number, number] { + if (!normal) return [0, 0, 0] + + _normal.set(normal[0], normal[1], normal[2]) + _normal.applyNormalMatrix(new Matrix3().getNormalMatrix(objectMatrixWorld)).normalize() + + _quat.setFromUnitVectors(_up, _normal) + _euler.setFromQuaternion(_quat, 'XYZ') + + return [_euler.x, _euler.y, _euler.z] +} diff --git a/packages/editor/src/components/tools/item/placement-strategies.ts b/packages/editor/src/components/tools/item/placement-strategies.ts index 3e8724081..5563268b8 100644 --- a/packages/editor/src/components/tools/item/placement-strategies.ts +++ b/packages/editor/src/components/tools/item/placement-strategies.ts @@ -6,6 +6,7 @@ import type { GridEvent, ItemEvent, ItemNode, + RoofEvent, WallEvent, WallNode, } from '@pascal-app/core' @@ -19,6 +20,7 @@ import { Euler, Matrix3, Quaternion, Vector3 } from 'three' import { calculateCursorRotation, calculateItemRotation, + calculateRoofRotation, getGridAlignedDimensions, getSideFromNormal, isValidWallSideFace, @@ -587,6 +589,87 @@ export const itemSurfaceStrategy = { }, } +// ============================================================================ +// ROOF STRATEGY +// ============================================================================ + +export const roofStrategy = { + enter(ctx: PlacementContext, event: RoofEvent): TransitionResult | null { + if (ctx.asset.attachTo) return null + if (!ctx.levelId) return null + + const rotation = calculateRoofRotation(event.normal, event.object.matrixWorld) + + return { + stateUpdate: { surface: 'roof', roofId: event.node.id }, + nodeUpdate: { + position: [event.position[0], event.position[1], event.position[2]], + parentId: ctx.levelId, + rotation, + }, + cursorRotationY: rotation[1], + cursorRotation: rotation, + gridPosition: [event.position[0], event.position[1], event.position[2]], + cursorPosition: [event.position[0], event.position[1], event.position[2]], + stopPropagation: true, + } + }, + + move(ctx: PlacementContext, event: RoofEvent): PlacementResult | null { + if (ctx.state.surface !== 'roof') return null + if (!ctx.draftItem) return null + + const rotation = calculateRoofRotation(event.normal, event.object.matrixWorld) + + return { + gridPosition: [event.position[0], event.position[1], event.position[2]], + cursorPosition: [event.position[0], event.position[1], event.position[2]], + cursorRotationY: rotation[1], + cursorRotation: rotation, + nodeUpdate: { + position: [event.position[0], event.position[1], event.position[2]], + rotation, + }, + stopPropagation: true, + dirtyNodeId: null, + } + }, + + click(ctx: PlacementContext, _event: RoofEvent): CommitResult | null { + if (ctx.state.surface !== 'roof') return null + if (!ctx.draftItem) return null + + return { + nodeUpdate: { + position: [ctx.gridPosition.x, ctx.gridPosition.y, ctx.gridPosition.z], + parentId: ctx.levelId, + rotation: ctx.draftItem.rotation, + metadata: stripTransient(ctx.draftItem.metadata), + }, + stopPropagation: true, + dirtyNodeId: null, + } + }, + + leave(ctx: PlacementContext): TransitionResult | null { + if (ctx.state.surface !== 'roof') return null + + return { + stateUpdate: { surface: 'floor', roofId: null }, + nodeUpdate: { + position: [ctx.gridPosition.x, 0, ctx.gridPosition.z], + parentId: ctx.levelId, + rotation: [0, ctx.currentCursorRotationY, 0], + }, + cursorRotationY: ctx.currentCursorRotationY, + cursorRotation: [0, ctx.currentCursorRotationY, 0], + gridPosition: [ctx.gridPosition.x, 0, ctx.gridPosition.z], + cursorPosition: [ctx.gridPosition.x, 0, ctx.gridPosition.z], + stopPropagation: true, + } + }, +} + // ============================================================================ // VALIDATION // ============================================================================ @@ -603,6 +686,11 @@ export function checkCanPlace(ctx: PlacementContext, validators: SpatialValidato return ctx.state.surfaceItemId !== null } + // Roof: valid if we entered (no spatial validator yet) + if (ctx.state.surface === 'roof') { + return ctx.state.roofId !== null + } + const attachTo = ctx.draftItem.asset.attachTo const alignedDims = getGridAlignedDimensions(getScaledDimensions(ctx.draftItem), attachTo) diff --git a/packages/editor/src/components/tools/item/placement-types.ts b/packages/editor/src/components/tools/item/placement-types.ts index 538286580..69a3d5ee3 100644 --- a/packages/editor/src/components/tools/item/placement-types.ts +++ b/packages/editor/src/components/tools/item/placement-types.ts @@ -12,7 +12,7 @@ import type { Vector3 } from 'three' // PLACEMENT STATE // ============================================================================ -export type SurfaceType = 'floor' | 'wall' | 'ceiling' | 'item-surface' +export type SurfaceType = 'floor' | 'wall' | 'ceiling' | 'item-surface' | 'roof' /** * Tracks which surface the draft item is currently on. @@ -23,6 +23,7 @@ export interface PlacementState { wallId: string | null ceilingId: string | null surfaceItemId: string | null + roofId: string | null } // ============================================================================ @@ -58,6 +59,7 @@ export interface PlacementResult { gridPosition: [number, number, number] cursorPosition: [number, number, number] cursorRotationY: number + cursorRotation?: [number, number, number] nodeUpdate: Partial | null stopPropagation: boolean dirtyNodeId: AnyNode['id'] | null @@ -72,6 +74,7 @@ export interface TransitionResult { gridPosition: [number, number, number] cursorPosition: [number, number, number] cursorRotationY: number + cursorRotation?: [number, number, number] stopPropagation: boolean } diff --git a/packages/editor/src/components/tools/item/use-placement-coordinator.tsx b/packages/editor/src/components/tools/item/use-placement-coordinator.tsx index fdafe3635..bac2b78fc 100644 --- a/packages/editor/src/components/tools/item/use-placement-coordinator.tsx +++ b/packages/editor/src/components/tools/item/use-placement-coordinator.tsx @@ -7,6 +7,7 @@ import { getScaledDimensions, type ItemEvent, resolveLevelId, + type RoofEvent, sceneRegistry, spatialGridManager, useLiveTransforms, @@ -41,6 +42,7 @@ import { checkCanPlace, floorStrategy, itemSurfaceStrategy, + roofStrategy, wallStrategy, } from './placement-strategies' import type { PlacementState, TransitionResult } from './placement-types' @@ -286,7 +288,7 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea const gridPosition = useRef(new Vector3(0, 0, 0)) const lastRawPos = useRef(new Vector3(0, 0, 0)) const placementState = useRef( - config.initialState ?? { surface: 'floor', wallId: null, ceilingId: null, surfaceItemId: null }, + config.initialState ?? { surface: 'floor', wallId: null, ceilingId: null, surfaceItemId: null, roofId: null }, ) const shiftFreeRef = useRef(false) const previewBoundsSignatureRef = useRef(null) @@ -484,7 +486,11 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea const c = worldToBuildingLocal(...result.cursorPosition) cursorGroupRef.current.position.set(c.x, c.y, c.z) - cursorGroupRef.current.rotation.y = result.cursorRotationY + if (result.cursorRotation) { + cursorGroupRef.current.rotation.set(...result.cursorRotation) + } else { + cursorGroupRef.current.rotation.set(0, result.cursorRotationY, 0) + } const draft = draftNode.current if (draft) { @@ -498,12 +504,18 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea gridPosition.current.set(...result.gridPosition) const c = worldToBuildingLocal(...result.cursorPosition) cursorGroupRef.current.position.set(c.x, c.y, c.z) - cursorGroupRef.current.rotation.y = result.cursorRotationY + if (result.cursorRotation) { + cursorGroupRef.current.rotation.set(...result.cursorRotation) + } else { + cursorGroupRef.current.rotation.set(0, result.cursorRotationY, 0) + } + + const initRotation: [number, number, number] = result.cursorRotation ?? [0, result.cursorRotationY, 0] draftNode.create( gridPosition.current, asset, - [0, result.cursorRotationY, 0], + initRotation, configRef.current.defaultScale, ) @@ -1065,6 +1077,109 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea } } + // ---- Roof Segment Handlers ---- + + const toRoofLocal = (result: TransitionResult): TransitionResult => { + const local = worldToBuildingLocal(...result.cursorPosition) + const localPos: [number, number, number] = [local.x, local.y, local.z] + return { + ...result, + gridPosition: localPos, + nodeUpdate: { ...result.nodeUpdate, position: localPos }, + } + } + + const onRoofEnter = (event: RoofEvent) => { + const result = roofStrategy.enter(getContext(), event) + if (!result) return + + event.stopPropagation() + const local = toRoofLocal(result) + applyTransition(local) + + if (!draftNode.current) { + ensureDraft(local) + } + } + + const onRoofMove = (event: RoofEvent) => { + const ctx = getContext() + + if (ctx.state.surface !== 'roof') { + const enterResult = roofStrategy.enter(ctx, event) + if (!enterResult) return + + event.stopPropagation() + const local = toRoofLocal(enterResult) + applyTransition(local) + if (!draftNode.current) { + ensureDraft(local) + } + return + } + + if (!draftNode.current) { + const enterResult = roofStrategy.enter(getContext(), event) + if (!enterResult) return + event.stopPropagation() + ensureDraft(toRoofLocal(enterResult)) + return + } + + const result = roofStrategy.move(ctx, event) + if (!result) return + + event.stopPropagation() + + const localPos = worldToBuildingLocal(...result.cursorPosition) + gridPosition.current.set(localPos.x, localPos.y, localPos.z) + cursorGroupRef.current.position.set(localPos.x, localPos.y, localPos.z) + if (result.cursorRotation) { + cursorGroupRef.current.rotation.set(...result.cursorRotation) + } else { + cursorGroupRef.current.rotation.y = result.cursorRotationY + } + + const draft = draftNode.current + if (draft && result.nodeUpdate) { + if ('rotation' in result.nodeUpdate) + draft.rotation = result.nodeUpdate.rotation as [number, number, number] + draft.position = [localPos.x, localPos.y, localPos.z] + const mesh = sceneRegistry.nodes.get(draft.id) + if (mesh) { + mesh.position.set(localPos.x, localPos.y, localPos.z) + if (result.cursorRotation) { + mesh.rotation.set(...result.cursorRotation) + } + } + } + + revalidate() + } + + const onRoofClick = (event: RoofEvent) => { + const result = roofStrategy.click(getContext(), event) + if (!result) return + + event.stopPropagation() + if (draftNode.current) { + useLiveTransforms.getState().clear(draftNode.current.id) + } + draftNode.commit(result.nodeUpdate) + + if (configRef.current.onCommitted()) { + revalidate() + } + } + + const onRoofLeave = (event: RoofEvent) => { + const result = roofStrategy.leave(getContext()) + if (!result) return + + event.stopPropagation() + applyTransition(result) + } + // ---- Keyboard rotation ---- const ROTATION_STEP = Math.PI / 2 @@ -1239,6 +1354,10 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea emitter.on('ceiling:move', onCeilingMove) emitter.on('ceiling:click', onCeilingClick) emitter.on('ceiling:leave', onCeilingLeave) + emitter.on('roof:enter', onRoofEnter) + emitter.on('roof:move', onRoofMove) + emitter.on('roof:click', onRoofClick) + emitter.on('roof:leave', onRoofLeave) return () => { tearingDown = true @@ -1263,6 +1382,10 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea emitter.off('ceiling:move', onCeilingMove) emitter.off('ceiling:click', onCeilingClick) emitter.off('ceiling:leave', onCeilingLeave) + emitter.off('roof:enter', onRoofEnter) + emitter.off('roof:move', onRoofMove) + emitter.off('roof:click', onRoofClick) + emitter.off('roof:leave', onRoofLeave) emitter.off('tool:cancel', onCancel) window.removeEventListener('keydown', onKeyDown) window.removeEventListener('keyup', onKeyUp) @@ -1307,7 +1430,9 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea } mesh.visible = true - if (placementState.current.surface === 'floor') { + if (placementState.current.surface === 'roof') { + mesh.position.copy(gridPosition.current) + } else if (placementState.current.surface === 'floor') { const distance = mesh.position.distanceToSquared(gridPosition.current) if (distance > 1) { mesh.position.copy(gridPosition.current) From 7c1e3839c95c184dadb2b9e761b5da0520598f29 Mon Sep 17 00:00:00 2001 From: sudhir Date: Wed, 20 May 2026 17:21:10 +0530 Subject: [PATCH 02/59] fixed conflict --- .../src/components/tools/item/move-tool.tsx | 69 ---------- .../tools/item/placement-strategies.ts | 84 ------------ .../components/tools/item/placement-types.ts | 8 -- .../tools/item/use-placement-coordinator.tsx | 127 +----------------- 4 files changed, 1 insertion(+), 287 deletions(-) diff --git a/packages/editor/src/components/tools/item/move-tool.tsx b/packages/editor/src/components/tools/item/move-tool.tsx index 2d7f85723..d7c86be96 100644 --- a/packages/editor/src/components/tools/item/move-tool.tsx +++ b/packages/editor/src/components/tools/item/move-tool.tsx @@ -15,76 +15,7 @@ import { MoveBuildingContent } from '../building/move-building-tool' import { MoveElevatorTool } from '../elevator/move-elevator-tool' import { MoveRegistryNodeTool } from '../registry/move-registry-node-tool' import { MoveRoofTool } from '../roof/move-roof-tool' -<<<<<<< HEAD -import { MoveSlabTool } from '../slab/move-slab-tool' -import { MoveSpawnTool } from '../spawn/move-spawn-tool' -import { MoveWallTool } from '../wall/move-wall-tool' -import { MoveWindowTool } from '../window/move-window-tool' -import type { PlacementState } from './placement-types' -import { useDraftNode } from './use-draft-node' -import { usePlacementCoordinator } from './use-placement-coordinator' - -function getInitialState(node: { - asset: { attachTo?: string } - parentId: string | null -}): PlacementState { - const attachTo = node.asset.attachTo - if (attachTo === 'wall' || attachTo === 'wall-side') { - return { surface: 'wall', wallId: node.parentId, ceilingId: null, surfaceItemId: null, roofId: null } - } - if (attachTo === 'ceiling') { - return { surface: 'ceiling', wallId: null, ceilingId: node.parentId, surfaceItemId: null, roofId: null } - } - return { surface: 'floor', wallId: null, ceilingId: null, surfaceItemId: null, roofId: null } -} - -function MoveItemContent({ movingNode }: { movingNode: ItemNode }) { - const draftNode = useDraftNode() - - const meta = - typeof movingNode.metadata === 'object' && movingNode.metadata !== null - ? (movingNode.metadata as Record) - : {} - const isNew = !!meta.isNew - - const cursor = usePlacementCoordinator({ - asset: movingNode.asset, - draftNode, - // Duplicates start fresh in floor mode; wall/ceiling draft is created lazily by ensureDraft - initialState: isNew - ? { surface: 'floor', wallId: null, ceilingId: null, surfaceItemId: null } - : getInitialState(movingNode), - // Preserve the original item's scale so Y-position calculations use the correct height - defaultScale: isNew ? movingNode.scale : undefined, - initDraft: (gridPosition) => { - if (isNew) { - // Duplicate: use the same create() path as ItemTool so ghost rendering works correctly. - // Floor items get a draft immediately; wall/ceiling items are created lazily on surface entry. - gridPosition.copy(new Vector3(...movingNode.position)) - if (!movingNode.asset.attachTo) { - draftNode.create(gridPosition, movingNode.asset, movingNode.rotation, movingNode.scale) - } - } else { - draftNode.adopt(movingNode) - gridPosition.copy(new Vector3(...movingNode.position)) - } - }, - onCommitted: () => { - sfxEmitter.emit('sfx:item-place') - useEditor.getState().setMovingNode(null) - return false - }, - onCancel: () => { - draftNode.destroy() - useEditor.getState().setMovingNode(null) - }, - }) - - return <>{cursor} -} -======= import { getRegistryAffordanceTool } from '../shared/affordance-dispatch' ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 /** * MoveTool dispatcher. Routes to (in order): diff --git a/packages/editor/src/components/tools/item/placement-strategies.ts b/packages/editor/src/components/tools/item/placement-strategies.ts index fae9694e9..df67ca169 100644 --- a/packages/editor/src/components/tools/item/placement-strategies.ts +++ b/packages/editor/src/components/tools/item/placement-strategies.ts @@ -6,12 +6,8 @@ import type { GridEvent, ItemEvent, ItemNode, -<<<<<<< HEAD - RoofEvent, -======= ShelfEvent, ShelfNode, ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 WallEvent, WallNode, } from '@pascal-app/core' @@ -596,29 +592,6 @@ export const itemSurfaceStrategy = { } // ============================================================================ -<<<<<<< HEAD -// ROOF STRATEGY -// ============================================================================ - -export const roofStrategy = { - enter(ctx: PlacementContext, event: RoofEvent): TransitionResult | null { - if (ctx.asset.attachTo) return null - if (!ctx.levelId) return null - - const rotation = calculateRoofRotation(event.normal, event.object.matrixWorld) - - return { - stateUpdate: { surface: 'roof', roofId: event.node.id }, - nodeUpdate: { - position: [event.position[0], event.position[1], event.position[2]], - parentId: ctx.levelId, - rotation, - }, - cursorRotationY: rotation[1], - cursorRotation: rotation, - gridPosition: [event.position[0], event.position[1], event.position[2]], - cursorPosition: [event.position[0], event.position[1], event.position[2]], -======= // SHELF SURFACE STRATEGY // ============================================================================ @@ -703,28 +676,10 @@ export const shelfSurfaceStrategy = { cursorRotationY: ctx.currentCursorRotationY, gridPosition: [x, rowY, z], cursorPosition: [worldSnapped.x, worldSnapped.y, worldSnapped.z], ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 stopPropagation: true, } }, -<<<<<<< HEAD - move(ctx: PlacementContext, event: RoofEvent): PlacementResult | null { - if (ctx.state.surface !== 'roof') return null - if (!ctx.draftItem) return null - - const rotation = calculateRoofRotation(event.normal, event.object.matrixWorld) - - return { - gridPosition: [event.position[0], event.position[1], event.position[2]], - cursorPosition: [event.position[0], event.position[1], event.position[2]], - cursorRotationY: rotation[1], - cursorRotation: rotation, - nodeUpdate: { - position: [event.position[0], event.position[1], event.position[2]], - rotation, - }, -======= /** * Handle shelf:move — re-derive the closest row each tick so the user * can slide between rows without leaving the shelf. @@ -753,17 +708,11 @@ export const shelfSurfaceStrategy = { cursorPosition: [worldSnapped.x, worldSnapped.y, worldSnapped.z], cursorRotationY: ctx.currentCursorRotationY, nodeUpdate: { position: [x, rowY, z] }, ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 stopPropagation: true, dirtyNodeId: null, } }, -<<<<<<< HEAD - click(ctx: PlacementContext, _event: RoofEvent): CommitResult | null { - if (ctx.state.surface !== 'roof') return null - if (!ctx.draftItem) return null -======= /** * Handle shelf:click — commit placement on the active row. */ @@ -771,43 +720,17 @@ export const shelfSurfaceStrategy = { if (ctx.state.surface !== 'shelf-surface') return null if (!(ctx.draftItem && ctx.state.shelfId)) return null if (event.node.id !== ctx.state.shelfId) return null ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 return { nodeUpdate: { position: [ctx.gridPosition.x, ctx.gridPosition.y, ctx.gridPosition.z], -<<<<<<< HEAD - parentId: ctx.levelId, - rotation: ctx.draftItem.rotation, -======= parentId: ctx.state.shelfId, ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 metadata: stripTransient(ctx.draftItem.metadata), }, stopPropagation: true, dirtyNodeId: null, } }, -<<<<<<< HEAD - - leave(ctx: PlacementContext): TransitionResult | null { - if (ctx.state.surface !== 'roof') return null - - return { - stateUpdate: { surface: 'floor', roofId: null }, - nodeUpdate: { - position: [ctx.gridPosition.x, 0, ctx.gridPosition.z], - parentId: ctx.levelId, - rotation: [0, ctx.currentCursorRotationY, 0], - }, - cursorRotationY: ctx.currentCursorRotationY, - cursorRotation: [0, ctx.currentCursorRotationY, 0], - gridPosition: [ctx.gridPosition.x, 0, ctx.gridPosition.z], - cursorPosition: [ctx.gridPosition.x, 0, ctx.gridPosition.z], - stopPropagation: true, - } - }, -======= } /** Same upward-normal heuristic as `isUpwardItemSurfaceHit`, but typed @@ -816,7 +739,6 @@ export const shelfSurfaceStrategy = { * `event.normal` + `event.object`. */ function isUpwardShelfSurfaceHit(event: ShelfEvent): boolean { return isUpwardItemSurfaceHit(event as unknown as ItemEvent) ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 } // ============================================================================ @@ -835,15 +757,9 @@ export function checkCanPlace(ctx: PlacementContext, validators: SpatialValidato return ctx.state.surfaceItemId !== null } -<<<<<<< HEAD - // Roof: valid if we entered (no spatial validator yet) - if (ctx.state.surface === 'roof') { - return ctx.state.roofId !== null -======= // Shelf surface: same — size check already happened on enter if (ctx.state.surface === 'shelf-surface') { return ctx.state.shelfId !== null ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 } const attachTo = ctx.draftItem.asset.attachTo diff --git a/packages/editor/src/components/tools/item/placement-types.ts b/packages/editor/src/components/tools/item/placement-types.ts index 0a593ca75..a3eccc116 100644 --- a/packages/editor/src/components/tools/item/placement-types.ts +++ b/packages/editor/src/components/tools/item/placement-types.ts @@ -12,11 +12,7 @@ import type { Vector3 } from 'three' // PLACEMENT STATE // ============================================================================ -<<<<<<< HEAD -export type SurfaceType = 'floor' | 'wall' | 'ceiling' | 'item-surface' | 'roof' -======= export type SurfaceType = 'floor' | 'wall' | 'ceiling' | 'item-surface' | 'shelf-surface' ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 /** * Tracks which surface the draft item is currently on. @@ -27,9 +23,6 @@ export interface PlacementState { wallId: string | null ceilingId: string | null surfaceItemId: string | null -<<<<<<< HEAD - roofId: string | null -======= /** * Active shelf when `surface === 'shelf-surface'`. Items host on the * shelf board closest to the cursor's local Y; the row index isn't @@ -37,7 +30,6 @@ export interface PlacementState { * position via `shelfRowSurfaceYs`. */ shelfId: string | null ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 } // ============================================================================ diff --git a/packages/editor/src/components/tools/item/use-placement-coordinator.tsx b/packages/editor/src/components/tools/item/use-placement-coordinator.tsx index 362ddd1dd..b86e426c4 100644 --- a/packages/editor/src/components/tools/item/use-placement-coordinator.tsx +++ b/packages/editor/src/components/tools/item/use-placement-coordinator.tsx @@ -7,11 +7,7 @@ import { getScaledDimensions, type ItemEvent, resolveLevelId, -<<<<<<< HEAD - type RoofEvent, -======= type ShelfEvent, ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 sceneRegistry, spatialGridManager, useLiveTransforms, @@ -46,11 +42,7 @@ import { checkCanPlace, floorStrategy, itemSurfaceStrategy, -<<<<<<< HEAD - roofStrategy, -======= shelfSurfaceStrategy, ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 wallStrategy, } from './placement-strategies' import type { PlacementState, TransitionResult } from './placement-types' @@ -296,9 +288,6 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea const gridPosition = useRef(new Vector3(0, 0, 0)) const lastRawPos = useRef(new Vector3(0, 0, 0)) const placementState = useRef( -<<<<<<< HEAD - config.initialState ?? { surface: 'floor', wallId: null, ceilingId: null, surfaceItemId: null, roofId: null }, -======= config.initialState ?? { surface: 'floor', wallId: null, @@ -306,7 +295,6 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea surfaceItemId: null, shelfId: null, }, ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 ) const shiftFreeRef = useRef(false) const previewBoundsSignatureRef = useRef(null) @@ -1206,58 +1194,6 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea } } -<<<<<<< HEAD - // ---- Roof Segment Handlers ---- - - const toRoofLocal = (result: TransitionResult): TransitionResult => { - const local = worldToBuildingLocal(...result.cursorPosition) - const localPos: [number, number, number] = [local.x, local.y, local.z] - return { - ...result, - gridPosition: localPos, - nodeUpdate: { ...result.nodeUpdate, position: localPos }, - } - } - - const onRoofEnter = (event: RoofEvent) => { - const result = roofStrategy.enter(getContext(), event) - if (!result) return - - event.stopPropagation() - const local = toRoofLocal(result) - applyTransition(local) - - if (!draftNode.current) { - ensureDraft(local) - } - } - - const onRoofMove = (event: RoofEvent) => { - const ctx = getContext() - - if (ctx.state.surface !== 'roof') { - const enterResult = roofStrategy.enter(ctx, event) - if (!enterResult) return - - event.stopPropagation() - const local = toRoofLocal(enterResult) - applyTransition(local) - if (!draftNode.current) { - ensureDraft(local) - } - return - } - - if (!draftNode.current) { - const enterResult = roofStrategy.enter(getContext(), event) - if (!enterResult) return - event.stopPropagation() - ensureDraft(toRoofLocal(enterResult)) - return - } - - const result = roofStrategy.move(ctx, event) -======= // ---- Shelf Handlers ---- // // Items can host on shelves the same way they host on tables and @@ -1299,34 +1235,10 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea return } const result = shelfSurfaceStrategy.move(ctx, event) ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 if (!result) return event.stopPropagation() -<<<<<<< HEAD - const localPos = worldToBuildingLocal(...result.cursorPosition) - gridPosition.current.set(localPos.x, localPos.y, localPos.z) - cursorGroupRef.current.position.set(localPos.x, localPos.y, localPos.z) - if (result.cursorRotation) { - cursorGroupRef.current.rotation.set(...result.cursorRotation) - } else { - cursorGroupRef.current.rotation.y = result.cursorRotationY - } - - const draft = draftNode.current - if (draft && result.nodeUpdate) { - if ('rotation' in result.nodeUpdate) - draft.rotation = result.nodeUpdate.rotation as [number, number, number] - draft.position = [localPos.x, localPos.y, localPos.z] - const mesh = sceneRegistry.nodes.get(draft.id) - if (mesh) { - mesh.position.set(localPos.x, localPos.y, localPos.z) - if (result.cursorRotation) { - mesh.rotation.set(...result.cursorRotation) - } - } -======= gridPosition.current.set(...result.gridPosition) const ic = worldToBuildingLocal(...result.cursorPosition) cursorGroupRef.current.position.set(ic.x, ic.y, ic.z) @@ -1341,16 +1253,11 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea position: result.cursorPosition, rotation: result.cursorRotationY, }) ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 } revalidate() } -<<<<<<< HEAD - const onRoofClick = (event: RoofEvent) => { - const result = roofStrategy.click(getContext(), event) -======= const onShelfLeave = (event: ShelfEvent) => { if (placementState.current.surface !== 'shelf-surface') return if (event.node.id !== placementState.current.shelfId) return @@ -1363,7 +1270,6 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea const onShelfClick = (event: ShelfEvent) => { const result = shelfSurfaceStrategy.click(getContext(), event) ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 if (!result) return event.stopPropagation() @@ -1373,20 +1279,6 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea draftNode.commit(result.nodeUpdate) if (configRef.current.onCommitted()) { -<<<<<<< HEAD - revalidate() - } - } - - const onRoofLeave = (event: RoofEvent) => { - const result = roofStrategy.leave(getContext()) - if (!result) return - - event.stopPropagation() - applyTransition(result) - } - -======= const enterResult = shelfSurfaceStrategy.enter(getContext(), event) if (enterResult) { applyTransition(enterResult) @@ -1396,7 +1288,6 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea } } ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 // ---- Keyboard rotation ---- const ROTATION_STEP = Math.PI / 2 @@ -1571,17 +1462,10 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea emitter.on('ceiling:move', onCeilingMove) emitter.on('ceiling:click', onCeilingClick) emitter.on('ceiling:leave', onCeilingLeave) -<<<<<<< HEAD - emitter.on('roof:enter', onRoofEnter) - emitter.on('roof:move', onRoofMove) - emitter.on('roof:click', onRoofClick) - emitter.on('roof:leave', onRoofLeave) -======= emitter.on('shelf:enter', onShelfEnter) emitter.on('shelf:move', onShelfMove) emitter.on('shelf:click', onShelfClick) emitter.on('shelf:leave', onShelfLeave) ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 return () => { tearingDown = true @@ -1606,17 +1490,10 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea emitter.off('ceiling:move', onCeilingMove) emitter.off('ceiling:click', onCeilingClick) emitter.off('ceiling:leave', onCeilingLeave) -<<<<<<< HEAD - emitter.off('roof:enter', onRoofEnter) - emitter.off('roof:move', onRoofMove) - emitter.off('roof:click', onRoofClick) - emitter.off('roof:leave', onRoofLeave) -======= emitter.off('shelf:enter', onShelfEnter) emitter.off('shelf:move', onShelfMove) emitter.off('shelf:click', onShelfClick) emitter.off('shelf:leave', onShelfLeave) ->>>>>>> 0bcec8e6ba2a86a9fa9efeee83307491b90dbdf5 emitter.off('tool:cancel', onCancel) window.removeEventListener('keydown', onKeyDown) window.removeEventListener('keyup', onKeyUp) @@ -1667,9 +1544,7 @@ export function usePlacementCoordinator(config: PlacementCoordinatorConfig): Rea } mesh.visible = true - if (placementState.current.surface === 'roof') { - mesh.position.copy(gridPosition.current) - } else if (placementState.current.surface === 'floor') { + if (placementState.current.surface === 'floor') { const distance = mesh.position.distanceToSquared(gridPosition.current) if (distance > 1) { mesh.position.copy(gridPosition.current) From 87ec4277a438e5c5c910010801e7afe03cd0a178 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 11:44:38 +0530 Subject: [PATCH 03/59] feat(core): add NodePort and def.ports to the node registry Typed connection points (level-local position, outward direction, diameter, supply/return tag) that kinds expose via def.ports. Placement tools snap to them; a future system graph walks them for connectivity. Co-Authored-By: Claude Fable 5 --- packages/core/src/registry/index.ts | 1 + packages/core/src/registry/types.ts | 34 +++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) diff --git a/packages/core/src/registry/index.ts b/packages/core/src/registry/index.ts index 8dcfc58fd..ebcb236c5 100644 --- a/packages/core/src/registry/index.ts +++ b/packages/core/src/registry/index.ts @@ -84,6 +84,7 @@ export type { MovableConfig, NodeCategory, NodeDefinition, + NodePort, NodeRegistry, PaintCapability, PaintEffectiveMaterialArgs, diff --git a/packages/core/src/registry/types.ts b/packages/core/src/registry/types.ts index 6f57ff0b8..17acf47cd 100644 --- a/packages/core/src/registry/types.ts +++ b/packages/core/src/registry/types.ts @@ -168,6 +168,31 @@ export type FloorplanStyle = { cursor?: string } +// ─── NodePort ──────────────────────────────────────────────────────── +// +// A typed connection point exposed by a node — the open end of a duct +// run, the collar of a fitting, the supply plenum of an air handler. +// Ports are what placement tools snap to and what a future system graph +// walks to decide connectivity. +// +// Coordinates are LEVEL-LOCAL meters — the same space duct paths and +// grid events use. Kinds whose schema stores a node transform +// (`position` / `rotation`) apply it themselves inside `def.ports` so +// consumers never need to know how a kind stores its placement. + +export type NodePort = { + /** Stable identifier within the node, e.g. 'start', 'end', 'branch'. */ + id: string + /** Level-local meters. */ + position: readonly [number, number, number] + /** Unit vector pointing OUT of the port (away from the node body). */ + direction: readonly [number, number, number] + /** Nominal connection diameter in inches. */ + diameter: number + /** Which distribution loop the port belongs to, e.g. 'supply' | 'return'. */ + system?: string +} + // ─── ToolHint ──────────────────────────────────────────────────────── // // A single key + label entry in the contextual shortcut hint panel. @@ -795,6 +820,15 @@ export type NodeDefinition> = { nodes: Record liveOverrides: Map> }) => Record + /** + * Typed connection points this kind exposes (duct/pipe open ends, + * fitting collars, equipment plenums). Pure function of the node — + * returns LEVEL-LOCAL positions/directions (the kind applies its own + * transform). Consumed by placement tools for port-snapping and, in a + * later slice, by the system graph for connectivity. Kinds with no + * connectable geometry omit this. + */ + ports?: (node: z.infer) => NodePort[] system?: SystemContribution tool?: LazyComponent /** From fa149538da4404579aa4d385fb9d71046cddbeed Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 11:44:47 +0530 Subject: [PATCH 04/59] feat(core): add HVAC node schemas Four new kinds wired into AnyNode and the event bus: - duct-segment: round duct run as a 3D polyline (diameter, material, insulation R, supply/return) - duct-fitting: elbow / tee / reducer with position + euler rotation - duct-terminal: supply register / diffuser / return grille with floor / ceiling / wall mount - hvac-equipment: furnace / air handler / condenser cabinet Co-Authored-By: Claude Fable 5 --- packages/core/src/events/bus.ts | 12 ++++ packages/core/src/schema/index.ts | 4 ++ .../core/src/schema/nodes/duct-fitting.ts | 58 +++++++++++++++++++ .../core/src/schema/nodes/duct-segment.ts | 47 +++++++++++++++ .../core/src/schema/nodes/duct-terminal.ts | 46 +++++++++++++++ .../core/src/schema/nodes/hvac-equipment.ts | 44 ++++++++++++++ packages/core/src/schema/types.ts | 8 +++ 7 files changed, 219 insertions(+) create mode 100644 packages/core/src/schema/nodes/duct-fitting.ts create mode 100644 packages/core/src/schema/nodes/duct-segment.ts create mode 100644 packages/core/src/schema/nodes/duct-terminal.ts create mode 100644 packages/core/src/schema/nodes/hvac-equipment.ts diff --git a/packages/core/src/events/bus.ts b/packages/core/src/events/bus.ts index 99bc7e831..9f16e31f2 100644 --- a/packages/core/src/events/bus.ts +++ b/packages/core/src/events/bus.ts @@ -11,11 +11,15 @@ import type { DoorNode, DormerNode, DownspoutNode, + DuctFittingNode, + DuctSegmentNode, + DuctTerminalNode, ElevatorNode, EyebrowVentNode, FenceNode, GuideNode, GutterNode, + HvacEquipmentNode, ItemNode, LevelNode, RidgeVentNode, @@ -107,6 +111,10 @@ export type SolarPanelEvent = NodeEvent export type SkylightEvent = NodeEvent export type DormerEvent = NodeEvent export type DownspoutEvent = NodeEvent +export type DuctSegmentEvent = NodeEvent +export type DuctFittingEvent = NodeEvent +export type DuctTerminalEvent = NodeEvent +export type HvacEquipmentEvent = NodeEvent // Event suffixes - exported for use in hooks export const eventSuffixes = [ @@ -261,6 +269,10 @@ type EditorEvents = GridEvents & NodeEvents<'skylight', SkylightEvent> & NodeEvents<'dormer', DormerEvent> & NodeEvents<'downspout', DownspoutEvent> & + NodeEvents<'duct-segment', DuctSegmentEvent> & + NodeEvents<'duct-fitting', DuctFittingEvent> & + NodeEvents<'duct-terminal', DuctTerminalEvent> & + NodeEvents<'hvac-equipment', HvacEquipmentEvent> & CameraControlEvents & ToolEvents & GuideEvents & diff --git a/packages/core/src/schema/index.ts b/packages/core/src/schema/index.ts index 777f34560..58a233538 100644 --- a/packages/core/src/schema/index.ts +++ b/packages/core/src/schema/index.ts @@ -59,6 +59,9 @@ export { getEffectiveDormerSurfaceMaterial, } from './nodes/dormer' export { DownspoutNode } from './nodes/downspout' +export { DuctFittingNode } from './nodes/duct-fitting' +export { DuctSegmentNode } from './nodes/duct-segment' +export { DuctTerminalNode } from './nodes/duct-terminal' export { ElevatorDoorPanelStyle, ElevatorDoorStyle, @@ -68,6 +71,7 @@ export { export { EyebrowVentNode } from './nodes/eyebrow-vent' export { FenceBaseStyle, FenceNode, FenceStyle } from './nodes/fence' export { GuideNode, GuideScaleReference } from './nodes/guide' +export { HvacEquipmentNode } from './nodes/hvac-equipment' export { GutterNode, GutterOutlet } from './nodes/gutter' export type { AnimationEffect, diff --git a/packages/core/src/schema/nodes/duct-fitting.ts b/packages/core/src/schema/nodes/duct-fitting.ts new file mode 100644 index 000000000..82f749c1b --- /dev/null +++ b/packages/core/src/schema/nodes/duct-fitting.ts @@ -0,0 +1,58 @@ +import dedent from 'dedent' +import { z } from 'zod' +import { BaseNode, nodeType, objectId } from '../base' + +/** + * Duct fitting — the junction pieces that connect round duct segments: + * elbows (direction change), tees (branch takeoff), reducers (diameter + * transition). + * + * Phase 2 of the HVAC node system. Fittings are the first kind to expose + * typed ports (`def.ports`) — placement tools snap duct endpoints onto a + * fitting's collars, and the future system graph walks ports to decide + * connectivity. + * + * `position` is level-local meters; `rotation` is an XYZ euler in radians + * so a fitting can turn a horizontal run vertical (riser elbows). + * + * Local-frame conventions (before `rotation` is applied): + * - elbow: inlet faces -X, outlet turned by `angle` degrees in the + * XZ plane (90° → +Z). + * - tee: run along the X axis (ports face -X and +X), branch + * collar faces +Z at `diameter2`. + * - reducer: inlet at `diameter` faces -X, outlet at `diameter2` + * faces +X. + */ +export const DuctFittingNode = BaseNode.extend({ + id: objectId('duct-fitting'), + type: nodeType('duct-fitting'), + // Level-local meters. + position: z.tuple([z.number(), z.number(), z.number()]).default([0, 0, 0]), + // XYZ euler radians. + rotation: z.tuple([z.number(), z.number(), z.number()]).default([0, 0, 0]), + fittingType: z.enum(['elbow', 'tee', 'reducer']).default('elbow'), + // Elbow turn angle in degrees. Residential sheet-metal elbows come in + // 90° and 45°; adjustable elbows cover the range between. + angle: z.number().min(15).max(90).default(90), + // Main (run/inlet) nominal diameter in inches. + diameter: z.number().min(2).max(48).default(6), + // Secondary diameter in inches — tee branch collar, reducer outlet. + // Ignored by elbows. + diameter2: z.number().min(2).max(48).default(6), + ductMaterial: z.enum(['sheet-metal', 'flex', 'duct-board']).default('sheet-metal'), + system: z.enum(['supply', 'return']).default('supply'), +}).describe( + dedent` + Duct fitting - elbow, tee, or reducer junction between round duct runs. + - position: [x, y, z] level-local meters + - rotation: [x, y, z] euler radians + - fittingType: elbow | tee | reducer + - angle: elbow turn in degrees (45 or 90 typical) + - diameter: main nominal diameter in inches + - diameter2: tee branch / reducer outlet diameter in inches + - ductMaterial: sheet-metal | flex | duct-board + - system: supply | return + `, +) +export type DuctFittingNode = z.infer +export type DuctFittingNodeId = DuctFittingNode['id'] diff --git a/packages/core/src/schema/nodes/duct-segment.ts b/packages/core/src/schema/nodes/duct-segment.ts new file mode 100644 index 000000000..98d981a9d --- /dev/null +++ b/packages/core/src/schema/nodes/duct-segment.ts @@ -0,0 +1,47 @@ +import dedent from 'dedent' +import { z } from 'zod' +import { BaseNode, nodeType, objectId } from '../base' + +/** + * Round duct segment — a polyline of 3D points connected by cylindrical + * duct sections. Forced-air HVAC supply/return runs in US residential. + * + * Phase 1 of the HVAC node system: just the geometry primitive. Fittings, + * terminals, equipment, and typed ports come in later slices. + * + * Path coordinates are level-local meters: [x, y, z] tuples. y is height + * above the level floor. A duct hung at ceiling height through three points + * is e.g. `[[0, 2.6, 0], [3, 2.6, 0], [3, 2.6, 4]]`. + * + * Diameters are nominal US round-duct sizes in inches; the geometry + * builder converts to meters for the cylinder radius. + */ +export const DuctSegmentNode = BaseNode.extend({ + id: objectId('duct-segment'), + type: nodeType('duct-segment'), + // Polyline path in level-local meters. Minimum two points (start, end). + path: z.array(z.tuple([z.number(), z.number(), z.number()])).min(2), + // Nominal inner diameter in inches. Common residential sizes 4"–14"; we + // accept any positive number so the inspector slider stays ergonomic and + // larger commercial sizes load without a schema bump. + diameter: z.number().min(2).max(48).default(6), + // Construction material. + ductMaterial: z.enum(['sheet-metal', 'flex', 'duct-board']).default('flex'), + // External insulation R-value. 0 = bare. Common flex-duct values are R-4.2, + // R-6, R-8. + insulationR: z.number().min(0).max(12).default(0.5), + // Which side of the air loop this segment belongs to. Drives visual tint + // and (in later slices) System graph membership. + system: z.enum(['supply', 'return']).default('supply'), +}).describe( + dedent` + Round duct segment - polyline of 3D points connected by cylindrical sections. + - path: list of [x, y, z] points in level-local meters (min 2) + - diameter: nominal inner diameter in inches (typ. 4-14 residential) + - ductMaterial: sheet-metal | flex | duct-board + - insulationR: external insulation R-value (0, 4, 6, 8 typical) + - system: supply | return (drives visual tint) + `, +) +export type DuctSegmentNode = z.infer +export type DuctSegmentNodeId = DuctSegmentNode['id'] diff --git a/packages/core/src/schema/nodes/duct-terminal.ts b/packages/core/src/schema/nodes/duct-terminal.ts new file mode 100644 index 000000000..9ce6bed9d --- /dev/null +++ b/packages/core/src/schema/nodes/duct-terminal.ts @@ -0,0 +1,46 @@ +import dedent from 'dedent' +import { z } from 'zod' +import { BaseNode, nodeType, objectId } from '../base' + +/** + * Duct terminal — where the air loop meets the room: supply registers, + * ceiling diffusers, return grilles. + * + * Phase 3 of the HVAC node system. Each terminal exposes a single typed + * port at its collar (behind/above/below the face depending on mount), + * so duct runs end onto it like any other port. + * + * `position` is the center of the visible face in level-local meters — + * floor registers at y≈0, ceiling diffusers at ceiling height, wall + * registers at their height on the wall. `rotation` is yaw radians. + */ +export const DuctTerminalNode = BaseNode.extend({ + id: objectId('duct-terminal'), + type: nodeType('duct-terminal'), + // Level-local meters — center of the face. + position: z.tuple([z.number(), z.number(), z.number()]).default([0, 0, 0]), + // Yaw in radians. + rotation: z.number().default(0), + terminalType: z.enum(['supply-register', 'diffuser', 'return-grille']).default('supply-register'), + // Which surface the terminal mounts on. Drives face orientation and + // which way the collar (and its port) points. + mount: z.enum(['floor', 'ceiling', 'wall']).default('floor'), + // Face dimensions in meters. Typical floor register ~0.30 × 0.15; + // ceiling diffusers are square (0.6 × 0.6); return grilles run large. + width: z.number().min(0.1).max(1.5).default(0.3), + depth: z.number().min(0.05).max(1.5).default(0.15), + // Round collar diameter in inches on the duct side. + collarDiameter: z.number().min(4).max(20).default(6), +}).describe( + dedent` + Duct terminal - supply register, ceiling diffuser, or return grille. + - position: [x, y, z] level-local meters, center of the face + - rotation: yaw radians + - terminalType: supply-register | diffuser | return-grille (grille = return side) + - mount: floor | ceiling | wall - face orientation + collar direction + - width / depth: face size in meters + - collarDiameter: duct collar in inches + `, +) +export type DuctTerminalNode = z.infer +export type DuctTerminalNodeId = DuctTerminalNode['id'] diff --git a/packages/core/src/schema/nodes/hvac-equipment.ts b/packages/core/src/schema/nodes/hvac-equipment.ts new file mode 100644 index 000000000..e7b1ab964 --- /dev/null +++ b/packages/core/src/schema/nodes/hvac-equipment.ts @@ -0,0 +1,44 @@ +import dedent from 'dedent' +import { z } from 'zod' +import { BaseNode, nodeType, objectId } from '../base' + +/** + * HVAC equipment — the boxes duct systems start and end at: furnace, + * air handler, outdoor condenser. + * + * Phase 3 of the HVAC node system. Furnaces and air handlers expose + * typed ports (supply plenum on top, return drop on the side) so duct + * runs and fittings snap onto them; condensers are the outdoor half of + * a split system and carry no duct ports. + * + * Floor-placed: `position` is level-local meters with y at the base, + * `rotation` is yaw radians (the editor's default R-rotate applies). + */ +export const HvacEquipmentNode = BaseNode.extend({ + id: objectId('hvac-equipment'), + type: nodeType('hvac-equipment'), + // Level-local meters, y at the unit's base. + position: z.tuple([z.number(), z.number(), z.number()]).default([0, 0, 0]), + // Yaw in radians. + rotation: z.number().default(0), + equipmentType: z.enum(['furnace', 'air-handler', 'condenser']).default('furnace'), + // Cabinet dimensions in meters. Defaults match a typical upflow + // furnace cabinet (~22" × 28" footprint, ~43" tall). + width: z.number().min(0.3).max(2).default(0.56), + depth: z.number().min(0.3).max(2).default(0.71), + height: z.number().min(0.4).max(2.5).default(1.1), + // Collar diameters in inches for the duct connections. + supplyDiameter: z.number().min(6).max(30).default(12), + returnDiameter: z.number().min(6).max(30).default(14), +}).describe( + dedent` + HVAC equipment cabinet - furnace, air handler, or outdoor condenser. + - position: [x, y, z] level-local meters (y = base) + - rotation: yaw radians + - equipmentType: furnace | air-handler | condenser + - width / depth / height: cabinet size in meters + - supplyDiameter / returnDiameter: duct collar sizes in inches (ignored by condenser) + `, +) +export type HvacEquipmentNode = z.infer +export type HvacEquipmentNodeId = HvacEquipmentNode['id'] diff --git a/packages/core/src/schema/types.ts b/packages/core/src/schema/types.ts index b866f4e6c..8ff360aa0 100644 --- a/packages/core/src/schema/types.ts +++ b/packages/core/src/schema/types.ts @@ -8,10 +8,14 @@ import { CupolaNode } from './nodes/cupola' import { DoorNode } from './nodes/door' import { DormerNode } from './nodes/dormer' import { DownspoutNode } from './nodes/downspout' +import { DuctFittingNode } from './nodes/duct-fitting' +import { DuctSegmentNode } from './nodes/duct-segment' +import { DuctTerminalNode } from './nodes/duct-terminal' import { ElevatorNode } from './nodes/elevator' import { EyebrowVentNode } from './nodes/eyebrow-vent' import { FenceNode } from './nodes/fence' import { GuideNode } from './nodes/guide' +import { HvacEquipmentNode } from './nodes/hvac-equipment' import { GutterNode } from './nodes/gutter' import { ItemNode } from './nodes/item' import { LevelNode } from './nodes/level' @@ -65,6 +69,10 @@ export const AnyNode = z.discriminatedUnion('type', [ SkylightNode, DormerNode, DownspoutNode, + DuctSegmentNode, + DuctFittingNode, + DuctTerminalNode, + HvacEquipmentNode, ]) export type AnyNode = z.infer From af5711befe307154c4fa489085118d83686e6bd5 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 11:44:54 +0530 Subject: [PATCH 05/59] feat(editor): extract generic DimensionPill from MeasurementPill Reusable prefix/value pill (with optional signed deltas and an emphasised primary part) so node tools can show the same themed readout the wall H/L/T pill uses. MeasurementPill now delegates to it. Co-Authored-By: Claude Fable 5 --- .../components/editor/measurement-pill.tsx | 84 ++++++++++++++----- packages/editor/src/index.tsx | 7 +- 2 files changed, 68 insertions(+), 23 deletions(-) diff --git a/packages/editor/src/components/editor/measurement-pill.tsx b/packages/editor/src/components/editor/measurement-pill.tsx index 892f5d011..793f9d2b7 100644 --- a/packages/editor/src/components/editor/measurement-pill.tsx +++ b/packages/editor/src/components/editor/measurement-pill.tsx @@ -23,11 +23,64 @@ const PART_ORDER: { key: MeasurePart; prefix: string }[] = [ { key: 'thickness', prefix: 'T' }, ] +export interface DimensionPillPart { + key: string + prefix: string + value: number + /** Render an explicit +/- sign — for deltas rather than absolute sizes. */ + signed?: boolean +} + +/** + * Generic floating dimension pill: a row of `prefix value` readouts with the + * active one emphasised. Styled to match the top-center floating info bar + * (rounded-full, design-token colours) so it tracks the app theme. + * + * `primaryRef` points at the primary value's `` so a caller driving a + * per-frame drag can rewrite its text imperatively without a React re-render. + */ +export function DimensionPill({ + parts, + unit, + primary, + primaryRef, +}: { + parts: DimensionPillPart[] + unit: 'metric' | 'imperial' + primary?: string + primaryRef?: ForwardedRef +}) { + return ( +
+ {parts.map((part, index) => { + const text = part.signed + ? `${part.value < 0 ? '-' : '+'}${formatMeasurement(Math.abs(part.value), unit)}` + : formatMeasurement(part.value, unit) + return ( + + {index > 0 ? ( + + · + + ) : null} + + {`${part.prefix} ${text}`} + + + ) + })} +
+ ) +} + /** * Floating dimension pill shown during wall / fence drags: `H · L · T` with - * the actively-dragged dimension emphasised. Styled to match the top-center - * floating info bar (rounded-full, design-token colours) so it tracks the - * app theme. + * the actively-dragged dimension emphasised. * * The forwarded ref points at the `primary` value's `` so a caller * driving a per-frame drag (the height arrow) can rewrite its text @@ -52,24 +105,11 @@ export const MeasurementPill = forwardRef(function MeasurementPill( ) { const values: Record = { height, length, thickness } return ( -
- {PART_ORDER.map((part, index) => ( - - {index > 0 ? ( - - · - - ) : null} - - {`${part.prefix} ${formatMeasurement(values[part.key], unit)}`} - - - ))} -
+ ({ ...part, value: values[part.key] }))} + primary={primary} + primaryRef={primaryRef} + unit={unit} + /> ) }) diff --git a/packages/editor/src/index.tsx b/packages/editor/src/index.tsx index 5bc28f587..5996081a5 100644 --- a/packages/editor/src/index.tsx +++ b/packages/editor/src/index.tsx @@ -12,7 +12,12 @@ export { default as Editor } from './components/editor' // surface uses the shorter, shell-friendly names from the unified // preset-system spec. export { FloatingActionMenu as FloatingMenu } from './components/editor/floating-action-menu' -export { formatMeasurement, MeasurementPill } from './components/editor/measurement-pill' +export { + DimensionPill, + type DimensionPillPart, + formatMeasurement, + MeasurementPill, +} from './components/editor/measurement-pill' export { type SnapshotCameraData, ThumbnailGenerator, From 80f6f3930d10e196df4624fff74c1f29a5beebb0 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 11:45:07 +0530 Subject: [PATCH 06/59] feat(editor): rotation-axis state and HVAC structure tool ids - StructureTool gains duct-segment / duct-fitting / duct-terminal / hvac-equipment so the Build tab can arm the registry tools. - useEditor.rotationAxis + cycleRotationAxis(): the world axis R/T rotates fully-3D kinds (duct fittings) around. Lives on the editor store so both the nodes package and the floating action menu can share it. Co-Authored-By: Claude Fable 5 --- packages/editor/src/store/use-editor.tsx | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/packages/editor/src/store/use-editor.tsx b/packages/editor/src/store/use-editor.tsx index d40975981..6e3f4c88e 100644 --- a/packages/editor/src/store/use-editor.tsx +++ b/packages/editor/src/store/use-editor.tsx @@ -106,6 +106,10 @@ export type StructureTool = | 'dormer' | 'gutter' | 'downspout' + | 'duct-segment' + | 'duct-fitting' + | 'duct-terminal' + | 'hvac-equipment' // Furnish mode tools (items and decoration) export type FurnishTool = 'item' @@ -291,6 +295,14 @@ type EditorState = { */ activeHandleDrag: { nodeId: AnyNodeId; label: string } | null setActiveHandleDrag: (drag: { nodeId: AnyNodeId; label: string } | null) => void + /** + * World axis the R/T keyboard rotation turns around, for kinds with + * full 3D orientation (duct fittings). Alt cycles it Y → X → Z; the + * kind's tool / keyboard actions read it, and the floating action + * menu surfaces it in a pill above the selected node. + */ + rotationAxis: 'x' | 'y' | 'z' + cycleRotationAxis: () => 'x' | 'y' | 'z' curvingWall: WallNode | null setCurvingWall: (wall: WallNode | null) => void curvingFence: FenceNode | null @@ -803,6 +815,13 @@ const useEditor = create()( setMovingFenceEndpoint: (value) => set({ movingFenceEndpoint: value }), activeHandleDrag: null, setActiveHandleDrag: (drag) => set({ activeHandleDrag: drag }), + rotationAxis: 'y', + cycleRotationAxis: () => { + const order = ['y', 'x', 'z'] as const + const next = order[(order.indexOf(get().rotationAxis as 'y' | 'x' | 'z') + 1) % 3]! + set({ rotationAxis: next }) + return next + }, curvingWall: null, setCurvingWall: (wall) => set({ curvingWall: wall }), curvingFence: null, From 406a36e0bd7ac7f9a398b32bccd4b330f9a39dc8 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 11:45:07 +0530 Subject: [PATCH 07/59] feat(editor): rotation-axis pill above the floating action menu MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When a duct fitting is selected, show the active R/T rotation axis in a DimensionPill-styled chip stacked directly above the move / duplicate / delete menu — same slot the wall height pill uses. Co-Authored-By: Claude Fable 5 --- .../editor/floating-action-menu.tsx | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/packages/editor/src/components/editor/floating-action-menu.tsx b/packages/editor/src/components/editor/floating-action-menu.tsx index e5a74395b..c5ee62e5d 100644 --- a/packages/editor/src/components/editor/floating-action-menu.tsx +++ b/packages/editor/src/components/editor/floating-action-menu.tsx @@ -155,6 +155,8 @@ export function FloatingActionMenu() { // flips only at drag start / end, so subscribing here is cheap — the live // height value is written imperatively in the useFrame below. const activeHandleDrag = useEditor((s) => s.activeHandleDrag) + // R/T rotation axis for kinds with full 3D orientation (duct fittings). + const rotationAxis = useEditor((s) => s.rotationAxis) const groupRef = useRef(null) const menuScaleRef = useRef(null) @@ -584,6 +586,27 @@ export function FloatingActionMenu() { /> ) : null} + {/* Rotation-axis pill for kinds with full 3D orientation (duct + fittings): shows which world axis R/T turns around and that + Alt cycles it. Same slot as the wall height pill — directly + above the action menu. */} + {node?.type === 'duct-fitting' ? ( +
+
+ + Axis {rotationAxis.toUpperCase()} + + + · + + R/T rotate + + · + + ⌥ axis +
+
+ ) : null} From 956c465de288a1cb0971c6a5516f1f8a4d43052f Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 11:45:26 +0530 Subject: [PATCH 08/59] =?UTF-8?q?feat(nodes):=20duct-segment=20kind=20?= =?UTF-8?q?=E2=80=94=20draw=20tool,=20drag=20handles,=20floorplan?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Round duct runs as a registry-driven kind: - geometry: capped cylinder sections + sphere joints + translucent insulation shell; shared buildSection/createDuctMaterial helpers - def.ports: run start/end exposed as typed ports (outward tangents) - shared/ports.ts: scene-wide port query + XZ nearest-port snap used by every HVAC tool - tool: one-segment-per-two-clicks placement with 45° XZ angle lock (Shift = free), Alt-drag vertical risers, port snapping, and a DimensionPill delta readout - system: selection-time path-point drag handles portaled into the duct's scene group — axis-constrained by default, Alt = free plane, Shift = no grid snap, endpoint port-snap, single-undo commits - floorplan: real-width line + system-tinted dashed centerline; risers render as circles Co-Authored-By: Claude Fable 5 --- packages/nodes/src/duct-segment/definition.ts | 119 ++++++ packages/nodes/src/duct-segment/floorplan.ts | 82 ++++ packages/nodes/src/duct-segment/geometry.ts | 154 +++++++ packages/nodes/src/duct-segment/index.ts | 3 + .../nodes/src/duct-segment/parametrics.ts | 43 ++ packages/nodes/src/duct-segment/schema.ts | 1 + packages/nodes/src/duct-segment/system.tsx | 325 +++++++++++++++ packages/nodes/src/duct-segment/tool.tsx | 383 ++++++++++++++++++ packages/nodes/src/shared/ports.ts | 47 +++ 9 files changed, 1157 insertions(+) create mode 100644 packages/nodes/src/duct-segment/definition.ts create mode 100644 packages/nodes/src/duct-segment/floorplan.ts create mode 100644 packages/nodes/src/duct-segment/geometry.ts create mode 100644 packages/nodes/src/duct-segment/index.ts create mode 100644 packages/nodes/src/duct-segment/parametrics.ts create mode 100644 packages/nodes/src/duct-segment/schema.ts create mode 100644 packages/nodes/src/duct-segment/system.tsx create mode 100644 packages/nodes/src/duct-segment/tool.tsx create mode 100644 packages/nodes/src/shared/ports.ts diff --git a/packages/nodes/src/duct-segment/definition.ts b/packages/nodes/src/duct-segment/definition.ts new file mode 100644 index 000000000..e082fbc3f --- /dev/null +++ b/packages/nodes/src/duct-segment/definition.ts @@ -0,0 +1,119 @@ +import type { NodeDefinition } from '@pascal-app/core' +import { buildDuctSegmentFloorplan } from './floorplan' +import { buildDuctSegmentGeometry } from './geometry' +import { ductSegmentParametrics } from './parametrics' +import { DuctSegmentNode } from './schema' + +/** + * Phase 1 of the HVAC node system — round duct segment as a polyline. + * + * Composition: `def.geometry` only. No custom renderer, no per-frame + * system. The framework's `` mounts an empty + * group; `` calls `buildDuctSegmentGeometry` whenever + * the node is dirty and swaps in the cylinder+sphere meshes. + * + * Deferred to later slices: + * - Placement tool (polyline draw UX). + * - Fittings (elbow / tee / reducer) — needs typed ports first. + * - Terminals (registers / diffusers) — needs surface-snapping. + * - Equipment (furnace / air-handler / condenser). + * - Floor-plan rendering. + * - Move / endpoint handles. + * + * The node can be created programmatically today via + * `DuctSegmentNode.parse({ path: [...] })` + `useScene.createNode(...)`. + */ +export const ductSegmentDefinition: NodeDefinition = { + kind: 'duct-segment', + schemaVersion: 1, + schema: DuctSegmentNode, + category: 'utility', + + defaults: () => ({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + path: [ + [0, 0, 0], + [3, 0, 0], + ], + diameter: 6, + ductMaterial: 'flex', + insulationR: 0.5, + system: 'supply', + }), + + capabilities: { + selectable: { hitVolume: 'bbox' }, + duplicable: true, + deletable: true, + }, + + parametrics: ductSegmentParametrics, + + geometry: buildDuctSegmentGeometry, + geometryKey: (n) => JSON.stringify([n.path, n.diameter, n.ductMaterial, n.insulationR, n.system]), + + // Open run ends as typed ports — directions point outward along the + // path tangent so fittings mate flush. Path coords are already + // level-local, so no transform is needed. + ports: (n) => { + if (n.path.length < 2) return [] + const unit = ( + a: readonly [number, number, number], + b: readonly [number, number, number], + ): [number, number, number] => { + const d: [number, number, number] = [a[0] - b[0], a[1] - b[1], a[2] - b[2]] + const len = Math.hypot(d[0], d[1], d[2]) + return len < 1e-9 ? [1, 0, 0] : [d[0] / len, d[1] / len, d[2] / len] + } + const first = n.path[0]! + const second = n.path[1]! + const last = n.path[n.path.length - 1]! + const prev = n.path[n.path.length - 2]! + return [ + { + id: 'start', + position: first, + direction: unit(first, second), + diameter: n.diameter, + system: n.system, + }, + { + id: 'end', + position: last, + direction: unit(last, prev), + diameter: n.diameter, + system: n.system, + }, + ] + }, + + floorplan: buildDuctSegmentFloorplan, + + // Selection-time path-point handles (drag to edit a committed run). + system: { module: () => import('./system') }, + + tool: () => import('./tool'), + toolHints: [ + { key: 'Click', label: 'Start segment' }, + { key: 'Click again', label: 'Place it (locked to 45°)' }, + { key: 'Shift', label: 'Free angle' }, + { key: 'Alt + drag', label: 'Go vertical ↕, click to place' }, + { key: 'Esc', label: 'Cancel start point' }, + ], + + presentation: { + label: 'Duct', + description: 'Round HVAC duct run — polyline of points connected by cylindrical sections.', + icon: { kind: 'iconify', name: 'lucide:wind' }, + paletteSection: 'structure', + paletteOrder: 90, + }, + + mcp: { + description: + 'A round HVAC duct run defined as a polyline. Supply or return, with configurable diameter, material, and external insulation.', + }, +} diff --git a/packages/nodes/src/duct-segment/floorplan.ts b/packages/nodes/src/duct-segment/floorplan.ts new file mode 100644 index 000000000..cc05f2672 --- /dev/null +++ b/packages/nodes/src/duct-segment/floorplan.ts @@ -0,0 +1,82 @@ +import type { FloorplanGeometry, FloorplanPoint, GeometryContext } from '@pascal-app/core' +import { INCHES_TO_METERS } from './geometry' +import type { DuctSegmentNode } from './schema' + +const SUPPLY_CENTERLINE = '#d4825a' +const RETURN_CENTERLINE = '#5a8ad4' +const BODY_COLOR = '#9ca3af' + +/** + * Floor-plan representation of a duct run: the path drawn at the duct's + * real width (plan-unit stroke so it scales with zoom), with a dashed + * centerline tinted by system — orange for supply, blue for return, the + * same hues the 3D tint uses. Vertical risers collapse to a point in + * plan; consecutive duplicate plan points are dropped so they don't + * render zero-length artifacts. + */ +export function buildDuctSegmentFloorplan( + node: DuctSegmentNode, + ctx: GeometryContext, +): FloorplanGeometry | null { + if (node.path.length < 2) return null + + // Project to plan, dropping consecutive duplicates (risers). + const points: FloorplanPoint[] = [] + for (const [x, , z] of node.path) { + const prev = points[points.length - 1] + if (prev && Math.abs(prev[0] - x) < 1e-6 && Math.abs(prev[1] - z) < 1e-6) continue + points.push([x, z]) + } + + const diameterM = node.diameter * INCHES_TO_METERS + const view = ctx.viewState + const palette = view?.palette + const showSelectedChrome = (view?.selected || view?.highlighted) ?? false + const centerline = node.system === 'supply' ? SUPPLY_CENTERLINE : RETURN_CENTERLINE + + // A pure riser (single plan point) still gets a marker: a circle at + // the duct's diameter so the vertical run is visible in plan. + if (points.length < 2) { + const p = points[0] ?? [node.path[0]![0], node.path[0]![2]] + return { + kind: 'group', + children: [ + { + kind: 'circle', + cx: p[0], + cy: p[1], + r: diameterM / 2, + fill: BODY_COLOR, + stroke: showSelectedChrome && palette ? palette.selectedStroke : centerline, + strokeWidth: 0.02, + opacity: 0.9, + }, + ], + } + } + + const children: FloorplanGeometry[] = [ + { + kind: 'polyline', + points, + stroke: showSelectedChrome && palette ? palette.selectedStroke : BODY_COLOR, + strokeWidth: diameterM, + strokeLinecap: 'round', + strokeLinejoin: 'round', + opacity: showSelectedChrome ? 0.95 : 0.8, + }, + { + kind: 'polyline', + points, + stroke: centerline, + strokeWidth: 1.5, + vectorEffect: 'non-scaling-stroke', + strokeDasharray: '5 4', + strokeLinecap: 'round', + strokeLinejoin: 'round', + opacity: 0.9, + }, + ] + + return { kind: 'group', children } +} diff --git a/packages/nodes/src/duct-segment/geometry.ts b/packages/nodes/src/duct-segment/geometry.ts new file mode 100644 index 000000000..abc95fa14 --- /dev/null +++ b/packages/nodes/src/duct-segment/geometry.ts @@ -0,0 +1,154 @@ +import { CylinderGeometry, Group, Mesh, MeshStandardMaterial, SphereGeometry, Vector3 } from 'three' +import type { DuctSegmentNode } from './schema' + +export const INCHES_TO_METERS = 0.0254 +// Insulation wraps the duct in a roughly uniform shell. A strictly physical +// mapping (fiberglass ≈ R-3.2 per inch) makes low R-values nearly invisible +// at screen scale — R-1 would add only ~8 mm over a 15 cm duct. So the shell +// uses a perceptual mapping: a visible base jacket as soon as insulation is +// non-zero, plus a clear per-R increment. Anchored so R-8 still lands near +// the real-world ~3" jacket. +const INSULATION_BASE_IN = 0.5 +const INSULATION_INCHES_PER_R = 0.3125 +function pickInsulationThickness(r: number): number { + if (r <= 0) return 0 + return (INSULATION_BASE_IN + r * INSULATION_INCHES_PER_R) * INCHES_TO_METERS +} + +const SUPPLY_COLOR = '#d4825a' +const RETURN_COLOR = '#5a8ad4' +const FLEX_COLOR = '#8a8a8a' +const SHEET_METAL_COLOR = '#c2c2c2' +const DUCT_BOARD_COLOR = '#a5946d' + +const RADIAL_SEGMENTS = 24 + +const UP = new Vector3(0, 1, 0) + +/** + * Cylinder spanning `start`→`end` at `radius`. Shared by the segment and + * fitting builders — fittings are just short sections + a junction. + */ +export function buildSection( + start: Vector3, + end: Vector3, + radius: number, + material: MeshStandardMaterial, + name: string, +): Mesh | null { + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-6) return null + dir.normalize() + + // Capped, front-side-only — ducts should read as solid metal tubes, + // not hollow open-ended shells. + const geom = new CylinderGeometry(radius, radius, length, RADIAL_SEGMENTS, 1, false) + const mesh = new Mesh(geom, material) + mesh.name = name + mesh.position.copy(start).addScaledVector(dir, length / 2) + mesh.quaternion.setFromUnitVectors(UP, dir) + return mesh +} + +type DuctAppearance = { + ductMaterial: 'sheet-metal' | 'flex' | 'duct-board' + system: 'supply' | 'return' +} + +function getDuctColor(node: DuctAppearance): string { + if (node.ductMaterial === 'flex') return FLEX_COLOR + if (node.ductMaterial === 'duct-board') return DUCT_BOARD_COLOR + return SHEET_METAL_COLOR +} + +function getSystemTint(node: DuctAppearance): string { + return node.system === 'supply' ? SUPPLY_COLOR : RETURN_COLOR +} + +/** + * Standard duct body material — color by construction material with a + * faint supply/return emissive tint. Shared with the fitting builder so + * connected runs and junctions read as one system. + */ +export function createDuctMaterial(node: DuctAppearance): MeshStandardMaterial { + return new MeshStandardMaterial({ + color: getDuctColor(node), + metalness: node.ductMaterial === 'flex' ? 0.1 : 0.6, + roughness: node.ductMaterial === 'flex' ? 0.85 : 0.4, + emissive: getSystemTint(node), + emissiveIntensity: 0.08, + }) +} + +/** + * Pure geometry builder for a round duct segment polyline. + * + * Strategy: + * - For every consecutive pair of path points, build a cylinder of the + * duct's inner diameter. + * - Drop a sphere of the same radius at every interior joint to cap the + * corner smoothly (no mitering yet — fittings come in a later slice). + * - When insulation is non-zero, repeat the same pattern at a larger + * radius using a translucent shell material. + * + * All children are returned in level-local meters; the framework's + * `` handles the node-level transform (currently + * identity since the schema has no position field — the path itself is + * absolute within the level). + */ +export function buildDuctSegmentGeometry(node: DuctSegmentNode): Group { + const group = new Group() + if (node.path.length < 2) return group + + const radius = (node.diameter * INCHES_TO_METERS) / 2 + const ductMaterial = createDuctMaterial(node) + + const points = node.path.map(([x, y, z]) => new Vector3(x, y, z)) + + for (let i = 0; i < points.length - 1; i++) { + // Loop bounds + min(2) on the schema guarantee both points exist. + const a = points[i] as Vector3 + const b = points[i + 1] as Vector3 + const mesh = buildSection(a, b, radius, ductMaterial, `duct-section-${i}`) + if (mesh) group.add(mesh) + } + + // Joint caps at interior points only (skip first and last — they're open + // ends for now; equipment / terminal nodes will cap them later). + for (let i = 1; i < points.length - 1; i++) { + const joint = new Mesh(new SphereGeometry(radius, RADIAL_SEGMENTS, 12), ductMaterial) + joint.name = `duct-joint-${i}` + joint.position.copy(points[i] as Vector3) + group.add(joint) + } + + const insulationThickness = pickInsulationThickness(node.insulationR) + if (insulationThickness > 0) { + const insulationRadius = radius + insulationThickness + const insulationMaterial = new MeshStandardMaterial({ + color: '#f0e4c8', + roughness: 1, + metalness: 0, + transparent: true, + opacity: 0.25, + }) + for (let i = 0; i < points.length - 1; i++) { + const a = points[i] as Vector3 + const b = points[i + 1] as Vector3 + const mesh = buildSection(a, b, insulationRadius, insulationMaterial, `duct-insulation-${i}`) + if (mesh) group.add(mesh) + } + for (let i = 1; i < points.length - 1; i++) { + const joint = new Mesh( + new SphereGeometry(insulationRadius, RADIAL_SEGMENTS, 12), + insulationMaterial, + ) + joint.name = `duct-insulation-joint-${i}` + joint.position.copy(points[i] as Vector3) + group.add(joint) + } + } + + return group +} diff --git a/packages/nodes/src/duct-segment/index.ts b/packages/nodes/src/duct-segment/index.ts new file mode 100644 index 000000000..4587f5d83 --- /dev/null +++ b/packages/nodes/src/duct-segment/index.ts @@ -0,0 +1,3 @@ +export { ductSegmentDefinition } from './definition' +export { buildDuctSegmentGeometry } from './geometry' +export { DuctSegmentNode } from './schema' diff --git a/packages/nodes/src/duct-segment/parametrics.ts b/packages/nodes/src/duct-segment/parametrics.ts new file mode 100644 index 000000000..35f4ebfec --- /dev/null +++ b/packages/nodes/src/duct-segment/parametrics.ts @@ -0,0 +1,43 @@ +import type { ParametricDescriptor } from '@pascal-app/core' +import type { DuctSegmentNode } from './schema' + +export const ductSegmentParametrics: ParametricDescriptor = { + groups: [ + { + label: 'Air', + fields: [ + { + key: 'system', + kind: 'enum', + options: ['supply', 'return'], + display: 'segmented', + }, + { + key: 'diameter', + kind: 'number', + unit: 'in', + min: 4, + max: 24, + step: 1, + }, + ], + }, + { + label: 'Construction', + fields: [ + { + key: 'ductMaterial', + kind: 'enum', + options: ['sheet-metal', 'flex', 'duct-board'], + }, + { + key: 'insulationR', + kind: 'number', + min: 0, + max: 8, + step: 0.5, + }, + ], + }, + ], +} diff --git a/packages/nodes/src/duct-segment/schema.ts b/packages/nodes/src/duct-segment/schema.ts new file mode 100644 index 000000000..2df455db9 --- /dev/null +++ b/packages/nodes/src/duct-segment/schema.ts @@ -0,0 +1 @@ +export { DuctSegmentNode } from '@pascal-app/core' diff --git a/packages/nodes/src/duct-segment/system.tsx b/packages/nodes/src/duct-segment/system.tsx new file mode 100644 index 000000000..1650d2068 --- /dev/null +++ b/packages/nodes/src/duct-segment/system.tsx @@ -0,0 +1,325 @@ +'use client' + +import { + type AnyNodeId, + type DuctSegmentNode, + pauseSceneHistory, + resumeSceneHistory, + sceneRegistry, + useScene, +} from '@pascal-app/core' +import { DimensionPill, useEditor } from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { createPortal, type ThreeEvent, useThree } from '@react-three/fiber' +import { useEffect, useRef, useState } from 'react' +import { type Object3D, Plane, Raycaster, Vector2, Vector3 } from 'three' +import { collectScenePorts, findNearestPortXZ } from '../shared/ports' + +/** Handle pip radius (meters). */ +const HANDLE_RADIUS = 0.09 +/** Port-snap radius for dragged run endpoints (meters, XZ). */ +const PORT_SNAP_RADIUS_M = 0.4 + +const UP = new Vector3(0, 1, 0) + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +type Point = [number, number, number] + +/** + * Selection-time editing for committed duct runs: one draggable handle + * per path point. + * + * Handles are PORTALED into the duct's registered scene group so they + * share its exact frame — path coords are node-local, and the level / + * building transform above the group applies to the handles for free. + * Drag raycasts run in world space and convert hits back into the + * group's local frame before writing the path. + * + * Drag model: by default the point is CONSTRAINED to the axis the + * segment was drawn along — a horizontal duct's endpoint slides along + * its own length, a riser's endpoint slides vertically. Holding **Alt** + * releases the constraint into free horizontal-plane movement (at the + * point's height); in free mode dragged run endpoints (first / last + * point) also snap onto nearby typed ports so a loose run can be mated + * onto a fitting after the fact. Holding **Shift** bypasses grid + * snapping in either mode for a perfectly smooth precision drag. + * + * History does the single-undo dance: paused during the drag (the live + * `updateNode` ticks are untracked), then on release the path is + * reverted, history resumed, and the final path applied as one tracked + * change. + */ +const DuctSegmentSystem = () => { + const selectedIds = useViewer((s) => s.selection.selectedIds) + const duct = useScene((s) => { + if (selectedIds.length !== 1) return null + const node = s.nodes[selectedIds[0] as AnyNodeId] + return node?.type === 'duct-segment' ? (node as DuctSegmentNode) : null + }) + + // Portal target: the duct's registered group. Resolved with a rAF + // retry because registration happens on the renderer's mount, which + // can land a frame after selection. + const ductId = duct?.id ?? null + const [target, setTarget] = useState(null) + useEffect(() => { + if (!ductId) { + setTarget(null) + return + } + let frameId = 0 + const resolve = () => { + const next = sceneRegistry.nodes.get(ductId as AnyNodeId) ?? null + setTarget((cur) => (cur === next ? cur : next)) + if (!next) frameId = window.requestAnimationFrame(resolve) + } + resolve() + return () => window.cancelAnimationFrame(frameId) + }, [ductId]) + + if (!duct || !target) return null + return createPortal(, target, undefined) +} + +const DuctPointHandles = ({ duct, target }: { duct: DuctSegmentNode; target: Object3D }) => { + const { camera, gl } = useThree() + const unit = useViewer((s) => s.unit) + const [draggingIndex, setDraggingIndex] = useState(null) + const [hoverIndex, setHoverIndex] = useState(null) + // Set while a drag is live; null otherwise. Holds everything the window + // pointer handlers need so they never read stale React state. + const dragRef = useRef<{ + index: number + initialPath: Point[] + current: Point + cleanup: () => void + } | null>(null) + + const makeRay = (clientX: number, clientY: number) => { + const rect = gl.domElement.getBoundingClientRect() + const ndc = new Vector2( + ((clientX - rect.left) / rect.width) * 2 - 1, + -((clientY - rect.top) / rect.height) * 2 + 1, + ) + const raycaster = new Raycaster() + raycaster.setFromCamera(ndc, camera) + return raycaster.ray + } + + const intersect = (clientX: number, clientY: number, plane: Plane): Vector3 | null => { + const hit = new Vector3() + return makeRay(clientX, clientY).intersectPlane(plane, hit) ? hit : null + } + + /** + * Signed distance along `axisWorld` (unit, through `anchorWorld`) of the + * point on that line closest to the cursor ray. Null when the ray runs + * (near-)parallel to the axis and the projection is unstable. + */ + const projectOntoAxis = ( + clientX: number, + clientY: number, + anchorWorld: Vector3, + axisWorld: Vector3, + ): number | null => { + const ray = makeRay(clientX, clientY) + const w0 = new Vector3().subVectors(ray.origin, anchorWorld) + const b = ray.direction.dot(axisWorld) + const denom = 1 - b * b + if (Math.abs(denom) < 1e-6) return null + const d0 = ray.direction.dot(w0) + const e0 = axisWorld.dot(w0) + return (e0 - b * d0) / denom + } + + /** World-space position of a local path point. */ + const toWorld = (p: Point): Vector3 => target.localToWorld(new Vector3(p[0], p[1], p[2])) + /** Convert a world-space hit back into the duct group's local frame. */ + const toLocal = (world: Vector3): Point => { + const local = target.worldToLocal(world.clone()) + return [local.x, local.y, local.z] + } + + const onHandleDown = (index: number) => (e: ThreeEvent) => { + e.stopPropagation() + const initialPath = duct.path.map((p) => [...p] as Point) + const startPoint = initialPath[index]! + pauseSceneHistory(useScene) + useViewer.getState().setInputDragging(true) + document.body.style.cursor = 'grabbing' + setDraggingIndex(index) + + const isEndpoint = index === 0 || index === initialPath.length - 1 + + // Axis the segment was drawn along, at this point: from the + // neighbouring path point toward the dragged one. The default drag + // is constrained to this line. + const neighbor = initialPath[index === 0 ? 1 : index - 1]! + const axisLocal = new Vector3( + startPoint[0] - neighbor[0], + startPoint[1] - neighbor[1], + startPoint[2] - neighbor[2], + ) + if (axisLocal.lengthSq() < 1e-9) axisLocal.set(1, 0, 0) + axisLocal.normalize() + // World-space anchor + axis, derived once — the constraint line is + // fixed for the whole drag regardless of where the point currently is. + const anchorWorldStart = toWorld(startPoint) + const axisWorld = toWorld([ + startPoint[0] + axisLocal.x, + startPoint[1] + axisLocal.y, + startPoint[2] + axisLocal.z, + ]) + .sub(anchorWorldStart) + .normalize() + + const onMove = (event: PointerEvent) => { + const drag = dragRef.current + if (!drag) return + const current = drag.current + // Shift = precision: bypass grid snapping for a perfectly smooth + // drag (snap() is a no-op at step 0). + const step = event.shiftKey ? 0 : useEditor.getState().gridSnapStep + let next: Point | null = null + if (event.altKey) { + // Alt = freedom: slide on the horizontal plane at the point's + // height. Endpoints can port-snap here to mate onto a fitting. + const plane = new Plane().setFromNormalAndCoplanarPoint(UP, toWorld(current)) + const hit = intersect(event.clientX, event.clientY, plane) + if (hit) { + const local = toLocal(hit) + next = [snap(local[0], step), current[1], snap(local[2], step)] + if (isEndpoint) { + const port = findNearestPortXZ( + [local[0], current[1], local[2]], + collectScenePorts(duct.id), + PORT_SNAP_RADIUS_M, + ) + if (port) next = [port.position[0], port.position[1], port.position[2]] + } + } + } else { + // Default: constrained to the axis the segment was drawn along — + // slide the point closer / further along its own line. + const t = projectOntoAxis(event.clientX, event.clientY, anchorWorldStart, axisWorld) + if (t !== null) { + const dist = snap(t, step) + next = [ + startPoint[0] + axisLocal.x * dist, + Math.max(0, startPoint[1] + axisLocal.y * dist), + startPoint[2] + axisLocal.z * dist, + ] + } + } + if (!next) return + if (next[0] === current[0] && next[1] === current[1] && next[2] === current[2]) return + drag.current = next + const path = duct.path.map((p, i) => (i === drag.index ? next! : p)) as Point[] + useScene.getState().updateNode(duct.id, { path }) + } + + const onUp = () => { + const drag = dragRef.current + if (!drag) return + drag.cleanup() + dragRef.current = null + setDraggingIndex(null) + // Single-undo dance: revert (still paused), resume, re-apply the + // final path as one tracked change. + const finalPath = drag.initialPath.map((p, i) => + i === drag.index ? drag.current : p, + ) as Point[] + useScene.getState().updateNode(duct.id, { path: drag.initialPath }) + resumeSceneHistory(useScene) + const moved = finalPath[drag.index]!.some( + (v, axis) => v !== drag.initialPath[drag.index]![axis], + ) + if (moved) useScene.getState().updateNode(duct.id, { path: finalPath }) + } + + const cleanup = () => { + window.removeEventListener('pointermove', onMove) + window.removeEventListener('pointerup', onUp) + window.removeEventListener('pointercancel', onUp) + useViewer.getState().setInputDragging(false) + document.body.style.cursor = '' + } + + dragRef.current = { index, initialPath, current: startPoint, cleanup } + window.addEventListener('pointermove', onMove) + window.addEventListener('pointerup', onUp) + window.addEventListener('pointercancel', onUp) + } + + return ( + + {duct.path.map((p, i) => { + const active = draggingIndex === i + const hovered = hoverIndex === i + return ( + { + e.stopPropagation() + setHoverIndex(i) + if (draggingIndex === null) document.body.style.cursor = 'grab' + }} + onPointerLeave={() => { + setHoverIndex((prev) => (prev === i ? null : prev)) + if (draggingIndex === null) document.body.style.cursor = '' + }} + position={p as Point} + > + + + + ) + })} + {draggingIndex !== null && + duct.path[draggingIndex] && + (() => { + // Same pill as the draw tool: signed per-axis deltas from the + // drag-start position, dominant axis emphasised. + const point = duct.path[draggingIndex]! + const origin = dragRef.current?.initialPath[draggingIndex] ?? point + const deltas = [point[0] - origin[0], point[1] - origin[1], point[2] - origin[2]] + const axes = ['x', 'y', 'z'] as const + const primary = axes.reduce((best, axis, i) => + Math.abs(deltas[i]!) > Math.abs(deltas[axes.indexOf(best)]!) ? axis : best, + ) + return ( + + ({ + key: axis, + prefix: axis.toUpperCase(), + value: deltas[i]!, + signed: true, + }))} + primary={primary} + unit={unit} + /> + + ) + })()} + + ) +} + +export default DuctSegmentSystem diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx new file mode 100644 index 000000000..07b1eaa0e --- /dev/null +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -0,0 +1,383 @@ +'use client' + +import { DuctSegmentNode, emitter, type GridEvent, useScene } from '@pascal-app/core' +import { DimensionPill, markToolCancelConsumed, triggerSFX, useEditor } from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { useEffect, useRef, useState } from 'react' +import { type Group, Vector3 } from 'three' +import { collectScenePorts, findNearestPortXZ } from '../shared/ports' +import { ductSegmentDefinition } from './definition' + +/** + * One-segment-at-a-time placement tool for round duct segments. + * + * Mouse-driven model: + * - **First click** anchors the segment start (port snap joins onto an + * existing run / fitting collar). + * - **Second click** commits a two-point duct immediately and re-arms + * the tool — no polyline accumulation, no finish gesture. Chain runs + * by clicking again near the end you just placed (port snap). + * - The in-flight end is angle-locked to the nearest 45° step in XZ + * from the start; Y stays at the start's height. Hold **Shift** to + * release the lock. + * - Hold **Alt** → vertical mode. Cursor XZ locks to the start; + * vertical mouse motion drives Y. Click commits the riser segment. + * - Esc clears an anchored start point. + */ +const PREVIEW_OPACITY = 0.55 +/** Snap radius (meters) for joining onto an existing duct's start/end. */ +const ENDPOINT_SNAP_RADIUS_M = 0.5 +/** Angle step (radians) for the XZ angle lock — 45°. */ +const ANGLE_STEP_RAD = Math.PI / 4 +/** Mouse pixels → meters mapping for Alt-vertical drag. 100 px ≈ 1 m. */ +const ALT_PIXELS_PER_METER = 100 +/** Bounds on Alt-driven Y so a wild fling doesn't fly off. */ +const ALT_Y_MIN_M = -3 +const ALT_Y_MAX_M = 10 + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +/** + * Nearest typed port — duct run ends, fitting collars, anything whose + * kind registers `def.ports` — within snap range of `point` on the XZ + * plane, as a position tuple. Y is ignored for the distance check (grid + * events ride the floor while ports hang at duct height); the snap + * adopts the port's full 3D position. + */ +function findNearbyPort(point: [number, number, number]): [number, number, number] | null { + const port = findNearestPortXZ(point, collectScenePorts(), ENDPOINT_SNAP_RADIUS_M) + return port ? [port.position[0], port.position[1], port.position[2]] : null +} + +/** + * Project `raw` onto the nearest of the eight 45° rays emanating from + * `from` in the XZ plane. Y is preserved from `from`. The projection + * keeps the cursor's *distance* along the chosen ray so the user feels + * the segment grow with their mouse motion rather than snap to a fixed + * length. + */ +function projectToAngleLock( + from: [number, number, number], + raw: [number, number, number], +): [number, number, number] { + const dx = raw[0] - from[0] + const dz = raw[2] - from[2] + const len = Math.hypot(dx, dz) + if (len < 1e-4) return [from[0], from[1], from[2]] + const theta = Math.atan2(dz, dx) + const snapped = Math.round(theta / ANGLE_STEP_RAD) * ANGLE_STEP_RAD + // Distance along the chosen ray = projection of raw onto that direction. + const proj = dx * Math.cos(snapped) + dz * Math.sin(snapped) + const d = Math.max(0, proj) + return [from[0] + Math.cos(snapped) * d, from[1], from[2] + Math.sin(snapped) * d] +} + +const DuctSegmentTool = () => { + const activeLevelId = useViewer((s) => s.selection.levelId) + const unit = useViewer((s) => s.unit) + const cursorRef = useRef(null) + const [draftPoints, setDraftPoints] = useState>([]) + const [cursorPos, setCursorPos] = useState<[number, number, number] | null>(null) + // When the cursor is within snap range of an existing duct's endpoint we + // surface a brighter indicator and commit at the endpoint's exact coords. + const [snapTarget, setSnapTarget] = useState<[number, number, number] | null>(null) + // True while Alt is held with a last point on the draft — drives the + // vertical-cylinder ghost and the cursor HUD label. + const [altActive, setAltActive] = useState(false) + // Mirror into refs so emitter callbacks (closing over the first render's + // setState) read the latest values without re-subscribing. + const draftRef = useRef(draftPoints) + draftRef.current = draftPoints + const cursorPosRef = useRef(cursorPos) + cursorPosRef.current = cursorPos + // Anchor captured when Alt is pressed: screen Y at that moment and the + // base elevation (= last point's Y). Cleared on Alt release. + const altAnchorRef = useRef<{ clientY: number; baseY: number } | null>(null) + // Latest mouse clientY from grid:move; used so the Alt anchor knows where + // the cursor was at key-press time. + const lastClientYRef = useRef(null) + + useEffect(() => { + if (!activeLevelId) return + + // One segment per gesture: first click anchors the start, second + // click commits a two-point duct immediately. No selection switch — + // the tool stays armed so the next click starts the next segment + // (port snap joins it onto the end just committed). + const commitSegment = (start: [number, number, number], end: [number, number, number]) => { + const sameSpot = + Math.abs(start[0] - end[0]) < 1e-4 && + Math.abs(start[1] - end[1]) < 1e-4 && + Math.abs(start[2] - end[2]) < 1e-4 + if (sameSpot) return + const defaults = ductSegmentDefinition.defaults() + const duct = DuctSegmentNode.parse({ + ...defaults, + name: 'Duct run', + path: [start, end], + }) + useScene.getState().createNode(duct, activeLevelId) + triggerSFX('sfx:item-place') + setDraftPoints([]) + setSnapTarget(null) + altAnchorRef.current = null + setAltActive(false) + } + + const resolveSnappedPoint = ( + event: GridEvent, + ): { point: [number, number, number]; snapped: [number, number, number] | null } => { + const last = draftRef.current.at(-1) + // First point of the run: free grid-snapped placement at Y=0 (floor). + // Endpoint snap can still join into an existing run. + if (!last) { + const raw: [number, number, number] = [event.localPosition[0], 0, event.localPosition[2]] + if (event.nativeEvent?.altKey !== true) { + const target = findNearbyPort(raw) + if (target) return { point: target, snapped: target } + } + const step = useEditor.getState().gridSnapStep + return { + point: [snap(raw[0], step), 0, snap(raw[2], step)], + snapped: null, + } + } + // Subsequent points: angle-locked to 45° from `last` (Shift releases). + // Y stays at `last[1]` — depth changes come from Shift+click risers. + const rawXZ: [number, number, number] = [ + event.localPosition[0], + last[1], + event.localPosition[2], + ] + const shift = event.nativeEvent?.shiftKey === true + const angled = shift ? rawXZ : projectToAngleLock(last, rawXZ) + // Port snap (Alt bypass) — checked against the RAW cursor, not the + // angle-locked projection, so a port slightly off the 45° ray can + // still capture the cursor. Joining beats the lock. + if (event.nativeEvent?.altKey !== true && !shift) { + const target = findNearbyPort(rawXZ) + if (target) return { point: target, snapped: target } + } + const step = useEditor.getState().gridSnapStep + return { + point: [snap(angled[0], step), angled[1], snap(angled[2], step)], + snapped: null, + } + } + + /** + * Compute the Alt-mode cursor position: XZ locked to the last point, + * Y driven by how far the mouse has moved vertically on screen since + * Alt was pressed. Returns null if there's no anchor (Alt not active). + */ + const resolveAltVerticalPoint = (clientY: number): [number, number, number] | null => { + const anchor = altAnchorRef.current + const last = draftRef.current.at(-1) + if (!anchor || !last) return null + // Screen +Y points down, so subtract to map "drag up = raise Y". + const dy = (anchor.clientY - clientY) / ALT_PIXELS_PER_METER + const y = Math.min(ALT_Y_MAX_M, Math.max(ALT_Y_MIN_M, anchor.baseY + dy)) + return [last[0], y, last[2]] + } + + const onMove = (event: GridEvent) => { + const clientY = (event.nativeEvent as { clientY?: number } | undefined)?.clientY + if (typeof clientY === 'number') lastClientYRef.current = clientY + // Alt vertical mode wins over the XZ logic. + if (altAnchorRef.current && typeof clientY === 'number') { + const point = resolveAltVerticalPoint(clientY) + if (point) { + setCursorPos(point) + setSnapTarget(null) + return + } + } + const { point, snapped } = resolveSnappedPoint(event) + setCursorPos(point) + setSnapTarget(snapped) + } + + const onClick = (event: GridEvent) => { + const start = draftRef.current.at(-1) + // Vertical mode with a start anchored: the click commits the riser + // segment right there. Never falls through to the XZ logic — a + // no-op Alt click (height unchanged) must not place anything. + if (altAnchorRef.current && start) { + const clientY = + (event.nativeEvent as { clientY?: number } | undefined)?.clientY ?? lastClientYRef.current + if (typeof clientY === 'number') { + const point = resolveAltVerticalPoint(clientY) + if (point && Math.abs(point[1] - start[1]) >= 1e-4) { + commitSegment(start, point) + } + } + return + } + const { point } = resolveSnappedPoint(event) + if (!start) { + // First click: anchor the segment start. + triggerSFX('sfx:grid-snap') + setDraftPoints([point]) + return + } + // Second click: commit the segment and re-arm. + commitSegment(start, point) + } + + const enterAltMode = () => { + const last = draftRef.current.at(-1) + if (!last || lastClientYRef.current === null) return + if (altAnchorRef.current) return + altAnchorRef.current = { clientY: lastClientYRef.current, baseY: last[1] } + setAltActive(true) + } + + const exitAltMode = () => { + if (!altAnchorRef.current) return + altAnchorRef.current = null + setAltActive(false) + } + + const onKeyDown = (e: KeyboardEvent) => { + const tag = (e.target as HTMLElement | null)?.tagName + if (tag === 'INPUT' || tag === 'TEXTAREA') return + if (e.key === 'Alt') { + e.preventDefault() + enterAltMode() + } + } + + const onKeyUp = (e: KeyboardEvent) => { + if (e.key === 'Alt') { + e.preventDefault() + exitAltMode() + } + } + + const onCancel = () => { + if (draftRef.current.length === 0) return + markToolCancelConsumed() + setDraftPoints([]) + setCursorPos(null) + setSnapTarget(null) + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', onClick) + emitter.on('tool:cancel', onCancel) + window.addEventListener('keydown', onKeyDown) + window.addEventListener('keyup', onKeyUp) + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', onClick) + emitter.off('tool:cancel', onCancel) + window.removeEventListener('keydown', onKeyDown) + window.removeEventListener('keyup', onKeyUp) + altAnchorRef.current = null + } + }, [activeLevelId]) + + if (!activeLevelId) return null + + const previewSegments: Array<{ a: [number, number, number]; b: [number, number, number] }> = [] + for (let i = 0; i < draftPoints.length - 1; i++) { + previewSegments.push({ a: draftPoints[i]!, b: draftPoints[i + 1]! }) + } + const last = draftPoints.at(-1) + if (last && cursorPos) { + previewSegments.push({ a: last, b: cursorPos }) + } + + // Wall-style dimension pill above the cursor: absolute world coords before + // the first point, signed per-axis deltas from the last placed point while + // a segment is in flight. The actively-driven axis is emphasised — Y in + // Alt-vertical mode, otherwise whichever horizontal axis dominates. + const pillParts = cursorPos + ? (['x', 'y', 'z'] as const).map((axis, i) => ({ + key: axis, + prefix: axis.toUpperCase(), + value: last ? cursorPos[i]! - last[i]! : cursorPos[i]!, + signed: !!last, + })) + : null + const pillPrimary = + last && cursorPos + ? altActive + ? 'y' + : Math.abs(cursorPos[0] - last[0]) >= Math.abs(cursorPos[2] - last[2]) + ? 'x' + : 'z' + : undefined + + return ( + + {/* Cursor pip */} + + + + + + {pillParts && ( + + + + )} + + {/* Endpoint-snap halo — brighter ring around the target endpoint + while the cursor is within snap range, so the user sees that the + next click will join an existing duct rather than freeform-place. */} + {snapTarget && ( + + + + + )} + {/* Committed point pips */} + {draftPoints.map((p, i) => ( + + + + + ))} + {/* Preview cylinders */} + {previewSegments.map((seg, i) => ( + + ))} + + ) +} + +function PreviewSegment({ a, b }: { a: [number, number, number]; b: [number, number, number] }) { + const start = new Vector3(...a) + const end = new Vector3(...b) + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-4) return null + dir.normalize() + const mid = new Vector3().addVectors(start, end).multiplyScalar(0.5) + // Default duct preview is 6" (~0.152m) diameter. + const radius = (6 * 0.0254) / 2 + return ( + { + if (!m) return + m.quaternion.setFromUnitVectors(new Vector3(0, 1, 0), dir) + }} + > + + + + ) +} + +export default DuctSegmentTool diff --git a/packages/nodes/src/shared/ports.ts b/packages/nodes/src/shared/ports.ts new file mode 100644 index 000000000..78d89dc91 --- /dev/null +++ b/packages/nodes/src/shared/ports.ts @@ -0,0 +1,47 @@ +import { type AnyNodeId, type NodePort, nodeRegistry, useScene } from '@pascal-app/core' + +/** A port plus the scene node that owns it. */ +export type ScenePort = NodePort & { nodeId: AnyNodeId } + +/** + * Gather every typed port in the scene by asking each node's registered + * `def.ports`. Positions are level-local meters (the kind applies its own + * transform inside `def.ports`). `excludeNodeId` skips the node currently + * being drawn/placed so a tool doesn't snap to its own preview. + */ +export function collectScenePorts(excludeNodeId?: AnyNodeId): ScenePort[] { + const { nodes } = useScene.getState() + const result: ScenePort[] = [] + for (const node of Object.values(nodes)) { + if (!node || node.id === excludeNodeId) continue + const ports = nodeRegistry.get(node.type)?.ports?.(node) + if (!ports) continue + for (const port of ports) result.push({ ...port, nodeId: node.id }) + } + return result +} + +/** + * Nearest port within `radius` of `point` on the XZ plane. Y is ignored — + * grid events ride the floor plane while ports usually hang at duct + * height, so a vertical-distance check would make elevated ports + * unreachable. The snap adopts the port's full 3D position. + */ +export function findNearestPortXZ( + point: readonly [number, number, number], + ports: ScenePort[], + radius: number, +): ScenePort | null { + let best: ScenePort | null = null + let bestDistSq = radius * radius + for (const port of ports) { + const dx = port.position[0] - point[0] + const dz = port.position[2] - point[2] + const distSq = dx * dx + dz * dz + if (distSq <= bestDistSq) { + bestDistSq = distSq + best = port + } + } + return best +} From 8e2f66b929b0f55893a31b73095bb534e94222fd Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 11:45:39 +0530 Subject: [PATCH 09/59] =?UTF-8?q?feat(nodes):=20duct-fitting=20kind=20?= =?UTF-8?q?=E2=80=94=20elbow=20/=20tee=20/=20reducer=20with=20typed=20port?= =?UTF-8?q?s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit First kind to expose def.ports. Click-place tool snaps the ghost onto any scene port (position AND orientation, pivoting on the inlet collar); R/T rotates ±45° around the shared useEditor.rotationAxis, Alt cycles the axis (also for a selected fitting via def.keyboardActions + a listener-only def.system). Floorplan renders the projected port-stub symbol. Co-Authored-By: Claude Fable 5 --- packages/nodes/src/duct-fitting/definition.ts | 93 +++++++ packages/nodes/src/duct-fitting/floorplan.ts | 69 ++++++ packages/nodes/src/duct-fitting/geometry.ts | 84 +++++++ packages/nodes/src/duct-fitting/index.ts | 4 + .../nodes/src/duct-fitting/parametrics.ts | 67 ++++++ packages/nodes/src/duct-fitting/ports.ts | 103 ++++++++ packages/nodes/src/duct-fitting/rotation.ts | 50 ++++ packages/nodes/src/duct-fitting/schema.ts | 1 + packages/nodes/src/duct-fitting/system.tsx | 42 ++++ packages/nodes/src/duct-fitting/tool.tsx | 227 ++++++++++++++++++ 10 files changed, 740 insertions(+) create mode 100644 packages/nodes/src/duct-fitting/definition.ts create mode 100644 packages/nodes/src/duct-fitting/floorplan.ts create mode 100644 packages/nodes/src/duct-fitting/geometry.ts create mode 100644 packages/nodes/src/duct-fitting/index.ts create mode 100644 packages/nodes/src/duct-fitting/parametrics.ts create mode 100644 packages/nodes/src/duct-fitting/ports.ts create mode 100644 packages/nodes/src/duct-fitting/rotation.ts create mode 100644 packages/nodes/src/duct-fitting/schema.ts create mode 100644 packages/nodes/src/duct-fitting/system.tsx create mode 100644 packages/nodes/src/duct-fitting/tool.tsx diff --git a/packages/nodes/src/duct-fitting/definition.ts b/packages/nodes/src/duct-fitting/definition.ts new file mode 100644 index 000000000..70337faab --- /dev/null +++ b/packages/nodes/src/duct-fitting/definition.ts @@ -0,0 +1,93 @@ +import type { NodeDefinition } from '@pascal-app/core' +import { buildDuctFittingFloorplan } from './floorplan' +import { buildDuctFittingGeometry } from './geometry' +import { ductFittingParametrics } from './parametrics' +import { getDuctFittingPorts } from './ports' +import { rotateFittingNode } from './rotation' +import { DuctFittingNode } from './schema' + +/** + * Phase 2 of the HVAC node system — duct fittings (elbow / tee / reducer) + * and the first kind to expose typed ports (`def.ports`). + * + * Composition: `def.geometry` only, same as duct-segment. Ports are the + * architectural payload: placement tools snap onto them, and a later + * slice walks them to build the supply/return system graph. + */ +export const ductFittingDefinition: NodeDefinition = { + kind: 'duct-fitting', + schemaVersion: 1, + schema: DuctFittingNode, + category: 'utility', + + defaults: () => ({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + position: [0, 0, 0], + rotation: [0, 0, 0], + fittingType: 'elbow', + angle: 90, + diameter: 6, + diameter2: 6, + ductMaterial: 'sheet-metal', + system: 'supply', + }), + + capabilities: { + selectable: { hitVolume: 'bbox' }, + movable: { axes: ['x', 'y', 'z'], gridSnap: true }, + duplicable: true, + deletable: true, + }, + + parametrics: ductFittingParametrics, + + geometry: buildDuctFittingGeometry, + geometryKey: (n) => + JSON.stringify([n.fittingType, n.angle, n.diameter, n.diameter2, n.ductMaterial, n.system]), + + ports: getDuctFittingPorts, + + floorplan: buildDuctFittingFloorplan, + + // R/T rotate a selected fitting ±45° around the shared active axis. + // The default editor rotate only knows Y; fittings need X/Z for + // risers, so this overrides it. Alt-cycling of the axis + the axis + // badge live in `./system.tsx`. + keyboardActions: { + r: { + appliesTo: (node) => node.type === 'duct-fitting', + run: (node) => rotateFittingNode(node, 1), + }, + t: { + appliesTo: (node) => node.type === 'duct-fitting', + run: (node) => rotateFittingNode(node, -1), + }, + }, + + system: { module: () => import('./system') }, + + tool: () => import('./tool'), + toolHints: [ + { key: 'Click', label: 'Place fitting' }, + { key: 'Hover a duct end', label: 'Snap onto the run' }, + { key: 'R / T', label: 'Rotate ±45°' }, + { key: 'Alt', label: 'Switch rotation axis (Y → X → Z)' }, + { key: 'Esc', label: 'Exit' }, + ], + + presentation: { + label: 'Duct Fitting', + description: 'Elbow, tee, or reducer junction connecting round duct runs.', + icon: { kind: 'iconify', name: 'lucide:git-branch' }, + paletteSection: 'structure', + paletteOrder: 91, + }, + + mcp: { + description: + 'A duct fitting (elbow, tee, or reducer) with typed connection ports. Position is level-local meters; rotation is an XYZ euler in radians.', + }, +} diff --git a/packages/nodes/src/duct-fitting/floorplan.ts b/packages/nodes/src/duct-fitting/floorplan.ts new file mode 100644 index 000000000..da7034569 --- /dev/null +++ b/packages/nodes/src/duct-fitting/floorplan.ts @@ -0,0 +1,69 @@ +import type { FloorplanGeometry, GeometryContext } from '@pascal-app/core' +import { INCHES_TO_METERS } from '../duct-segment/geometry' +import { getDuctFittingPorts } from './ports' +import type { DuctFittingNode } from './schema' + +const SUPPLY_COLOR = '#d4825a' +const RETURN_COLOR = '#5a8ad4' +const BODY_COLOR = '#9ca3af' + +/** + * Floor-plan symbol for a duct fitting: one stub line per port from the + * junction center out to the collar (drawn at each collar's real + * diameter), plus a junction circle. Ports are computed in level-local + * 3D and projected to plan, so a rotated or riser-turned fitting shows + * its true plan footprint; a vertical port collapses onto the junction + * circle, which is exactly how it should read from above. + */ +export function buildDuctFittingFloorplan( + node: DuctFittingNode, + ctx: GeometryContext, +): FloorplanGeometry | null { + const [cx, , cz] = node.position + const ports = getDuctFittingPorts(node) + const view = ctx.viewState + const palette = view?.palette + const showSelectedChrome = (view?.selected || view?.highlighted) ?? false + const accent = node.system === 'supply' ? SUPPLY_COLOR : RETURN_COLOR + const bodyStroke = showSelectedChrome && palette ? palette.selectedStroke : BODY_COLOR + + const children: FloorplanGeometry[] = [] + for (const port of ports) { + const px = port.position[0] + const pz = port.position[2] + // Vertical port — projects onto the junction itself; skip the stub. + if (Math.hypot(px - cx, pz - cz) < 1e-4) continue + children.push({ + kind: 'line', + x1: cx, + y1: cz, + x2: px, + y2: pz, + stroke: bodyStroke, + strokeWidth: port.diameter * INCHES_TO_METERS, + strokeLinecap: 'round', + opacity: showSelectedChrome ? 0.95 : 0.8, + }) + } + + children.push({ + kind: 'circle', + cx, + cy: cz, + r: (node.diameter * INCHES_TO_METERS) / 2 + 0.015, + fill: bodyStroke, + stroke: accent, + strokeWidth: 1.5, + vectorEffect: 'non-scaling-stroke', + opacity: 0.95, + }) + + if (showSelectedChrome) { + children.push({ + kind: 'move-handle', + point: [cx, cz], + }) + } + + return { kind: 'group', children } +} diff --git a/packages/nodes/src/duct-fitting/geometry.ts b/packages/nodes/src/duct-fitting/geometry.ts new file mode 100644 index 000000000..fa8a8d696 --- /dev/null +++ b/packages/nodes/src/duct-fitting/geometry.ts @@ -0,0 +1,84 @@ +import { CylinderGeometry, Group, Mesh, SphereGeometry, TorusGeometry, Vector3 } from 'three' +import { buildSection, createDuctMaterial, INCHES_TO_METERS } from '../duct-segment/geometry' +import { localFittingPorts } from './ports' +import type { DuctFittingNode } from './schema' + +const RADIAL_SEGMENTS = 24 +const UP = new Vector3(0, 1, 0) + +/** + * Pure geometry builder for a duct fitting, in the fitting's LOCAL frame — + * `` applies `node.position` / `node.rotation`. + * + * Strategy: one cylinder stub per port from the junction center outward + * (reusing the segment builder's `buildSection`), a sphere at the + * junction, and a slightly-oversized crimp collar ring at each port + * opening so fittings read as sheet-metal junctions rather than bare + * tube ends. + * + * The reducer is special-cased: instead of equal stubs + sphere it draws + * a short inlet stub, a tapered cone, and a short outlet stub inline. + */ +export function buildDuctFittingGeometry(node: DuctFittingNode): Group { + const group = new Group() + const material = createDuctMaterial(node) + const radiusMain = (node.diameter * INCHES_TO_METERS) / 2 + const ports = localFittingPorts(node) + + if (node.fittingType === 'reducer') { + const radiusOut = (node.diameter2 * INCHES_TO_METERS) / 2 + const inlet = ports[0]! + const outlet = ports[1]! + const taperHalf = Math.abs(inlet.position.x) / 3 + const stubA = buildSection( + inlet.position, + new Vector3(-taperHalf, 0, 0), + radiusMain, + material, + 'fitting-stub-inlet', + ) + if (stubA) group.add(stubA) + const cone = new Mesh( + new CylinderGeometry(radiusOut, radiusMain, taperHalf * 2, RADIAL_SEGMENTS, 1, false), + material, + ) + cone.name = 'fitting-taper' + cone.quaternion.setFromUnitVectors(UP, new Vector3(1, 0, 0)) + group.add(cone) + const stubB = buildSection( + new Vector3(taperHalf, 0, 0), + outlet.position, + radiusOut, + material, + 'fitting-stub-outlet', + ) + if (stubB) group.add(stubB) + } else { + for (const port of ports) { + const radius = (port.diameter * INCHES_TO_METERS) / 2 + const stub = buildSection( + new Vector3(0, 0, 0), + port.position, + radius, + material, + `fitting-stub-${port.id}`, + ) + if (stub) group.add(stub) + } + const junction = new Mesh(new SphereGeometry(radiusMain * 1.02, RADIAL_SEGMENTS, 12), material) + junction.name = 'fitting-junction' + group.add(junction) + } + + // Crimp collar at each opening — a thin torus just proud of the stub. + for (const port of ports) { + const radius = (port.diameter * INCHES_TO_METERS) / 2 + const collar = new Mesh(new TorusGeometry(radius, radius * 0.12, 8, RADIAL_SEGMENTS), material) + collar.name = `fitting-collar-${port.id}` + collar.position.copy(port.position) + collar.quaternion.setFromUnitVectors(new Vector3(0, 0, 1), port.direction) + group.add(collar) + } + + return group +} diff --git a/packages/nodes/src/duct-fitting/index.ts b/packages/nodes/src/duct-fitting/index.ts new file mode 100644 index 000000000..b1509f233 --- /dev/null +++ b/packages/nodes/src/duct-fitting/index.ts @@ -0,0 +1,4 @@ +export { ductFittingDefinition } from './definition' +export { buildDuctFittingGeometry } from './geometry' +export { getDuctFittingPorts } from './ports' +export { DuctFittingNode } from './schema' diff --git a/packages/nodes/src/duct-fitting/parametrics.ts b/packages/nodes/src/duct-fitting/parametrics.ts new file mode 100644 index 000000000..4ba77dc0b --- /dev/null +++ b/packages/nodes/src/duct-fitting/parametrics.ts @@ -0,0 +1,67 @@ +import type { ParametricDescriptor } from '@pascal-app/core' +import type { DuctFittingNode } from './schema' + +export const ductFittingParametrics: ParametricDescriptor = { + groups: [ + { + label: 'Fitting', + fields: [ + { + key: 'fittingType', + kind: 'enum', + options: ['elbow', 'tee', 'reducer'], + display: 'segmented', + }, + { + key: 'angle', + kind: 'number', + unit: '°', + min: 15, + max: 90, + step: 15, + visibleIf: (n) => n.fittingType === 'elbow', + }, + { + key: 'system', + kind: 'enum', + options: ['supply', 'return'], + display: 'segmented', + }, + ], + }, + { + label: 'Connections', + fields: [ + { + key: 'diameter', + kind: 'number', + unit: 'in', + min: 4, + max: 24, + step: 1, + }, + { + key: 'diameter2', + kind: 'number', + unit: 'in', + min: 4, + max: 24, + step: 1, + visibleIf: (n) => n.fittingType !== 'elbow', + }, + { + key: 'ductMaterial', + kind: 'enum', + options: ['sheet-metal', 'flex', 'duct-board'], + }, + ], + }, + { + label: 'Placement', + fields: [ + { key: 'position', kind: 'vec3' }, + { key: 'rotation', kind: 'vec3' }, + ], + }, + ], +} diff --git a/packages/nodes/src/duct-fitting/ports.ts b/packages/nodes/src/duct-fitting/ports.ts new file mode 100644 index 000000000..9b2522e05 --- /dev/null +++ b/packages/nodes/src/duct-fitting/ports.ts @@ -0,0 +1,103 @@ +import type { NodePort } from '@pascal-app/core' +import { Euler, Vector3 } from 'three' +import { INCHES_TO_METERS } from '../duct-segment/geometry' +import type { DuctFittingNode } from './schema' + +/** + * Collar stub length in meters — how far each port sticks out from the + * fitting's junction center. Scales with the duct so big trunks get + * proportionally longer collars, with a floor so 4" fittings stay + * grabbable. + */ +export function fittingLegLength(diameterInches: number): number { + const radius = (diameterInches * INCHES_TO_METERS) / 2 + return Math.max(0.14, radius * 2.5) +} + +type LocalPort = { id: string; position: Vector3; direction: Vector3; diameter: number } + +/** + * Ports in the fitting's LOCAL frame (origin at the junction center, + * before `position`/`rotation`). Shared by `def.ports` (which transforms + * them to level-local) and the geometry builder (which draws a stub per + * port). + * + * Conventions documented on the schema: elbow inlet -X / outlet turned + * `angle`° in XZ; tee run along X with branch +Z; reducer -X → +X. + */ +export function localFittingPorts(node: DuctFittingNode): LocalPort[] { + const main = fittingLegLength(node.diameter) + if (node.fittingType === 'elbow') { + const theta = (node.angle * Math.PI) / 180 + const outDir = new Vector3(Math.cos(theta), 0, Math.sin(theta)) + return [ + { + id: 'inlet', + position: new Vector3(-main, 0, 0), + direction: new Vector3(-1, 0, 0), + diameter: node.diameter, + }, + { + id: 'outlet', + position: outDir.clone().multiplyScalar(main), + direction: outDir, + diameter: node.diameter, + }, + ] + } + if (node.fittingType === 'tee') { + const branch = fittingLegLength(node.diameter2) + return [ + { + id: 'inlet', + position: new Vector3(-main, 0, 0), + direction: new Vector3(-1, 0, 0), + diameter: node.diameter, + }, + { + id: 'outlet', + position: new Vector3(main, 0, 0), + direction: new Vector3(1, 0, 0), + diameter: node.diameter, + }, + { + id: 'branch', + position: new Vector3(0, 0, branch), + direction: new Vector3(0, 0, 1), + diameter: node.diameter2, + }, + ] + } + // reducer + return [ + { + id: 'inlet', + position: new Vector3(-main, 0, 0), + direction: new Vector3(-1, 0, 0), + diameter: node.diameter, + }, + { + id: 'outlet', + position: new Vector3(main, 0, 0), + direction: new Vector3(1, 0, 0), + diameter: node.diameter2, + }, + ] +} + +/** `def.ports` — local ports transformed into level-local space. */ +export function getDuctFittingPorts(node: DuctFittingNode): NodePort[] { + const euler = new Euler(node.rotation[0], node.rotation[1], node.rotation[2]) + const offset = new Vector3(node.position[0], node.position[1], node.position[2]) + return localFittingPorts(node).map((port) => { + const position = port.position.clone().applyEuler(euler).add(offset) + const direction = port.direction.clone().applyEuler(euler).normalize() + return { + id: port.id, + position: [position.x, position.y, position.z] as const, + direction: [direction.x, direction.y, direction.z] as const, + diameter: port.diameter, + system: node.system, + } + }) +} diff --git a/packages/nodes/src/duct-fitting/rotation.ts b/packages/nodes/src/duct-fitting/rotation.ts new file mode 100644 index 000000000..471d8dd9f --- /dev/null +++ b/packages/nodes/src/duct-fitting/rotation.ts @@ -0,0 +1,50 @@ +import { type AnyNode, useScene } from '@pascal-app/core' +import { useEditor } from '@pascal-app/editor' +import { Euler, Quaternion, Vector3 } from 'three' +import type { DuctFittingNode } from './schema' + +/** R/T rotation step — 45°, matching the editor's default rotate. */ +export const ROTATE_STEP_RAD = Math.PI / 4 + +export type RotationAxis = 'x' | 'y' | 'z' + +export const AXIS_VECTORS: Record = { + x: new Vector3(1, 0, 0), + y: new Vector3(0, 1, 0), + z: new Vector3(0, 0, 1), +} + +// The active axis lives on `useEditor` (not a module store) so the +// floating action menu — which can't import this package — surfaces it +// in the pill above a selected fitting. Tool + keyboard actions share +// the same state, so Alt-cycling in either context drives both. +export const getRotationAxis = (): RotationAxis => useEditor.getState().rotationAxis +export const cycleRotationAxis = (): RotationAxis => useEditor.getState().cycleRotationAxis() + +/** + * Compose a world-frame rotation around `axis` onto an existing euler. + * World-frame (premultiply) so the axes the user cycles through always + * mean the screen-space X/Y/Z they expect, regardless of how the fitting + * is already turned. + */ +export function rotateEulerWorld( + rotation: readonly [number, number, number], + axis: RotationAxis, + steps: 1 | -1, +): [number, number, number] { + const current = new Quaternion().setFromEuler(new Euler(rotation[0], rotation[1], rotation[2])) + const turn = new Quaternion().setFromAxisAngle(AXIS_VECTORS[axis], steps * ROTATE_STEP_RAD) + const euler = new Euler().setFromQuaternion(turn.multiply(current)) + return [euler.x, euler.y, euler.z] +} + +/** + * R / T keyboard action for a placed fitting — rotate ±45° around the + * shared active axis (Alt cycles it; see `system.tsx`). + */ +export function rotateFittingNode(node: AnyNode, steps: 1 | -1): void { + const fitting = node as DuctFittingNode + useScene.getState().updateNode(fitting.id, { + rotation: rotateEulerWorld(fitting.rotation, getRotationAxis(), steps), + }) +} diff --git a/packages/nodes/src/duct-fitting/schema.ts b/packages/nodes/src/duct-fitting/schema.ts new file mode 100644 index 000000000..0c3e44b73 --- /dev/null +++ b/packages/nodes/src/duct-fitting/schema.ts @@ -0,0 +1 @@ +export { DuctFittingNode } from '@pascal-app/core' diff --git a/packages/nodes/src/duct-fitting/system.tsx b/packages/nodes/src/duct-fitting/system.tsx new file mode 100644 index 000000000..7748cc9bd --- /dev/null +++ b/packages/nodes/src/duct-fitting/system.tsx @@ -0,0 +1,42 @@ +'use client' + +import { type AnyNodeId, useScene } from '@pascal-app/core' +import { useViewer } from '@pascal-app/viewer' +import { useEffect } from 'react' +import { cycleRotationAxis } from './rotation' + +/** + * Selection-time rotation support for placed fittings. The R/T rotation + * itself lives in `def.keyboardActions` (the editor's keyboard hook + * dispatches it); this system contributes the piece that hook can't: + * **Alt cycles the active rotation axis** while a single fitting is + * selected. The axis itself lives on `useEditor.rotationAxis`, which the + * floating action menu reads to show the axis pill above the selected + * fitting — so this component renders nothing. + */ +const DuctFittingSystem = () => { + const selectedIds = useViewer((s) => s.selection.selectedIds) + const hasSelectedFitting = useScene((s) => { + if (selectedIds.length !== 1) return false + return s.nodes[selectedIds[0] as AnyNodeId]?.type === 'duct-fitting' + }) + + useEffect(() => { + if (!hasSelectedFitting) return + const onKeyDown = (e: KeyboardEvent) => { + if (e.key !== 'Alt' || e.repeat) return + const tag = (e.target as HTMLElement | null)?.tagName + if (tag === 'INPUT' || tag === 'TEXTAREA') return + e.preventDefault() + cycleRotationAxis() + } + // Bubble phase — when the placement tool is active its capture-phase + // handler stops propagation, so the two never double-cycle. + window.addEventListener('keydown', onKeyDown) + return () => window.removeEventListener('keydown', onKeyDown) + }, [hasSelectedFitting]) + + return null +} + +export default DuctFittingSystem diff --git a/packages/nodes/src/duct-fitting/tool.tsx b/packages/nodes/src/duct-fitting/tool.tsx new file mode 100644 index 000000000..81c51d12a --- /dev/null +++ b/packages/nodes/src/duct-fitting/tool.tsx @@ -0,0 +1,227 @@ +'use client' + +import { DuctFittingNode, emitter, type GridEvent, useScene } from '@pascal-app/core' +import { triggerSFX, useEditor } from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { useEffect, useMemo, useRef, useState } from 'react' +import { Euler, Quaternion, Vector3 } from 'three' +import { collectScenePorts, findNearestPortXZ, type ScenePort } from '../shared/ports' +import { ductFittingDefinition } from './definition' +import { buildDuctFittingGeometry } from './geometry' +import { localFittingPorts } from './ports' +import { AXIS_VECTORS, cycleRotationAxis, getRotationAxis, ROTATE_STEP_RAD } from './rotation' + +/** Snap radius (meters, XZ) for mating onto an existing port. */ +const PORT_SNAP_RADIUS_M = 0.5 +const PREVIEW_OPACITY = 0.55 + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +type Placement = { + position: [number, number, number] + rotation: [number, number, number] + snapPort: ScenePort | null +} + +/** + * Resolve where the fitting would land for a cursor at `raw`: + * - Near an existing port → mate: orientation aligns the inlet onto + * the port (plus the user's manual R/T rotation, pivoting around + * the inlet collar so it stays on the port while the body sweeps). + * - Otherwise → grid-snapped free placement on the floor, manual + * rotation only. + */ +function resolvePlacement( + raw: [number, number, number], + previewNode: DuctFittingNode, + gridStep: number, + manualQuat: Quaternion, +): Placement { + const port = findNearestPortXZ(raw, collectScenePorts(), PORT_SNAP_RADIUS_M) + if (port) { + const direction = new Vector3(...port.direction).normalize() + // Local +X must map onto the port's outward direction so the inlet + // (local -X) faces back into the run it's joining. Manual rotation + // composes in the world frame on top of the mate orientation. + const mate = new Quaternion().setFromUnitVectors(new Vector3(1, 0, 0), direction) + const final = manualQuat.clone().multiply(mate) + const inlet = localFittingPorts(previewNode)[0]! + const inletWorldOffset = inlet.position.clone().applyQuaternion(final) + const position = new Vector3(...port.position).sub(inletWorldOffset) + const euler = new Euler().setFromQuaternion(final) + return { + position: [position.x, position.y, position.z], + rotation: [euler.x, euler.y, euler.z], + snapPort: port, + } + } + const euler = new Euler().setFromQuaternion(manualQuat) + return { + position: [snap(raw[0], gridStep), 0, snap(raw[2], gridStep)], + rotation: [euler.x, euler.y, euler.z], + snapPort: null, + } +} + +/** + * Click-place tool for duct fittings (elbow / tee / reducer). + * + * A translucent ghost of the fitting follows the cursor. Within snap + * range of any scene port (duct run ends, other fittings' collars) the + * ghost jumps onto the port — position AND orientation — so one click + * mates the fitting onto the run. + * + * Rotation while placing: **R / T** turn the ghost ±45° around the + * active world axis; **Alt** cycles the axis (Y → X → Z). The HUD badge + * above the ghost shows the current axis. When snapped to a port the + * rotation pivots around the inlet collar so the joint stays mated. + * Handlers run in the capture phase so R doesn't also spin whatever + * node happens to be selected. + */ +const DuctFittingTool = () => { + const activeLevelId = useViewer((s) => s.selection.levelId) + const [placement, setPlacement] = useState(null) + const axis = useEditor((s) => s.rotationAxis) + // Accumulated manual rotation from R/T presses. Ref (not state) so the + // emitter callbacks always read the latest without re-subscribing; a + // placement recompute is triggered explicitly after each change. + const manualQuatRef = useRef(new Quaternion()) + // Last raw cursor position so a key press can recompute the placement + // without waiting for the next mouse move. + const lastRawRef = useRef<[number, number, number] | null>(null) + + // Ghost matches exactly what a click creates (the kind's defaults). + const previewNode = useMemo( + () => DuctFittingNode.parse({ ...ductFittingDefinition.defaults(), name: 'Duct fitting' }), + [], + ) + const ghost = useMemo(() => { + const group = buildDuctFittingGeometry(previewNode) + group.traverse((child) => { + const mesh = child as { material?: { transparent: boolean; opacity: number } } + if (mesh.material) { + mesh.material.transparent = true + mesh.material.opacity = PREVIEW_OPACITY + } + }) + return group + }, [previewNode]) + + useEffect(() => { + if (!activeLevelId) return + + const recompute = () => { + const raw = lastRawRef.current + if (!raw) return + setPlacement( + resolvePlacement( + raw, + previewNode, + useEditor.getState().gridSnapStep, + manualQuatRef.current, + ), + ) + } + + const onMove = (event: GridEvent) => { + lastRawRef.current = [event.localPosition[0], 0, event.localPosition[2]] + recompute() + } + + const onClick = (event: GridEvent) => { + lastRawRef.current = [event.localPosition[0], 0, event.localPosition[2]] + const { position, rotation } = resolvePlacement( + lastRawRef.current, + previewNode, + useEditor.getState().gridSnapStep, + manualQuatRef.current, + ) + const fitting = DuctFittingNode.parse({ + ...ductFittingDefinition.defaults(), + name: 'Duct fitting', + position, + rotation, + }) + useScene.getState().createNode(fitting, activeLevelId) + useViewer.getState().setSelection({ selectedIds: [fitting.id] }) + triggerSFX('sfx:item-place') + } + + const onKeyDown = (e: KeyboardEvent) => { + const tag = (e.target as HTMLElement | null)?.tagName + if (tag === 'INPUT' || tag === 'TEXTAREA') return + const key = e.key + if (key === 'r' || key === 'R' || key === 't' || key === 'T') { + // Capture-phase + stopPropagation so the editor's selection-rotate + // R handler doesn't also fire while the placement tool owns R. + e.preventDefault() + e.stopPropagation() + const steps = key === 't' || key === 'T' || e.shiftKey ? -1 : 1 + const turn = new Quaternion().setFromAxisAngle( + AXIS_VECTORS[getRotationAxis()], + steps * ROTATE_STEP_RAD, + ) + manualQuatRef.current = turn.multiply(manualQuatRef.current) + triggerSFX('sfx:item-rotate') + recompute() + } else if (key === 'Alt' && !e.repeat) { + e.preventDefault() + e.stopPropagation() + cycleRotationAxis() + } + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', onClick) + window.addEventListener('keydown', onKeyDown, true) + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', onClick) + window.removeEventListener('keydown', onKeyDown, true) + } + }, [activeLevelId, previewNode]) + + if (!activeLevelId || !placement) return null + + return ( + + + + + {/* Rotation HUD — active axis + key hints, pinned above the ghost. */} + + {/* Same pill shell as DimensionPill so the placement HUD matches + the drawing / dragging readouts. */} +
+ Axis {axis.toUpperCase()} + + · + + R/T rotate + + · + + ⌥ axis +
+ + {/* Port-snap halo so the user sees the click will mate, not free-place. */} + {placement.snapPort && ( + + + + + )} +
+ ) +} + +export default DuctFittingTool From 4b67eff06e5ffc045cc7d833660ee9369b0d0e51 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 11:45:39 +0530 Subject: [PATCH 10/59] =?UTF-8?q?feat(nodes):=20duct-terminal=20kind=20?= =?UTF-8?q?=E2=80=94=20registers,=20diffusers,=20return=20grilles?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mount-aware (floor / ceiling / wall) face orientation with a single collar port so duct runs end onto a terminal. Frame + louver geometry, yaw click-place tool with R/T rotation, system-tinted floorplan symbol. Co-Authored-By: Claude Fable 5 --- .../nodes/src/duct-terminal/definition.ts | 75 +++++++++++ packages/nodes/src/duct-terminal/floorplan.ts | 73 +++++++++++ packages/nodes/src/duct-terminal/geometry.ts | 70 ++++++++++ packages/nodes/src/duct-terminal/index.ts | 4 + .../nodes/src/duct-terminal/parametrics.ts | 35 +++++ packages/nodes/src/duct-terminal/ports.ts | 47 +++++++ packages/nodes/src/duct-terminal/schema.ts | 1 + packages/nodes/src/duct-terminal/tool.tsx | 120 ++++++++++++++++++ 8 files changed, 425 insertions(+) create mode 100644 packages/nodes/src/duct-terminal/definition.ts create mode 100644 packages/nodes/src/duct-terminal/floorplan.ts create mode 100644 packages/nodes/src/duct-terminal/geometry.ts create mode 100644 packages/nodes/src/duct-terminal/index.ts create mode 100644 packages/nodes/src/duct-terminal/parametrics.ts create mode 100644 packages/nodes/src/duct-terminal/ports.ts create mode 100644 packages/nodes/src/duct-terminal/schema.ts create mode 100644 packages/nodes/src/duct-terminal/tool.tsx diff --git a/packages/nodes/src/duct-terminal/definition.ts b/packages/nodes/src/duct-terminal/definition.ts new file mode 100644 index 000000000..a71dc5b76 --- /dev/null +++ b/packages/nodes/src/duct-terminal/definition.ts @@ -0,0 +1,75 @@ +import type { NodeDefinition } from '@pascal-app/core' +import { buildDuctTerminalFloorplan } from './floorplan' +import { buildDuctTerminalGeometry } from './geometry' +import { ductTerminalParametrics } from './parametrics' +import { getDuctTerminalPorts } from './ports' +import { DuctTerminalNode } from './schema' + +/** + * Phase 3 of the HVAC node system — duct terminals: supply registers, + * ceiling diffusers, return grilles. The end of the air loop. One typed + * port at the collar (mount-aware direction) so duct runs end onto a + * terminal like any other port. + * + * Composition: `def.geometry` only. Yaw-only rotation — the editor's + * default R-rotate works on a selected terminal. + */ +export const ductTerminalDefinition: NodeDefinition = { + kind: 'duct-terminal', + schemaVersion: 1, + schema: DuctTerminalNode, + category: 'utility', + + defaults: () => ({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + position: [0, 0, 0], + rotation: 0, + terminalType: 'supply-register', + mount: 'floor', + width: 0.3, + depth: 0.15, + collarDiameter: 6, + }), + + capabilities: { + selectable: { hitVolume: 'bbox' }, + movable: { axes: ['x', 'z'], gridSnap: true }, + rotatable: { axes: ['y'], snapAngles: [Math.PI / 4] }, + duplicable: true, + deletable: true, + }, + + parametrics: ductTerminalParametrics, + + geometry: buildDuctTerminalGeometry, + geometryKey: (n) => JSON.stringify([n.terminalType, n.mount, n.width, n.depth, n.collarDiameter]), + + ports: getDuctTerminalPorts, + + floorplan: buildDuctTerminalFloorplan, + + tool: () => import('./tool'), + toolHints: [ + { key: 'Click', label: 'Place register' }, + { key: 'R / T', label: 'Rotate ±45°' }, + { key: 'Shift', label: 'Smooth (no grid snap)' }, + { key: 'Esc', label: 'Exit' }, + ], + + presentation: { + label: 'Register', + description: + 'Duct terminal — supply register, ceiling diffuser, or return grille. Duct runs end at its collar.', + icon: { kind: 'iconify', name: 'lucide:align-justify' }, + paletteSection: 'structure', + paletteOrder: 93, + }, + + mcp: { + description: + 'A duct terminal (supply register, ceiling diffuser, or return grille) with a single collar port. Mount (floor/ceiling/wall) drives the face orientation and collar direction.', + }, +} diff --git a/packages/nodes/src/duct-terminal/floorplan.ts b/packages/nodes/src/duct-terminal/floorplan.ts new file mode 100644 index 000000000..abadb9151 --- /dev/null +++ b/packages/nodes/src/duct-terminal/floorplan.ts @@ -0,0 +1,73 @@ +import type { FloorplanGeometry, FloorplanPoint, GeometryContext } from '@pascal-app/core' +import { terminalSystem } from './ports' +import type { DuctTerminalNode } from './schema' + +const SUPPLY_COLOR = '#d4825a' +const RETURN_COLOR = '#5a8ad4' +const FRAME_STROKE = '#6b7280' +const FACE_FILL = '#e5e7eb' + +/** + * Floor-plan symbol for a duct terminal: the face rectangle (rotated by + * yaw) with the conventional register cross-slats hinted as a single + * mid-line, tinted by system. Wall mounts render the same footprint — + * the face projects to a thin strip, which is close enough for plan + * reading at this stage. + */ +export function buildDuctTerminalFloorplan( + node: DuctTerminalNode, + ctx: GeometryContext, +): FloorplanGeometry | null { + const [cx, , cz] = node.position + const cos = Math.cos(node.rotation) + const sin = Math.sin(node.rotation) + const hw = node.width / 2 + const hd = (node.mount === 'wall' ? 0.06 : node.depth) / 2 + const corner = (lx: number, lz: number): FloorplanPoint => [ + cx + lx * cos + lz * sin, + cz - lx * sin + lz * cos, + ] + const points: FloorplanPoint[] = [ + corner(-hw, -hd), + corner(hw, -hd), + corner(hw, hd), + corner(-hw, hd), + ] + + const view = ctx.viewState + const palette = view?.palette + const showSelectedChrome = (view?.selected || view?.highlighted) ?? false + const accent = terminalSystem(node) === 'supply' ? SUPPLY_COLOR : RETURN_COLOR + const stroke = showSelectedChrome && palette ? palette.selectedStroke : FRAME_STROKE + + const mid1 = corner(-hw * 0.8, 0) + const mid2 = corner(hw * 0.8, 0) + + const children: FloorplanGeometry[] = [ + { + kind: 'polygon', + points, + fill: FACE_FILL, + stroke, + strokeWidth: showSelectedChrome ? 0.025 : 0.015, + opacity: 0.92, + }, + { + kind: 'line', + x1: mid1[0], + y1: mid1[1], + x2: mid2[0], + y2: mid2[1], + stroke: accent, + strokeWidth: 1.5, + vectorEffect: 'non-scaling-stroke', + opacity: 0.9, + }, + ] + + if (showSelectedChrome) { + children.push({ kind: 'move-handle', point: [cx, cz] }) + } + + return { kind: 'group', children } +} diff --git a/packages/nodes/src/duct-terminal/geometry.ts b/packages/nodes/src/duct-terminal/geometry.ts new file mode 100644 index 000000000..889066ca6 --- /dev/null +++ b/packages/nodes/src/duct-terminal/geometry.ts @@ -0,0 +1,70 @@ +import { BoxGeometry, CylinderGeometry, Group, Mesh, MeshStandardMaterial, Vector3 } from 'three' +import { INCHES_TO_METERS } from '../duct-segment/geometry' +import { COLLAR_LENGTH, mountQuaternion, terminalSystem } from './ports' +import type { DuctTerminalNode } from './schema' + +const RADIAL_SEGMENTS = 20 + +const FRAME_COLOR = '#e3e5e8' +const SLAT_SUPPLY_COLOR = '#cdd1d6' +const SLAT_RETURN_COLOR = '#aeb4bb' +const COLLAR_COLOR = '#c2c2c2' + +/** + * Pure geometry builder for a duct terminal, in the node's LOCAL frame — + * `` applies `position` + yaw, and the builder + * applies the mount orientation itself. + * + * Canonical (floor) frame before the mount rotation: face plate lying + * in XZ at y=0 with its normal +Y, louver slats just above it, collar + * cylinder going -Y toward the duct side. Ceiling mounts flip it; wall + * mounts stand it up facing +Z. + */ +export function buildDuctTerminalGeometry(node: DuctTerminalNode): Group { + const group = new Group() + const oriented = new Group() + oriented.quaternion.copy(mountQuaternion(node.mount)) + group.add(oriented) + + const frameMaterial = new MeshStandardMaterial({ + color: FRAME_COLOR, + metalness: 0.4, + roughness: 0.5, + }) + const slatMaterial = new MeshStandardMaterial({ + color: terminalSystem(node) === 'return' ? SLAT_RETURN_COLOR : SLAT_SUPPLY_COLOR, + metalness: 0.45, + roughness: 0.55, + }) + + const frameThickness = 0.018 + const frame = new Mesh(new BoxGeometry(node.width, frameThickness, node.depth), frameMaterial) + frame.name = 'terminal-frame' + frame.position.set(0, frameThickness / 2, 0) + oriented.add(frame) + + // Louver slats across the face. Return grilles read denser; diffusers + // get concentric-ish wide slats via the same simple pattern. + const slatCount = node.terminalType === 'return-grille' ? 7 : 4 + const innerDepth = node.depth * 0.82 + const slatDepth = (innerDepth / slatCount) * 0.55 + for (let i = 0; i < slatCount; i++) { + const slat = new Mesh(new BoxGeometry(node.width * 0.86, 0.006, slatDepth), slatMaterial) + slat.name = `terminal-slat-${i}` + const z = -innerDepth / 2 + (innerDepth / slatCount) * (i + 0.5) + slat.position.set(0, frameThickness + 0.002, z) + slat.rotation.x = node.terminalType === 'diffuser' ? 0 : -0.5 + oriented.add(slat) + } + + const radius = (node.collarDiameter * INCHES_TO_METERS) / 2 + const collar = new Mesh( + new CylinderGeometry(radius, radius, COLLAR_LENGTH, RADIAL_SEGMENTS, 1, false), + new MeshStandardMaterial({ color: COLLAR_COLOR, metalness: 0.6, roughness: 0.4 }), + ) + collar.name = 'terminal-collar' + collar.position.copy(new Vector3(0, -COLLAR_LENGTH / 2, 0)) + oriented.add(collar) + + return group +} diff --git a/packages/nodes/src/duct-terminal/index.ts b/packages/nodes/src/duct-terminal/index.ts new file mode 100644 index 000000000..ede0e1c74 --- /dev/null +++ b/packages/nodes/src/duct-terminal/index.ts @@ -0,0 +1,4 @@ +export { ductTerminalDefinition } from './definition' +export { buildDuctTerminalGeometry } from './geometry' +export { getDuctTerminalPorts } from './ports' +export { DuctTerminalNode } from './schema' diff --git a/packages/nodes/src/duct-terminal/parametrics.ts b/packages/nodes/src/duct-terminal/parametrics.ts new file mode 100644 index 000000000..10d4e0db5 --- /dev/null +++ b/packages/nodes/src/duct-terminal/parametrics.ts @@ -0,0 +1,35 @@ +import type { ParametricDescriptor } from '@pascal-app/core' +import type { DuctTerminalNode } from './schema' + +export const ductTerminalParametrics: ParametricDescriptor = { + groups: [ + { + label: 'Terminal', + fields: [ + { + key: 'terminalType', + kind: 'enum', + options: ['supply-register', 'diffuser', 'return-grille'], + }, + { + key: 'mount', + kind: 'enum', + options: ['floor', 'ceiling', 'wall'], + display: 'segmented', + }, + ], + }, + { + label: 'Face', + fields: [ + { key: 'width', kind: 'number', unit: 'm', min: 0.1, max: 1.5, step: 0.05 }, + { key: 'depth', kind: 'number', unit: 'm', min: 0.05, max: 1.5, step: 0.05 }, + { key: 'collarDiameter', kind: 'number', unit: 'in', min: 4, max: 20, step: 1 }, + ], + }, + { + label: 'Placement', + fields: [{ key: 'position', kind: 'vec3' }], + }, + ], +} diff --git a/packages/nodes/src/duct-terminal/ports.ts b/packages/nodes/src/duct-terminal/ports.ts new file mode 100644 index 000000000..3a997eea7 --- /dev/null +++ b/packages/nodes/src/duct-terminal/ports.ts @@ -0,0 +1,47 @@ +import type { NodePort } from '@pascal-app/core' +import { Euler, Quaternion, Vector3 } from 'three' +import type { DuctTerminalNode } from './schema' + +/** Collar stub length in meters behind the face. */ +export const COLLAR_LENGTH = 0.12 + +/** + * Mount orientation: rotation applied to the canonical floor frame + * (face normal +Y, collar pointing -Y). Ceiling flips it; wall stands + * it up so the face looks along +Z and the collar points -Z (into the + * wall). Yaw is applied on top by the renderer / port transform. + */ +export function mountQuaternion(mount: DuctTerminalNode['mount']): Quaternion { + if (mount === 'ceiling') return new Quaternion().setFromEuler(new Euler(Math.PI, 0, 0)) + if (mount === 'wall') return new Quaternion().setFromEuler(new Euler(Math.PI / 2, 0, 0)) + return new Quaternion() +} + +export function terminalSystem(node: DuctTerminalNode): 'supply' | 'return' { + return node.terminalType === 'return-grille' ? 'return' : 'supply' +} + +/** + * `def.ports` — the single collar port in level-local space. Canonical + * frame: collar tip at (0, -COLLAR_LENGTH, 0) pointing -Y (away from the + * face); mount + yaw + position transform it. Direction points OUT of + * the terminal — i.e. toward the duct that should connect. + */ +export function getDuctTerminalPorts(node: DuctTerminalNode): NodePort[] { + const transform = new Quaternion() + .setFromEuler(new Euler(0, node.rotation, 0)) + .multiply(mountQuaternion(node.mount)) + const position = new Vector3(0, -COLLAR_LENGTH, 0) + .applyQuaternion(transform) + .add(new Vector3(node.position[0], node.position[1], node.position[2])) + const direction = new Vector3(0, -1, 0).applyQuaternion(transform).normalize() + return [ + { + id: 'collar', + position: [position.x, position.y, position.z] as const, + direction: [direction.x, direction.y, direction.z] as const, + diameter: node.collarDiameter, + system: terminalSystem(node), + }, + ] +} diff --git a/packages/nodes/src/duct-terminal/schema.ts b/packages/nodes/src/duct-terminal/schema.ts new file mode 100644 index 000000000..f72c87eec --- /dev/null +++ b/packages/nodes/src/duct-terminal/schema.ts @@ -0,0 +1 @@ +export { DuctTerminalNode } from '@pascal-app/core' diff --git a/packages/nodes/src/duct-terminal/tool.tsx b/packages/nodes/src/duct-terminal/tool.tsx new file mode 100644 index 000000000..ba7ad34af --- /dev/null +++ b/packages/nodes/src/duct-terminal/tool.tsx @@ -0,0 +1,120 @@ +'use client' + +import { DuctTerminalNode, emitter, type GridEvent, useScene } from '@pascal-app/core' +import { triggerSFX, useEditor } from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { useEffect, useMemo, useRef, useState } from 'react' +import { ductTerminalDefinition } from './definition' +import { buildDuctTerminalGeometry } from './geometry' + +const PREVIEW_OPACITY = 0.55 +/** R/T yaw step — 45°. */ +const ROTATE_STEP_RAD = Math.PI / 4 + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +/** + * Click-place tool for duct terminals (registers / diffusers / grilles). + * Ghost follows the cursor on the floor with grid snap (Shift = smooth); + * **R / T** rotate ±45°. Terminal type, mount surface, and face size are + * edited in the inspector after placement — switching mount to ceiling + * or wall reorients the face and collar, then adjust Y in Placement. + */ +const DuctTerminalTool = () => { + const activeLevelId = useViewer((s) => s.selection.levelId) + const [cursor, setCursor] = useState<[number, number, number] | null>(null) + const [yaw, setYaw] = useState(0) + const yawRef = useRef(0) + + const previewNode = useMemo( + () => DuctTerminalNode.parse({ ...ductTerminalDefinition.defaults(), name: 'Register' }), + [], + ) + const ghost = useMemo(() => { + const group = buildDuctTerminalGeometry(previewNode) + group.traverse((child) => { + const mesh = child as { material?: { transparent: boolean; opacity: number } } + if (mesh.material) { + mesh.material.transparent = true + mesh.material.opacity = PREVIEW_OPACITY + } + }) + return group + }, [previewNode]) + + useEffect(() => { + if (!activeLevelId) return + + const resolve = (event: GridEvent): [number, number, number] => { + const step = event.nativeEvent?.shiftKey === true ? 0 : useEditor.getState().gridSnapStep + return [snap(event.localPosition[0], step), 0, snap(event.localPosition[2], step)] + } + + const onMove = (event: GridEvent) => setCursor(resolve(event)) + + const onClick = (event: GridEvent) => { + const position = resolve(event) + const terminal = DuctTerminalNode.parse({ + ...ductTerminalDefinition.defaults(), + name: 'Register', + position, + rotation: yawRef.current, + }) + useScene.getState().createNode(terminal, activeLevelId) + useViewer.getState().setSelection({ selectedIds: [terminal.id] }) + triggerSFX('sfx:item-place') + } + + const onKeyDown = (e: KeyboardEvent) => { + const tag = (e.target as HTMLElement | null)?.tagName + if (tag === 'INPUT' || tag === 'TEXTAREA') return + const key = e.key + if (key !== 'r' && key !== 'R' && key !== 't' && key !== 'T') return + e.preventDefault() + e.stopPropagation() + const steps = key === 't' || key === 'T' || e.shiftKey ? -1 : 1 + yawRef.current += steps * ROTATE_STEP_RAD + setYaw(yawRef.current) + triggerSFX('sfx:item-rotate') + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', onClick) + window.addEventListener('keydown', onKeyDown, true) + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', onClick) + window.removeEventListener('keydown', onKeyDown, true) + } + }, [activeLevelId]) + + if (!activeLevelId || !cursor) return null + + return ( + + + + + +
+ R/T rotate + + · + + ⇧ smooth +
+ +
+ ) +} + +export default DuctTerminalTool From 59905c8edd783281d6892d7152d29c35032c6689 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 11:45:39 +0530 Subject: [PATCH 11/59] =?UTF-8?q?feat(nodes):=20hvac-equipment=20kind=20?= =?UTF-8?q?=E2=80=94=20furnace,=20air=20handler,=20condenser?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Floor-placed cabinet with supply/return collar ports (condenser has none), giving duct runs a real origin. Cabinet + collar geometry, condenser fan detail, yaw click-place tool with R/T rotation, floorplan footprint with equipment diagonal and collar dots. Co-Authored-By: Claude Fable 5 --- .../nodes/src/hvac-equipment/definition.ts | 93 +++++++++++++ .../nodes/src/hvac-equipment/floorplan.ts | 83 ++++++++++++ packages/nodes/src/hvac-equipment/geometry.ts | 106 +++++++++++++++ packages/nodes/src/hvac-equipment/index.ts | 4 + .../nodes/src/hvac-equipment/parametrics.ts | 49 +++++++ packages/nodes/src/hvac-equipment/ports.ts | 58 +++++++++ packages/nodes/src/hvac-equipment/schema.ts | 1 + packages/nodes/src/hvac-equipment/tool.tsx | 123 ++++++++++++++++++ 8 files changed, 517 insertions(+) create mode 100644 packages/nodes/src/hvac-equipment/definition.ts create mode 100644 packages/nodes/src/hvac-equipment/floorplan.ts create mode 100644 packages/nodes/src/hvac-equipment/geometry.ts create mode 100644 packages/nodes/src/hvac-equipment/index.ts create mode 100644 packages/nodes/src/hvac-equipment/parametrics.ts create mode 100644 packages/nodes/src/hvac-equipment/ports.ts create mode 100644 packages/nodes/src/hvac-equipment/schema.ts create mode 100644 packages/nodes/src/hvac-equipment/tool.tsx diff --git a/packages/nodes/src/hvac-equipment/definition.ts b/packages/nodes/src/hvac-equipment/definition.ts new file mode 100644 index 000000000..37dc53b11 --- /dev/null +++ b/packages/nodes/src/hvac-equipment/definition.ts @@ -0,0 +1,93 @@ +import type { NodeDefinition } from '@pascal-app/core' +import { buildHvacEquipmentFloorplan } from './floorplan' +import { buildHvacEquipmentGeometry } from './geometry' +import { hvacEquipmentParametrics } from './parametrics' +import { getHvacEquipmentPorts } from './ports' +import { HvacEquipmentNode } from './schema' + +/** + * Phase 3 of the HVAC node system — equipment cabinets (furnace / + * air handler / condenser). Furnaces and air handlers expose supply + + * return ports, giving duct runs a real origin: the duct and fitting + * tools snap onto these collars like any other port. + * + * Composition: `def.geometry` only. Yaw-only rotation, so the editor's + * default R-rotate works on a selected unit without custom actions. + */ +export const hvacEquipmentDefinition: NodeDefinition = { + kind: 'hvac-equipment', + schemaVersion: 1, + schema: HvacEquipmentNode, + category: 'utility', + + defaults: () => ({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + position: [0, 0, 0], + rotation: 0, + equipmentType: 'furnace', + width: 0.56, + depth: 0.71, + height: 1.1, + supplyDiameter: 12, + returnDiameter: 14, + }), + + capabilities: { + selectable: { hitVolume: 'bbox' }, + movable: { axes: ['x', 'z'], gridSnap: true }, + rotatable: { axes: ['y'], snapAngles: [Math.PI / 4] }, + duplicable: true, + deletable: true, + floorPlaced: { + footprint: (node) => { + const n = node as HvacEquipmentNode + return { + dimensions: [n.width, n.height, n.depth], + rotation: [0, n.rotation, 0], + } + }, + }, + }, + + parametrics: hvacEquipmentParametrics, + + geometry: buildHvacEquipmentGeometry, + geometryKey: (n) => + JSON.stringify([ + n.equipmentType, + n.width, + n.depth, + n.height, + n.supplyDiameter, + n.returnDiameter, + ]), + + ports: getHvacEquipmentPorts, + + floorplan: buildHvacEquipmentFloorplan, + + tool: () => import('./tool'), + toolHints: [ + { key: 'Click', label: 'Place unit' }, + { key: 'R / T', label: 'Rotate ±45°' }, + { key: 'Shift', label: 'Smooth (no grid snap)' }, + { key: 'Esc', label: 'Exit' }, + ], + + presentation: { + label: 'HVAC Unit', + description: + 'Furnace, air handler, or condenser — duct runs connect to its supply/return collars.', + icon: { kind: 'iconify', name: 'lucide:heater' }, + paletteSection: 'structure', + paletteOrder: 92, + }, + + mcp: { + description: + 'HVAC equipment cabinet (furnace, air handler, or condenser) with supply/return duct ports. Position is level-local meters; rotation is yaw radians.', + }, +} diff --git a/packages/nodes/src/hvac-equipment/floorplan.ts b/packages/nodes/src/hvac-equipment/floorplan.ts new file mode 100644 index 000000000..e15b85045 --- /dev/null +++ b/packages/nodes/src/hvac-equipment/floorplan.ts @@ -0,0 +1,83 @@ +import type { FloorplanGeometry, FloorplanPoint, GeometryContext } from '@pascal-app/core' +import { INCHES_TO_METERS } from '../duct-segment/geometry' +import { getHvacEquipmentPorts } from './ports' +import type { HvacEquipmentNode } from './schema' + +const BODY_FILL = '#c7cbd1' +const BODY_STROKE = '#6b7280' +const SUPPLY_COLOR = '#d4825a' +const RETURN_COLOR = '#5a8ad4' + +/** + * Floor-plan footprint for HVAC equipment: the cabinet rectangle + * (rotated by yaw) with a diagonal so it reads as an equipment symbol, + * plus a supply/return collar dot per duct port. Selected → themed + * stroke + move handle. + */ +export function buildHvacEquipmentFloorplan( + node: HvacEquipmentNode, + ctx: GeometryContext, +): FloorplanGeometry | null { + const [cx, , cz] = node.position + const cos = Math.cos(node.rotation) + const sin = Math.sin(node.rotation) + const hw = node.width / 2 + const hd = node.depth / 2 + // Local corner → plan, applying yaw. Plan x = world x, plan y = world z; + // a +yaw about world Y maps local (x, z) to (x cos + z sin, -x sin + z cos). + const corner = (lx: number, lz: number): FloorplanPoint => [ + cx + lx * cos + lz * sin, + cz - lx * sin + lz * cos, + ] + const points: FloorplanPoint[] = [ + corner(-hw, -hd), + corner(hw, -hd), + corner(hw, hd), + corner(-hw, hd), + ] + + const view = ctx.viewState + const palette = view?.palette + const showSelectedChrome = (view?.selected || view?.highlighted) ?? false + const stroke = showSelectedChrome && palette ? palette.selectedStroke : BODY_STROKE + + const children: FloorplanGeometry[] = [ + { + kind: 'polygon', + points, + fill: BODY_FILL, + stroke, + strokeWidth: showSelectedChrome ? 0.03 : 0.02, + opacity: 0.92, + }, + // Diagonal — the conventional "mechanical equipment" plan mark. + { + kind: 'line', + x1: points[0]![0], + y1: points[0]![1], + x2: points[2]![0], + y2: points[2]![1], + stroke, + strokeWidth: 1, + vectorEffect: 'non-scaling-stroke', + opacity: 0.7, + }, + ] + + for (const port of getHvacEquipmentPorts(node)) { + children.push({ + kind: 'circle', + cx: port.position[0], + cy: port.position[2], + r: (port.diameter * INCHES_TO_METERS) / 2, + fill: port.system === 'supply' ? SUPPLY_COLOR : RETURN_COLOR, + opacity: 0.85, + }) + } + + if (showSelectedChrome) { + children.push({ kind: 'move-handle', point: [cx, cz] }) + } + + return { kind: 'group', children } +} diff --git a/packages/nodes/src/hvac-equipment/geometry.ts b/packages/nodes/src/hvac-equipment/geometry.ts new file mode 100644 index 000000000..3cf3b1d8c --- /dev/null +++ b/packages/nodes/src/hvac-equipment/geometry.ts @@ -0,0 +1,106 @@ +import { + BoxGeometry, + CylinderGeometry, + Group, + Mesh, + MeshStandardMaterial, + TorusGeometry, + Vector3, +} from 'three' +import { INCHES_TO_METERS } from '../duct-segment/geometry' +import { localEquipmentPorts } from './ports' +import type { HvacEquipmentNode } from './schema' + +const RADIAL_SEGMENTS = 24 + +const CABINET_COLOR = '#b8bcc2' +const PANEL_COLOR = '#8d939b' +const CONDENSER_COLOR = '#9aa39c' +const FAN_COLOR = '#3f4549' + +/** + * Pure geometry builder for an HVAC equipment cabinet, in the node's + * LOCAL frame (origin at base center) — `` + * applies `position` + yaw. + * + * Furnace / air handler: sheet-metal cabinet, inset front access panel, + * supply collar stub on top and return collar on the -X side (matching + * `localEquipmentPorts`). Condenser: squat cabinet with a fan ring and + * hub on top. + */ +export function buildHvacEquipmentGeometry(node: HvacEquipmentNode): Group { + const group = new Group() + const isCondenser = node.equipmentType === 'condenser' + + const cabinetMaterial = new MeshStandardMaterial({ + color: isCondenser ? CONDENSER_COLOR : CABINET_COLOR, + metalness: 0.55, + roughness: 0.45, + }) + + const body = new Mesh(new BoxGeometry(node.width, node.height, node.depth), cabinetMaterial) + body.name = 'equipment-body' + body.position.set(0, node.height / 2, 0) + group.add(body) + + if (isCondenser) { + const fanMaterial = new MeshStandardMaterial({ + color: FAN_COLOR, + metalness: 0.3, + roughness: 0.7, + }) + const ringRadius = Math.min(node.width, node.depth) * 0.36 + const ring = new Mesh( + new TorusGeometry(ringRadius, ringRadius * 0.12, 10, RADIAL_SEGMENTS), + fanMaterial, + ) + ring.name = 'condenser-fan-ring' + ring.rotation.x = Math.PI / 2 + ring.position.set(0, node.height + 0.01, 0) + group.add(ring) + const hub = new Mesh( + new CylinderGeometry(ringRadius * 0.25, ringRadius * 0.25, 0.05, RADIAL_SEGMENTS), + fanMaterial, + ) + hub.name = 'condenser-fan-hub' + hub.position.set(0, node.height + 0.01, 0) + group.add(hub) + return group + } + + // Inset front access panel so the cabinet reads as a furnace, not a + // featureless box. Front = +Z face. + const panelMaterial = new MeshStandardMaterial({ + color: PANEL_COLOR, + metalness: 0.5, + roughness: 0.5, + }) + const panel = new Mesh( + new BoxGeometry(node.width * 0.78, node.height * 0.55, 0.015), + panelMaterial, + ) + panel.name = 'equipment-panel' + panel.position.set(0, node.height * 0.38, node.depth / 2 + 0.002) + group.add(panel) + + // Collar stubs at the ports so duct runs visually meet metal. + const collarMaterial = new MeshStandardMaterial({ + color: '#c2c2c2', + metalness: 0.6, + roughness: 0.4, + }) + const STUB_LENGTH = 0.12 + for (const port of localEquipmentPorts(node)) { + const radius = (port.diameter * INCHES_TO_METERS) / 2 + const stub = new Mesh( + new CylinderGeometry(radius, radius, STUB_LENGTH, RADIAL_SEGMENTS, 1, false), + collarMaterial, + ) + stub.name = `equipment-collar-${port.id}` + stub.position.copy(port.position).addScaledVector(port.direction, -STUB_LENGTH / 2) + stub.quaternion.setFromUnitVectors(new Vector3(0, 1, 0), port.direction) + group.add(stub) + } + + return group +} diff --git a/packages/nodes/src/hvac-equipment/index.ts b/packages/nodes/src/hvac-equipment/index.ts new file mode 100644 index 000000000..0f176b179 --- /dev/null +++ b/packages/nodes/src/hvac-equipment/index.ts @@ -0,0 +1,4 @@ +export { hvacEquipmentDefinition } from './definition' +export { buildHvacEquipmentGeometry } from './geometry' +export { getHvacEquipmentPorts } from './ports' +export { HvacEquipmentNode } from './schema' diff --git a/packages/nodes/src/hvac-equipment/parametrics.ts b/packages/nodes/src/hvac-equipment/parametrics.ts new file mode 100644 index 000000000..ccb12d94d --- /dev/null +++ b/packages/nodes/src/hvac-equipment/parametrics.ts @@ -0,0 +1,49 @@ +import type { ParametricDescriptor } from '@pascal-app/core' +import type { HvacEquipmentNode } from './schema' + +export const hvacEquipmentParametrics: ParametricDescriptor = { + groups: [ + { + label: 'Equipment', + fields: [ + { + key: 'equipmentType', + kind: 'enum', + options: ['furnace', 'air-handler', 'condenser'], + display: 'segmented', + }, + ], + }, + { + label: 'Cabinet', + fields: [ + { key: 'width', kind: 'number', unit: 'm', min: 0.3, max: 2, step: 0.05 }, + { key: 'depth', kind: 'number', unit: 'm', min: 0.3, max: 2, step: 0.05 }, + { key: 'height', kind: 'number', unit: 'm', min: 0.4, max: 2.5, step: 0.05 }, + ], + }, + { + label: 'Connections', + fields: [ + { + key: 'supplyDiameter', + kind: 'number', + unit: 'in', + min: 6, + max: 30, + step: 1, + visibleIf: (n) => n.equipmentType !== 'condenser', + }, + { + key: 'returnDiameter', + kind: 'number', + unit: 'in', + min: 6, + max: 30, + step: 1, + visibleIf: (n) => n.equipmentType !== 'condenser', + }, + ], + }, + ], +} diff --git a/packages/nodes/src/hvac-equipment/ports.ts b/packages/nodes/src/hvac-equipment/ports.ts new file mode 100644 index 000000000..eafd2277e --- /dev/null +++ b/packages/nodes/src/hvac-equipment/ports.ts @@ -0,0 +1,58 @@ +import type { NodePort } from '@pascal-app/core' +import { Vector3 } from 'three' +import type { HvacEquipmentNode } from './schema' + +type LocalPort = { + id: string + position: Vector3 + direction: Vector3 + diameter: number + system: 'supply' | 'return' +} + +/** + * Ports in the cabinet's LOCAL frame (origin at the base center, before + * yaw / position). Matches a typical upflow furnace / vertical air + * handler: supply plenum collar on top, return drop on the -X side near + * the bottom third. Condensers are the refrigerant side of a split + * system — no duct ports. + */ +export function localEquipmentPorts(node: HvacEquipmentNode): LocalPort[] { + if (node.equipmentType === 'condenser') return [] + return [ + { + id: 'supply', + position: new Vector3(0, node.height, 0), + direction: new Vector3(0, 1, 0), + diameter: node.supplyDiameter, + system: 'supply', + }, + { + id: 'return', + position: new Vector3(-node.width / 2, node.height * 0.35, 0), + direction: new Vector3(-1, 0, 0), + diameter: node.returnDiameter, + system: 'return', + }, + ] +} + +/** `def.ports` — local ports transformed into level-local space (yaw + position). */ +export function getHvacEquipmentPorts(node: HvacEquipmentNode): NodePort[] { + const offset = new Vector3(node.position[0], node.position[1], node.position[2]) + return localEquipmentPorts(node).map((port) => { + const position = port.position.clone().applyAxisAngle(new Vector3(0, 1, 0), node.rotation) + position.add(offset) + const direction = port.direction + .clone() + .applyAxisAngle(new Vector3(0, 1, 0), node.rotation) + .normalize() + return { + id: port.id, + position: [position.x, position.y, position.z] as const, + direction: [direction.x, direction.y, direction.z] as const, + diameter: port.diameter, + system: port.system, + } + }) +} diff --git a/packages/nodes/src/hvac-equipment/schema.ts b/packages/nodes/src/hvac-equipment/schema.ts new file mode 100644 index 000000000..330212169 --- /dev/null +++ b/packages/nodes/src/hvac-equipment/schema.ts @@ -0,0 +1 @@ +export { HvacEquipmentNode } from '@pascal-app/core' diff --git a/packages/nodes/src/hvac-equipment/tool.tsx b/packages/nodes/src/hvac-equipment/tool.tsx new file mode 100644 index 000000000..482660a75 --- /dev/null +++ b/packages/nodes/src/hvac-equipment/tool.tsx @@ -0,0 +1,123 @@ +'use client' + +import { emitter, type GridEvent, HvacEquipmentNode, useScene } from '@pascal-app/core' +import { triggerSFX, useEditor } from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { useEffect, useMemo, useRef, useState } from 'react' +import { hvacEquipmentDefinition } from './definition' +import { buildHvacEquipmentGeometry } from './geometry' + +const PREVIEW_OPACITY = 0.55 +/** R/T yaw step — 45°, matching the editor's default rotate. */ +const ROTATE_STEP_RAD = Math.PI / 4 + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +/** + * Click-place tool for HVAC equipment (furnace / air handler / + * condenser). A translucent cabinet ghost follows the cursor on the + * floor with grid snap; **R / T** rotate the ghost ±45° around Y. Click + * places the unit — its supply/return collars become ports the duct + * tools snap onto. Equipment type and cabinet size are edited in the + * inspector after placement. + */ +const HvacEquipmentTool = () => { + const activeLevelId = useViewer((s) => s.selection.levelId) + const [cursor, setCursor] = useState<[number, number, number] | null>(null) + const [yaw, setYaw] = useState(0) + const yawRef = useRef(0) + + const previewNode = useMemo( + () => HvacEquipmentNode.parse({ ...hvacEquipmentDefinition.defaults(), name: 'Furnace' }), + [], + ) + const ghost = useMemo(() => { + const group = buildHvacEquipmentGeometry(previewNode) + group.traverse((child) => { + const mesh = child as { material?: { transparent: boolean; opacity: number } } + if (mesh.material) { + mesh.material.transparent = true + mesh.material.opacity = PREVIEW_OPACITY + } + }) + return group + }, [previewNode]) + + useEffect(() => { + if (!activeLevelId) return + + const resolve = (event: GridEvent): [number, number, number] => { + const step = event.nativeEvent?.shiftKey === true ? 0 : useEditor.getState().gridSnapStep + return [snap(event.localPosition[0], step), 0, snap(event.localPosition[2], step)] + } + + const onMove = (event: GridEvent) => setCursor(resolve(event)) + + const onClick = (event: GridEvent) => { + const position = resolve(event) + const unit = HvacEquipmentNode.parse({ + ...hvacEquipmentDefinition.defaults(), + name: 'Furnace', + position, + rotation: yawRef.current, + }) + useScene.getState().createNode(unit, activeLevelId) + useViewer.getState().setSelection({ selectedIds: [unit.id] }) + triggerSFX('sfx:item-place') + } + + const onKeyDown = (e: KeyboardEvent) => { + const tag = (e.target as HTMLElement | null)?.tagName + if (tag === 'INPUT' || tag === 'TEXTAREA') return + const key = e.key + if (key !== 'r' && key !== 'R' && key !== 't' && key !== 'T') return + // Capture-phase + stopPropagation so the editor's selection-rotate + // handler doesn't also spin the previously placed unit. + e.preventDefault() + e.stopPropagation() + const steps = key === 't' || key === 'T' || e.shiftKey ? -1 : 1 + yawRef.current += steps * ROTATE_STEP_RAD + setYaw(yawRef.current) + triggerSFX('sfx:item-rotate') + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', onClick) + window.addEventListener('keydown', onKeyDown, true) + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', onClick) + window.removeEventListener('keydown', onKeyDown, true) + } + }, [activeLevelId]) + + if (!activeLevelId || !cursor) return null + + return ( + + + + + +
+ R/T rotate + + · + + ⇧ smooth +
+ +
+ ) +} + +export default HvacEquipmentTool From 92c5a7d9b993d5aaae8e21aadd3a0c2cf851d8c4 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 11:45:49 +0530 Subject: [PATCH 12/59] feat(nodes): register HVAC kinds in the builtin plugin duct-segment, duct-fitting, duct-terminal, hvac-equipment join the registry and are re-exported from the package root. Co-Authored-By: Claude Fable 5 --- packages/nodes/src/index.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/packages/nodes/src/index.ts b/packages/nodes/src/index.ts index 6c67f8398..7856995cb 100644 --- a/packages/nodes/src/index.ts +++ b/packages/nodes/src/index.ts @@ -8,11 +8,15 @@ import { cupolaDefinition } from './cupola' import { doorDefinition } from './door' import { dormerDefinition } from './dormer' import { downspoutDefinition } from './downspout' +import { ductFittingDefinition } from './duct-fitting' +import { ductSegmentDefinition } from './duct-segment' +import { ductTerminalDefinition } from './duct-terminal' import { elevatorDefinition } from './elevator' import { eyebrowVentDefinition } from './eyebrow-vent' import { fenceDefinition } from './fence' import { guideDefinition } from './guide' import { gutterDefinition } from './gutter' +import { hvacEquipmentDefinition } from './hvac-equipment' import { itemDefinition } from './item' import { levelDefinition } from './level' import { ridgeVentDefinition } from './ridge-vent' @@ -88,6 +92,11 @@ export const builtinPlugin: Plugin = { dormerDefinition as unknown as AnyNodeDefinition, gutterDefinition as unknown as AnyNodeDefinition, downspoutDefinition as unknown as AnyNodeDefinition, + // HVAC — Phase 1: round duct segment polyline. Phase 2: fittings + ports. + ductSegmentDefinition as unknown as AnyNodeDefinition, + ductFittingDefinition as unknown as AnyNodeDefinition, + ductTerminalDefinition as unknown as AnyNodeDefinition, + hvacEquipmentDefinition as unknown as AnyNodeDefinition, ], } @@ -100,11 +109,15 @@ export { cupolaDefinition } from './cupola' export { doorDefinition } from './door' export { dormerDefinition } from './dormer' export { downspoutDefinition } from './downspout' +export { ductFittingDefinition } from './duct-fitting' +export { ductSegmentDefinition } from './duct-segment' +export { ductTerminalDefinition } from './duct-terminal' export { elevatorDefinition } from './elevator' export { eyebrowVentDefinition } from './eyebrow-vent' export { fenceDefinition } from './fence' export { guideDefinition } from './guide' export { gutterDefinition } from './gutter' +export { hvacEquipmentDefinition } from './hvac-equipment' export { itemDefinition } from './item' export { levelDefinition } from './level' export { ridgeVentDefinition } from './ridge-vent' From 2ddd6c003aa10443d82ef9f11b0074e1a8369fed Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 11:45:49 +0530 Subject: [PATCH 13/59] feat(app): Build tab tiles for the HVAC tools Duct, Duct Fitting, Register, and HVAC Unit tiles (placeholder icons borrowed from existing assets) arming the registry placement tools. Co-Authored-By: Claude Fable 5 --- apps/editor/components/build-tab.tsx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/apps/editor/components/build-tab.tsx b/apps/editor/components/build-tab.tsx index 8d25a5eb0..dfd5768ad 100644 --- a/apps/editor/components/build-tab.tsx +++ b/apps/editor/components/build-tab.tsx @@ -28,6 +28,10 @@ type BuildToolKind = | 'column' | 'shelf' | 'spawn' + | 'duct-segment' + | 'duct-fitting' + | 'duct-terminal' + | 'hvac-equipment' type BuildType = { /** Selection id — equals `kind` for tool types, `'painting'` for paint mode. */ @@ -54,6 +58,10 @@ const BUILD_TYPES: BuildType[] = [ { id: 'column', label: 'Column', iconSrc: '/icons/column.png', kind: 'column' }, { id: 'shelf', label: 'Shelf', iconSrc: '/icons/shelf.png', kind: 'shelf' }, { id: 'spawn', label: 'Spawn Point', iconSrc: '/icons/spawn-point.png', kind: 'spawn' }, + { id: 'duct-segment', label: 'Duct', iconSrc: '/icons/wall.png', kind: 'duct-segment' }, + { id: 'duct-fitting', label: 'Duct Fitting', iconSrc: '/icons/column.png', kind: 'duct-fitting' }, + { id: 'duct-terminal', label: 'Register', iconSrc: '/icons/window.png', kind: 'duct-terminal' }, + { id: 'hvac-equipment', label: 'HVAC Unit', iconSrc: '/icons/elevator.png', kind: 'hvac-equipment' }, { id: 'painting', label: 'Painting', iconSrc: '/icons/paint.png', mode: 'material-paint' }, ] From 1afd73962a5983dc9e87e72aec00c8e97f1f2c59 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 13:05:44 +0530 Subject: [PATCH 14/59] feat(nodes): detailed HVAC equipment models + duct-terminal mounting Rebuild the hvac-equipment geometry so each unit reads as real gear: - Furnace: hollow sheet-metal cabinet built from butt-jointed plates (no more z-fighting), open front cut exposing a blue squirrel-cage blower and orange burner manifold/gas valve, plus a front gas line with drip leg. Supply (top) and return (side) walls now carry real circular holes with open-ended collars so ducts pass through. - Air handler: tall white cabinet with two stacked guarded axial fans and finned coil bands down the sides. - Condenser: white coil cabinet with vertical louvered fins on all four faces, dark base/top frame and corner posts, and a top fan under a radial wire guard over a recessed throat. - Shared white cabinet color across all three units. - Default supply/return collar diameter dropped to 8" so duct holes match typical runs. Also: duct-terminal gains floor/ceiling/wall mounting (M to cycle) and the duct-segment snap indicator is smaller. --- apps/ifc-converter/next-env.d.ts | 2 +- .../core/src/schema/nodes/hvac-equipment.ts | 4 +- packages/nodes/src/duct-segment/tool.tsx | 2 +- .../nodes/src/duct-terminal/definition.ts | 3 +- packages/nodes/src/duct-terminal/tool.tsx | 217 +++++- .../nodes/src/hvac-equipment/definition.ts | 4 +- packages/nodes/src/hvac-equipment/geometry.ts | 706 ++++++++++++++++-- 7 files changed, 846 insertions(+), 92 deletions(-) diff --git a/apps/ifc-converter/next-env.d.ts b/apps/ifc-converter/next-env.d.ts index 9edff1c7c..c4b7818fb 100644 --- a/apps/ifc-converter/next-env.d.ts +++ b/apps/ifc-converter/next-env.d.ts @@ -1,6 +1,6 @@ /// /// -import "./.next/types/routes.d.ts"; +import "./.next/dev/types/routes.d.ts"; // NOTE: This file should not be edited // see https://nextjs.org/docs/app/api-reference/config/typescript for more information. diff --git a/packages/core/src/schema/nodes/hvac-equipment.ts b/packages/core/src/schema/nodes/hvac-equipment.ts index e7b1ab964..92f746562 100644 --- a/packages/core/src/schema/nodes/hvac-equipment.ts +++ b/packages/core/src/schema/nodes/hvac-equipment.ts @@ -28,8 +28,8 @@ export const HvacEquipmentNode = BaseNode.extend({ depth: z.number().min(0.3).max(2).default(0.71), height: z.number().min(0.4).max(2.5).default(1.1), // Collar diameters in inches for the duct connections. - supplyDiameter: z.number().min(6).max(30).default(12), - returnDiameter: z.number().min(6).max(30).default(14), + supplyDiameter: z.number().min(6).max(30).default(8), + returnDiameter: z.number().min(6).max(30).default(8), }).describe( dedent` HVAC equipment cabinet - furnace, air handler, or outdoor condenser. diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx index 07b1eaa0e..27cac5916 100644 --- a/packages/nodes/src/duct-segment/tool.tsx +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -337,7 +337,7 @@ const DuctSegmentTool = () => { next click will join an existing duct rather than freeform-place. */} {snapTarget && ( - + )} diff --git a/packages/nodes/src/duct-terminal/definition.ts b/packages/nodes/src/duct-terminal/definition.ts index a71dc5b76..d4343a344 100644 --- a/packages/nodes/src/duct-terminal/definition.ts +++ b/packages/nodes/src/duct-terminal/definition.ts @@ -54,7 +54,8 @@ export const ductTerminalDefinition: NodeDefinition = { tool: () => import('./tool'), toolHints: [ { key: 'Click', label: 'Place register' }, - { key: 'R / T', label: 'Rotate ±45°' }, + { key: 'M', label: 'Mount: floor / ceiling / wall' }, + { key: 'R / T', label: 'Rotate ±45° (floor / ceiling)' }, { key: 'Shift', label: 'Smooth (no grid snap)' }, { key: 'Esc', label: 'Exit' }, ], diff --git a/packages/nodes/src/duct-terminal/tool.tsx b/packages/nodes/src/duct-terminal/tool.tsx index ba7ad34af..cf0988981 100644 --- a/packages/nodes/src/duct-terminal/tool.tsx +++ b/packages/nodes/src/duct-terminal/tool.tsx @@ -1,38 +1,98 @@ 'use client' -import { DuctTerminalNode, emitter, type GridEvent, useScene } from '@pascal-app/core' +import { + type AnyNodeId, + DuctTerminalNode, + emitter, + resolveLevelId, + sceneRegistry, + useScene, + type WallEvent, + type WallNode, +} from '@pascal-app/core' import { triggerSFX, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' +import { useThree } from '@react-three/fiber' import { useEffect, useMemo, useRef, useState } from 'react' +import { Matrix3, Matrix4, Plane, Raycaster, Vector2, Vector3 } from 'three' import { ductTerminalDefinition } from './definition' import { buildDuctTerminalGeometry } from './geometry' const PREVIEW_OPACITY = 0.55 /** R/T yaw step — 45°. */ const ROTATE_STEP_RAD = Math.PI / 4 +/** Fallback ceiling height (meters) when no walls/ceilings inform one. */ +const DEFAULT_CEILING_HEIGHT = 2.5 + +type Mount = DuctTerminalNode['mount'] +const MOUNT_CYCLE: Mount[] = ['floor', 'ceiling', 'wall'] function snap(value: number, step: number): number { if (step <= 0) return value return Math.round(value / step) * step } +/** The active building's mesh, or null when placing outside a building. */ +function activeBuildingMesh() { + const buildingId = useViewer.getState().selection.buildingId + return buildingId ? (sceneRegistry.nodes.get(buildingId as AnyNodeId) ?? null) : null +} + +/** + * Ceiling height for the active level, in level-local meters: the tallest + * ceiling node if any exist, else the tallest wall, else the default. Used + * as the horizontal plane a ceiling-mounted terminal snaps onto when the + * mount is `ceiling` (a "virtual ceiling" derived from the walls, so the + * terminal lands at hang height even before a ceiling node is drawn). + */ +function resolveCeilingHeight(activeLevelId: string): number { + const nodes = useScene.getState().nodes + let ceilingMax = 0 + let wallMax = 0 + for (const node of Object.values(nodes)) { + if (!node) continue + if (node.type !== 'ceiling' && node.type !== 'wall') continue + if (resolveLevelId(node, nodes) !== activeLevelId) continue + const h = (node as { height?: number }).height ?? DEFAULT_CEILING_HEIGHT + if (node.type === 'ceiling') ceilingMax = Math.max(ceilingMax, h) + else wallMax = Math.max(wallMax, h) + } + if (ceilingMax > 0) return ceilingMax + if (wallMax > 0) return wallMax + return DEFAULT_CEILING_HEIGHT +} + +type Placement = { + position: [number, number, number] + /** Yaw radians applied to the ghost / committed node. */ + yaw: number +} + /** * Click-place tool for duct terminals (registers / diffusers / grilles). - * Ghost follows the cursor on the floor with grid snap (Shift = smooth); - * **R / T** rotate ±45°. Terminal type, mount surface, and face size are - * edited in the inspector after placement — switching mount to ceiling - * or wall reorients the face and collar, then adjust Y in Placement. + * + * **Mount drives the target surface** (cycle with **M**): a floor register + * snaps to the floor grid, a ceiling diffuser snaps to a horizontal plane at + * ceiling height (derived from the level's ceilings/walls), and a wall + * register snaps flush onto whichever wall the cursor is over, its face + * oriented along the wall's outward normal. **R / T** rotate the floor/ceiling + * yaw ±45°; wall yaw is fixed by the wall it mates to. */ const DuctTerminalTool = () => { + const { camera, gl } = useThree() const activeLevelId = useViewer((s) => s.selection.levelId) - const [cursor, setCursor] = useState<[number, number, number] | null>(null) - const [yaw, setYaw] = useState(0) + const [mount, setMount] = useState('floor') + const [placement, setPlacement] = useState(null) + + const mountRef = useRef('floor') const yawRef = useRef(0) + const raycaster = useRef(new Raycaster()) + const pointer = useRef(new Vector2()) const previewNode = useMemo( - () => DuctTerminalNode.parse({ ...ductTerminalDefinition.defaults(), name: 'Register' }), - [], + () => DuctTerminalNode.parse({ ...ductTerminalDefinition.defaults(), name: 'Register', mount }), + [mount], ) const ghost = useMemo(() => { const group = buildDuctTerminalGeometry(previewNode) @@ -48,69 +108,170 @@ const DuctTerminalTool = () => { useEffect(() => { if (!activeLevelId) return + const canvas = gl.domElement + + /** + * Intersect the cursor ray with a level-local horizontal plane at `y`. + * The ray is transformed into building-local space first, so the hit is + * already in the frame terminals are stored in (matching how the duct + * draw tool stores `grid:move` local positions). + */ + const hitLocalPlane = (nativeEvent: PointerEvent | MouseEvent, y: number): Vector3 | null => { + const rect = canvas.getBoundingClientRect() + pointer.current.x = ((nativeEvent.clientX - rect.left) / rect.width) * 2 - 1 + pointer.current.y = -((nativeEvent.clientY - rect.top) / rect.height) * 2 + 1 + raycaster.current.setFromCamera(pointer.current, camera) - const resolve = (event: GridEvent): [number, number, number] => { - const step = event.nativeEvent?.shiftKey === true ? 0 : useEditor.getState().gridSnapStep - return [snap(event.localPosition[0], step), 0, snap(event.localPosition[2], step)] + const building = activeBuildingMesh() + const ray = raycaster.current.ray.clone() + if (building) { + const inv = new Matrix4().copy(building.matrixWorld).invert() + ray.applyMatrix4(inv) + } + const plane = new Plane(new Vector3(0, 1, 0), -y) + const hit = new Vector3() + return ray.intersectPlane(plane, hit) ? hit : null } - const onMove = (event: GridEvent) => setCursor(resolve(event)) + const resolvePlanar = (nativeEvent: PointerEvent | MouseEvent): Placement | null => { + const y = mountRef.current === 'ceiling' ? resolveCeilingHeight(activeLevelId) : 0 + const hit = hitLocalPlane(nativeEvent, y) + if (!hit) return null + const step = nativeEvent.shiftKey ? 0 : useEditor.getState().gridSnapStep + return { + position: [snap(hit.x, step), y, snap(hit.z, step)], + yaw: yawRef.current, + } + } - const onClick = (event: GridEvent) => { - const position = resolve(event) + const commit = (p: Placement) => { const terminal = DuctTerminalNode.parse({ ...ductTerminalDefinition.defaults(), name: 'Register', - position, - rotation: yawRef.current, + mount: mountRef.current, + position: p.position, + rotation: p.yaw, }) useScene.getState().createNode(terminal, activeLevelId) useViewer.getState().setSelection({ selectedIds: [terminal.id] }) triggerSFX('sfx:item-place') } + // ---- Floor / ceiling: own raycast against a horizontal plane ---- + const onPointerMove = (e: PointerEvent) => { + if (mountRef.current === 'wall') return + setPlacement(resolvePlanar(e)) + } + + const onCanvasClick = (e: MouseEvent) => { + if (mountRef.current === 'wall') return + if (useViewer.getState().cameraDragging) return + if ((e as PointerEvent).button !== undefined && (e as PointerEvent).button !== 0) return + const p = resolvePlanar(e) + if (p) commit(p) + } + + // ---- Wall: consume wall hover/click events, orient to the wall ---- + const resolveWall = (event: WallEvent): Placement | null => { + if (!event.normal) return null + // Wall faces are the ±Z faces in wall-local space; skip the thin + // top / end caps so the terminal only mounts onto a real face. + if (Math.abs(event.normal[2]) <= 0.7) return null + const worldNormal = new Vector3(event.normal[0], event.normal[1], event.normal[2]) + .applyNormalMatrix(new Matrix3().getNormalMatrix(event.object.matrixWorld)) + .normalize() + // Face normal after the wall mount + yaw is (sin yaw, 0, cos yaw); + // align it with the wall's outward world normal. + const yaw = Math.atan2(worldNormal.x, worldNormal.z) + + const world = new Vector3(event.position[0], event.position[1], event.position[2]) + const building = activeBuildingMesh() + const local = building ? building.worldToLocal(world.clone()) : world + return { position: [local.x, local.y, local.z], yaw } + } + + const onWallMove = (event: WallEvent) => { + if (mountRef.current !== 'wall') return + const p = resolveWall(event) + if (p) setPlacement(p) + } + + const onWallClick = (event: WallEvent) => { + if (mountRef.current !== 'wall') return + if (useViewer.getState().cameraDragging) return + const p = resolveWall(event) + if (p) commit(p) + } + const onKeyDown = (e: KeyboardEvent) => { const tag = (e.target as HTMLElement | null)?.tagName if (tag === 'INPUT' || tag === 'TEXTAREA') return const key = e.key + if (key === 'm' || key === 'M') { + e.preventDefault() + e.stopPropagation() + const next = MOUNT_CYCLE[(MOUNT_CYCLE.indexOf(mountRef.current) + 1) % MOUNT_CYCLE.length]! + mountRef.current = next + setMount(next) + // Wall placement only resolves over a wall; clear the stale ghost. + if (next === 'wall') setPlacement(null) + triggerSFX('sfx:item-rotate') + return + } if (key !== 'r' && key !== 'R' && key !== 't' && key !== 'T') return + // Wall yaw is dictated by the wall, so R/T only apply to planar mounts. + if (mountRef.current === 'wall') return e.preventDefault() e.stopPropagation() const steps = key === 't' || key === 'T' || e.shiftKey ? -1 : 1 yawRef.current += steps * ROTATE_STEP_RAD - setYaw(yawRef.current) + setPlacement((prev) => (prev ? { ...prev, yaw: yawRef.current } : prev)) triggerSFX('sfx:item-rotate') } - emitter.on('grid:move', onMove) - emitter.on('grid:click', onClick) + canvas.addEventListener('pointermove', onPointerMove) + canvas.addEventListener('click', onCanvasClick) + emitter.on('wall:move', onWallMove) + emitter.on('wall:click', onWallClick) window.addEventListener('keydown', onKeyDown, true) return () => { - emitter.off('grid:move', onMove) - emitter.off('grid:click', onClick) + canvas.removeEventListener('pointermove', onPointerMove) + canvas.removeEventListener('click', onCanvasClick) + emitter.off('wall:move', onWallMove) + emitter.off('wall:click', onWallClick) window.removeEventListener('keydown', onKeyDown, true) } - }, [activeLevelId]) + }, [activeLevelId, camera, gl]) + + if (!activeLevelId || !placement) return null - if (!activeLevelId || !cursor) return null + const mountLabel = mount.charAt(0).toUpperCase() + mount.slice(1) return ( - +
- R/T rotate + Mount {mountLabel} · - ⇧ smooth + M surface + {mount !== 'wall' && ( + <> + + · + + R/T rotate + + )}
diff --git a/packages/nodes/src/hvac-equipment/definition.ts b/packages/nodes/src/hvac-equipment/definition.ts index 37dc53b11..c597441cd 100644 --- a/packages/nodes/src/hvac-equipment/definition.ts +++ b/packages/nodes/src/hvac-equipment/definition.ts @@ -31,8 +31,8 @@ export const hvacEquipmentDefinition: NodeDefinition = width: 0.56, depth: 0.71, height: 1.1, - supplyDiameter: 12, - returnDiameter: 14, + supplyDiameter: 8, + returnDiameter: 8, }), capabilities: { diff --git a/packages/nodes/src/hvac-equipment/geometry.ts b/packages/nodes/src/hvac-equipment/geometry.ts index 3cf3b1d8c..e90561b51 100644 --- a/packages/nodes/src/hvac-equipment/geometry.ts +++ b/packages/nodes/src/hvac-equipment/geometry.ts @@ -1,9 +1,12 @@ import { BoxGeometry, CylinderGeometry, + ExtrudeGeometry, Group, Mesh, MeshStandardMaterial, + Path, + Shape, TorusGeometry, Vector3, } from 'three' @@ -12,95 +15,684 @@ import { localEquipmentPorts } from './ports' import type { HvacEquipmentNode } from './schema' const RADIAL_SEGMENTS = 24 +const SMALL_SEGMENTS = 16 -const CABINET_COLOR = '#b8bcc2' -const PANEL_COLOR = '#8d939b' -const CONDENSER_COLOR = '#9aa39c' +// Shared cabinet white used by every equipment body (furnace, air handler, +// condenser) so the units read as one product family. +const EQUIPMENT_WHITE = '#eef0f2' +const EQUIPMENT_TRIM = '#cfd3d8' + +const CABINET_COLOR = EQUIPMENT_WHITE +const INTERIOR_COLOR = '#9aa1a8' +const PANEL_COLOR = EQUIPMENT_TRIM +const CONTROL_COLOR = '#3f4549' +const CONDENSER_COLOR = EQUIPMENT_WHITE +const CONDENSER_FRAME_COLOR = EQUIPMENT_TRIM +const CONDENSER_FIN_COLOR = '#9aa1a8' const FAN_COLOR = '#3f4549' +const BLOWER_COLOR = '#2f6fb0' +const BLOWER_BLADE_COLOR = '#274f7d' +const BURNER_COLOR = '#d9772e' +const GAS_PIPE_COLOR = '#d2691e' +const AIR_HANDLER_COLOR = EQUIPMENT_WHITE +const AIR_HANDLER_TRIM = EQUIPMENT_TRIM +const FAN_GRILLE_COLOR = '#3a3f44' +const FAN_BLADE_COLOR = '#d7dade' +const COIL_FIN_COLOR = '#9aa1a8' + +const UP = new Vector3(0, 1, 0) /** * Pure geometry builder for an HVAC equipment cabinet, in the node's - * LOCAL frame (origin at base center) — `` - * applies `position` + yaw. + * LOCAL frame (origin at base center, +Z front, +X right) — + * `` applies `position` + yaw. + * + * Furnace / air handler: the cabinet is built from individual sheet-metal + * walls (not a solid box) so the lower front can be left OPEN — a real + * cut that exposes the squirrel-cage circulating fan and, on a furnace, + * the orange burner manifold and gas valve. Furnaces also get the + * combustion train from the reference drawing: a draft hood + vent + * connector elbow on top and a gas pipe with drip leg down the front-left. * - * Furnace / air handler: sheet-metal cabinet, inset front access panel, - * supply collar stub on top and return collar on the -X side (matching - * `localEquipmentPorts`). Condenser: squat cabinet with a fan ring and - * hub on top. + * Air handler: tall white cabinet with two stacked guarded axial fans on + * the front and finned coil bands down the sides (vertical fan-coil look). + * Condenser: squat cabinet with a fan ring and hub on top. */ export function buildHvacEquipmentGeometry(node: HvacEquipmentNode): Group { const group = new Group() - const isCondenser = node.equipmentType === 'condenser' + if (node.equipmentType === 'condenser') return buildCondenser(node, group) + if (node.equipmentType === 'air-handler') return buildAirHandler(node, group) - const cabinetMaterial = new MeshStandardMaterial({ - color: isCondenser ? CONDENSER_COLOR : CABINET_COLOR, + const W = node.width + const H = node.height + const D = node.depth + const hw = W / 2 + const hd = D / 2 + const t = Math.min(0.02, W * 0.04, D * 0.04) + + // Single-sided. Each wall is a thin slab whose interior-facing face is an + // outward face of its own box, so the cut still shows metal inside — and + // single-sided culling means coplanar butt joints can't z-fight. + const cabinet = new MeshStandardMaterial({ + color: CABINET_COLOR, metalness: 0.55, roughness: 0.45, }) + const interior = new MeshStandardMaterial({ + color: INTERIOR_COLOR, + metalness: 0.4, + roughness: 0.6, + }) - const body = new Mesh(new BoxGeometry(node.width, node.height, node.depth), cabinetMaterial) - body.name = 'equipment-body' - body.position.set(0, node.height / 2, 0) - group.add(body) - - if (isCondenser) { - const fanMaterial = new MeshStandardMaterial({ - color: FAN_COLOR, - metalness: 0.3, - roughness: 0.7, - }) - const ringRadius = Math.min(node.width, node.depth) * 0.36 - const ring = new Mesh( - new TorusGeometry(ringRadius, ringRadius * 0.12, 10, RADIAL_SEGMENTS), - fanMaterial, - ) - ring.name = 'condenser-fan-ring' - ring.rotation.x = Math.PI / 2 - ring.position.set(0, node.height + 0.01, 0) - group.add(ring) - const hub = new Mesh( - new CylinderGeometry(ringRadius * 0.25, ringRadius * 0.25, 0.05, RADIAL_SEGMENTS), - fanMaterial, - ) - hub.name = 'condenser-fan-hub' - hub.position.set(0, node.height + 0.01, 0) - group.add(hub) - return group + const addBox = ( + w: number, + h: number, + dd: number, + mat: MeshStandardMaterial, + x: number, + y: number, + z: number, + name: string, + ) => { + const mesh = new Mesh(new BoxGeometry(w, h, dd), mat) + mesh.name = name + mesh.position.set(x, y, z) + group.add(mesh) + return mesh } - // Inset front access panel so the cabinet reads as a furnace, not a - // featureless box. Front = +Z face. - const panelMaterial = new MeshStandardMaterial({ + const ports = localEquipmentPorts(node) + const supplyR = portRadius(ports, 'supply') + const returnR = portRadius(ports, 'return') + + // ── Cabinet shell as butt-jointed sheet-metal plates. Top + bottom span + // the full footprint; the four walls sit *between* them (height innerH), + // and back / front pieces sit *between* the side walls (width W - 2t). No + // two same-facing surfaces are ever coplanar, which is what was z-fighting + // when these were full-size overlapping boxes; single-sided materials + // (above) finish the job. Left wall carries the return hole, top the supply. + const innerH = H - 2 * t + const midY = H / 2 + const frontZ = hd - t / 2 + + addBox(W, t, D, cabinet, 0, t / 2, 0, 'equipment-bottom') + addBox(t, innerH, D, interior, hw - t / 2, midY, 0, 'equipment-right') + addBox(W - 2 * t, innerH, t, interior, 0, midY, -hd + t / 2, 'equipment-back') + + // Top plate, flat, with the supply hole at the cabinet center. Built + // centered in its own XY plane (x→W, y→D); rotate.x = -90° lays it flat. + const top = buildHolePlate(W, D, t, supplyR, 0, 0, cabinet) + top.name = 'equipment-top' + top.rotation.x = -Math.PI / 2 + top.position.set(0, H - t / 2, 0) + group.add(top) + + // Left wall with the return hole. After rotate.y = -90° the plate's x→world + // -z and y→world height; centered at midY with the return port at world + // y = H*0.35, so the hole sits at plate-y (H*0.35 - midY). + const left = buildHolePlate(D, innerH, t, returnR, 0, H * 0.35 - midY, interior) + left.name = 'equipment-left' + left.rotation.y = -Math.PI / 2 + left.position.set(-hw + t / 2, midY, 0) + group.add(left) + + // Front opening: framed sill, jambs and an upper control panel, all inset + // to (W - 2t) so they tuck between the side walls. The gap between sill + // and panel (and inside the jambs) is the visible cut. + const openBottom = H * 0.1 + const openTop = H * 0.58 + const jamb = W * 0.08 + const frontW = W - 2 * t + const frontHalf = frontW / 2 + const panelMat = new MeshStandardMaterial({ color: PANEL_COLOR, metalness: 0.5, roughness: 0.5, }) - const panel = new Mesh( - new BoxGeometry(node.width * 0.78, node.height * 0.55, 0.015), - panelMaterial, + addBox(frontW, openBottom - t, t, cabinet, 0, (t + openBottom) / 2, frontZ, 'equipment-sill') + addBox(frontW, H - t - openTop, t, panelMat, 0, (openTop + H - t) / 2, frontZ, 'equipment-panel') + addBox(jamb, openTop - openBottom, t, cabinet, -frontHalf + jamb / 2, (openBottom + openTop) / 2, frontZ, 'equipment-jamb-l') + addBox(jamb, openTop - openBottom, t, cabinet, frontHalf - jamb / 2, (openBottom + openTop) / 2, frontZ, 'equipment-jamb-r') + + // ── Control area on the upper front panel (fan-limit switch + cover). + const ctrlMat = new MeshStandardMaterial({ + color: CONTROL_COLOR, + metalness: 0.4, + roughness: 0.6, + }) + addBox(W * 0.34, (H - openTop) * 0.5, 0.012, ctrlMat, W * 0.18, (openTop + H) / 2, frontZ + 0.008, 'equipment-control') + addBox(W * 0.1, (H - openTop) * 0.3, 0.02, ctrlMat, -W * 0.22, (openTop + H) / 2, frontZ + 0.012, 'equipment-switch') + + // ── Squirrel-cage circulating fan, seated in the open lower cavity. The + // round scroll housing faces front (+Z) so it shows through the cut. + const rB = Math.min(W * 0.34, (openTop - openBottom) * 0.42) + const housingD = D * 0.42 + const cy = openBottom + rB + 0.01 + const zc = hd - t - housingD / 2 - 0.01 + const blowerMat = new MeshStandardMaterial({ + color: BLOWER_COLOR, + metalness: 0.3, + roughness: 0.6, + }) + const bladeMat = new MeshStandardMaterial({ + color: BLOWER_BLADE_COLOR, + metalness: 0.2, + roughness: 0.75, + }) + const housing = new Mesh( + new CylinderGeometry(rB, rB, housingD, RADIAL_SEGMENTS), + blowerMat, + ) + housing.name = 'blower-housing' + housing.rotation.x = Math.PI / 2 // axis Y → axis Z (round face toward front) + housing.position.set(0, cy, zc) + group.add(housing) + const intake = new Mesh( + new TorusGeometry(rB * 0.7, rB * 0.12, 10, RADIAL_SEGMENTS), + blowerMat, + ) + intake.name = 'blower-intake' + intake.position.set(0, cy, hd - t - 0.005) + group.add(intake) + const hub = new Mesh( + new CylinderGeometry(rB * 0.18, rB * 0.18, housingD * 0.9, SMALL_SEGMENTS), + bladeMat, + ) + hub.name = 'blower-hub' + hub.rotation.x = Math.PI / 2 + hub.position.set(0, cy, zc) + group.add(hub) + // Radial cage blades around the hub axis (Z). + const BLADES = 14 + for (let i = 0; i < BLADES; i++) { + const a = (i / BLADES) * Math.PI * 2 + const blade = new Mesh( + new BoxGeometry(0.006, rB * 0.62, housingD * 0.82), + bladeMat, + ) + blade.name = `blower-blade-${i}` + blade.position.set(Math.cos(a) * rB * 0.5, cy + Math.sin(a) * rB * 0.5, zc) + blade.rotation.z = a + group.add(blade) + } + + buildCombustionTrain(node, group, { hw, hd, H, openTop, frontZ }) + buildGasLine(node, group, { hw, hd, H }) + + buildCollars(node, group) + return group +} + +/** Orange burner manifold + gas valve above the blower (furnace only). */ +function buildCombustionTrain( + node: HvacEquipmentNode, + group: Group, + dims: { hw: number; hd: number; H: number; openTop: number; frontZ: number }, +): void { + const { hw, hd, H, openTop } = dims + const burnerMat = new MeshStandardMaterial({ + color: BURNER_COLOR, + metalness: 0.35, + roughness: 0.55, + emissive: BURNER_COLOR, + emissiveIntensity: 0.12, + }) + const y = openTop - 0.12 + const z = hd - node.depth * 0.32 + + // Manifold pipe running across the unit (axis X), feeding the burners. + const manifold = new Mesh( + new CylinderGeometry(0.018, 0.018, node.width * 0.66, SMALL_SEGMENTS), + burnerMat, ) - panel.name = 'equipment-panel' - panel.position.set(0, node.height * 0.38, node.depth / 2 + 0.002) - group.add(panel) + manifold.name = 'burner-manifold' + manifold.rotation.z = Math.PI / 2 + manifold.position.set(-node.width * 0.05, y, z) + group.add(manifold) + + // 4 burner tubes shooting back into the heat exchanger (axis Z). + const tubes = 4 + for (let i = 0; i < tubes; i++) { + const x = (-(tubes - 1) / 2 + i) * (node.width * 0.16) + const tube = new Mesh( + new CylinderGeometry(0.022, 0.022, node.depth * 0.34, SMALL_SEGMENTS), + burnerMat, + ) + tube.name = `burner-tube-${i}` + tube.rotation.x = Math.PI / 2 + tube.position.set(x, y, z - node.depth * 0.17) + group.add(tube) + } + + // Gas valve block at the right end of the manifold. + const valve = new Mesh(new BoxGeometry(0.08, 0.07, 0.09), burnerMat) + valve.name = 'gas-valve' + valve.position.set(hw - 0.07, y, z + 0.02) + group.add(valve) +} + +/** Gas supply pipe with a capped drip leg, down the front-left (furnace). */ +function buildGasLine( + node: HvacEquipmentNode, + group: Group, + dims: { hw: number; hd: number; H: number }, +): void { + const { hw, hd, H } = dims + const gasMat = new MeshStandardMaterial({ + color: GAS_PIPE_COLOR, + metalness: 0.4, + roughness: 0.5, + }) + const r = 0.014 + const x = -hw + 0.06 + const z = hd + 0.03 + const teeY = H * 0.34 + + // Vertical main running down the front-left face. + const mainTop = H * 0.92 + const mainLen = mainTop - teeY + const main = new Mesh(new CylinderGeometry(r, r, mainLen, SMALL_SEGMENTS), gasMat) + main.name = 'gas-main' + main.position.set(x, teeY + mainLen / 2, z) + group.add(main) + + // Tee into the cabinet toward the gas valve (axis X, +). + const tee = new Mesh(new CylinderGeometry(r, r, 0.12, SMALL_SEGMENTS), gasMat) + tee.name = 'gas-tee' + tee.rotation.z = Math.PI / 2 + tee.position.set(x + 0.06, teeY, z) + group.add(tee) + + // Drip leg: short capped vertical pipe below the tee to catch sediment. + const legLen = H * 0.14 + const leg = new Mesh(new CylinderGeometry(r, r, legLen, SMALL_SEGMENTS), gasMat) + leg.name = 'gas-drip-leg' + leg.position.set(x, teeY - legLen / 2, z) + group.add(leg) + const cap = new Mesh(new CylinderGeometry(r * 1.4, r * 1.4, 0.02, SMALL_SEGMENTS), gasMat) + cap.name = 'gas-drip-cap' + cap.position.set(x, teeY - legLen, z) + group.add(cap) +} + +type LocalPort = ReturnType[number] + +function portRadius(ports: LocalPort[], id: 'supply' | 'return'): number { + const port = ports.find((p) => p.id === id) + return port ? (port.diameter * INCHES_TO_METERS) / 2 : 0.1 +} + +/** + * Flat rectangular plate of `thickness`, centered on the origin in its own + * XY plane (width → X, height → Y) and centered through the thickness on Z, + * with a circular hole of `holeR` punched at (`hx`, `hy`). Callers rotate / + * position it into a wall; the hole becomes the duct opening. + */ +function buildHolePlate( + width: number, + height: number, + thickness: number, + holeR: number, + hx: number, + hy: number, + material: MeshStandardMaterial, +): Mesh { + const hw = width / 2 + const hh = height / 2 + const shape = new Shape() + .moveTo(-hw, -hh) + .lineTo(hw, -hh) + .lineTo(hw, hh) + .lineTo(-hw, hh) + .lineTo(-hw, -hh) - // Collar stubs at the ports so duct runs visually meet metal. + if (holeR > 0) { + const hole = new Path() + hole.absarc(hx, hy, Math.min(holeR, hw * 0.95, hh * 0.95), 0, Math.PI * 2, true) + shape.holes.push(hole) + } + + const geom = new ExtrudeGeometry(shape, { depth: thickness, bevelEnabled: false }) + geom.translate(0, 0, -thickness / 2) + geom.computeVertexNormals() + return new Mesh(geom, material) +} + +/** + * Open-ended sheet-metal sleeves at the supply/return ports. Each collar + * straddles the wall hole — part inside the cabinet, part outside — so a + * duct run slides through the opening instead of dead-ending on a panel. + */ +function buildCollars(node: HvacEquipmentNode, group: Group): void { const collarMaterial = new MeshStandardMaterial({ color: '#c2c2c2', metalness: 0.6, roughness: 0.4, + side: 2, }) - const STUB_LENGTH = 0.12 + const OUT = 0.12 // sleeve length outside the cabinet + const IN = 0.05 // sleeve length reaching inside past the hole + const length = OUT + IN for (const port of localEquipmentPorts(node)) { const radius = (port.diameter * INCHES_TO_METERS) / 2 - const stub = new Mesh( - new CylinderGeometry(radius, radius, STUB_LENGTH, RADIAL_SEGMENTS, 1, false), + const sleeve = new Mesh( + // openEnded so you can see straight through the collar into the hole. + new CylinderGeometry(radius, radius, length, RADIAL_SEGMENTS, 1, true), collarMaterial, ) - stub.name = `equipment-collar-${port.id}` - stub.position.copy(port.position).addScaledVector(port.direction, -STUB_LENGTH / 2) - stub.quaternion.setFromUnitVectors(new Vector3(0, 1, 0), port.direction) - group.add(stub) + sleeve.name = `equipment-collar-${port.id}` + sleeve.position.copy(port.position).addScaledVector(port.direction, (OUT - IN) / 2) + sleeve.quaternion.setFromUnitVectors(UP, port.direction) + group.add(sleeve) + } +} + +/** + * Residential split-system condenser, matching the reference photos: a + * greenish-grey body wrapped in vertical louvered coil fins on all four + * sides, a dark base and dark top frame, and a top-mounted fan with a + * radial wire guard (concentric rings + spokes) over a recessed throat. + */ +function buildCondenser(node: HvacEquipmentNode, group: Group): Group { + const W = node.width + const H = node.height + const D = node.depth + const hw = W / 2 + const hd = D / 2 + + const bodyMat = new MeshStandardMaterial({ + color: CONDENSER_COLOR, + metalness: 0.5, + roughness: 0.5, + }) + const frameMat = new MeshStandardMaterial({ + color: CONDENSER_FRAME_COLOR, + metalness: 0.4, + roughness: 0.6, + }) + const finMat = new MeshStandardMaterial({ + color: CONDENSER_FIN_COLOR, + metalness: 0.65, + roughness: 0.4, + }) + + const frameH = Math.min(0.07, H * 0.09) + const post = Math.min(0.04, W * 0.07) + + // Inner body the fins wrap around (inset so corner posts read proud). + const body = new Mesh(new BoxGeometry(W - post, H - 2 * frameH, D - post), bodyMat) + body.name = 'equipment-body' + body.position.set(0, H / 2, 0) + group.add(body) + + // Dark base + top frame rings. + const base = new Mesh(new BoxGeometry(W, frameH, D), frameMat) + base.name = 'condenser-base' + base.position.set(0, frameH / 2, 0) + group.add(base) + const topFrame = new Mesh(new BoxGeometry(W, frameH, D), frameMat) + topFrame.name = 'condenser-top-frame' + topFrame.position.set(0, H - frameH / 2, 0) + group.add(topFrame) + + // Corner posts. + for (const sx of [-1, 1]) { + for (const sz of [-1, 1]) { + const p = new Mesh(new BoxGeometry(post, H, post), frameMat) + p.name = `condenser-post-${sx > 0 ? 'r' : 'l'}${sz > 0 ? 'f' : 'b'}` + p.position.set(sx * (hw - post / 2), H / 2, sz * (hd - post / 2)) + group.add(p) + } + } + + // Vertical louvered coil fins on all four faces. Each fin is a thin + // vertical slat standing slightly proud of the body; the gaps between + // them read as the coil louvers. + const finY = H / 2 + const finH = H - 2 * frameH + const addFins = ( + count: number, + span: number, + fixed: number, + axis: 'x' | 'z', + sign: number, + ) => { + for (let i = 0; i < count; i++) { + const t = (i + 0.5) / count + const c = -span / 2 + t * span + const fin = + axis === 'x' + ? new Mesh(new BoxGeometry(0.006, finH, 0.018), finMat) + : new Mesh(new BoxGeometry(0.018, finH, 0.006), finMat) + fin.name = `condenser-fin-${axis}${sign > 0 ? '+' : '-'}-${i}` + if (axis === 'x') fin.position.set(c, finY, sign * fixed) + else fin.position.set(sign * fixed, finY, c) + group.add(fin) + } + } + const finsAlongW = Math.max(10, Math.round(W / 0.025)) + const finsAlongD = Math.max(10, Math.round(D / 0.025)) + addFins(finsAlongW, W - post, hd - post / 2 + 0.004, 'x', 1) // front + addFins(finsAlongW, W - post, hd - post / 2 + 0.004, 'x', -1) // back + addFins(finsAlongD, D - post, hw - post / 2 + 0.004, 'z', 1) // right + addFins(finsAlongD, D - post, hw - post / 2 + 0.004, 'z', -1) // left + + buildCondenserFanGuard(group, W, H, D) + return group +} + +/** Top fan: recessed throat + hub/blades under a radial wire guard. */ +function buildCondenserFanGuard(group: Group, W: number, H: number, D: number): void { + const fanMat = new MeshStandardMaterial({ + color: FAN_COLOR, + metalness: 0.3, + roughness: 0.7, + }) + const guardMat = new MeshStandardMaterial({ + color: CONDENSER_FRAME_COLOR, + metalness: 0.4, + roughness: 0.6, + }) + const r = Math.min(W, D) * 0.4 + const deckY = H + + // Recessed throat dropping below the top deck so the fan reads as an + // opening, not a disc sitting on the lid. + const throat = new Mesh( + new CylinderGeometry(r, r, H * 0.12, RADIAL_SEGMENTS, 1, true), + fanMat, + ) + throat.name = 'condenser-fan-throat' + throat.position.set(0, deckY - H * 0.06, 0) + group.add(throat) + + // Hub + swept blades just below the deck. + const bladeMat = new MeshStandardMaterial({ + color: '#5a6066', + metalness: 0.3, + roughness: 0.6, + }) + const hub = new Mesh( + new CylinderGeometry(r * 0.16, r * 0.16, 0.04, SMALL_SEGMENTS), + bladeMat, + ) + hub.name = 'condenser-fan-hub' + hub.position.set(0, deckY - 0.02, 0) + group.add(hub) + const BLADES = 6 + for (let i = 0; i < BLADES; i++) { + const a = (i / BLADES) * Math.PI * 2 + const blade = new Mesh(new BoxGeometry(r * 0.7, 0.006, r * 0.28), bladeMat) + blade.name = `condenser-fan-blade-${i}` + blade.position.set(Math.cos(a) * r * 0.45, deckY - 0.02, Math.sin(a) * r * 0.45) + blade.rotation.y = a + blade.rotation.x = 0.35 + group.add(blade) + } + + // Radial wire guard: concentric rings + spokes, slightly domed above deck. + const guardY = deckY + 0.012 + for (let k = 1; k <= 5; k++) { + const rr = (r * k) / 5 + const ring = new Mesh(new TorusGeometry(rr, 0.004, 6, RADIAL_SEGMENTS), guardMat) + ring.name = `condenser-guard-ring-${k}` + ring.rotation.x = Math.PI / 2 + ring.position.set(0, guardY, 0) + group.add(ring) + } + const SPOKES = 8 + for (let i = 0; i < SPOKES; i++) { + const a = (i / SPOKES) * Math.PI + const spoke = new Mesh(new BoxGeometry(r * 2, 0.004, 0.004), guardMat) + spoke.name = `condenser-guard-spoke-${i}` + spoke.position.set(0, guardY, 0) + spoke.rotation.y = a + group.add(spoke) + } +} + +/** + * Guarded axial fan on the front (+Z) face: a recessed dark throat, a + * spider hub with swept blades, and a concentric wire grille — the look of + * the units in the air-handler reference. Centered at (`x`, `y`) on the + * cabinet front at `frontZ`, radius `r`. + */ +function buildAxialFan( + group: Group, + x: number, + y: number, + frontZ: number, + r: number, + index: number, +): void { + const grilleMat = new MeshStandardMaterial({ + color: FAN_GRILLE_COLOR, + metalness: 0.4, + roughness: 0.6, + }) + const bladeMat = new MeshStandardMaterial({ + color: FAN_BLADE_COLOR, + metalness: 0.3, + roughness: 0.5, + }) + + // Recessed throat behind the blades so the fan reads as an opening. + const throat = new Mesh( + new CylinderGeometry(r, r, 0.04, RADIAL_SEGMENTS), + grilleMat, + ) + throat.name = `fan-${index}-throat` + throat.rotation.x = Math.PI / 2 + throat.position.set(x, y, frontZ - 0.02) + group.add(throat) + + // Hub + swept blades, sitting just proud of the throat. + const hub = new Mesh( + new CylinderGeometry(r * 0.18, r * 0.18, 0.03, SMALL_SEGMENTS), + bladeMat, + ) + hub.name = `fan-${index}-hub` + hub.rotation.x = Math.PI / 2 + hub.position.set(x, y, frontZ + 0.005) + group.add(hub) + + const BLADES = 5 + for (let i = 0; i < BLADES; i++) { + const a = (i / BLADES) * Math.PI * 2 + const blade = new Mesh( + new BoxGeometry(r * 0.34, 0.006, r * 0.78), + bladeMat, + ) + blade.name = `fan-${index}-blade-${i}` + // Position blade outward from hub, then tilt for an airfoil sweep. + const br = r * 0.5 + blade.position.set(x + Math.cos(a) * br, y + Math.sin(a) * br, frontZ + 0.005) + blade.rotation.z = a + blade.rotation.y = 0.5 + group.add(blade) + } + + // Concentric wire grille (rings) over the front of the fan. + const ringMat = new MeshStandardMaterial({ + color: AIR_HANDLER_TRIM, + metalness: 0.5, + roughness: 0.4, + }) + for (let k = 1; k <= 3; k++) { + const rr = (r * k) / 3 + const ring = new Mesh( + new TorusGeometry(rr, 0.004, 6, RADIAL_SEGMENTS), + ringMat, + ) + ring.name = `fan-${index}-grille-${k}` + ring.position.set(x, y, frontZ + 0.02) + group.add(ring) + } +} + +/** + * Air handler / vertical fan-coil: a tall white cabinet with two stacked + * guarded axial fans on the front and finned coil bands down both sides — + * the unit in the reference photo. Keeps the supply/return collars (built + * by the shared `buildCollars`) so duct runs still connect. + */ +function buildAirHandler(node: HvacEquipmentNode, group: Group): Group { + const W = node.width + const H = node.height + const D = node.depth + const hw = W / 2 + const hd = D / 2 + + const cabinetMat = new MeshStandardMaterial({ + color: AIR_HANDLER_COLOR, + metalness: 0.3, + roughness: 0.55, + }) + const trimMat = new MeshStandardMaterial({ + color: AIR_HANDLER_TRIM, + metalness: 0.4, + roughness: 0.5, + }) + const finMat = new MeshStandardMaterial({ + color: COIL_FIN_COLOR, + metalness: 0.6, + roughness: 0.45, + }) + + // Cabinet body + top/bottom trim caps. + const body = new Mesh(new BoxGeometry(W, H, D), cabinetMat) + body.name = 'equipment-body' + body.position.set(0, H / 2, 0) + group.add(body) + const capH = Math.min(0.05, H * 0.06) + const topCap = new Mesh(new BoxGeometry(W * 1.04, capH, D * 1.04), trimMat) + topCap.name = 'air-handler-top-cap' + topCap.position.set(0, H - capH / 2, 0) + group.add(topCap) + const botCap = new Mesh(new BoxGeometry(W * 1.04, capH, D * 1.04), trimMat) + botCap.name = 'air-handler-bottom-cap' + botCap.position.set(0, capH / 2, 0) + group.add(botCap) + + // Two stacked axial fans on the front face, sized to the cabinet width. + const frontZ = hd + 0.001 + const fanR = Math.min(W * 0.4, H * 0.22) + const margin = capH + fanR + H * 0.04 + buildAxialFan(group, 0, H - margin, frontZ, fanR, 0) + buildAxialFan(group, 0, margin, frontZ, fanR, 1) + + // Finned coil bands down both sides (horizontal slats = condenser fins). + const fins = Math.max(6, Math.floor(H / 0.06)) + for (let side = -1; side <= 1; side += 2) { + for (let i = 0; i < fins; i++) { + const fy = capH + ((i + 0.5) / fins) * (H - 2 * capH) + const fin = new Mesh(new BoxGeometry(0.004, 0.012, D * 0.82), finMat) + fin.name = `coil-fin-${side > 0 ? 'r' : 'l'}-${i}` + fin.position.set(side * (hw + 0.002), fy, 0) + group.add(fin) + } } + buildCollars(node, group) return group } From 3b48cc3d4aa494fd5a4f396a7f1d08b5ebe214d1 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:20:31 +0530 Subject: [PATCH 15/59] chore(ifc-converter): refresh generated next-env route-types reference Co-Authored-By: Claude Fable 5 --- apps/ifc-converter/next-env.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/ifc-converter/next-env.d.ts b/apps/ifc-converter/next-env.d.ts index c4b7818fb..9edff1c7c 100644 --- a/apps/ifc-converter/next-env.d.ts +++ b/apps/ifc-converter/next-env.d.ts @@ -1,6 +1,6 @@ /// /// -import "./.next/dev/types/routes.d.ts"; +import "./.next/types/routes.d.ts"; // NOTE: This file should not be edited // see https://nextjs.org/docs/app/api-reference/config/typescript for more information. From d4b233172a7fccda79cd0c59b0d1fc5d8aee9a81 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:20:31 +0530 Subject: [PATCH 16/59] feat(core): port-connectivity service MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reads the mated-joint relationship back out of coinciding ports so an edit to one node carries its neighbours along: a moved fitting stretches the duct endpoints touching its collars and rigidly drags fittings mated collar-to-collar. Propagation is deliberately one hop — no runaway network rearrangement. Pure logic (def.ports + arithmetic), consumed by the editor move tool and the duct-segment handle system. Co-Authored-By: Claude Fable 5 --- packages/core/src/services/index.ts | 6 + .../core/src/services/port-connectivity.ts | 189 ++++++++++++++++++ 2 files changed, 195 insertions(+) create mode 100644 packages/core/src/services/port-connectivity.ts diff --git a/packages/core/src/services/index.ts b/packages/core/src/services/index.ts index 6ee342bcc..91474aa31 100644 --- a/packages/core/src/services/index.ts +++ b/packages/core/src/services/index.ts @@ -49,6 +49,12 @@ export { moveToward, resolveMovable, } from './movement' +export { + analyzePortConnectivity, + type PortConnection, + type PortConnectivity, + resolveConnectivityUpdates, +} from './port-connectivity' export { DEFAULT_ANGLE_STEP, DEFAULT_GRID_STEP, diff --git a/packages/core/src/services/port-connectivity.ts b/packages/core/src/services/port-connectivity.ts new file mode 100644 index 000000000..0c722d2c9 --- /dev/null +++ b/packages/core/src/services/port-connectivity.ts @@ -0,0 +1,189 @@ +import { nodeRegistry } from '../registry' +import type { AnyNode, AnyNodeId } from '../schema' + +/** + * Connectivity-aware editing for port-bearing kinds (HVAC ductwork). + * + * Two nodes are "connected" when a port of one coincides in space with a + * port of the other — exactly how the placement tools mate a fitting onto + * a duct end (they snap the fitting's collar onto the run's open port). + * This service reads that relationship back out so an edit to one node can + * carry its neighbours along. + * + * Pure logic: it asks each node for its ports via `def.ports` (level-local + * meters) and does arithmetic. No Three.js, no rendering — it lives in + * core and is consumed by the editor's move tool and the duct-segment + * system alike. + * + * Propagation is intentionally **one hop**: a moved fitting stretches the + * ducts touching it (their near endpoint follows) and rigidly drags any + * fitting mated collar-to-collar, but it does NOT chase the far end of + * those ducts or anything beyond. Bounded and predictable — no runaway + * network rearrangement. + */ + +type Point = readonly [number, number, number] + +/** Distance (meters) under which two ports count as the same joint. Joints + * formed by placement snapping coincide to sub-millimeter; 5 cm leaves + * generous slack for grid-snapped hand placement without false matches. */ +const COINCIDENT_EPS_M = 0.05 + +/** A node attached to one of the moved node's ports, plus how it follows. */ +export type PortConnection = + | { + /** Partner is a duct run: the endpoint touching the moved port slides + * to track it (one hop — the far endpoint stays put, stretching the + * run). */ + kind: 'duct-endpoint' + nodeId: AnyNodeId + /** Index in the duct's `path` that tracks the moved port. */ + pathIndex: number + /** The moved node's port id this endpoint follows. */ + movedPortId: string + /** The duct's full path at edit-start (other points are preserved). */ + startPath: Point[] + } + | { + /** Partner is another fitting mated collar-to-collar: it translates + * rigidly so its collar stays on the moved collar. */ + kind: 'rigid-node' + nodeId: AnyNodeId + movedPortId: string + /** Partner node's `position` at edit-start. */ + startPosition: Point + } + +export type PortConnectivity = { + movedNodeId: AnyNodeId + /** The moved node's port world positions at edit-start, keyed by port id. + * Used as the reference each connection's delta is measured from. */ + startMovedPorts: Record + connections: PortConnection[] +} + +function portsOf(node: AnyNode): ReadonlyArray<{ id: string; position: Point }> | undefined { + return nodeRegistry.get(node.type)?.ports?.(node) as + | ReadonlyArray<{ id: string; position: Point }> + | undefined +} + +function distSq(a: Point, b: Point): number { + const dx = a[0] - b[0] + const dy = a[1] - b[1] + const dz = a[2] - b[2] + return dx * dx + dy * dy + dz * dz +} + +/** + * Snapshot which nodes are connected to `movedNode`'s ports, taken at the + * start of a move/resize. Call once before the drag; feed the result to + * `resolveConnectivityUpdates` on every frame. + * + * Only duct-segment (endpoint stretch) and duct-fitting (rigid follow) + * partners are tracked — terminals and equipment usually mount to a + * surface and shouldn't be yanked off it when an adjacent fitting nudges. + */ +export function analyzePortConnectivity( + movedNode: AnyNode, + nodes: Record, +): PortConnectivity { + const movedPorts = portsOf(movedNode) ?? [] + const startMovedPorts: Record = {} + for (const p of movedPorts) startMovedPorts[p.id] = p.position + + const connections: PortConnection[] = [] + const epsSq = COINCIDENT_EPS_M * COINCIDENT_EPS_M + + for (const other of Object.values(nodes)) { + if (!other || other.id === movedNode.id) continue + if (other.type !== 'duct-segment' && other.type !== 'duct-fitting') continue + const otherPorts = portsOf(other) + if (!otherPorts) continue + + for (const op of otherPorts) { + // Find which of the moved node's ports this partner port sits on. + let matchedId: string | null = null + for (const mp of movedPorts) { + if (distSq(op.position, mp.position) <= epsSq) { + matchedId = mp.id + break + } + } + if (!matchedId) continue + + if (other.type === 'duct-segment') { + const path = (other as unknown as { path: Point[] }).path + if (!Array.isArray(path) || path.length < 2) continue + // Port id 'start' → first point, 'end' → last point. + const pathIndex = op.id === 'start' ? 0 : path.length - 1 + connections.push({ + kind: 'duct-endpoint', + nodeId: other.id, + pathIndex, + movedPortId: matchedId, + startPath: path.map((p) => [...p] as Point), + }) + } else { + const position = (other as unknown as { position?: Point }).position + if (!position) continue + connections.push({ + kind: 'rigid-node', + nodeId: other.id, + movedPortId: matchedId, + startPosition: [position[0], position[1], position[2]], + }) + } + } + } + + return { movedNodeId: movedNode.id as AnyNodeId, connections, startMovedPorts } +} + +/** + * Given the moved node in its live (in-drag) transform, produce the patches + * that keep every connected node attached. `previewNode` is the moved node + * with its current drag position/rotation applied so its ports recompute. + * + * - Duct endpoint: set the tracked path point to the moved port's new + * position (the joint stays welded; the run stretches). + * - Rigid fitting: translate by the moved port's delta so its mated collar + * rides along. + */ +export function resolveConnectivityUpdates( + connectivity: PortConnectivity, + previewNode: AnyNode, +): { id: AnyNodeId; data: Partial }[] { + const newPorts = portsOf(previewNode) ?? [] + const newById: Record = {} + for (const p of newPorts) newById[p.id] = p.position + + const updates: { id: AnyNodeId; data: Partial }[] = [] + for (const conn of connectivity.connections) { + const start = connectivity.startMovedPorts[conn.movedPortId] + const now = newById[conn.movedPortId] + if (!start || !now) continue + + if (conn.kind === 'duct-endpoint') { + const path = conn.startPath.map((p, i) => + i === conn.pathIndex ? ([now[0], now[1], now[2]] as Point) : ([...p] as Point), + ) + updates.push({ id: conn.nodeId, data: { path } as Partial }) + } else { + const dx = now[0] - start[0] + const dy = now[1] - start[1] + const dz = now[2] - start[2] + updates.push({ + id: conn.nodeId, + data: { + position: [ + conn.startPosition[0] + dx, + conn.startPosition[1] + dy, + conn.startPosition[2] + dz, + ], + } as Partial, + }) + } + } + return updates +} From 239a946fbbdf057ec635deef78641aed6d019c09 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:20:45 +0530 Subject: [PATCH 17/59] feat(core): cursorAttached and portSnap options on the movable capability MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - cursorAttached: pin the dragged node to the cursor instead of the offset-preserving drag — small connector-like kinds (duct fittings) read as lagging behind the mouse otherwise. - portSnap: magnetically shift the dragged node so its closest own port mates onto a nearby scene port (optionally filtered by distribution system), e.g. a register collar onto a duct run end. Alt bypasses. Co-Authored-By: Claude Fable 5 --- packages/core/src/registry/types.ts | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/packages/core/src/registry/types.ts b/packages/core/src/registry/types.ts index 17acf47cd..0a33262ed 100644 --- a/packages/core/src/registry/types.ts +++ b/packages/core/src/registry/types.ts @@ -1262,6 +1262,31 @@ export type CapabilityCtx = { node: AnyNode } export type MovableConfig = { axes: ReadonlyArray<'x' | 'y' | 'z'> gridSnap?: boolean + /** + * Pin the dragged node to the cursor (absolute placement) instead of the + * default offset-preserving drag, where the node moves by the cursor's + * delta from where the drag started. Offset preservation suits large + * furniture you grab by an edge; small connector-like kinds (duct + * fittings) read as "lagging behind the mouse" — they want the cursor. + */ + cursorAttached?: boolean + /** + * Magnetically snap one of this kind's own ports onto a nearby scene + * port while dragging — e.g. a register's collar onto a duct run end. + * The dragged node shifts in XZ so its closest matching port lands on + * the target port. Alt bypasses the snap. Kinds without `def.ports` + * can't use this. Snap takes precedence over grid / alignment snap. + */ + portSnap?: { + /** + * Distribution loops a target port must belong to (e.g. + * `['supply', 'return']`). A target port with no `system` always + * matches. Omit to match every port. + */ + systems?: readonly string[] + /** Snap radius in meters (XZ). Defaults to 0.5. */ + radius?: number + } override?: (ctx: CapabilityCtx) => MovableConfig | null } From 59a7f31387d5f470d3655e61e9207ab81ce7d47c Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:20:45 +0530 Subject: [PATCH 18/59] feat(nodes): system-scoped port queries MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit collectScenePorts takes a PortFilter ({ excludeNodeId, systems }) so each tool snaps only to its own distribution loop — duct tools pass the air systems and ignore refrigerant service valves; the lineset tool passes refrigerant and ignores duct collars. DUCT_PORT_SYSTEMS / REFRIGERANT_PORT_SYSTEMS constants name the loops. Co-Authored-By: Claude Fable 5 --- packages/nodes/src/shared/ports.ts | 30 ++++++++++++++++++++++++++---- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/packages/nodes/src/shared/ports.ts b/packages/nodes/src/shared/ports.ts index 78d89dc91..e37d038ec 100644 --- a/packages/nodes/src/shared/ports.ts +++ b/packages/nodes/src/shared/ports.ts @@ -3,20 +3,42 @@ import { type AnyNodeId, type NodePort, nodeRegistry, useScene } from '@pascal-a /** A port plus the scene node that owns it. */ export type ScenePort = NodePort & { nodeId: AnyNodeId } +/** Air-loop port systems — what duct runs and fittings snap to. */ +export const DUCT_PORT_SYSTEMS = ['supply', 'return'] as const +/** Refrigerant-loop port system — what linesets snap to. */ +export const REFRIGERANT_PORT_SYSTEMS = ['refrigerant'] as const + +/** + * Filter narrowing which ports a tool will snap to. + * - `excludeNodeId` skips the node currently being drawn/placed so a + * tool doesn't snap to its own preview. + * - `systems` keeps only ports on the listed distribution loops — duct + * tools pass the air loops so they ignore refrigerant service ports; + * the lineset tool passes `'refrigerant'` so it ignores duct collars. + * A port with no `system` matches any filter. + */ +export type PortFilter = { + excludeNodeId?: AnyNodeId + systems?: readonly string[] +} + /** * Gather every typed port in the scene by asking each node's registered * `def.ports`. Positions are level-local meters (the kind applies its own - * transform inside `def.ports`). `excludeNodeId` skips the node currently - * being drawn/placed so a tool doesn't snap to its own preview. + * transform inside `def.ports`). */ -export function collectScenePorts(excludeNodeId?: AnyNodeId): ScenePort[] { +export function collectScenePorts(filter: PortFilter = {}): ScenePort[] { + const { excludeNodeId, systems } = filter const { nodes } = useScene.getState() const result: ScenePort[] = [] for (const node of Object.values(nodes)) { if (!node || node.id === excludeNodeId) continue const ports = nodeRegistry.get(node.type)?.ports?.(node) if (!ports) continue - for (const port of ports) result.push({ ...port, nodeId: node.id }) + for (const port of ports) { + if (systems && port.system !== undefined && !systems.includes(port.system)) continue + result.push({ ...port, nodeId: node.id }) + } } return result } From a5156984e69c89e9df20b271a4fac442332da61f Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:20:45 +0530 Subject: [PATCH 19/59] fix(viewer): keep a node's X/Z rotation under live move transforms The live transform carries only the plan-view yaw; the renderer was zeroing the other euler components, visually flattening 3D-oriented kinds (a duct-fitting riser at X=pi/2) to horizontal mid-drag. Merge the live yaw into the node's own X/Z instead, matching the move tool's commit, which also replaces only the Y component. Co-Authored-By: Claude Fable 5 --- .../renderers/parametric-node-renderer.tsx | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/viewer/src/components/renderers/parametric-node-renderer.tsx b/packages/viewer/src/components/renderers/parametric-node-renderer.tsx index 4cd6f23fc..65984c236 100644 --- a/packages/viewer/src/components/renderers/parametric-node-renderer.tsx +++ b/packages/viewer/src/components/renderers/parametric-node-renderer.tsx @@ -70,12 +70,16 @@ export const ParametricNodeRenderer = ({ node }: { node: AnyNode }) => { const position = liveTransform?.position ?? overridePosition ?? n.position ?? [0, 0, 0] const rawRotation = overrideRotation ?? n.rotation + const baseRotation: [number, number, number] = + typeof rawRotation === 'number' ? [0, rawRotation, 0] : (rawRotation ?? [0, 0, 0]) + // The live transform carries only the plan-view Y rotation; keep the + // node's own X/Z so 3D-oriented kinds (e.g. a duct-fitting riser at + // X=π/2) don't visually flatten to horizontal mid-drag. Matches the + // move tool's commit, which also replaces only the Y component. const rotation: [number, number, number] = liveTransform?.rotation !== undefined - ? [0, liveTransform.rotation, 0] - : typeof rawRotation === 'number' - ? [0, rawRotation, 0] - : (rawRotation ?? [0, 0, 0]) + ? [baseRotation[0], liveTransform.rotation, baseRotation[2]] + : baseRotation return ( Date: Thu, 11 Jun 2026 18:20:55 +0530 Subject: [PATCH 20/59] feat(editor): port snap, cursor attach, and connectivity in the move tool The registry move tool now honours the new movable options and carries the duct network along: - cursorAttached kinds pin to the cursor instead of preserving the grab offset - portSnap kinds magnetically shift so their closest own port mates onto a nearby scene port (system-filtered, Alt bypasses, takes precedence over grid / alignment snap) - analyzePortConnectivity at move start + resolveConnectivityUpdates per tick: ducts mated to the moved node's ports stretch their near endpoint to follow, collar-to-collar fittings translate rigidly, and the whole set commits as one undo step Co-Authored-By: Claude Fable 5 --- .../registry/move-registry-node-tool.tsx | 167 +++++++++++++++++- 1 file changed, 165 insertions(+), 2 deletions(-) diff --git a/packages/editor/src/components/tools/registry/move-registry-node-tool.tsx b/packages/editor/src/components/tools/registry/move-registry-node-tool.tsx index a6262973a..62268fd8b 100644 --- a/packages/editor/src/components/tools/registry/move-registry-node-tool.tsx +++ b/packages/editor/src/components/tools/registry/move-registry-node-tool.tsx @@ -5,6 +5,7 @@ import '../../../three-types' import { type AnyNode, type AnyNodeId, + analyzePortConnectivity, collectAlignmentAnchors, type EventSuffix, emitter, @@ -12,9 +13,12 @@ import { movingFootprintAnchors, type NodeEvent, nodeRegistry, + type PortConnectivity, resolveAlignment, + resolveConnectivityUpdates, sceneRegistry, spatialGridManager, + useLiveNodeOverrides, useLiveTransforms, useScene, } from '@pascal-app/core' @@ -43,6 +47,65 @@ const snapToGridStep = (value: number) => { /** 90° steps, matching the GLB item placement rotation. */ const ROTATION_STEP = Math.PI / 2 +/** Default magnetic radius (meters, XZ) for `movable.portSnap`. */ +const PORT_SNAP_RADIUS_M = 0.5 + +/** + * Magnetic port snap for a dragged node: if one of the node's own ports + * (read live from `def.ports`) lands within `radius` of a matching scene + * port at the candidate XZ, return the node XZ that mates them exactly. + * + * Pure core: ports come through `nodeRegistry` so this stays layer-clean. + * Ports are level-local meters — the same frame as the cursor's + * `localPosition`, so no extra transform is needed. The dragged node's + * ports move rigidly with its position, so a port at candidate `(x,z)` + * sits at `portStored + (candidate - nodeStored)`. We pick the closest + * (own-port, target-port) pair and shift the node so they coincide in XZ. + */ +function resolvePortSnap( + node: AnyNode, + candidate: [number, number], + config: { systems?: readonly string[]; radius?: number }, +): [number, number] | null { + const nodePos = (node as { position?: [number, number, number] }).position + if (!nodePos) return null + const ownPorts = nodeRegistry.get(node.type)?.ports?.(node) + if (!ownPorts || ownPorts.length === 0) return null + + const radius = config.radius ?? PORT_SNAP_RADIUS_M + const radiusSq = radius * radius + const { systems } = config + const dragDx = candidate[0] - nodePos[0] + const dragDz = candidate[1] - nodePos[2] + + const nodes = useScene.getState().nodes + let bestDistSq = radiusSq + let snap: [number, number] | null = null + + for (const node2 of Object.values(nodes)) { + if (!node2 || node2.id === node.id) continue + const targets = nodeRegistry.get(node2.type)?.ports?.(node2) + if (!targets) continue + for (const target of targets) { + if (systems && target.system !== undefined && !systems.includes(target.system)) continue + for (const own of ownPorts) { + // Own port at the candidate position = stored port + drag delta. + const ownX = own.position[0] + dragDx + const ownZ = own.position[2] + dragDz + const dx = target.position[0] - ownX + const dz = target.position[2] - ownZ + const distSq = dx * dx + dz * dz + if (distSq <= bestDistSq) { + bestDistSq = distSq + // Shift the node so this own port lands on the target (XZ only). + snap = [candidate[0] + dx, candidate[1] + dz] + } + } + } + } + return snap +} + /** Figma-style alignment-snap threshold (meters), matching the 2D * floor-plan overlay's `ALIGNMENT_THRESHOLD_M`. 8 cm gives a magnetic pull * without fighting grid snap. Fixed for v1 — no zoom-scaling in 3D. */ @@ -144,6 +207,15 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { // and bumped by R/T. Applied imperatively + mirrored to `useLiveTransforms`, // and committed to the scene on drop. const rotationRef = useRef(originalRotationY) + // Snapshot of which ducts / fittings are mated to this node's ports at + // drag-start (duct fittings only). Drives the "connected ductwork follows" + // behaviour: connected nodes preview through `useLiveNodeOverrides` during + // the drag and commit alongside the moved node on drop. Null for kinds with + // no ports, so every other movable kind is unaffected. + const connectivityRef = useRef(null) + // Node ids this drag has pushed live overrides onto — cleared on + // commit / cancel / unmount so a follow-on drag starts clean. + const overriddenIdsRef = useRef([]) // Shelf placement shows the same green/red footprint box GLB items use // (instead of the vertical-arrow cursor) and refuses an invalid drop unless @@ -162,6 +234,15 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { const [cursorRotationY, setCursorRotationY] = useState(originalRotationY) const { isFreshPlacement, previewVisible, revealFreshPlacement, useAbsoluteCursorPlacement } = useFreshPlacementVisibility({ node }) + // Kinds that declare `movable.cursorAttached` (duct fittings) pin to the + // cursor instead of preserving the grab offset — small connector-like + // nodes read an offset drag as "lagging behind the mouse". + const cursorAttached = nodeRegistry.get(node.type)?.capabilities?.movable?.cursorAttached === true + // Kinds that declare `movable.portSnap` (duct terminals) magnetically + // mate one of their own ports onto a nearby scene port while dragging — + // a register collar drops onto a duct run end. Reads `def.ports` through + // the core registry, so it stays layer-clean (no @pascal-app/nodes import). + const portSnapConfig = nodeRegistry.get(node.type)?.capabilities?.movable?.portSnap ?? null // Mirrors of `valid` / Shift for the event handlers inside the effect, which // can't read React state without stale closures. const validRef = useRef(true) @@ -211,6 +292,45 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { } } + // Connectivity follow (duct fittings): the moved node with its live drag + // transform, so `def.ports` recomputes for `resolveConnectivityUpdates`. + // Uses the logical (un-stacked) position + Y rotation that commit writes, + // not the floor-lifted visual position. + const buildPreviewNode = (position: [number, number, number], rotationY: number): AnyNode => + ({ + ...(node as Record), + position, + rotation: toCommitRotation(rotationY), + }) as AnyNode + + // Resolve the patches that keep connected ductwork attached and preview + // them through `useLiveNodeOverrides` (transient — no history churn; + // GeometrySystem merges overrides via getEffectiveNode). Each connected + // node is re-dirtied so its geometry rebuilds against the new override. + const previewConnectivity = (position: [number, number, number], rotationY: number) => { + const connectivity = connectivityRef.current + if (!connectivity) return + const updates = resolveConnectivityUpdates( + connectivity, + buildPreviewNode(position, rotationY), + ) + if (updates.length === 0) return + useLiveNodeOverrides + .getState() + .setMany(updates.map((u) => [u.id, u.data as Record] as const)) + overriddenIdsRef.current = updates.map((u) => u.id) + for (const u of updates) { + if (useScene.getState().nodes[u.id]) useScene.getState().markDirty(u.id) + } + } + + const clearConnectivityOverrides = () => { + for (const id of overriddenIdsRef.current) { + useLiveNodeOverrides.getState().clear(id) + if (useScene.getState().nodes[id]) useScene.getState().markDirty(id) + } + } + setCursorPosition(getVisualPosition(originalPosition, originalRotationY)) // Re-run the floor-collision check at the live cursor + rotation and push @@ -276,6 +396,16 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { useViewer.getState().selection.levelId ?? node.parentId, ) + // Connectivity snapshot (existing port-bearing nodes only — fresh + // placements aren't connected to anything yet). Records which ducts / + // fittings are mated to this node's ports so they can follow the drag. + connectivityRef.current = null + overriddenIdsRef.current = [] + if (!isNew && nodeRegistry.get(node.type)?.ports) { + const snapshot = analyzePortConnectivity(node, useScene.getState().nodes) + if (snapshot.connections.length > 0) connectivityRef.current = snapshot + } + const onGridMove = (event: GridEvent) => { const rawX = event.localPosition[0] const rawZ = event.localPosition[2] @@ -285,7 +415,7 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { cursor: [rawX, rawZ], original: [originalPosition[0], originalPosition[2]], anchor: dragAnchorRef.current, - mode: useAbsoluteCursorPlacement ? 'absolute' : 'relative', + mode: useAbsoluteCursorPlacement || cursorAttached ? 'absolute' : 'relative', snap: snapToGridStep, }) dragAnchorRef.current = resolved.anchor @@ -312,6 +442,18 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { useAlignmentGuides.getState().clear() } + // Magnetic port snap (duct terminals): mate a collar onto a nearby + // duct run end. Takes precedence over grid / alignment snap; Alt + // bypasses. Only kinds that opted in via `movable.portSnap`. + if (!bypass && portSnapConfig) { + const mated = resolvePortSnap(node, [x, z], portSnapConfig) + if (mated) { + x = mated[0] + z = mated[1] + useAlignmentGuides.getState().clear() + } + } + const position: [number, number, number] = [x, originalPosition[1], z] const visualPosition = getVisualPosition(position) hasMovedRef.current = true @@ -336,6 +478,8 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { rotation: rotationRef.current, }) markMovedNodeDirty() + // Carry connected ductwork along (preview only — committed on drop). + previewConnectivity(position, rotationRef.current) const prev = previousSnapRef.current if (!prev || prev[0] !== x || prev[1] !== z) { @@ -393,8 +537,18 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { committedId = finalId } } else { + // Fold the connected-ductwork follow-updates into the SAME + // batch as the moved node so the whole thing is one undo step. + const connectivityUpdates = connectivityRef.current + ? resolveConnectivityUpdates( + connectivityRef.current, + buildPreviewNode(position, rotationRef.current), + ).filter((u) => useScene.getState().nodes[u.id]) + : [] useScene.temporal.getState().resume() - useScene.getState().updateNode(node.id, data) + useScene + .getState() + .updateNodes([{ id: node.id as AnyNodeId, data }, ...connectivityUpdates]) useScene.temporal.getState().pause() committed = true } @@ -420,6 +574,9 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { // canonical position, then restamp the lifted presentation Y for the // current frame. useLiveTransforms.getState().clear(node.id) + // Connected ductwork is now committed to the store — drop its live + // overrides so the renderers read the canonical path/position. + clearConnectivityOverrides() const mesh = sceneRegistry.nodes.get(node.id) if (mesh) { mesh.position.set(...visualPosition) @@ -481,6 +638,8 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { rotation: rotationRef.current, }) markMovedNodeDirty() + // Rotating the fitting swings its collars — connected ducts follow. + previewConnectivity(position, rotationRef.current) // Rotation changes the footprint's collision span — re-check validity. recomputeValidity() } @@ -508,6 +667,7 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { const onCancel = () => { useLiveTransforms.getState().clear(node.id) + clearConnectivityOverrides() if (isNew) { useScene.getState().deleteNode(node.id as AnyNodeId) } else { @@ -544,6 +704,7 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { const finalisedBy2D = useEditor.getState().movingNodeOrigin === '2d' if (!(committed || isNew || finalisedBy2D)) { useLiveTransforms.getState().clear(node.id) + clearConnectivityOverrides() sceneRegistry.nodes .get(node.id) ?.position.set(...getVisualPosition(originalPosition, originalRotationY)) @@ -553,6 +714,8 @@ export function MoveRegistryNodeTool({ node }: { node: AnyNode }) { } }, [ boxDimensions, + cursorAttached, + portSnapConfig, exitMoveMode, isFreshPlacement, node, From 2ad4ea795eb445660e0ee9c34141aa6aaf619cd9 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:21:12 +0530 Subject: [PATCH 21/59] feat(nodes): ceiling mode and diameter stepping in the duct draw tool MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - C toggles ceiling-level placement: the start point lands with the duct top hugging the level's ceiling (centerline = getLevelHeight − radius, newly exported from the viewer) instead of the floor. - [ / ] step the duct diameter through nominal US round sizes; the ghost preview, HUD, and committed node all follow, seeded from useEditor.toolDefaults when a host app primes one. - Port queries scoped to the air loop so the cursor ignores refrigerant service valves. Co-Authored-By: Claude Fable 5 --- packages/nodes/src/duct-segment/definition.ts | 2 + packages/nodes/src/duct-segment/tool.tsx | 129 +++++++++++++++--- packages/viewer/src/index.ts | 2 +- 3 files changed, 113 insertions(+), 20 deletions(-) diff --git a/packages/nodes/src/duct-segment/definition.ts b/packages/nodes/src/duct-segment/definition.ts index e082fbc3f..b1e5581e3 100644 --- a/packages/nodes/src/duct-segment/definition.ts +++ b/packages/nodes/src/duct-segment/definition.ts @@ -101,6 +101,8 @@ export const ductSegmentDefinition: NodeDefinition = { { key: 'Click again', label: 'Place it (locked to 45°)' }, { key: 'Shift', label: 'Free angle' }, { key: 'Alt + drag', label: 'Go vertical ↕, click to place' }, + { key: '[ / ]', label: 'Duct diameter down / up' }, + { key: 'C', label: 'Ceiling / floor height' }, { key: 'Esc', label: 'Cancel start point' }, ], diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx index 27cac5916..df9eca8dd 100644 --- a/packages/nodes/src/duct-segment/tool.tsx +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -2,11 +2,11 @@ import { DuctSegmentNode, emitter, type GridEvent, useScene } from '@pascal-app/core' import { DimensionPill, markToolCancelConsumed, triggerSFX, useEditor } from '@pascal-app/editor' -import { useViewer } from '@pascal-app/viewer' +import { getLevelHeight, useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' import { type Group, Vector3 } from 'three' -import { collectScenePorts, findNearestPortXZ } from '../shared/ports' +import { collectScenePorts, DUCT_PORT_SYSTEMS, findNearestPortXZ } from '../shared/ports' import { ductSegmentDefinition } from './definition' /** @@ -23,9 +23,19 @@ import { ductSegmentDefinition } from './definition' * release the lock. * - Hold **Alt** → vertical mode. Cursor XZ locks to the start; * vertical mouse motion drives Y. Click commits the riser segment. + * - **[ / ]** step the duct diameter through nominal US sizes; the + * ghost preview and the committed node both use it. + * - **C** toggles ceiling-level placement: the start point lands at + * the level's ceiling height (duct top hugging the ceiling) instead + * of the floor. Subsequent points inherit the start's Y as usual. * - Esc clears an anchored start point. */ const PREVIEW_OPACITY = 0.55 +/** + * Nominal US round-duct sizes (inches): 4"–10" in 1" steps, 12"+ in 2" + * steps — matches what flex and rigid round actually ship in. + */ +const DUCT_DIAMETERS_IN = [4, 5, 6, 7, 8, 9, 10, 12, 14, 16, 18, 20] as const /** Snap radius (meters) for joining onto an existing duct's start/end. */ const ENDPOINT_SNAP_RADIUS_M = 0.5 /** Angle step (radians) for the XZ angle lock — 45°. */ @@ -49,7 +59,11 @@ function snap(value: number, step: number): number { * adopts the port's full 3D position. */ function findNearbyPort(point: [number, number, number]): [number, number, number] | null { - const port = findNearestPortXZ(point, collectScenePorts(), ENDPOINT_SNAP_RADIUS_M) + const port = findNearestPortXZ( + point, + collectScenePorts({ systems: DUCT_PORT_SYSTEMS }), + ENDPOINT_SNAP_RADIUS_M, + ) return port ? [port.position[0], port.position[1], port.position[2]] : null } @@ -80,8 +94,19 @@ const DuctSegmentTool = () => { const activeLevelId = useViewer((s) => s.selection.levelId) const unit = useViewer((s) => s.unit) const cursorRef = useRef(null) + // Diameter for the next committed segment. Seeded from `toolDefaults` + // (host-placed preset) when present, else the kind's schema default. + const [diameter, setDiameter] = useState(() => { + const seeded = ( + useEditor.getState().toolDefaults['duct-segment'] as { diameter?: number } | undefined + )?.diameter + return seeded ?? (ductSegmentDefinition.defaults() as { diameter: number }).diameter + }) const [draftPoints, setDraftPoints] = useState>([]) const [cursorPos, setCursorPos] = useState<[number, number, number] | null>(null) + // Ceiling mode (toggle with C): the first point lands at the level's + // ceiling height (duct top hugging the ceiling) instead of the floor. + const [ceilingMode, setCeilingMode] = useState(false) // When the cursor is within snap range of an existing duct's endpoint we // surface a brighter indicator and commit at the endpoint's exact coords. const [snapTarget, setSnapTarget] = useState<[number, number, number] | null>(null) @@ -94,6 +119,10 @@ const DuctSegmentTool = () => { draftRef.current = draftPoints const cursorPosRef = useRef(cursorPos) cursorPosRef.current = cursorPos + const diameterRef = useRef(diameter) + diameterRef.current = diameter + const ceilingModeRef = useRef(ceilingMode) + ceilingModeRef.current = ceilingMode // Anchor captured when Alt is pressed: screen Y at that moment and the // base elevation (= last point's Y). Cleared on Alt release. const altAnchorRef = useRef<{ clientY: number; baseY: number } | null>(null) @@ -115,10 +144,13 @@ const DuctSegmentTool = () => { Math.abs(start[2] - end[2]) < 1e-4 if (sameSpot) return const defaults = ductSegmentDefinition.defaults() + const toolDefaults = useEditor.getState().toolDefaults['duct-segment'] ?? {} const duct = DuctSegmentNode.parse({ ...defaults, + ...toolDefaults, name: 'Duct run', path: [start, end], + diameter: diameterRef.current, }) useScene.getState().createNode(duct, activeLevelId) triggerSFX('sfx:item-place') @@ -128,21 +160,33 @@ const DuctSegmentTool = () => { setAltActive(false) } + // Base Y for a fresh run's first point: floor (0) by default, or just + // below the level's ceiling in ceiling mode so the duct's top hugs the + // ceiling (centerline = ceiling height − radius). + const resolveBaseY = (): number => { + if (!ceilingModeRef.current) return 0 + const ceiling = getLevelHeight(activeLevelId, useScene.getState().nodes) + const radius = (diameterRef.current * 0.0254) / 2 + return Math.max(0, ceiling - radius) + } + const resolveSnappedPoint = ( event: GridEvent, ): { point: [number, number, number]; snapped: [number, number, number] | null } => { const last = draftRef.current.at(-1) - // First point of the run: free grid-snapped placement at Y=0 (floor). - // Endpoint snap can still join into an existing run. + // First point of the run: grid-snapped placement at the base Y (floor, + // or ceiling height in ceiling mode). Endpoint snap can still join an + // existing run. if (!last) { - const raw: [number, number, number] = [event.localPosition[0], 0, event.localPosition[2]] + const baseY = resolveBaseY() + const raw: [number, number, number] = [event.localPosition[0], baseY, event.localPosition[2]] if (event.nativeEvent?.altKey !== true) { const target = findNearbyPort(raw) if (target) return { point: target, snapped: target } } const step = useEditor.getState().gridSnapStep return { - point: [snap(raw[0], step), 0, snap(raw[2], step)], + point: [snap(raw[0], step), baseY, snap(raw[2], step)], snapped: null, } } @@ -242,12 +286,41 @@ const DuctSegmentTool = () => { setAltActive(false) } + const stepDiameter = (step: 1 | -1) => { + const sizes = DUCT_DIAMETERS_IN + const current = diameterRef.current + // Nearest catalogue index, then step — handles seeded off-catalogue + // values (e.g. a preset's 7.5") gracefully. + let nearest = 0 + for (let i = 1; i < sizes.length; i++) { + if (Math.abs(sizes[i]! - current) < Math.abs(sizes[nearest]! - current)) nearest = i + } + const next = sizes[Math.min(sizes.length - 1, Math.max(0, nearest + step))]! + if (next === current) return + setDiameter(next) + triggerSFX('sfx:grid-snap') + } + const onKeyDown = (e: KeyboardEvent) => { const tag = (e.target as HTMLElement | null)?.tagName if (tag === 'INPUT' || tag === 'TEXTAREA') return if (e.key === 'Alt') { e.preventDefault() enterAltMode() + } else if (e.key === '[') { + e.preventDefault() + stepDiameter(-1) + } else if (e.key === ']') { + e.preventDefault() + stepDiameter(1) + } else if (e.key === 'c' || e.key === 'C') { + // Toggle ceiling mode. Only the first point reads the base Y, so + // toggling mid-run is a no-op until the next fresh segment — flip + // it only while unanchored to keep the behaviour predictable. + if (draftRef.current.length > 0) return + e.preventDefault() + setCeilingMode((m) => !m) + triggerSFX('sfx:grid-snap') } } @@ -295,14 +368,18 @@ const DuctSegmentTool = () => { // Wall-style dimension pill above the cursor: absolute world coords before // the first point, signed per-axis deltas from the last placed point while // a segment is in flight. The actively-driven axis is emphasised — Y in - // Alt-vertical mode, otherwise whichever horizontal axis dominates. + // Alt-vertical mode, otherwise whichever horizontal axis dominates. A + // trailing Ø readout shows the diameter the next click commits ([ / ]). const pillParts = cursorPos - ? (['x', 'y', 'z'] as const).map((axis, i) => ({ - key: axis, - prefix: axis.toUpperCase(), - value: last ? cursorPos[i]! - last[i]! : cursorPos[i]!, - signed: !!last, - })) + ? [ + ...(['x', 'y', 'z'] as const).map((axis, i) => ({ + key: axis, + prefix: axis.toUpperCase(), + value: last ? cursorPos[i]! - last[i]! : cursorPos[i]!, + signed: !!last, + })), + { key: 'diameter', prefix: 'Ø', value: diameter * 0.0254, signed: false }, + ] : null const pillPrimary = last && cursorPos @@ -328,7 +405,14 @@ const DuctSegmentTool = () => { style={{ pointerEvents: 'none', userSelect: 'none' }} zIndexRange={[100, 0]} > - +
+ + {ceilingMode && !last && ( +
+ Ceiling · C to toggle +
+ )} +
)}
@@ -350,13 +434,21 @@ const DuctSegmentTool = () => { ))} {/* Preview cylinders */} {previewSegments.map((seg, i) => ( - + ))}
) } -function PreviewSegment({ a, b }: { a: [number, number, number]; b: [number, number, number] }) { +function PreviewSegment({ + a, + b, + diameterIn, +}: { + a: [number, number, number] + b: [number, number, number] + diameterIn: number +}) { const start = new Vector3(...a) const end = new Vector3(...b) const dir = new Vector3().subVectors(end, start) @@ -364,8 +456,7 @@ function PreviewSegment({ a, b }: { a: [number, number, number]; b: [number, num if (length < 1e-4) return null dir.normalize() const mid = new Vector3().addVectors(start, end).multiplyScalar(0.5) - // Default duct preview is 6" (~0.152m) diameter. - const radius = (6 * 0.0254) / 2 + const radius = (diameterIn * 0.0254) / 2 return ( Date: Thu, 11 Jun 2026 18:21:12 +0530 Subject: [PATCH 22/59] feat(nodes): connectivity-aware duct endpoint drags Dragging a run's path-point handle now snapshots port connectivity at pointer-down and applies follow-updates per tick: a fitting mated to the dragged endpoint translates rigidly with it, and other runs touching that joint stretch their near endpoint. Reverted and re-applied around the history resume so the whole network edit stays a single undo step. Co-Authored-By: Claude Fable 5 --- packages/nodes/src/duct-segment/system.tsx | 59 +++++++++++++++++++--- 1 file changed, 52 insertions(+), 7 deletions(-) diff --git a/packages/nodes/src/duct-segment/system.tsx b/packages/nodes/src/duct-segment/system.tsx index 1650d2068..ab6ceba4c 100644 --- a/packages/nodes/src/duct-segment/system.tsx +++ b/packages/nodes/src/duct-segment/system.tsx @@ -1,9 +1,13 @@ 'use client' import { + type AnyNode, type AnyNodeId, + analyzePortConnectivity, type DuctSegmentNode, + type PortConnectivity, pauseSceneHistory, + resolveConnectivityUpdates, resumeSceneHistory, sceneRegistry, useScene, @@ -14,7 +18,7 @@ import { Html } from '@react-three/drei' import { createPortal, type ThreeEvent, useThree } from '@react-three/fiber' import { useEffect, useRef, useState } from 'react' import { type Object3D, Plane, Raycaster, Vector2, Vector3 } from 'three' -import { collectScenePorts, findNearestPortXZ } from '../shared/ports' +import { collectScenePorts, DUCT_PORT_SYSTEMS, findNearestPortXZ } from '../shared/ports' /** Handle pip radius (meters). */ const HANDLE_RADIUS = 0.09 @@ -98,6 +102,9 @@ const DuctPointHandles = ({ duct, target }: { duct: DuctSegmentNode; target: Obj initialPath: Point[] current: Point cleanup: () => void + // Connectivity snapshot taken at pointer-down: which fittings / ducts are + // mated to this run's endpoints, so they follow as the endpoint moves. + connectivity: PortConnectivity | null } | null>(null) const makeRay = (clientX: number, clientY: number) => { @@ -145,10 +152,25 @@ const DuctPointHandles = ({ duct, target }: { duct: DuctSegmentNode; target: Obj return [local.x, local.y, local.z] } + // Follow-updates for fittings / ducts mated to this run's endpoints, given + // the run's live path. Endpoints whose position didn't change resolve to a + // zero delta, so only the dragged endpoint's partner actually moves. + const connectivityUpdatesForPath = ( + connectivity: PortConnectivity | null, + path: Point[], + ): { id: AnyNodeId; data: Partial }[] => { + if (!connectivity) return [] + const preview = { ...(duct as Record), path } as AnyNode + return resolveConnectivityUpdates(connectivity, preview).filter( + (u) => useScene.getState().nodes[u.id], + ) + } + const onHandleDown = (index: number) => (e: ThreeEvent) => { e.stopPropagation() const initialPath = duct.path.map((p) => [...p] as Point) const startPoint = initialPath[index]! + const connectivity = analyzePortConnectivity(duct as AnyNode, useScene.getState().nodes) pauseSceneHistory(useScene) useViewer.getState().setInputDragging(true) document.body.style.cursor = 'grabbing' @@ -197,7 +219,7 @@ const DuctPointHandles = ({ duct, target }: { duct: DuctSegmentNode; target: Obj if (isEndpoint) { const port = findNearestPortXZ( [local[0], current[1], local[2]], - collectScenePorts(duct.id), + collectScenePorts({ excludeNodeId: duct.id, systems: DUCT_PORT_SYSTEMS }), PORT_SNAP_RADIUS_M, ) if (port) next = [port.position[0], port.position[1], port.position[2]] @@ -220,7 +242,13 @@ const DuctPointHandles = ({ duct, target }: { duct: DuctSegmentNode; target: Obj if (next[0] === current[0] && next[1] === current[1] && next[2] === current[2]) return drag.current = next const path = duct.path.map((p, i) => (i === drag.index ? next! : p)) as Point[] - useScene.getState().updateNode(duct.id, { path }) + // Drag the run + any fittings mated to the moved endpoint as one batch. + useScene + .getState() + .updateNodes([ + { id: duct.id as AnyNodeId, data: { path } }, + ...connectivityUpdatesForPath(drag.connectivity, path), + ]) } const onUp = () => { @@ -230,16 +258,33 @@ const DuctPointHandles = ({ duct, target }: { duct: DuctSegmentNode; target: Obj dragRef.current = null setDraggingIndex(null) // Single-undo dance: revert (still paused), resume, re-apply the - // final path as one tracked change. + // final path — plus any connected fitting moves — as one tracked batch. const finalPath = drag.initialPath.map((p, i) => i === drag.index ? drag.current : p, ) as Point[] - useScene.getState().updateNode(duct.id, { path: drag.initialPath }) + const finalUpdates = connectivityUpdatesForPath(drag.connectivity, finalPath) + // Revert the run AND the followers to their pre-drag state while paused + // so history captures a clean before→after delta. + const revertUpdates = (drag.connectivity?.connections ?? []).flatMap((conn) => + conn.kind === 'rigid-node' + ? [{ id: conn.nodeId, data: { position: conn.startPosition } as Partial }] + : [{ id: conn.nodeId, data: { path: conn.startPath } as Partial }], + ) + useScene + .getState() + .updateNodes([ + { id: duct.id as AnyNodeId, data: { path: drag.initialPath } }, + ...revertUpdates.filter((u) => useScene.getState().nodes[u.id]), + ]) resumeSceneHistory(useScene) const moved = finalPath[drag.index]!.some( (v, axis) => v !== drag.initialPath[drag.index]![axis], ) - if (moved) useScene.getState().updateNode(duct.id, { path: finalPath }) + if (moved) { + useScene + .getState() + .updateNodes([{ id: duct.id as AnyNodeId, data: { path: finalPath } }, ...finalUpdates]) + } } const cleanup = () => { @@ -250,7 +295,7 @@ const DuctPointHandles = ({ duct, target }: { duct: DuctSegmentNode; target: Obj document.body.style.cursor = '' } - dragRef.current = { index, initialPath, current: startPoint, cleanup } + dragRef.current = { index, initialPath, current: startPoint, cleanup, connectivity } window.addEventListener('pointermove', onMove) window.addEventListener('pointerup', onUp) window.addEventListener('pointercancel', onUp) From c5d8232ffed778409390a7afb5a93b37bafe250f Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:21:12 +0530 Subject: [PATCH 23/59] feat(nodes): fittings ride the cursor, terminals snap to duct ports - duct-fitting: movable.cursorAttached so the small connector pins to the cursor during moves; placement tool snaps only to air-loop ports. - duct-terminal: movable.portSnap on supply/return so moving a register magnetically mates its collar onto a duct run end. Co-Authored-By: Claude Fable 5 --- packages/nodes/src/duct-fitting/definition.ts | 5 ++++- packages/nodes/src/duct-fitting/tool.tsx | 8 ++++++-- packages/nodes/src/duct-terminal/definition.ts | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/nodes/src/duct-fitting/definition.ts b/packages/nodes/src/duct-fitting/definition.ts index 70337faab..1caa82689 100644 --- a/packages/nodes/src/duct-fitting/definition.ts +++ b/packages/nodes/src/duct-fitting/definition.ts @@ -37,7 +37,10 @@ export const ductFittingDefinition: NodeDefinition = { capabilities: { selectable: { hitVolume: 'bbox' }, - movable: { axes: ['x', 'y', 'z'], gridSnap: true }, + // `cursorAttached`: a fitting is a small connector — an offset- + // preserving drag reads as the mesh trailing the mouse, so pin its + // origin to the cursor instead. + movable: { axes: ['x', 'y', 'z'], gridSnap: true, cursorAttached: true }, duplicable: true, deletable: true, }, diff --git a/packages/nodes/src/duct-fitting/tool.tsx b/packages/nodes/src/duct-fitting/tool.tsx index 81c51d12a..3d9dca98a 100644 --- a/packages/nodes/src/duct-fitting/tool.tsx +++ b/packages/nodes/src/duct-fitting/tool.tsx @@ -6,7 +6,7 @@ import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useMemo, useRef, useState } from 'react' import { Euler, Quaternion, Vector3 } from 'three' -import { collectScenePorts, findNearestPortXZ, type ScenePort } from '../shared/ports' +import { collectScenePorts, DUCT_PORT_SYSTEMS, findNearestPortXZ, type ScenePort } from '../shared/ports' import { ductFittingDefinition } from './definition' import { buildDuctFittingGeometry } from './geometry' import { localFittingPorts } from './ports' @@ -41,7 +41,11 @@ function resolvePlacement( gridStep: number, manualQuat: Quaternion, ): Placement { - const port = findNearestPortXZ(raw, collectScenePorts(), PORT_SNAP_RADIUS_M) + const port = findNearestPortXZ( + raw, + collectScenePorts({ systems: DUCT_PORT_SYSTEMS }), + PORT_SNAP_RADIUS_M, + ) if (port) { const direction = new Vector3(...port.direction).normalize() // Local +X must map onto the port's outward direction so the inlet diff --git a/packages/nodes/src/duct-terminal/definition.ts b/packages/nodes/src/duct-terminal/definition.ts index d4343a344..bf773f0e5 100644 --- a/packages/nodes/src/duct-terminal/definition.ts +++ b/packages/nodes/src/duct-terminal/definition.ts @@ -36,7 +36,7 @@ export const ductTerminalDefinition: NodeDefinition = { capabilities: { selectable: { hitVolume: 'bbox' }, - movable: { axes: ['x', 'z'], gridSnap: true }, + movable: { axes: ['x', 'z'], gridSnap: true, portSnap: { systems: ['supply', 'return'] } }, rotatable: { axes: ['y'], snapAngles: [Math.PI / 4] }, duplicable: true, deletable: true, From ef41b6d2249cd670aa27da299c24646fe61e43a3 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:21:23 +0530 Subject: [PATCH 24/59] feat(nodes): refrigerant service ports on HVAC equipment Every equipment type now exposes one refrigerant port on its +X service-valve face (condenser/air-handler near the bottom third, furnace up at the cased A-coil), advertised at the nominal 7/8" suction OD so a lineset run mates cleanly. Geometry grows the matching service-valve detail (copper stubs + valve bodies), and the duct collar defaults drop to 8" round. Co-Authored-By: Claude Fable 5 --- .../core/src/schema/nodes/hvac-equipment.ts | 8 +- .../nodes/src/hvac-equipment/definition.ts | 2 +- packages/nodes/src/hvac-equipment/geometry.ts | 73 ++++++++++++++++++- packages/nodes/src/hvac-equipment/ports.ts | 42 +++++++++-- 4 files changed, 113 insertions(+), 12 deletions(-) diff --git a/packages/core/src/schema/nodes/hvac-equipment.ts b/packages/core/src/schema/nodes/hvac-equipment.ts index 92f746562..0f07db186 100644 --- a/packages/core/src/schema/nodes/hvac-equipment.ts +++ b/packages/core/src/schema/nodes/hvac-equipment.ts @@ -7,9 +7,11 @@ import { BaseNode, nodeType, objectId } from '../base' * air handler, outdoor condenser. * * Phase 3 of the HVAC node system. Furnaces and air handlers expose - * typed ports (supply plenum on top, return drop on the side) so duct - * runs and fittings snap onto them; condensers are the outdoor half of - * a split system and carry no duct ports. + * typed duct ports (supply plenum on top, return drop on the side) so + * duct runs and fittings snap onto them. Every unit also exposes a + * refrigerant service port on its valve face — a condenser, the outdoor + * half of a split system, carries no duct ports but pipes to the indoor + * coil through a `lineset` run mating onto that port. * * Floor-placed: `position` is level-local meters with y at the base, * `rotation` is yaw radians (the editor's default R-rotate applies). diff --git a/packages/nodes/src/hvac-equipment/definition.ts b/packages/nodes/src/hvac-equipment/definition.ts index c597441cd..6ec81f6cc 100644 --- a/packages/nodes/src/hvac-equipment/definition.ts +++ b/packages/nodes/src/hvac-equipment/definition.ts @@ -88,6 +88,6 @@ export const hvacEquipmentDefinition: NodeDefinition = mcp: { description: - 'HVAC equipment cabinet (furnace, air handler, or condenser) with supply/return duct ports. Position is level-local meters; rotation is yaw radians.', + 'HVAC equipment cabinet (furnace, air handler, or condenser). Furnaces and air handlers have supply/return duct ports; every unit also has a refrigerant service port that a lineset run connects to. Position is level-local meters; rotation is yaw radians.', }, } diff --git a/packages/nodes/src/hvac-equipment/geometry.ts b/packages/nodes/src/hvac-equipment/geometry.ts index e90561b51..b806a0f0c 100644 --- a/packages/nodes/src/hvac-equipment/geometry.ts +++ b/packages/nodes/src/hvac-equipment/geometry.ts @@ -11,7 +11,7 @@ import { Vector3, } from 'three' import { INCHES_TO_METERS } from '../duct-segment/geometry' -import { localEquipmentPorts } from './ports' +import { localEquipmentPorts, localRefrigerantPorts } from './ports' import type { HvacEquipmentNode } from './schema' const RADIAL_SEGMENTS = 24 @@ -39,6 +39,8 @@ const AIR_HANDLER_TRIM = EQUIPMENT_TRIM const FAN_GRILLE_COLOR = '#3a3f44' const FAN_BLADE_COLOR = '#d7dade' const COIL_FIN_COLOR = '#9aa1a8' +const COPPER_COLOR = '#b06b3f' +const SERVICE_VALVE_COLOR = '#7a8086' const UP = new Vector3(0, 1, 0) @@ -220,6 +222,7 @@ export function buildHvacEquipmentGeometry(node: HvacEquipmentNode): Group { buildGasLine(node, group, { hw, hd, H }) buildCollars(node, group) + buildServiceValves(node, group) return group } @@ -387,6 +390,72 @@ function buildCollars(node: HvacEquipmentNode, group: Group): void { } } +// Default lineset line radii (meters) — must mirror the lineset kind's +// defaults so the two service stubs sit exactly where its suction/liquid +// pipes run. See `lineset/geometry.ts` (suction 7/8", liquid 3/8", 3/8" +// foam jacket) and its symmetric ±offset about the path centerline. +const LINESET_SUCTION_R = (0.875 * INCHES_TO_METERS) / 2 +const LINESET_LIQUID_R = (0.375 * INCHES_TO_METERS) / 2 +const LINESET_JACKET_R = LINESET_SUCTION_R + 0.01 +const LINESET_PAIR_OFFSET = LINESET_JACKET_R + LINESET_LIQUID_R + +/** + * Refrigerant service valves at the lineset port — a brass-grey valve body + * with two copper stubs the lineset run mates onto. Built on every + * equipment type so a split system can be piped from condenser to coil. + * + * A lineset is a parallel pair (insulated suction + bare liquid) offset + * symmetrically about its path centerline. The snap point is that + * centerline, so a single stub would sit in the empty gap between the two + * pipes. Instead we emit two stubs at exactly the lineset's ±offset along + * the port's horizontal perpendicular: the suction pipe lands on the wide + * stub, the liquid pipe on the narrow one, when the run leaves the face. + */ +function buildServiceValves(node: HvacEquipmentNode, group: Group): void { + const valveMat = new MeshStandardMaterial({ + color: SERVICE_VALVE_COLOR, + metalness: 0.7, + roughness: 0.35, + }) + const copperMat = new MeshStandardMaterial({ + color: COPPER_COLOR, + metalness: 0.8, + roughness: 0.3, + }) + for (const port of localRefrigerantPorts(node)) { + const dir = port.direction.clone().normalize() + // Horizontal perpendicular to the port — matches the lineset geometry's + // `horizontal.cross(UP)`, so the stub offsets track its pipe offsets. + const perp = dir.clone().cross(UP).normalize() + + // Brass-grey valve body bolted to the cabinet face, spanning the pair. + const bodyWidth = 2 * LINESET_PAIR_OFFSET + 2 * LINESET_JACKET_R + const body = new Mesh(new BoxGeometry(0.05, 0.08, bodyWidth), valveMat) + body.name = 'service-valve-body' + body.position.copy(port.position).addScaledVector(dir, 0.025) + body.quaternion.setFromUnitVectors(UP, dir) + group.add(body) + + const stubLen = 0.07 + const addStub = (sign: number, radius: number, id: string) => { + const stub = new Mesh( + new CylinderGeometry(radius, radius, stubLen, SMALL_SEGMENTS), + copperMat, + ) + stub.name = `service-valve-stub-${id}` + stub.position + .copy(port.position) + .addScaledVector(perp, sign * LINESET_PAIR_OFFSET) + .addScaledVector(dir, 0.05 + stubLen / 2) + stub.quaternion.setFromUnitVectors(UP, dir) + group.add(stub) + } + // Suction pipe is the lineset's -offset line; liquid is +offset. + addStub(-1, LINESET_SUCTION_R, 'suction') + addStub(1, LINESET_LIQUID_R, 'liquid') + } +} + /** * Residential split-system condenser, matching the reference photos: a * greenish-grey body wrapped in vertical louvered coil fins on all four @@ -478,6 +547,7 @@ function buildCondenser(node: HvacEquipmentNode, group: Group): Group { addFins(finsAlongD, D - post, hw - post / 2 + 0.004, 'z', -1) // left buildCondenserFanGuard(group, W, H, D) + buildServiceValves(node, group) return group } @@ -694,5 +764,6 @@ function buildAirHandler(node: HvacEquipmentNode, group: Group): Group { } buildCollars(node, group) + buildServiceValves(node, group) return group } diff --git a/packages/nodes/src/hvac-equipment/ports.ts b/packages/nodes/src/hvac-equipment/ports.ts index eafd2277e..1e3b1bd25 100644 --- a/packages/nodes/src/hvac-equipment/ports.ts +++ b/packages/nodes/src/hvac-equipment/ports.ts @@ -7,15 +7,20 @@ type LocalPort = { position: Vector3 direction: Vector3 diameter: number - system: 'supply' | 'return' + system: 'supply' | 'return' | 'refrigerant' } +/** Nominal suction-line OD (inches) the refrigerant service connection + * advertises — matches the lineset kind's default suction diameter so a + * lineset run mates cleanly onto the valve. */ +const REFRIGERANT_PORT_DIAMETER_IN = 0.875 + /** - * Ports in the cabinet's LOCAL frame (origin at the base center, before - * yaw / position). Matches a typical upflow furnace / vertical air + * Duct ports in the cabinet's LOCAL frame (origin at the base center, + * before yaw / position). Matches a typical upflow furnace / vertical air * handler: supply plenum collar on top, return drop on the -X side near - * the bottom third. Condensers are the refrigerant side of a split - * system — no duct ports. + * the bottom third. Condensers carry no duct ports — their connection is + * the refrigerant lineset (see `localRefrigerantPorts`). */ export function localEquipmentPorts(node: HvacEquipmentNode): LocalPort[] { if (node.equipmentType === 'condenser') return [] @@ -37,10 +42,33 @@ export function localEquipmentPorts(node: HvacEquipmentNode): LocalPort[] { ] } -/** `def.ports` — local ports transformed into level-local space (yaw + position). */ +/** + * Refrigerant service connection in the cabinet's LOCAL frame — the point + * a lineset run leaves from (condenser) or arrives at (indoor coil on a + * furnace / air handler). Every equipment type exposes exactly one, on the + * +X service-valve face: a condenser/air-handler near the bottom third, a + * furnace near the top where the cased A-coil sits above the heat + * exchanger. + */ +export function localRefrigerantPorts(node: HvacEquipmentNode): LocalPort[] { + const y = node.equipmentType === 'furnace' ? node.height * 0.8 : node.height * 0.3 + return [ + { + id: 'lineset', + position: new Vector3(node.width / 2, y, 0), + direction: new Vector3(1, 0, 0), + diameter: REFRIGERANT_PORT_DIAMETER_IN, + system: 'refrigerant', + }, + ] +} + +/** `def.ports` — duct + refrigerant ports transformed into level-local + * space (yaw + position). */ export function getHvacEquipmentPorts(node: HvacEquipmentNode): NodePort[] { const offset = new Vector3(node.position[0], node.position[1], node.position[2]) - return localEquipmentPorts(node).map((port) => { + const local = [...localEquipmentPorts(node), ...localRefrigerantPorts(node)] + return local.map((port) => { const position = port.position.clone().applyAxisAngle(new Vector3(0, 1, 0), node.rotation) position.add(offset) const direction = port.direction From 64e568ebad29bea81b0254137f8a2f85489cc7c2 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:21:35 +0530 Subject: [PATCH 25/59] =?UTF-8?q?feat(nodes):=20lineset=20kind=20=E2=80=94?= =?UTF-8?q?=20refrigerant=20suction=20+=20liquid=20pair?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The refrigerant-side sibling of duct-segment: a copper suction + liquid line pair as a polyline, joining a split system's outdoor condenser to the indoor coil. Same two-click draw model and selection-time path handles, but it snaps onto refrigerant service ports instead of duct collars. Schema + event wiring in core, geometry / floorplan / tool / handle system in nodes, StructureTool id and a Build tab tile in the editor app. Co-Authored-By: Claude Fable 5 --- apps/editor/components/build-tab.tsx | 2 + packages/core/src/events/bus.ts | 3 + packages/core/src/schema/index.ts | 1 + packages/core/src/schema/nodes/lineset.ts | 42 +++ packages/core/src/schema/types.ts | 2 + packages/editor/src/store/use-editor.tsx | 1 + packages/nodes/src/index.ts | 3 + packages/nodes/src/lineset/connect.test.ts | 59 ++++ packages/nodes/src/lineset/connect.ts | 93 ++++++ packages/nodes/src/lineset/definition.ts | 113 +++++++ packages/nodes/src/lineset/floorplan.ts | 71 +++++ packages/nodes/src/lineset/geometry.ts | 171 +++++++++++ packages/nodes/src/lineset/index.ts | 4 + packages/nodes/src/lineset/parametrics.ts | 37 +++ packages/nodes/src/lineset/schema.ts | 1 + packages/nodes/src/lineset/system.tsx | 287 +++++++++++++++++ packages/nodes/src/lineset/tool.tsx | 341 +++++++++++++++++++++ 17 files changed, 1231 insertions(+) create mode 100644 packages/core/src/schema/nodes/lineset.ts create mode 100644 packages/nodes/src/lineset/connect.test.ts create mode 100644 packages/nodes/src/lineset/connect.ts create mode 100644 packages/nodes/src/lineset/definition.ts create mode 100644 packages/nodes/src/lineset/floorplan.ts create mode 100644 packages/nodes/src/lineset/geometry.ts create mode 100644 packages/nodes/src/lineset/index.ts create mode 100644 packages/nodes/src/lineset/parametrics.ts create mode 100644 packages/nodes/src/lineset/schema.ts create mode 100644 packages/nodes/src/lineset/system.tsx create mode 100644 packages/nodes/src/lineset/tool.tsx diff --git a/apps/editor/components/build-tab.tsx b/apps/editor/components/build-tab.tsx index dfd5768ad..211960d27 100644 --- a/apps/editor/components/build-tab.tsx +++ b/apps/editor/components/build-tab.tsx @@ -32,6 +32,7 @@ type BuildToolKind = | 'duct-fitting' | 'duct-terminal' | 'hvac-equipment' + | 'lineset' type BuildType = { /** Selection id — equals `kind` for tool types, `'painting'` for paint mode. */ @@ -62,6 +63,7 @@ const BUILD_TYPES: BuildType[] = [ { id: 'duct-fitting', label: 'Duct Fitting', iconSrc: '/icons/column.png', kind: 'duct-fitting' }, { id: 'duct-terminal', label: 'Register', iconSrc: '/icons/window.png', kind: 'duct-terminal' }, { id: 'hvac-equipment', label: 'HVAC Unit', iconSrc: '/icons/elevator.png', kind: 'hvac-equipment' }, + { id: 'lineset', label: 'Lineset', iconSrc: '/icons/column.png', kind: 'lineset' }, { id: 'painting', label: 'Painting', iconSrc: '/icons/paint.png', mode: 'material-paint' }, ] diff --git a/packages/core/src/events/bus.ts b/packages/core/src/events/bus.ts index 9f16e31f2..cd0067d43 100644 --- a/packages/core/src/events/bus.ts +++ b/packages/core/src/events/bus.ts @@ -22,6 +22,7 @@ import type { HvacEquipmentNode, ItemNode, LevelNode, + LinesetNode, RidgeVentNode, RoofNode, RoofSegmentNode, @@ -115,6 +116,7 @@ export type DuctSegmentEvent = NodeEvent export type DuctFittingEvent = NodeEvent export type DuctTerminalEvent = NodeEvent export type HvacEquipmentEvent = NodeEvent +export type LinesetEvent = NodeEvent // Event suffixes - exported for use in hooks export const eventSuffixes = [ @@ -273,6 +275,7 @@ type EditorEvents = GridEvents & NodeEvents<'duct-fitting', DuctFittingEvent> & NodeEvents<'duct-terminal', DuctTerminalEvent> & NodeEvents<'hvac-equipment', HvacEquipmentEvent> & + NodeEvents<'lineset', LinesetEvent> & CameraControlEvents & ToolEvents & GuideEvents & diff --git a/packages/core/src/schema/index.ts b/packages/core/src/schema/index.ts index 58a233538..70726baee 100644 --- a/packages/core/src/schema/index.ts +++ b/packages/core/src/schema/index.ts @@ -92,6 +92,7 @@ export { LOW_PROFILE_ITEM_SURFACE_MAX_HEIGHT, } from './nodes/item' export { LevelNode } from './nodes/level' +export { LinesetNode } from './nodes/lineset' // Nodes export { RidgeVentNode } from './nodes/ridge-vent' export type { RoofSurfaceMaterialRole, RoofSurfaceMaterialSpec } from './nodes/roof' diff --git a/packages/core/src/schema/nodes/lineset.ts b/packages/core/src/schema/nodes/lineset.ts new file mode 100644 index 000000000..2abcc455d --- /dev/null +++ b/packages/core/src/schema/nodes/lineset.ts @@ -0,0 +1,42 @@ +import dedent from 'dedent' +import { z } from 'zod' +import { BaseNode, nodeType, objectId } from '../base' + +/** + * Refrigerant lineset — the copper pipe pair that links the outdoor + * condenser to the indoor coil (furnace / air handler) of a split system. + * It is the refrigerant-side analogue of a duct run: a polyline of points, + * but carrying two lines instead of one airway. + * + * Real linesets run a fat insulated SUCTION line (cool vapour back to the + * compressor) beside a thin bare LIQUID line (warm liquid out to the coil). + * The geometry builder draws both: the suction line wrapped in a foam + * jacket, the liquid line as bare copper offset alongside it. + * + * Path coordinates are level-local meters: [x, y, z] tuples, same space as + * duct paths and grid events. Diameters are nominal copper OD in inches. + */ +export const LinesetNode = BaseNode.extend({ + id: objectId('lineset'), + type: nodeType('lineset'), + // Polyline path in level-local meters. Minimum two points (start, end). + path: z.array(z.tuple([z.number(), z.number(), z.number()])).min(2), + // Nominal suction-line copper OD in inches (the large insulated line). + // Common residential sizes are 3/4"–1-1/8". + suctionDiameter: z.number().min(0.25).max(2).default(0.875), + // Nominal liquid-line copper OD in inches (the small bare line). + // Common residential sizes are 1/4"–3/8". + liquidDiameter: z.number().min(0.125).max(1).default(0.375), + // Whether the suction line carries its foam insulation jacket. Bare = false. + insulated: z.boolean().default(true), +}).describe( + dedent` + Refrigerant lineset - copper suction + liquid pair linking a condenser to an indoor coil. + - path: list of [x, y, z] points in level-local meters (min 2) + - suctionDiameter: nominal copper OD in inches of the large insulated line (typ. 3/4"-1-1/8") + - liquidDiameter: nominal copper OD in inches of the small bare line (typ. 1/4"-3/8") + - insulated: whether the suction line wears its foam jacket + `, +) +export type LinesetNode = z.infer +export type LinesetNodeId = LinesetNode['id'] diff --git a/packages/core/src/schema/types.ts b/packages/core/src/schema/types.ts index 8ff360aa0..3ddc52820 100644 --- a/packages/core/src/schema/types.ts +++ b/packages/core/src/schema/types.ts @@ -19,6 +19,7 @@ import { HvacEquipmentNode } from './nodes/hvac-equipment' import { GutterNode } from './nodes/gutter' import { ItemNode } from './nodes/item' import { LevelNode } from './nodes/level' +import { LinesetNode } from './nodes/lineset' import { RidgeVentNode } from './nodes/ridge-vent' import { RoofNode } from './nodes/roof' import { RoofSegmentNode } from './nodes/roof-segment' @@ -73,6 +74,7 @@ export const AnyNode = z.discriminatedUnion('type', [ DuctFittingNode, DuctTerminalNode, HvacEquipmentNode, + LinesetNode, ]) export type AnyNode = z.infer diff --git a/packages/editor/src/store/use-editor.tsx b/packages/editor/src/store/use-editor.tsx index 6e3f4c88e..ed5398a85 100644 --- a/packages/editor/src/store/use-editor.tsx +++ b/packages/editor/src/store/use-editor.tsx @@ -110,6 +110,7 @@ export type StructureTool = | 'duct-fitting' | 'duct-terminal' | 'hvac-equipment' + | 'lineset' // Furnish mode tools (items and decoration) export type FurnishTool = 'item' diff --git a/packages/nodes/src/index.ts b/packages/nodes/src/index.ts index 7856995cb..7d3da6058 100644 --- a/packages/nodes/src/index.ts +++ b/packages/nodes/src/index.ts @@ -19,6 +19,7 @@ import { gutterDefinition } from './gutter' import { hvacEquipmentDefinition } from './hvac-equipment' import { itemDefinition } from './item' import { levelDefinition } from './level' +import { linesetDefinition } from './lineset' import { ridgeVentDefinition } from './ridge-vent' import { roofDefinition } from './roof' import { roofSegmentDefinition } from './roof-segment' @@ -97,6 +98,7 @@ export const builtinPlugin: Plugin = { ductFittingDefinition as unknown as AnyNodeDefinition, ductTerminalDefinition as unknown as AnyNodeDefinition, hvacEquipmentDefinition as unknown as AnyNodeDefinition, + linesetDefinition as unknown as AnyNodeDefinition, ], } @@ -120,6 +122,7 @@ export { gutterDefinition } from './gutter' export { hvacEquipmentDefinition } from './hvac-equipment' export { itemDefinition } from './item' export { levelDefinition } from './level' +export { linesetDefinition } from './lineset' export { ridgeVentDefinition } from './ridge-vent' export { roofDefinition } from './roof' export { roofSegmentDefinition } from './roof-segment' diff --git a/packages/nodes/src/lineset/connect.test.ts b/packages/nodes/src/lineset/connect.test.ts new file mode 100644 index 000000000..a50bc7d51 --- /dev/null +++ b/packages/nodes/src/lineset/connect.test.ts @@ -0,0 +1,59 @@ +import { describe, expect, test } from 'bun:test' +import { planLinesetConnect } from './connect' +import type { LinesetNode } from './schema' + +type Point = [number, number, number] + +/** Minimal stand-in — the planner only reads `id` and `path`. */ +function line(id: string, path: Point[]): LinesetNode { + return { id, path } as unknown as LinesetNode +} + +describe('planLinesetConnect', () => { + test('no shared endpoint → create', () => { + const plan = planLinesetConnect([line('a', [[0, 0, 0], [1, 0, 0]])], [5, 0, 0], [6, 0, 0]) + expect(plan).toEqual({ kind: 'create', path: [[5, 0, 0], [6, 0, 0]] }) + }) + + test('new start meets run end → extend, old end becomes interior', () => { + const a = line('a', [[0, 0, 0], [1, 0, 0]]) + const plan = planLinesetConnect([a], [1, 0, 0], [1, 0, 2]) + expect(plan).toEqual({ kind: 'extend', id: 'a', path: [[0, 0, 0], [1, 0, 0], [1, 0, 2]] }) + }) + + test('new start meets run start → extend, run reversed so join is interior', () => { + const a = line('a', [[0, 0, 0], [1, 0, 0]]) + const plan = planLinesetConnect([a], [0, 0, 0], [0, 0, 2]) + expect(plan).toEqual({ kind: 'extend', id: 'a', path: [[1, 0, 0], [0, 0, 0], [0, 0, 2]] }) + }) + + test('new end meets a run → extend, new segment leads', () => { + const a = line('a', [[1, 0, 0], [2, 0, 0]]) + const plan = planLinesetConnect([a], [1, 0, 3], [1, 0, 0]) + expect(plan).toEqual({ kind: 'extend', id: 'a', path: [[1, 0, 3], [1, 0, 0], [2, 0, 0]] }) + }) + + test('both ends meet distinct runs → bridge, second run absorbed', () => { + const a = line('a', [[0, 0, 0], [1, 0, 0]]) + const b = line('b', [[1, 0, 5], [2, 0, 5]]) + const plan = planLinesetConnect([a, b], [1, 0, 0], [1, 0, 5]) + expect(plan).toEqual({ + kind: 'bridge', + id: 'a', + deleteId: 'b', + path: [[0, 0, 0], [1, 0, 0], [1, 0, 5], [2, 0, 5]], + }) + }) + + test('both ends meet the SAME run → not a bridge (extends at start)', () => { + const a = line('a', [[0, 0, 0], [1, 0, 0]]) + const plan = planLinesetConnect([a], [0, 0, 0], [1, 0, 0]) + expect(plan.kind).toBe('extend') + }) + + test('float drift within tolerance still coincides', () => { + const a = line('a', [[0, 0, 0], [1, 0, 0]]) + const plan = planLinesetConnect([a], [1.0000001, 0, 0], [1, 0, 2]) + expect(plan.kind).toBe('extend') + }) +}) diff --git a/packages/nodes/src/lineset/connect.ts b/packages/nodes/src/lineset/connect.ts new file mode 100644 index 000000000..5df49f360 --- /dev/null +++ b/packages/nodes/src/lineset/connect.ts @@ -0,0 +1,93 @@ +import type { LinesetNode } from './schema' + +type Point = [number, number, number] +type LinesetId = LinesetNode['id'] + +/** Coincidence tolerance (meters) for folding endpoints into one run. The + * draw tool snaps onto an existing run's endpoint exactly, so this only + * needs to absorb float drift, not user aim. */ +const COINCIDENT_EPS_M = 1e-3 + +function samePoint(a: Point, b: Point): boolean { + return ( + Math.abs(a[0] - b[0]) < COINCIDENT_EPS_M && + Math.abs(a[1] - b[1]) < COINCIDENT_EPS_M && + Math.abs(a[2] - b[2]) < COINCIDENT_EPS_M + ) +} + +/** Which terminal of `line` coincides with `p`, if either. */ +function matchEnd(line: LinesetNode, p: Point): 'start' | 'end' | null { + const path = line.path as Point[] + if (samePoint(path[0]!, p)) return 'start' + if (samePoint(path[path.length - 1]!, p)) return 'end' + return null +} + +/** First lineset whose start or end coincides with `p`. */ +function findConnection( + existing: LinesetNode[], + p: Point, +): { line: LinesetNode; side: 'start' | 'end' } | null { + for (const line of existing) { + if (line.path.length < 2) continue + const side = matchEnd(line, p) + if (side) return { line, side } + } + return null +} + +/** Path re-ordered so the connecting terminal is its LAST point. */ +function endLast(path: Point[], side: 'start' | 'end'): Point[] { + return side === 'end' ? path : [...path].reverse() +} + +/** Path re-ordered so the connecting terminal is its FIRST point. */ +function startFirst(path: Point[], side: 'start' | 'end'): Point[] { + return side === 'start' ? path : [...path].reverse() +} + +/** + * Outcome of committing a new `start`→`end` segment against the existing + * lineset runs on the same level: + * - `create` — no shared endpoint; place a fresh standalone run. + * - `extend` — one end lands on run `id`; grow that run's path so the old + * terminal becomes an interior point (the geometry miters it). + * - `bridge` — both ends land on two *different* runs; weld them plus the + * new segment into one path on `id` and delete the absorbed `deleteId`. + */ +export type LinesetConnectPlan = + | { kind: 'create'; path: Point[] } + | { kind: 'extend'; id: LinesetId; path: Point[] } + | { kind: 'bridge'; id: LinesetId; path: Point[]; deleteId: LinesetId } + +/** + * Decide how a freshly drawn `start`→`end` segment folds into existing + * lineset runs that share an endpoint coordinate. Pure: returns a plan, the + * caller mutates the scene. Coords are level-local, so `existing` must be + * pre-filtered to the segment's level. + */ +export function planLinesetConnect( + existing: LinesetNode[], + start: Point, + end: Point, +): LinesetConnectPlan { + const atStart = findConnection(existing, start) + const atEnd = findConnection(existing, end) + + // Both ends meet distinct runs → weld the three into one path. + if (atStart && atEnd && atStart.line.id !== atEnd.line.id) { + const left = endLast(atStart.line.path as Point[], atStart.side) // ...→ start + const right = startFirst(atEnd.line.path as Point[], atEnd.side) // end →... + return { kind: 'bridge', id: atStart.line.id, path: [...left, ...right], deleteId: atEnd.line.id } + } + if (atStart) { + const base = endLast(atStart.line.path as Point[], atStart.side) // ...→ start + return { kind: 'extend', id: atStart.line.id, path: [...base, end] } + } + if (atEnd) { + const base = startFirst(atEnd.line.path as Point[], atEnd.side) // end →... + return { kind: 'extend', id: atEnd.line.id, path: [start, ...base] } + } + return { kind: 'create', path: [start, end] } +} diff --git a/packages/nodes/src/lineset/definition.ts b/packages/nodes/src/lineset/definition.ts new file mode 100644 index 000000000..7767484f3 --- /dev/null +++ b/packages/nodes/src/lineset/definition.ts @@ -0,0 +1,113 @@ +import type { NodeDefinition } from '@pascal-app/core' +import { buildLinesetFloorplan } from './floorplan' +import { buildLinesetGeometry } from './geometry' +import { linesetParametrics } from './parametrics' +import { LinesetNode } from './schema' + +/** + * Refrigerant lineset — the copper suction + liquid pair joining a split + * system's outdoor condenser to its indoor coil. The refrigerant-side + * sibling of `duct-segment`: same polyline model and draw tool, but it + * snaps onto refrigerant service ports instead of duct collars. + * + * Composition: `def.geometry` only, plus a selection-time path-handle + * system shared in spirit with the duct segment. The framework's + * `` mounts an empty group; `` + * fills it via `buildLinesetGeometry` on dirty. + */ +export const linesetDefinition: NodeDefinition = { + kind: 'lineset', + schemaVersion: 1, + schema: LinesetNode, + category: 'utility', + + defaults: () => ({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + path: [ + [0, 0, 0], + [2, 0, 0], + ], + suctionDiameter: 0.875, + liquidDiameter: 0.375, + insulated: true, + }), + + capabilities: { + selectable: { hitVolume: 'bbox' }, + duplicable: true, + deletable: true, + }, + + parametrics: linesetParametrics, + + geometry: buildLinesetGeometry, + geometryKey: (n) => + JSON.stringify([n.path, n.suctionDiameter, n.liquidDiameter, n.insulated]), + + // Open run ends as typed refrigerant ports — directions point outward + // along the path tangent so they mate flush onto a service valve. Path + // coords are already level-local, so no transform is needed. + ports: (n) => { + if (n.path.length < 2) return [] + const diameter = n.suctionDiameter + const unit = ( + a: readonly [number, number, number], + b: readonly [number, number, number], + ): [number, number, number] => { + const d: [number, number, number] = [a[0] - b[0], a[1] - b[1], a[2] - b[2]] + const len = Math.hypot(d[0], d[1], d[2]) + return len < 1e-9 ? [1, 0, 0] : [d[0] / len, d[1] / len, d[2] / len] + } + const first = n.path[0]! + const second = n.path[1]! + const last = n.path[n.path.length - 1]! + const prev = n.path[n.path.length - 2]! + return [ + { + id: 'start', + position: first, + direction: unit(first, second), + diameter, + system: 'refrigerant', + }, + { + id: 'end', + position: last, + direction: unit(last, prev), + diameter, + system: 'refrigerant', + }, + ] + }, + + floorplan: buildLinesetFloorplan, + + // Selection-time path-point handles (drag to edit a committed run). + system: { module: () => import('./system') }, + + tool: () => import('./tool'), + toolHints: [ + { key: 'Click', label: 'Start lineset' }, + { key: 'Click again', label: 'Place it (locked to 45°)' }, + { key: 'Shift', label: 'Free angle' }, + { key: 'Alt + drag', label: 'Go vertical ↕, click to place' }, + { key: 'Esc', label: 'Cancel start point' }, + ], + + presentation: { + label: 'Lineset', + description: + 'Refrigerant lineset — copper suction + liquid pair joining a condenser to the indoor coil.', + icon: { kind: 'iconify', name: 'lucide:cable' }, + paletteSection: 'structure', + paletteOrder: 93, + }, + + mcp: { + description: + 'A refrigerant lineset defined as a polyline: an insulated suction line plus a bare liquid line, joining an HVAC condenser to its indoor coil. Snaps onto refrigerant service ports.', + }, +} diff --git a/packages/nodes/src/lineset/floorplan.ts b/packages/nodes/src/lineset/floorplan.ts new file mode 100644 index 000000000..74646c600 --- /dev/null +++ b/packages/nodes/src/lineset/floorplan.ts @@ -0,0 +1,71 @@ +import type { FloorplanGeometry, FloorplanPoint, GeometryContext } from '@pascal-app/core' +import { INCHES_TO_METERS } from '../duct-segment/geometry' +import type { LinesetNode } from './schema' + +const COPPER_LINE = '#b06b3f' +const BODY_COLOR = '#9ca3af' + +/** + * Floor-plan representation of a lineset: the path drawn at the suction + * jacket's real width with a dashed copper centerline. Vertical risers + * collapse to a point in plan; consecutive duplicate plan points are + * dropped so they don't render zero-length artifacts. + */ +export function buildLinesetFloorplan( + node: LinesetNode, + ctx: GeometryContext, +): FloorplanGeometry | null { + if (node.path.length < 2) return null + + const points: FloorplanPoint[] = [] + for (const [x, , z] of node.path) { + const prev = points[points.length - 1] + if (prev && Math.abs(prev[0] - x) < 1e-6 && Math.abs(prev[1] - z) < 1e-6) continue + points.push([x, z]) + } + + const widthM = Math.max(node.suctionDiameter, node.liquidDiameter) * INCHES_TO_METERS + const view = ctx.viewState + const palette = view?.palette + const showSelectedChrome = (view?.selected || view?.highlighted) ?? false + + if (points.length < 2) { + const p = points[0] ?? [node.path[0]![0], node.path[0]![2]] + return { + kind: 'circle', + cx: p[0], + cy: p[1], + r: widthM, + fill: BODY_COLOR, + stroke: showSelectedChrome && palette ? palette.selectedStroke : COPPER_LINE, + strokeWidth: 0.02, + opacity: 0.9, + } + } + + return { + kind: 'group', + children: [ + { + kind: 'polyline', + points, + stroke: showSelectedChrome && palette ? palette.selectedStroke : BODY_COLOR, + strokeWidth: widthM * 2, + strokeLinecap: 'round', + strokeLinejoin: 'round', + opacity: showSelectedChrome ? 0.95 : 0.8, + }, + { + kind: 'polyline', + points, + stroke: COPPER_LINE, + strokeWidth: 1.5, + vectorEffect: 'non-scaling-stroke', + strokeDasharray: '4 3', + strokeLinecap: 'round', + strokeLinejoin: 'round', + opacity: 0.9, + }, + ], + } +} diff --git a/packages/nodes/src/lineset/geometry.ts b/packages/nodes/src/lineset/geometry.ts new file mode 100644 index 000000000..e53215241 --- /dev/null +++ b/packages/nodes/src/lineset/geometry.ts @@ -0,0 +1,171 @@ +import { CylinderGeometry, Group, Mesh, MeshStandardMaterial, SphereGeometry, Vector3 } from 'three' +import { INCHES_TO_METERS } from '../duct-segment/geometry' +import type { LinesetNode } from './schema' + +const RADIAL_SEGMENTS = 16 + +const COPPER_COLOR = '#b06b3f' +const INSULATION_COLOR = '#1f1f22' + +const UP = new Vector3(0, 1, 0) +const FALLBACK_PERP = new Vector3(1, 0, 0) + +/** + * Foam-jacket thickness (meters) wrapped around the suction line when + * `insulated`. A real ~3/4" black Armaflex sleeve adds ~3/8" of wall; this + * matches that so the insulated suction line reads visibly fatter than the + * bare liquid line beside it. + */ +const INSULATION_THICKNESS_M = 0.01 + +/** Cap on the miter-length multiplier so a sharp turn doesn't shoot the + * corner off to infinity — past this we'd want a bevel, but linesets bend + * gently enough that clamping is invisible. */ +const MITER_LIMIT = 4 + +/** + * Horizontal side vector for each path segment — the axis the two lines are + * pushed apart along, kept HORIZONTAL so the pair never tilts. A vertical + * (riser) segment has no horizontal heading of its own, so it inherits the + * side vector from the nearest segment that does; this is what keeps the two + * lines side by side as the run climbs instead of rotating about the bend. + * Falls back to the X axis only if the whole path is vertical. + */ +function segmentSides(points: Vector3[]): Vector3[] { + const sides: (Vector3 | null)[] = [] + for (let i = 0; i < points.length - 1; i++) { + const dir = new Vector3().subVectors(points[i + 1]!, points[i]!) + const horizontal = new Vector3(dir.x, 0, dir.z) + sides.push(horizontal.lengthSq() < 1e-9 ? null : horizontal.normalize().cross(UP).normalize()) + } + // Forward then backward fill so vertical segments adopt a real heading. + for (let i = 1; i < sides.length; i++) if (!sides[i]) sides[i] = sides[i - 1] ?? null + for (let i = sides.length - 2; i >= 0; i--) if (!sides[i]) sides[i] = sides[i + 1] ?? null + return sides.map((s) => s ?? FALLBACK_PERP.clone()) +} + +/** + * Per-vertex offset vectors for turning the path into two parallel lines. + * At an interior vertex the offset follows the angle bisector of the two + * adjacent segment side vectors, scaled by `1/cos(half-angle)` so the offset + * segments on either side of the bend meet exactly at one miter point (a + * plain per-segment side leaves them crossing/gapping). Endpoints use their + * single segment's side. Side vectors are horizontal, so the offset is too — + * a horizontal→vertical bend keeps the same side (cos 1, no expansion), + * leaving the pair perfectly side by side up the riser. The returned vector + * is the `+offset` (liquid) side; the suction side is its negation. + */ +function miterOffsets(points: Vector3[], offset: number): Vector3[] { + const sides = segmentSides(points) + return points.map((_p, i) => { + const sIn = i > 0 ? sides[i - 1]! : null + const sOut = i < sides.length ? sides[i]! : null + if (sIn && sOut) { + const bisector = sIn.clone().add(sOut) + // s_in == -s_out → a 180° switchback; the bisector vanishes, so just + // run straight out on one side. + if (bisector.lengthSq() < 1e-9) return sIn.clone().multiplyScalar(offset) + bisector.normalize() + const cos = bisector.dot(sIn) + const scale = Math.min(MITER_LIMIT, 1 / Math.max(cos, 1 / MITER_LIMIT)) + return bisector.multiplyScalar(offset * scale) + } + return (sIn ?? sOut)!.clone().multiplyScalar(offset) + }) +} + +/** Cylinder spanning `start`→`end` at `radius`, named for debugging. */ +function buildRun( + start: Vector3, + end: Vector3, + radius: number, + material: MeshStandardMaterial, + name: string, +): Mesh | null { + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-6) return null + dir.normalize() + const mesh = new Mesh( + new CylinderGeometry(radius, radius, length, RADIAL_SEGMENTS, 1, false), + material, + ) + mesh.name = name + mesh.position.copy(start).addScaledVector(dir, length / 2) + mesh.quaternion.setFromUnitVectors(UP, dir) + return mesh +} + +/** + * Pure geometry builder for a refrigerant lineset: a fat insulated suction + * line beside a thin bare-copper liquid line, both following the node path. + * + * The two lines are offset symmetrically about the path centerline along a + * horizontal perpendicular to each segment, so the pair reads as a parallel + * run. Joint spheres cap interior corners on each line; the suction line's + * black foam jacket is a larger opaque cylinder over the copper. + * + * Children are level-local meters; `` owns the + * node transform (identity today — the path is absolute within the level). + */ +export function buildLinesetGeometry(node: LinesetNode): Group { + const group = new Group() + if (node.path.length < 2) return group + + const suctionR = (node.suctionDiameter * INCHES_TO_METERS) / 2 + const liquidR = (node.liquidDiameter * INCHES_TO_METERS) / 2 + const jacketR = node.insulated ? suctionR + INSULATION_THICKNESS_M : suctionR + // Half the center-to-center spacing: the two jackets sit just touching. + const offset = jacketR + liquidR + + const copperMat = new MeshStandardMaterial({ + color: COPPER_COLOR, + metalness: 0.8, + roughness: 0.3, + }) + const insulationMat = new MeshStandardMaterial({ + color: INSULATION_COLOR, + metalness: 0.1, + roughness: 0.9, + }) + + const points = node.path.map(([x, y, z]) => new Vector3(x, y, z)) + + // Miter-offset each path point so the two parallel lines meet cleanly at + // every bend instead of drifting apart (a plain per-segment perpendicular + // leaves the inner line cutting the corner). + const offsets = miterOffsets(points, offset) + const suctionPts = points.map((p, i) => p.clone().sub(offsets[i]!)) + const liquidPts = points.map((p, i) => p.clone().add(offsets[i]!)) + + for (let i = 0; i < points.length - 1; i++) { + const sCopper = buildRun(suctionPts[i]!, suctionPts[i + 1]!, suctionR, copperMat, `lineset-suction-${i}`) + if (sCopper) group.add(sCopper) + const liquid = buildRun(liquidPts[i]!, liquidPts[i + 1]!, liquidR, copperMat, `lineset-liquid-${i}`) + if (liquid) group.add(liquid) + if (node.insulated) { + const jacket = buildRun(suctionPts[i]!, suctionPts[i + 1]!, jacketR, insulationMat, `lineset-jacket-${i}`) + if (jacket) group.add(jacket) + } + } + + // Joint caps at interior corners so turns read as continuous pipe. + for (let i = 1; i < points.length - 1; i++) { + const sJoint = new Mesh(new SphereGeometry(suctionR, RADIAL_SEGMENTS, 10), copperMat) + sJoint.name = `lineset-suction-joint-${i}` + sJoint.position.copy(suctionPts[i] as Vector3) + group.add(sJoint) + const lJoint = new Mesh(new SphereGeometry(liquidR, RADIAL_SEGMENTS, 10), copperMat) + lJoint.name = `lineset-liquid-joint-${i}` + lJoint.position.copy(liquidPts[i] as Vector3) + group.add(lJoint) + if (node.insulated) { + const jJoint = new Mesh(new SphereGeometry(jacketR, RADIAL_SEGMENTS, 10), insulationMat) + jJoint.name = `lineset-jacket-joint-${i}` + jJoint.position.copy(suctionPts[i] as Vector3) + group.add(jJoint) + } + } + + return group +} diff --git a/packages/nodes/src/lineset/index.ts b/packages/nodes/src/lineset/index.ts new file mode 100644 index 000000000..5689ef854 --- /dev/null +++ b/packages/nodes/src/lineset/index.ts @@ -0,0 +1,4 @@ +export { type LinesetConnectPlan, planLinesetConnect } from './connect' +export { linesetDefinition } from './definition' +export { buildLinesetGeometry } from './geometry' +export { LinesetNode } from './schema' diff --git a/packages/nodes/src/lineset/parametrics.ts b/packages/nodes/src/lineset/parametrics.ts new file mode 100644 index 000000000..d55eb7843 --- /dev/null +++ b/packages/nodes/src/lineset/parametrics.ts @@ -0,0 +1,37 @@ +import type { ParametricDescriptor } from '@pascal-app/core' +import type { LinesetNode } from './schema' + +export const linesetParametrics: ParametricDescriptor = { + groups: [ + { + label: 'Lines', + fields: [ + { + key: 'suctionDiameter', + kind: 'number', + unit: 'in', + min: 0.25, + max: 1.5, + step: 0.125, + }, + { + key: 'liquidDiameter', + kind: 'number', + unit: 'in', + min: 0.125, + max: 0.75, + step: 0.125, + }, + ], + }, + { + label: 'Insulation', + fields: [ + { + key: 'insulated', + kind: 'boolean', + }, + ], + }, + ], +} diff --git a/packages/nodes/src/lineset/schema.ts b/packages/nodes/src/lineset/schema.ts new file mode 100644 index 000000000..f987bfd33 --- /dev/null +++ b/packages/nodes/src/lineset/schema.ts @@ -0,0 +1 @@ +export { LinesetNode } from '@pascal-app/core' diff --git a/packages/nodes/src/lineset/system.tsx b/packages/nodes/src/lineset/system.tsx new file mode 100644 index 000000000..1448e7e98 --- /dev/null +++ b/packages/nodes/src/lineset/system.tsx @@ -0,0 +1,287 @@ +'use client' + +import { + type AnyNodeId, + type LinesetNode, + pauseSceneHistory, + resumeSceneHistory, + sceneRegistry, + useScene, +} from '@pascal-app/core' +import { DimensionPill, useEditor } from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { createPortal, type ThreeEvent, useThree } from '@react-three/fiber' +import { useEffect, useRef, useState } from 'react' +import { type Object3D, Plane, Raycaster, Vector2, Vector3 } from 'three' +import { collectScenePorts, findNearestPortXZ, REFRIGERANT_PORT_SYSTEMS } from '../shared/ports' + +const HANDLE_RADIUS = 0.08 +const PORT_SNAP_RADIUS_M = 0.4 + +const UP = new Vector3(0, 1, 0) + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +type Point = [number, number, number] + +/** + * Selection-time editing for committed lineset runs: one draggable handle + * per path point. Mirrors the duct-segment path-handle system, but dragged + * run endpoints snap onto refrigerant ports only. + * + * Handles are PORTALED into the lineset's registered scene group so they + * share its exact frame. Drag raycasts run in world space and convert hits + * back into the group's local frame before writing the path. + */ +const LinesetSystem = () => { + const selectedIds = useViewer((s) => s.selection.selectedIds) + const lineset = useScene((s) => { + if (selectedIds.length !== 1) return null + const node = s.nodes[selectedIds[0] as AnyNodeId] + return node?.type === 'lineset' ? (node as LinesetNode) : null + }) + + const linesetId = lineset?.id ?? null + const [target, setTarget] = useState(null) + useEffect(() => { + if (!linesetId) { + setTarget(null) + return + } + let frameId = 0 + const resolve = () => { + const next = sceneRegistry.nodes.get(linesetId as AnyNodeId) ?? null + setTarget((cur) => (cur === next ? cur : next)) + if (!next) frameId = window.requestAnimationFrame(resolve) + } + resolve() + return () => window.cancelAnimationFrame(frameId) + }, [linesetId]) + + if (!lineset || !target) return null + return createPortal(, target, undefined) +} + +const LinesetPointHandles = ({ + lineset, + target, +}: { + lineset: LinesetNode + target: Object3D +}) => { + const { camera, gl } = useThree() + const unit = useViewer((s) => s.unit) + const [draggingIndex, setDraggingIndex] = useState(null) + const [hoverIndex, setHoverIndex] = useState(null) + const dragRef = useRef<{ + index: number + initialPath: Point[] + current: Point + cleanup: () => void + } | null>(null) + + const makeRay = (clientX: number, clientY: number) => { + const rect = gl.domElement.getBoundingClientRect() + const ndc = new Vector2( + ((clientX - rect.left) / rect.width) * 2 - 1, + -((clientY - rect.top) / rect.height) * 2 + 1, + ) + const raycaster = new Raycaster() + raycaster.setFromCamera(ndc, camera) + return raycaster.ray + } + + const intersect = (clientX: number, clientY: number, plane: Plane): Vector3 | null => { + const hit = new Vector3() + return makeRay(clientX, clientY).intersectPlane(plane, hit) ? hit : null + } + + const projectOntoAxis = ( + clientX: number, + clientY: number, + anchorWorld: Vector3, + axisWorld: Vector3, + ): number | null => { + const ray = makeRay(clientX, clientY) + const w0 = new Vector3().subVectors(ray.origin, anchorWorld) + const b = ray.direction.dot(axisWorld) + const denom = 1 - b * b + if (Math.abs(denom) < 1e-6) return null + const d0 = ray.direction.dot(w0) + const e0 = axisWorld.dot(w0) + return (e0 - b * d0) / denom + } + + const toWorld = (p: Point): Vector3 => target.localToWorld(new Vector3(p[0], p[1], p[2])) + const toLocal = (world: Vector3): Point => { + const local = target.worldToLocal(world.clone()) + return [local.x, local.y, local.z] + } + + const onHandleDown = (index: number) => (e: ThreeEvent) => { + e.stopPropagation() + const initialPath = lineset.path.map((p) => [...p] as Point) + const startPoint = initialPath[index]! + pauseSceneHistory(useScene) + useViewer.getState().setInputDragging(true) + document.body.style.cursor = 'grabbing' + setDraggingIndex(index) + + const isEndpoint = index === 0 || index === initialPath.length - 1 + + const neighbor = initialPath[index === 0 ? 1 : index - 1]! + const axisLocal = new Vector3( + startPoint[0] - neighbor[0], + startPoint[1] - neighbor[1], + startPoint[2] - neighbor[2], + ) + if (axisLocal.lengthSq() < 1e-9) axisLocal.set(1, 0, 0) + axisLocal.normalize() + const anchorWorldStart = toWorld(startPoint) + const axisWorld = toWorld([ + startPoint[0] + axisLocal.x, + startPoint[1] + axisLocal.y, + startPoint[2] + axisLocal.z, + ]) + .sub(anchorWorldStart) + .normalize() + + const onMove = (event: PointerEvent) => { + const drag = dragRef.current + if (!drag) return + const current = drag.current + const step = event.shiftKey ? 0 : useEditor.getState().gridSnapStep + let next: Point | null = null + if (event.altKey) { + const plane = new Plane().setFromNormalAndCoplanarPoint(UP, toWorld(current)) + const hit = intersect(event.clientX, event.clientY, plane) + if (hit) { + const local = toLocal(hit) + next = [snap(local[0], step), current[1], snap(local[2], step)] + if (isEndpoint) { + const port = findNearestPortXZ( + [local[0], current[1], local[2]], + collectScenePorts({ excludeNodeId: lineset.id, systems: REFRIGERANT_PORT_SYSTEMS }), + PORT_SNAP_RADIUS_M, + ) + if (port) next = [port.position[0], port.position[1], port.position[2]] + } + } + } else { + const t = projectOntoAxis(event.clientX, event.clientY, anchorWorldStart, axisWorld) + if (t !== null) { + const dist = snap(t, step) + next = [ + startPoint[0] + axisLocal.x * dist, + Math.max(0, startPoint[1] + axisLocal.y * dist), + startPoint[2] + axisLocal.z * dist, + ] + } + } + if (!next) return + if (next[0] === current[0] && next[1] === current[1] && next[2] === current[2]) return + drag.current = next + const path = lineset.path.map((p, i) => (i === drag.index ? next! : p)) as Point[] + useScene.getState().updateNode(lineset.id, { path }) + } + + const onUp = () => { + const drag = dragRef.current + if (!drag) return + drag.cleanup() + dragRef.current = null + setDraggingIndex(null) + const finalPath = drag.initialPath.map((p, i) => + i === drag.index ? drag.current : p, + ) as Point[] + useScene.getState().updateNode(lineset.id, { path: drag.initialPath }) + resumeSceneHistory(useScene) + const moved = finalPath[drag.index]!.some( + (v, axis) => v !== drag.initialPath[drag.index]![axis], + ) + if (moved) useScene.getState().updateNode(lineset.id, { path: finalPath }) + } + + const cleanup = () => { + window.removeEventListener('pointermove', onMove) + window.removeEventListener('pointerup', onUp) + window.removeEventListener('pointercancel', onUp) + useViewer.getState().setInputDragging(false) + document.body.style.cursor = '' + } + + dragRef.current = { index, initialPath, current: startPoint, cleanup } + window.addEventListener('pointermove', onMove) + window.addEventListener('pointerup', onUp) + window.addEventListener('pointercancel', onUp) + } + + return ( + + {lineset.path.map((p, i) => { + const active = draggingIndex === i + const hovered = hoverIndex === i + return ( + { + e.stopPropagation() + setHoverIndex(i) + if (draggingIndex === null) document.body.style.cursor = 'grab' + }} + onPointerLeave={() => { + setHoverIndex((prev) => (prev === i ? null : prev)) + if (draggingIndex === null) document.body.style.cursor = '' + }} + position={p as Point} + > + + + + ) + })} + {draggingIndex !== null && + lineset.path[draggingIndex] && + (() => { + const point = lineset.path[draggingIndex]! + const origin = dragRef.current?.initialPath[draggingIndex] ?? point + const deltas = [point[0] - origin[0], point[1] - origin[1], point[2] - origin[2]] + const axes = ['x', 'y', 'z'] as const + const primary = axes.reduce((best, axis, i) => + Math.abs(deltas[i]!) > Math.abs(deltas[axes.indexOf(best)]!) ? axis : best, + ) + return ( + + ({ + key: axis, + prefix: axis.toUpperCase(), + value: deltas[i]!, + signed: true, + }))} + primary={primary} + unit={unit} + /> + + ) + })()} + + ) +} + +export default LinesetSystem diff --git a/packages/nodes/src/lineset/tool.tsx b/packages/nodes/src/lineset/tool.tsx new file mode 100644 index 000000000..d978d23c5 --- /dev/null +++ b/packages/nodes/src/lineset/tool.tsx @@ -0,0 +1,341 @@ +'use client' + +import { type AnyNodeId, LinesetNode, emitter, type GridEvent, useScene } from '@pascal-app/core' +import { DimensionPill, markToolCancelConsumed, triggerSFX, useEditor } from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { useEffect, useRef, useState } from 'react' +import { type Group, Vector3 } from 'three' +import { collectScenePorts, findNearestPortXZ, REFRIGERANT_PORT_SYSTEMS } from '../shared/ports' +import { planLinesetConnect } from './connect' +import { linesetDefinition } from './definition' + +/** + * One-segment-at-a-time placement tool for refrigerant linesets — the + * refrigerant-loop sibling of the duct-segment tool. + * + * Mouse-driven model: + * - **First click** anchors the run start. Within range of a refrigerant + * service port (a condenser / coil valve, or another lineset's end) it + * snaps onto the port so a run mates flush. + * - **Second click** commits a two-point lineset and re-arms the tool. + * - The in-flight end is angle-locked to the nearest 45° step in XZ from + * the start; Y stays at the start's height. Hold **Shift** to release. + * - Hold **Alt** → vertical mode. XZ locks to the start; vertical mouse + * motion drives Y. Click commits the riser segment. + * - Esc clears an anchored start point. + * + * Snapping is restricted to refrigerant ports, so a lineset never grabs a + * supply/return duct collar. + */ +const PREVIEW_OPACITY = 0.6 +const PREVIEW_COLOR = '#b06b3f' +/** Snap radius (meters) for joining onto a refrigerant port. */ +const ENDPOINT_SNAP_RADIUS_M = 0.5 +/** Angle step (radians) for the XZ angle lock — 45°. */ +const ANGLE_STEP_RAD = Math.PI / 4 +/** Mouse pixels → meters mapping for Alt-vertical drag. 100 px ≈ 1 m. */ +const ALT_PIXELS_PER_METER = 100 +const ALT_Y_MIN_M = -3 +const ALT_Y_MAX_M = 10 + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +/** Nearest refrigerant port within snap range on the XZ plane, as a + * position tuple. Y is ignored for the distance check; the snap adopts the + * port's full 3D position. */ +function findNearbyPort(point: [number, number, number]): [number, number, number] | null { + const port = findNearestPortXZ( + point, + collectScenePorts({ systems: REFRIGERANT_PORT_SYSTEMS }), + ENDPOINT_SNAP_RADIUS_M, + ) + return port ? [port.position[0], port.position[1], port.position[2]] : null +} + +function projectToAngleLock( + from: [number, number, number], + raw: [number, number, number], +): [number, number, number] { + const dx = raw[0] - from[0] + const dz = raw[2] - from[2] + const len = Math.hypot(dx, dz) + if (len < 1e-4) return [from[0], from[1], from[2]] + const theta = Math.atan2(dz, dx) + const snapped = Math.round(theta / ANGLE_STEP_RAD) * ANGLE_STEP_RAD + const proj = dx * Math.cos(snapped) + dz * Math.sin(snapped) + const d = Math.max(0, proj) + return [from[0] + Math.cos(snapped) * d, from[1], from[2] + Math.sin(snapped) * d] +} + +const LinesetTool = () => { + const activeLevelId = useViewer((s) => s.selection.levelId) + const unit = useViewer((s) => s.unit) + const cursorRef = useRef(null) + const [draftPoints, setDraftPoints] = useState>([]) + const [cursorPos, setCursorPos] = useState<[number, number, number] | null>(null) + const [snapTarget, setSnapTarget] = useState<[number, number, number] | null>(null) + const [altActive, setAltActive] = useState(false) + const draftRef = useRef(draftPoints) + draftRef.current = draftPoints + const altAnchorRef = useRef<{ clientY: number; baseY: number } | null>(null) + const lastClientYRef = useRef(null) + + useEffect(() => { + if (!activeLevelId) return + + const commitSegment = (start: [number, number, number], end: [number, number, number]) => { + const sameSpot = + Math.abs(start[0] - end[0]) < 1e-4 && + Math.abs(start[1] - end[1]) < 1e-4 && + Math.abs(start[2] - end[2]) < 1e-4 + if (sameSpot) return + + // Fold into any existing run that shares this segment's endpoint, so + // two runs meeting at a coordinate become one mitered path instead of + // overlapping nodes. Only same-level runs are candidates — lineset + // paths are level-local. + const scene = useScene.getState() + const existing = Object.values(scene.nodes).filter( + (n): n is LinesetNode => + n?.type === 'lineset' && (n.parentId as AnyNodeId | null) === activeLevelId, + ) + const plan = planLinesetConnect(existing, start, end) + + if (plan.kind === 'create') { + const lineset = LinesetNode.parse({ + ...linesetDefinition.defaults(), + name: 'Lineset', + path: plan.path, + }) + scene.createNode(lineset, activeLevelId) + } else if (plan.kind === 'extend') { + scene.updateNode(plan.id, { path: plan.path }) + } else { + scene.updateNode(plan.id, { path: plan.path }) + scene.deleteNode(plan.deleteId) + } + triggerSFX('sfx:item-place') + setDraftPoints([]) + setSnapTarget(null) + altAnchorRef.current = null + setAltActive(false) + } + + const resolveSnappedPoint = ( + event: GridEvent, + ): { point: [number, number, number]; snapped: [number, number, number] | null } => { + const last = draftRef.current.at(-1) + if (!last) { + const raw: [number, number, number] = [event.localPosition[0], 0, event.localPosition[2]] + if (event.nativeEvent?.altKey !== true) { + const target = findNearbyPort(raw) + if (target) return { point: target, snapped: target } + } + const step = useEditor.getState().gridSnapStep + return { point: [snap(raw[0], step), 0, snap(raw[2], step)], snapped: null } + } + const rawXZ: [number, number, number] = [event.localPosition[0], last[1], event.localPosition[2]] + const shift = event.nativeEvent?.shiftKey === true + const angled = shift ? rawXZ : projectToAngleLock(last, rawXZ) + if (event.nativeEvent?.altKey !== true && !shift) { + const target = findNearbyPort(rawXZ) + if (target) return { point: target, snapped: target } + } + const step = useEditor.getState().gridSnapStep + return { point: [snap(angled[0], step), angled[1], snap(angled[2], step)], snapped: null } + } + + const resolveAltVerticalPoint = (clientY: number): [number, number, number] | null => { + const anchor = altAnchorRef.current + const last = draftRef.current.at(-1) + if (!anchor || !last) return null + const dy = (anchor.clientY - clientY) / ALT_PIXELS_PER_METER + const y = Math.min(ALT_Y_MAX_M, Math.max(ALT_Y_MIN_M, anchor.baseY + dy)) + return [last[0], y, last[2]] + } + + const onMove = (event: GridEvent) => { + const clientY = (event.nativeEvent as { clientY?: number } | undefined)?.clientY + if (typeof clientY === 'number') lastClientYRef.current = clientY + if (altAnchorRef.current && typeof clientY === 'number') { + const point = resolveAltVerticalPoint(clientY) + if (point) { + setCursorPos(point) + setSnapTarget(null) + return + } + } + const { point, snapped } = resolveSnappedPoint(event) + setCursorPos(point) + setSnapTarget(snapped) + } + + const onClick = (event: GridEvent) => { + const start = draftRef.current.at(-1) + if (altAnchorRef.current && start) { + const clientY = + (event.nativeEvent as { clientY?: number } | undefined)?.clientY ?? lastClientYRef.current + if (typeof clientY === 'number') { + const point = resolveAltVerticalPoint(clientY) + if (point && Math.abs(point[1] - start[1]) >= 1e-4) { + commitSegment(start, point) + } + } + return + } + const { point } = resolveSnappedPoint(event) + if (!start) { + triggerSFX('sfx:grid-snap') + setDraftPoints([point]) + return + } + commitSegment(start, point) + } + + const enterAltMode = () => { + const last = draftRef.current.at(-1) + if (!last || lastClientYRef.current === null) return + if (altAnchorRef.current) return + altAnchorRef.current = { clientY: lastClientYRef.current, baseY: last[1] } + setAltActive(true) + } + + const exitAltMode = () => { + if (!altAnchorRef.current) return + altAnchorRef.current = null + setAltActive(false) + } + + const onKeyDown = (e: KeyboardEvent) => { + const tag = (e.target as HTMLElement | null)?.tagName + if (tag === 'INPUT' || tag === 'TEXTAREA') return + if (e.key === 'Alt') { + e.preventDefault() + enterAltMode() + } + } + + const onKeyUp = (e: KeyboardEvent) => { + if (e.key === 'Alt') { + e.preventDefault() + exitAltMode() + } + } + + const onCancel = () => { + if (draftRef.current.length === 0) return + markToolCancelConsumed() + setDraftPoints([]) + setCursorPos(null) + setSnapTarget(null) + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', onClick) + emitter.on('tool:cancel', onCancel) + window.addEventListener('keydown', onKeyDown) + window.addEventListener('keyup', onKeyUp) + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', onClick) + emitter.off('tool:cancel', onCancel) + window.removeEventListener('keydown', onKeyDown) + window.removeEventListener('keyup', onKeyUp) + altAnchorRef.current = null + } + }, [activeLevelId]) + + if (!activeLevelId) return null + + const previewSegments: Array<{ a: [number, number, number]; b: [number, number, number] }> = [] + for (let i = 0; i < draftPoints.length - 1; i++) { + previewSegments.push({ a: draftPoints[i]!, b: draftPoints[i + 1]! }) + } + const last = draftPoints.at(-1) + if (last && cursorPos) { + previewSegments.push({ a: last, b: cursorPos }) + } + + const pillParts = cursorPos + ? (['x', 'y', 'z'] as const).map((axis, i) => ({ + key: axis, + prefix: axis.toUpperCase(), + value: last ? cursorPos[i]! - last[i]! : cursorPos[i]!, + signed: !!last, + })) + : null + const pillPrimary = + last && cursorPos + ? altActive + ? 'y' + : Math.abs(cursorPos[0] - last[0]) >= Math.abs(cursorPos[2] - last[2]) + ? 'x' + : 'z' + : undefined + + return ( + + + + + + + {pillParts && ( + + + + )} + + {snapTarget && ( + + + + + )} + {draftPoints.map((p, i) => ( + + + + + ))} + {previewSegments.map((seg, i) => ( + + ))} + + ) +} + +function PreviewSegment({ a, b }: { a: [number, number, number]; b: [number, number, number] }) { + const start = new Vector3(...a) + const end = new Vector3(...b) + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-4) return null + dir.normalize() + const mid = new Vector3().addVectors(start, end).multiplyScalar(0.5) + // Default suction OD (~7/8") for the ghost. + const radius = (0.875 * 0.0254) / 2 + return ( + { + if (!m) return + m.quaternion.setFromUnitVectors(new Vector3(0, 1, 0), dir) + }} + > + + + + ) +} + +export default LinesetTool From 5815877d3919b135e9c82bbf5adf56be89a0d902 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:33:30 +0530 Subject: [PATCH 26/59] feat(nodes): auto-elbow insertion at duct corners MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Drawing a new run off another run's open end at an angle now mints a correctly-oriented elbow fitting at the joint instead of leaving a butt joint. planElbowAtPort (shared/auto-fitting.ts) plans the elbow purely from the joint port and the leaving direction: angle = the actual turn (15-90°, vertical turns included via a full 3D basis transfer), inlet collar exactly on the run's port, and the new duct pulled back to the outlet collar so duct meets metal. The draw tool tracks which port each segment end snapped to and commits duct + fittings as one createNodes batch. Joints onto fittings / equipment / terminals stay direct connections — only run-to-run corners get a fitting. Straight continuations and back-turns past 90° are left as plain joints. Tests round-trip every plan through the fitting kind's own port math to prove both collars mate (position + direction) in horizontal, 45°, and riser cases. Co-Authored-By: Claude Fable 5 --- packages/nodes/src/duct-segment/tool.tsx | 122 ++++++++++++++---- .../nodes/src/shared/auto-fitting.test.ts | 92 +++++++++++++ packages/nodes/src/shared/auto-fitting.ts | 110 ++++++++++++++++ 3 files changed, 302 insertions(+), 22 deletions(-) create mode 100644 packages/nodes/src/shared/auto-fitting.test.ts create mode 100644 packages/nodes/src/shared/auto-fitting.ts diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx index df9eca8dd..2d848a1c2 100644 --- a/packages/nodes/src/duct-segment/tool.tsx +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -6,7 +6,13 @@ import { getLevelHeight, useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' import { type Group, Vector3 } from 'three' -import { collectScenePorts, DUCT_PORT_SYSTEMS, findNearestPortXZ } from '../shared/ports' +import { planElbowAtPort } from '../shared/auto-fitting' +import { + collectScenePorts, + DUCT_PORT_SYSTEMS, + findNearestPortXZ, + type ScenePort, +} from '../shared/ports' import { ductSegmentDefinition } from './definition' /** @@ -18,6 +24,10 @@ import { ductSegmentDefinition } from './definition' * - **Second click** commits a two-point duct immediately and re-arms * the tool — no polyline accumulation, no finish gesture. Chain runs * by clicking again near the end you just placed (port snap). + * - **Auto-elbow**: when either end snapped onto another RUN's open + * port at an angle (15–90°, vertical turns included), an elbow + * fitting is minted at the joint and the duct pulls back to its + * outlet collar — corners get real fittings instead of butt joints. * - The in-flight end is angle-locked to the nearest 45° step in XZ * from the start; Y stays at the start's height. Hold **Shift** to * release the lock. @@ -54,17 +64,21 @@ function snap(value: number, step: number): number { /** * Nearest typed port — duct run ends, fitting collars, anything whose * kind registers `def.ports` — within snap range of `point` on the XZ - * plane, as a position tuple. Y is ignored for the distance check (grid - * events ride the floor while ports hang at duct height); the snap - * adopts the port's full 3D position. + * plane. Y is ignored for the distance check (grid events ride the floor + * while ports hang at duct height); the snap adopts the port's full 3D + * position. The full port is returned so the commit knows what it joined + * (auto-elbow insertion needs the port's direction and owner). */ -function findNearbyPort(point: [number, number, number]): [number, number, number] | null { - const port = findNearestPortXZ( +function findNearbyPort(point: [number, number, number]): ScenePort | null { + return findNearestPortXZ( point, collectScenePorts({ systems: DUCT_PORT_SYSTEMS }), ENDPOINT_SNAP_RADIUS_M, ) - return port ? [port.position[0], port.position[1], port.position[2]] : null +} + +function portPoint(port: ScenePort): [number, number, number] { + return [port.position[0], port.position[1], port.position[2]] } /** @@ -123,6 +137,9 @@ const DuctSegmentTool = () => { diameterRef.current = diameter const ceilingModeRef = useRef(ceilingMode) ceilingModeRef.current = ceilingMode + // Port the anchored START point snapped onto (null = free placement). + // Read at commit so a turn off an existing run mints an elbow there. + const startPortRef = useRef(null) // Anchor captured when Alt is pressed: screen Y at that moment and the // base elevation (= last point's Y). Cleared on Alt release. const altAnchorRef = useRef<{ clientY: number; baseY: number } | null>(null) @@ -133,29 +150,77 @@ const DuctSegmentTool = () => { useEffect(() => { if (!activeLevelId) return + /** + * Auto-elbow gate: only joints onto another RUN's open end get a + * fitting minted. Ports on fittings / equipment / terminals are + * already proper connections — a duct mates straight onto those. + * Guards against the snapped node having been deleted between clicks. + */ + const elbowPlanFor = (port: ScenePort | null, awayDir: [number, number, number]) => { + if (!port) return null + const owner = useScene.getState().nodes[port.nodeId] + if (owner?.type !== 'duct-segment') return null + return planElbowAtPort(port, awayDir, diameterRef.current) + } + // One segment per gesture: first click anchors the start, second // click commits a two-point duct immediately. No selection switch — // the tool stays armed so the next click starts the next segment // (port snap joins it onto the end just committed). - const commitSegment = (start: [number, number, number], end: [number, number, number]) => { - const sameSpot = - Math.abs(start[0] - end[0]) < 1e-4 && - Math.abs(start[1] - end[1]) < 1e-4 && - Math.abs(start[2] - end[2]) < 1e-4 - if (sameSpot) return + // + // When an end of the segment snapped onto another run's open port at + // an angle, an elbow fitting is minted at that joint and the duct is + // pulled back to the elbow's outlet collar — corners get real + // fittings instead of butt joints. + const commitSegment = ( + start: [number, number, number], + end: [number, number, number], + endPort: ScenePort | null = null, + ) => { + const length = Math.hypot(end[0] - start[0], end[1] - start[1], end[2] - start[2]) + if (length < 1e-4) return + const dir: [number, number, number] = [ + (end[0] - start[0]) / length, + (end[1] - start[1]) / length, + (end[2] - start[2]) / length, + ] + + const startPlan = elbowPlanFor(startPortRef.current, dir) + const endPlan = elbowPlanFor(endPort, [-dir[0], -dir[1], -dir[2]]) + let ductStart = startPlan ? startPlan.collarPoint : start + let ductEnd = endPlan ? endPlan.collarPoint : end + // The collar pull-back must leave a real piece of duct between the + // fittings; if not, fall back to the plain joint. + const remaining = Math.hypot( + ductEnd[0] - ductStart[0], + ductEnd[1] - ductStart[1], + ductEnd[2] - ductStart[2], + ) + const fittings = remaining > 0.08 ? [startPlan, endPlan].filter((p) => p !== null) : [] + if (fittings.length === 0) { + ductStart = start + ductEnd = end + } + const defaults = ductSegmentDefinition.defaults() const toolDefaults = useEditor.getState().toolDefaults['duct-segment'] ?? {} const duct = DuctSegmentNode.parse({ ...defaults, ...toolDefaults, name: 'Duct run', - path: [start, end], + path: [ductStart, ductEnd], diameter: diameterRef.current, }) - useScene.getState().createNode(duct, activeLevelId) + useScene + .getState() + .createNodes([ + ...fittings.map((plan) => ({ node: plan.fitting, parentId: activeLevelId })), + { node: duct, parentId: activeLevelId }, + ]) triggerSFX('sfx:item-place') setDraftPoints([]) setSnapTarget(null) + startPortRef.current = null altAnchorRef.current = null setAltActive(false) } @@ -172,22 +237,31 @@ const DuctSegmentTool = () => { const resolveSnappedPoint = ( event: GridEvent, - ): { point: [number, number, number]; snapped: [number, number, number] | null } => { + ): { + point: [number, number, number] + snapped: [number, number, number] | null + port: ScenePort | null + } => { const last = draftRef.current.at(-1) // First point of the run: grid-snapped placement at the base Y (floor, // or ceiling height in ceiling mode). Endpoint snap can still join an // existing run. if (!last) { const baseY = resolveBaseY() - const raw: [number, number, number] = [event.localPosition[0], baseY, event.localPosition[2]] + const raw: [number, number, number] = [ + event.localPosition[0], + baseY, + event.localPosition[2], + ] if (event.nativeEvent?.altKey !== true) { const target = findNearbyPort(raw) - if (target) return { point: target, snapped: target } + if (target) return { point: portPoint(target), snapped: portPoint(target), port: target } } const step = useEditor.getState().gridSnapStep return { point: [snap(raw[0], step), baseY, snap(raw[2], step)], snapped: null, + port: null, } } // Subsequent points: angle-locked to 45° from `last` (Shift releases). @@ -204,12 +278,13 @@ const DuctSegmentTool = () => { // still capture the cursor. Joining beats the lock. if (event.nativeEvent?.altKey !== true && !shift) { const target = findNearbyPort(rawXZ) - if (target) return { point: target, snapped: target } + if (target) return { point: portPoint(target), snapped: portPoint(target), port: target } } const step = useEditor.getState().gridSnapStep return { point: [snap(angled[0], step), angled[1], snap(angled[2], step)], snapped: null, + port: null, } } @@ -261,15 +336,17 @@ const DuctSegmentTool = () => { } return } - const { point } = resolveSnappedPoint(event) + const { point, port } = resolveSnappedPoint(event) if (!start) { - // First click: anchor the segment start. + // First click: anchor the segment start, remembering the port it + // snapped to so the commit can mint an elbow on a turn. triggerSFX('sfx:grid-snap') + startPortRef.current = port setDraftPoints([point]) return } // Second click: commit the segment and re-arm. - commitSegment(start, point) + commitSegment(start, point, port) } const enterAltMode = () => { @@ -337,6 +414,7 @@ const DuctSegmentTool = () => { setDraftPoints([]) setCursorPos(null) setSnapTarget(null) + startPortRef.current = null } emitter.on('grid:move', onMove) diff --git a/packages/nodes/src/shared/auto-fitting.test.ts b/packages/nodes/src/shared/auto-fitting.test.ts new file mode 100644 index 000000000..4ee0a88ed --- /dev/null +++ b/packages/nodes/src/shared/auto-fitting.test.ts @@ -0,0 +1,92 @@ +import { describe, expect, test } from 'bun:test' +import { getDuctFittingPorts } from '../duct-fitting/ports' +import { planElbowAtPort } from './auto-fitting' +import type { ScenePort } from './ports' + +type Point = [number, number, number] + +function port(position: Point, direction: Point): ScenePort { + return { + id: 'end', + nodeId: 'duct-segment_test' as ScenePort['nodeId'], + position, + direction, + diameter: 6, + system: 'supply', + } +} + +function dist(a: readonly number[], b: readonly number[]): number { + return Math.hypot(a[0]! - b[0]!, a[1]! - b[1]!, a[2]! - b[2]!) +} + +function dot(a: readonly number[], b: readonly number[]): number { + return a[0]! * b[0]! + a[1]! * b[1]! + a[2]! * b[2]! +} + +/** + * The real invariant: run the planned elbow back through the fitting + * kind's OWN port math and check both collars mate — inlet sitting on the + * joint port facing back into the run, outlet sitting on the returned + * collar point facing along the new run. + */ +function expectMated(joint: ScenePort, away: Point) { + const plan = planElbowAtPort(joint, away, 6) + expect(plan).not.toBeNull() + const ports = getDuctFittingPorts(plan!.fitting) + const inlet = ports.find((p) => p.id === 'inlet')! + const outlet = ports.find((p) => p.id === 'outlet')! + + expect(dist(inlet.position, joint.position)).toBeLessThan(1e-6) + expect(dot(inlet.direction, joint.direction)).toBeCloseTo(-1, 6) + expect(dist(outlet.position, plan!.collarPoint)).toBeLessThan(1e-6) + expect(dot(outlet.direction, away)).toBeCloseTo(1, 6) + return plan! +} + +describe('planElbowAtPort', () => { + test('90° horizontal turn (+X run turning to +Z)', () => { + const plan = expectMated(port([3, 2.4, 0], [1, 0, 0]), [0, 0, 1]) + expect(plan.fitting.angle).toBeCloseTo(90, 6) + }) + + test('45° horizontal turn', () => { + const d = Math.SQRT1_2 + const plan = expectMated(port([3, 2.4, 0], [1, 0, 0]), [d, 0, d]) + expect(plan.fitting.angle).toBeCloseTo(45, 6) + }) + + test('vertical riser turn (horizontal run turning straight up)', () => { + const plan = expectMated(port([3, 0, 1], [1, 0, 0]), [0, 1, 0]) + expect(plan.fitting.angle).toBeCloseTo(90, 6) + }) + + test('riser topping out into a horizontal run', () => { + expectMated(port([3, 2.4, 1], [0, 1, 0]), [0, 0, -1]) + }) + + test('straight continuation → no fitting', () => { + expect(planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [1, 0, 0], 6)).toBeNull() + }) + + test('shallow 10° turn → no fitting (below the 15° elbow minimum)', () => { + const t = (10 * Math.PI) / 180 + expect(planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [Math.cos(t), 0, Math.sin(t)], 6)).toBeNull() + }) + + test('doubling back past 90° → no fitting', () => { + const t = (135 * Math.PI) / 180 + expect(planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [Math.cos(t), 0, Math.sin(t)], 6)).toBeNull() + }) + + test('collar point sits one leg beyond the joint along the new run', () => { + const plan = expectMated(port([0, 0, 0], [1, 0, 0]), [0, 0, 1]) + const junction = plan.fitting.position + expect(dist(junction, [0, 0, 0])).toBeGreaterThan(0) + // Junction is along +X from the joint; collar along +Z from the junction. + expect(junction[1]).toBeCloseTo(0, 6) + expect(junction[2]).toBeCloseTo(0, 6) + expect(plan.collarPoint[0]).toBeCloseTo(junction[0], 6) + expect(plan.collarPoint[2]).toBeGreaterThan(0) + }) +}) diff --git a/packages/nodes/src/shared/auto-fitting.ts b/packages/nodes/src/shared/auto-fitting.ts new file mode 100644 index 000000000..52f3d8b6a --- /dev/null +++ b/packages/nodes/src/shared/auto-fitting.ts @@ -0,0 +1,110 @@ +import { DuctFittingNode } from '@pascal-app/core' +import { Euler, Matrix4, Quaternion, Vector3 } from 'three' +import { fittingLegLength } from '../duct-fitting/ports' +import type { ScenePort } from './ports' + +/** Turns shallower than this read as a straight continuation — butt-join + * the runs instead of minting a fitting. Matches the elbow schema's + * minimum angle so the planned fitting is always exactly buildable. */ +const MIN_TURN_RAD = (15 * Math.PI) / 180 +/** Elbows top out at 90°; anything sharper (doubling back) gets no + * fitting. Half a degree of slack absorbs float noise on right angles. */ +const MAX_TURN_RAD = (90.5 * Math.PI) / 180 + +type Point = [number, number, number] + +export type ElbowJointPlan = { + /** Parsed elbow node, positioned + oriented so its inlet collar sits on + * the joint port and its outlet faces the new run. */ + fitting: DuctFittingNode + /** The elbow's outlet collar — where the new duct should start (or end) + * instead of the port position, so duct meets metal instead of + * overlapping the fitting. */ + collarPoint: Point +} + +/** Orthonormal basis from a primary direction and a coplanar reference. */ +function frame(primary: Vector3, reference: Vector3): Matrix4 | null { + const x = primary.clone().normalize() + const z = new Vector3().crossVectors(x, reference) + if (z.lengthSq() < 1e-10) return null + z.normalize() + const y = new Vector3().crossVectors(z, x) + return new Matrix4().makeBasis(x, y, z) +} + +/** + * Plan the elbow that joins an existing run's open port to a new run + * leaving the joint along `awayDir`. + * + * Geometry: the elbow's local inlet faces -X and its outlet is turned + * `angle`° in the local XZ plane (see the duct-fitting schema). For a + * turn of θ between the port's outward direction and `awayDir`, an elbow + * with `angle = θ` mates both exactly; the rotation is whatever maps the + * local (inlet, outlet) direction pair onto the world (port, away) pair — + * which also covers vertical turns (horizontal run → riser), since the + * mapping is a full 3D rotation, not just yaw. + * + * Returns null when no fitting belongs at the joint: near-straight + * continuation (butt-join is fine), a back-turn sharper than 90°, or a + * degenerate direction pair. + */ +export function planElbowAtPort( + port: ScenePort, + awayDir: Point, + diameterIn: number, +): ElbowJointPlan | null { + const portDir = new Vector3(...port.direction).normalize() + const away = new Vector3(...awayDir).normalize() + if (portDir.lengthSq() < 1e-10 || away.lengthSq() < 1e-10) return null + + const turn = portDir.angleTo(away) + if (turn < MIN_TURN_RAD || turn > MAX_TURN_RAD) return null + const angleDeg = Math.min(90, (turn * 180) / Math.PI) + + // Rotation mapping the local pair onto the world pair: local +X (the + // inlet axis, flow direction) → portDir, local outlet → awayDir. Both + // pairs subtend the same angle, so a shared-plane basis transfer is + // exact. + const outletLocal = new Vector3(Math.cos(turn), 0, Math.sin(turn)) + const localFrame = frame(new Vector3(1, 0, 0), outletLocal) + const worldFrame = frame(portDir, away) + if (!localFrame || !worldFrame) return null + const rotation = new Quaternion().setFromRotationMatrix( + worldFrame.multiply(localFrame.transpose()), + ) + const euler = new Euler().setFromQuaternion(rotation) + + // Junction sits one leg beyond the run end (inlet collar ON the port); + // the outlet collar sits one leg further along the new direction. + const leg = fittingLegLength(diameterIn) + const portPos = new Vector3(...port.position) + const junction = portPos.clone().addScaledVector(portDir, leg) + const collar = junction.clone().addScaledVector(away, leg) + + const system = port.system === 'return' ? 'return' : 'supply' + // Built from the schema directly (defaults fill the rest) — importing + // the fitting's definition here would drag the editor package into the + // module graph, which test runners and non-editor embedders can't load. + const fitting = DuctFittingNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Elbow', + fittingType: 'elbow', + angle: angleDeg, + diameter: diameterIn, + diameter2: diameterIn, + // Corner elbows are sheet metal even on flex runs (adjustable elbows). + ductMaterial: 'sheet-metal', + system, + position: [junction.x, junction.y, junction.z], + rotation: [euler.x, euler.y, euler.z], + }) + + return { + fitting, + collarPoint: [collar.x, collar.y, collar.z], + } +} From aab0d36c6b0690fcb3bd283446b6dee7da630a11 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:39:51 +0530 Subject: [PATCH 27/59] fix(nodes): auto-elbow sits ON the drawn corner, trimming the joined run The elbow's junction was placed one leg beyond the existing run's end, bulging the corner outward past where the user clicked. Now the junction centers exactly on the drawn corner: the plan returns a trimmedPortPoint one leg back along the existing run, the draw tool shortens that run to it (skipping the fitting when the trim would consume the run), and the trim + elbow + new duct commit through applyNodeChanges as a single undo step. Co-Authored-By: Claude Fable 5 --- packages/nodes/src/duct-segment/tool.tsx | 51 +++++++++++++++---- .../nodes/src/shared/auto-fitting.test.ts | 28 ++++++---- packages/nodes/src/shared/auto-fitting.ts | 22 +++++--- 3 files changed, 73 insertions(+), 28 deletions(-) diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx index 2d848a1c2..f5e43ace3 100644 --- a/packages/nodes/src/duct-segment/tool.tsx +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -1,6 +1,6 @@ 'use client' -import { DuctSegmentNode, emitter, type GridEvent, useScene } from '@pascal-app/core' +import { type AnyNode, DuctSegmentNode, emitter, type GridEvent, useScene } from '@pascal-app/core' import { DimensionPill, markToolCancelConsumed, triggerSFX, useEditor } from '@pascal-app/editor' import { getLevelHeight, useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' @@ -154,13 +154,40 @@ const DuctSegmentTool = () => { * Auto-elbow gate: only joints onto another RUN's open end get a * fitting minted. Ports on fittings / equipment / terminals are * already proper connections — a duct mates straight onto those. - * Guards against the snapped node having been deleted between clicks. + * + * The elbow's junction sits ON the drawn corner, so the existing run + * must trim back one leg to make room (`trim` update). Plans that + * would trim the run to (or past) nothing are dropped — that corner + * stays a plain butt joint. Guards against the snapped node having + * been deleted between clicks. */ const elbowPlanFor = (port: ScenePort | null, awayDir: [number, number, number]) => { if (!port) return null const owner = useScene.getState().nodes[port.nodeId] if (owner?.type !== 'duct-segment') return null - return planElbowAtPort(port, awayDir, diameterRef.current) + const plan = planElbowAtPort(port, awayDir, diameterRef.current) + if (!plan) return null + + // Trim the run's snapped endpoint back to the elbow's inlet collar. + const path = owner.path.map((p) => [...p] as [number, number, number]) + const index = port.id === 'start' ? 0 : path.length - 1 + const neighbor = path[index === 0 ? 1 : index - 1]! + const remaining = Math.hypot( + plan.trimmedPortPoint[0] - neighbor[0], + plan.trimmedPortPoint[1] - neighbor[1], + plan.trimmedPortPoint[2] - neighbor[2], + ) + // The trim must leave a real piece of the existing run AND not flip + // it (trimmed point past the neighbor) — otherwise skip the fitting. + const original = path[index]! + const originalLen = Math.hypot( + original[0] - neighbor[0], + original[1] - neighbor[1], + original[2] - neighbor[2], + ) + if (remaining < 0.08 || remaining >= originalLen) return null + path[index] = plan.trimmedPortPoint + return { ...plan, trim: { id: port.nodeId, data: { path } as Partial } } } // One segment per gesture: first click anchors the start, second @@ -196,8 +223,9 @@ const DuctSegmentTool = () => { ductEnd[1] - ductStart[1], ductEnd[2] - ductStart[2], ) - const fittings = remaining > 0.08 ? [startPlan, endPlan].filter((p) => p !== null) : [] - if (fittings.length === 0) { + let plans = [startPlan, endPlan].filter((p) => p !== null) + if (remaining <= 0.08) { + plans = [] ductStart = start ductEnd = end } @@ -211,12 +239,15 @@ const DuctSegmentTool = () => { path: [ductStart, ductEnd], diameter: diameterRef.current, }) - useScene - .getState() - .createNodes([ - ...fittings.map((plan) => ({ node: plan.fitting, parentId: activeLevelId })), + // One atomic change: trim the joined runs back to the elbow inlets, + // create the elbows + the new duct. Single undo step. + useScene.getState().applyNodeChanges({ + create: [ + ...plans.map((plan) => ({ node: plan.fitting, parentId: activeLevelId })), { node: duct, parentId: activeLevelId }, - ]) + ], + update: plans.map((plan) => plan.trim), + }) triggerSFX('sfx:item-place') setDraftPoints([]) setSnapTarget(null) diff --git a/packages/nodes/src/shared/auto-fitting.test.ts b/packages/nodes/src/shared/auto-fitting.test.ts index 4ee0a88ed..4eaf2591f 100644 --- a/packages/nodes/src/shared/auto-fitting.test.ts +++ b/packages/nodes/src/shared/auto-fitting.test.ts @@ -26,9 +26,10 @@ function dot(a: readonly number[], b: readonly number[]): number { /** * The real invariant: run the planned elbow back through the fitting - * kind's OWN port math and check both collars mate — inlet sitting on the - * joint port facing back into the run, outlet sitting on the returned - * collar point facing along the new run. + * kind's OWN port math and check the joint composes — junction centered + * on the drawn corner, inlet collar sitting where the trimmed run now + * ends (facing back into it), outlet sitting on the returned collar + * point facing along the new run. */ function expectMated(joint: ScenePort, away: Point) { const plan = planElbowAtPort(joint, away, 6) @@ -37,7 +38,8 @@ function expectMated(joint: ScenePort, away: Point) { const inlet = ports.find((p) => p.id === 'inlet')! const outlet = ports.find((p) => p.id === 'outlet')! - expect(dist(inlet.position, joint.position)).toBeLessThan(1e-6) + expect(dist(plan!.fitting.position, joint.position)).toBeLessThan(1e-6) + expect(dist(inlet.position, plan!.trimmedPortPoint)).toBeLessThan(1e-6) expect(dot(inlet.direction, joint.direction)).toBeCloseTo(-1, 6) expect(dist(outlet.position, plan!.collarPoint)).toBeLessThan(1e-6) expect(dot(outlet.direction, away)).toBeCloseTo(1, 6) @@ -79,14 +81,18 @@ describe('planElbowAtPort', () => { expect(planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [Math.cos(t), 0, Math.sin(t)], 6)).toBeNull() }) - test('collar point sits one leg beyond the joint along the new run', () => { + test('junction on the corner; trim and collar one leg out on each side', () => { const plan = expectMated(port([0, 0, 0], [1, 0, 0]), [0, 0, 1]) - const junction = plan.fitting.position - expect(dist(junction, [0, 0, 0])).toBeGreaterThan(0) - // Junction is along +X from the joint; collar along +Z from the junction. - expect(junction[1]).toBeCloseTo(0, 6) - expect(junction[2]).toBeCloseTo(0, 6) - expect(plan.collarPoint[0]).toBeCloseTo(junction[0], 6) + // Junction exactly at the drawn corner. + expect(dist(plan.fitting.position, [0, 0, 0])).toBeLessThan(1e-6) + // Existing run (arriving along +X) trims back along -X... + expect(plan.trimmedPortPoint[0]).toBeLessThan(0) + expect(plan.trimmedPortPoint[1]).toBeCloseTo(0, 6) + expect(plan.trimmedPortPoint[2]).toBeCloseTo(0, 6) + // ...and the new run starts one leg out along +Z. + expect(plan.collarPoint[0]).toBeCloseTo(0, 6) expect(plan.collarPoint[2]).toBeGreaterThan(0) + // Symmetric legs. + expect(dist(plan.trimmedPortPoint, [0, 0, 0])).toBeCloseTo(dist(plan.collarPoint, [0, 0, 0]), 6) }) }) diff --git a/packages/nodes/src/shared/auto-fitting.ts b/packages/nodes/src/shared/auto-fitting.ts index 52f3d8b6a..55fd4ec33 100644 --- a/packages/nodes/src/shared/auto-fitting.ts +++ b/packages/nodes/src/shared/auto-fitting.ts @@ -14,13 +14,18 @@ const MAX_TURN_RAD = (90.5 * Math.PI) / 180 type Point = [number, number, number] export type ElbowJointPlan = { - /** Parsed elbow node, positioned + oriented so its inlet collar sits on - * the joint port and its outlet faces the new run. */ + /** Parsed elbow node, its junction centered ON the drawn corner point, + * oriented so the inlet faces the existing run and the outlet faces + * the new one. */ fitting: DuctFittingNode /** The elbow's outlet collar — where the new duct should start (or end) - * instead of the port position, so duct meets metal instead of + * instead of the corner point, so duct meets metal instead of * overlapping the fitting. */ collarPoint: Point + /** Where the EXISTING run's endpoint must move (pulled back one leg + * from the corner) so the elbow's inlet collar replaces that stretch + * of duct — keeping the visual corner exactly where it was drawn. */ + trimmedPortPoint: Point } /** Orthonormal basis from a primary direction and a coplanar reference. */ @@ -75,12 +80,14 @@ export function planElbowAtPort( ) const euler = new Euler().setFromQuaternion(rotation) - // Junction sits one leg beyond the run end (inlet collar ON the port); - // the outlet collar sits one leg further along the new direction. + // Junction sits exactly ON the corner the user drew. The elbow's inlet + // leg therefore overlaps the last stretch of the existing run — the + // caller trims that run back to `trimmedPortPoint` so the elbow + // replaces it and the visual corner stays put. const leg = fittingLegLength(diameterIn) - const portPos = new Vector3(...port.position) - const junction = portPos.clone().addScaledVector(portDir, leg) + const junction = new Vector3(...port.position) const collar = junction.clone().addScaledVector(away, leg) + const trimmed = junction.clone().addScaledVector(portDir, -leg) const system = port.system === 'return' ? 'return' : 'supply' // Built from the schema directly (defaults fill the rest) — importing @@ -106,5 +113,6 @@ export function planElbowAtPort( return { fitting, collarPoint: [collar.x, collar.y, collar.z], + trimmedPortPoint: [trimmed.x, trimmed.y, trimmed.z], } } From 6e7449c235319b83a10449e5005799bd7eb9f924 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:47:49 +0530 Subject: [PATCH 28/59] =?UTF-8?q?feat(nodes):=20tee=20taps=20=E2=80=94=20b?= =?UTF-8?q?ranch=20off=20the=20side=20of=20a=20trunk?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Starting a duct on another run's BODY (centerline snap, new findNearestRunBodyXZ) now splits the trunk and mints a tee at the tap point: the original node keeps the upstream half trimmed one run-leg short, a new duct-segment carries the downstream half starting one leg after, and the branch leaves square from the tee's collar (the drawn direction is projected perpendicular to the trunk axis — vertical drops included). Split + tee + branch commit through applyNodeChanges as a single undo step. Taps with no room for the run legs (too near a segment end) or drawn parallel to the trunk fall back to plain placement; run end ports keep priority over body hits so elbow joints still win near an open end. planTeeAtRunBody round-trips through the fitting kind's own port math in tests: all three collars mate, split halves end exactly on the run collars, polyline trunks split inside the hit segment. Co-Authored-By: Claude Fable 5 --- packages/nodes/src/duct-segment/tool.tsx | 67 ++++++++-- .../nodes/src/shared/auto-fitting.test.ts | 112 ++++++++++++++++ packages/nodes/src/shared/auto-fitting.ts | 125 +++++++++++++++++- packages/nodes/src/shared/ports.ts | 59 +++++++++ 4 files changed, 351 insertions(+), 12 deletions(-) diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx index f5e43ace3..ee3e07505 100644 --- a/packages/nodes/src/duct-segment/tool.tsx +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -6,11 +6,13 @@ import { getLevelHeight, useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' import { type Group, Vector3 } from 'three' -import { planElbowAtPort } from '../shared/auto-fitting' +import { planElbowAtPort, planTeeAtRunBody } from '../shared/auto-fitting' import { collectScenePorts, DUCT_PORT_SYSTEMS, findNearestPortXZ, + findNearestRunBodyXZ, + type RunBodyHit, type ScenePort, } from '../shared/ports' import { ductSegmentDefinition } from './definition' @@ -28,6 +30,9 @@ import { ductSegmentDefinition } from './definition' * port at an angle (15–90°, vertical turns included), an elbow * fitting is minted at the joint and the duct pulls back to its * outlet collar — corners get real fittings instead of butt joints. + * - **Tee tap**: starting on the SIDE of an existing run (centerline + * snap) splits the trunk, mints a tee at the tap point, and the + * branch leaves square from its collar. * - The in-flight end is angle-locked to the nearest 45° step in XZ * from the start; Y stays at the start's height. Hold **Shift** to * release the lock. @@ -48,6 +53,10 @@ const PREVIEW_OPACITY = 0.55 const DUCT_DIAMETERS_IN = [4, 5, 6, 7, 8, 9, 10, 12, 14, 16, 18, 20] as const /** Snap radius (meters) for joining onto an existing duct's start/end. */ const ENDPOINT_SNAP_RADIUS_M = 0.5 +/** Snap radius (meters) for tapping the SIDE of an existing run — a tee + * is minted there. Tighter than the port radius so run ends keep + * priority near their last stretch. */ +const BODY_SNAP_RADIUS_M = 0.35 /** Angle step (radians) for the XZ angle lock — 45°. */ const ANGLE_STEP_RAD = Math.PI / 4 /** Mouse pixels → meters mapping for Alt-vertical drag. 100 px ≈ 1 m. */ @@ -140,6 +149,9 @@ const DuctSegmentTool = () => { // Port the anchored START point snapped onto (null = free placement). // Read at commit so a turn off an existing run mints an elbow there. const startPortRef = useRef(null) + // Centerline hit the anchored START point snapped onto (null = none). + // Read at commit so a branch off a trunk's side mints a tee there. + const startBodyRef = useRef(null) // Anchor captured when Alt is pressed: screen Y at that moment and the // base elevation (= last point's Y). Cleared on Alt release. const altAnchorRef = useRef<{ clientY: number; baseY: number } | null>(null) @@ -214,7 +226,15 @@ const DuctSegmentTool = () => { const startPlan = elbowPlanFor(startPortRef.current, dir) const endPlan = elbowPlanFor(endPort, [-dir[0], -dir[1], -dir[2]]) - let ductStart = startPlan ? startPlan.collarPoint : start + // Tee tap: the start snapped onto a run's BODY (not an end port) — + // split the trunk and branch from the tee's collar. + const trunkBody = startPlan ? null : startBodyRef.current + const trunkOwner = trunkBody ? useScene.getState().nodes[trunkBody.nodeId] : null + const teePlan = + trunkBody && trunkOwner?.type === 'duct-segment' + ? planTeeAtRunBody(trunkOwner, trunkBody, dir, diameterRef.current) + : null + let ductStart = startPlan ? startPlan.collarPoint : (teePlan?.branchCollar ?? start) let ductEnd = endPlan ? endPlan.collarPoint : end // The collar pull-back must leave a real piece of duct between the // fittings; if not, fall back to the plain joint. @@ -224,8 +244,10 @@ const DuctSegmentTool = () => { ductEnd[2] - ductStart[2], ) let plans = [startPlan, endPlan].filter((p) => p !== null) + let tee = teePlan if (remaining <= 0.08) { plans = [] + tee = null ductStart = start ductEnd = end } @@ -239,19 +261,29 @@ const DuctSegmentTool = () => { path: [ductStart, ductEnd], diameter: diameterRef.current, }) - // One atomic change: trim the joined runs back to the elbow inlets, - // create the elbows + the new duct. Single undo step. + // One atomic change: trim / split the joined runs, create the + // fittings + the new duct. Single undo step. useScene.getState().applyNodeChanges({ create: [ ...plans.map((plan) => ({ node: plan.fitting, parentId: activeLevelId })), + ...(tee + ? [ + { node: tee.fitting, parentId: activeLevelId }, + { node: tee.trunkTail, parentId: activeLevelId }, + ] + : []), { node: duct, parentId: activeLevelId }, ], - update: plans.map((plan) => plan.trim), + update: [ + ...plans.map((plan) => plan.trim), + ...(tee ? [tee.trunkUpdate as { id: AnyNode['id']; data: Partial }] : []), + ], }) triggerSFX('sfx:item-place') setDraftPoints([]) setSnapTarget(null) startPortRef.current = null + startBodyRef.current = null altAnchorRef.current = null setAltActive(false) } @@ -272,6 +304,7 @@ const DuctSegmentTool = () => { point: [number, number, number] snapped: [number, number, number] | null port: ScenePort | null + body: RunBodyHit | null } => { const last = draftRef.current.at(-1) // First point of the run: grid-snapped placement at the base Y (floor, @@ -286,13 +319,23 @@ const DuctSegmentTool = () => { ] if (event.nativeEvent?.altKey !== true) { const target = findNearbyPort(raw) - if (target) return { point: portPoint(target), snapped: portPoint(target), port: target } + if (target) + return { + point: portPoint(target), + snapped: portPoint(target), + port: target, + body: null, + } + // No open end nearby — try the side of a run (tee tap). + const body = findNearestRunBodyXZ(raw, BODY_SNAP_RADIUS_M) + if (body) return { point: body.point, snapped: body.point, port: null, body } } const step = useEditor.getState().gridSnapStep return { point: [snap(raw[0], step), baseY, snap(raw[2], step)], snapped: null, port: null, + body: null, } } // Subsequent points: angle-locked to 45° from `last` (Shift releases). @@ -309,13 +352,15 @@ const DuctSegmentTool = () => { // still capture the cursor. Joining beats the lock. if (event.nativeEvent?.altKey !== true && !shift) { const target = findNearbyPort(rawXZ) - if (target) return { point: portPoint(target), snapped: portPoint(target), port: target } + if (target) + return { point: portPoint(target), snapped: portPoint(target), port: target, body: null } } const step = useEditor.getState().gridSnapStep return { point: [snap(angled[0], step), angled[1], snap(angled[2], step)], snapped: null, port: null, + body: null, } } @@ -367,12 +412,13 @@ const DuctSegmentTool = () => { } return } - const { point, port } = resolveSnappedPoint(event) + const { point, port, body } = resolveSnappedPoint(event) if (!start) { - // First click: anchor the segment start, remembering the port it - // snapped to so the commit can mint an elbow on a turn. + // First click: anchor the segment start, remembering the port or + // run body it snapped to so the commit can mint an elbow / tee. triggerSFX('sfx:grid-snap') startPortRef.current = port + startBodyRef.current = port ? null : body setDraftPoints([point]) return } @@ -446,6 +492,7 @@ const DuctSegmentTool = () => { setCursorPos(null) setSnapTarget(null) startPortRef.current = null + startBodyRef.current = null } emitter.on('grid:move', onMove) diff --git a/packages/nodes/src/shared/auto-fitting.test.ts b/packages/nodes/src/shared/auto-fitting.test.ts index 4eaf2591f..37201d819 100644 --- a/packages/nodes/src/shared/auto-fitting.test.ts +++ b/packages/nodes/src/shared/auto-fitting.test.ts @@ -96,3 +96,115 @@ describe('planElbowAtPort', () => { expect(dist(plan.trimmedPortPoint, [0, 0, 0])).toBeCloseTo(dist(plan.collarPoint, [0, 0, 0]), 6) }) }) + +import { DuctSegmentNode } from '@pascal-app/core' +import { planTeeAtRunBody } from './auto-fitting' +import type { RunBodyHit } from './ports' + +function trunk(path: Point[]): DuctSegmentNode { + return DuctSegmentNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Trunk', + path, + diameter: 8, + ductMaterial: 'sheet-metal', + insulationR: 0, + system: 'supply', + }) +} + +function bodyHit(node: DuctSegmentNode, segmentIndex: number, point: Point): RunBodyHit { + return { nodeId: node.id, segmentIndex, point } +} + +describe('planTeeAtRunBody', () => { + test('mid-trunk tap: junction on the hit, run legs mate the split halves', () => { + const run = trunk([ + [0, 2.4, 0], + [6, 2.4, 0], + ]) + const plan = planTeeAtRunBody(run, bodyHit(run, 0, [3, 2.4, 0]), [0, 0, 1], 6) + expect(plan).not.toBeNull() + + const ports = getDuctFittingPorts(plan!.fitting) + const inlet = ports.find((p) => p.id === 'inlet')! + const outlet = ports.find((p) => p.id === 'outlet')! + const branch = ports.find((p) => p.id === 'branch')! + + // Junction exactly on the centerline hit. + expect(dist(plan!.fitting.position, [3, 2.4, 0])).toBeLessThan(1e-6) + // Trunk keeps the upstream half, ending at the inlet collar. + const upstream = plan!.trunkUpdate.data.path + expect(dist(upstream[upstream.length - 1]!, inlet.position)).toBeLessThan(1e-6) + expect(dot(inlet.direction, [-1, 0, 0])).toBeCloseTo(1, 6) + // Tail carries the rest, starting at the outlet collar. + expect(dist(plan!.trunkTail.path[0]!, outlet.position)).toBeLessThan(1e-6) + expect(dist(plan!.trunkTail.path[1]!, [6, 2.4, 0])).toBeLessThan(1e-6) + // Branch collar square to the run, where the new duct starts. + expect(dist(plan!.branchCollar, branch.position)).toBeLessThan(1e-6) + expect(dot(branch.direction, [0, 0, 1])).toBeCloseTo(1, 6) + // Tee carries trunk diameter on the run, branch diameter on the collar. + expect(plan!.fitting.diameter).toBe(8) + expect(plan!.fitting.diameter2).toBe(6) + }) + + test('45° drawn branch leaves square (projected perpendicular)', () => { + const run = trunk([ + [0, 0, 0], + [6, 0, 0], + ]) + const d = Math.SQRT1_2 + const plan = planTeeAtRunBody(run, bodyHit(run, 0, [3, 0, 0]), [d, 0, d], 6) + expect(plan).not.toBeNull() + const branch = getDuctFittingPorts(plan!.fitting).find((p) => p.id === 'branch')! + expect(dot(branch.direction, [0, 0, 1])).toBeCloseTo(1, 6) + }) + + test('tap too close to a run end → null (use the end port instead)', () => { + const run = trunk([ + [0, 0, 0], + [6, 0, 0], + ]) + expect(planTeeAtRunBody(run, bodyHit(run, 0, [0.1, 0, 0]), [0, 0, 1], 6)).toBeNull() + expect(planTeeAtRunBody(run, bodyHit(run, 0, [5.95, 0, 0]), [0, 0, 1], 6)).toBeNull() + }) + + test('branch parallel to the trunk → null', () => { + const run = trunk([ + [0, 0, 0], + [6, 0, 0], + ]) + expect(planTeeAtRunBody(run, bodyHit(run, 0, [3, 0, 0]), [1, 0, 0], 6)).toBeNull() + }) + + test('vertical drop off a horizontal trunk', () => { + const run = trunk([ + [0, 2.4, 0], + [6, 2.4, 0], + ]) + const plan = planTeeAtRunBody(run, bodyHit(run, 0, [3, 2.4, 0]), [0, -1, 0], 6) + expect(plan).not.toBeNull() + const branch = getDuctFittingPorts(plan!.fitting).find((p) => p.id === 'branch')! + expect(dot(branch.direction, [0, -1, 0])).toBeCloseTo(1, 6) + expect(plan!.branchCollar[1]).toBeLessThan(2.4) + }) + + test('polyline trunk: split lands in the hit segment, other points preserved', () => { + const run = trunk([ + [0, 0, 0], + [4, 0, 0], + [4, 0, 4], + ]) + const plan = planTeeAtRunBody(run, bodyHit(run, 1, [4, 0, 2]), [1, 0, 0], 6) + expect(plan).not.toBeNull() + // Upstream half keeps both leading points. + expect(plan!.trunkUpdate.data.path.length).toBe(3) + expect(dist(plan!.trunkUpdate.data.path[0]!, [0, 0, 0])).toBeLessThan(1e-6) + expect(dist(plan!.trunkUpdate.data.path[1]!, [4, 0, 0])).toBeLessThan(1e-6) + // Tail runs from past the tap to the original end. + expect(dist(plan!.trunkTail.path[1]!, [4, 0, 4])).toBeLessThan(1e-6) + }) +}) diff --git a/packages/nodes/src/shared/auto-fitting.ts b/packages/nodes/src/shared/auto-fitting.ts index 55fd4ec33..262cc9b96 100644 --- a/packages/nodes/src/shared/auto-fitting.ts +++ b/packages/nodes/src/shared/auto-fitting.ts @@ -1,7 +1,7 @@ -import { DuctFittingNode } from '@pascal-app/core' +import { DuctFittingNode, DuctSegmentNode } from '@pascal-app/core' import { Euler, Matrix4, Quaternion, Vector3 } from 'three' import { fittingLegLength } from '../duct-fitting/ports' -import type { ScenePort } from './ports' +import type { RunBodyHit, ScenePort } from './ports' /** Turns shallower than this read as a straight continuation — butt-join * the runs instead of minting a fitting. Matches the elbow schema's @@ -116,3 +116,124 @@ export function planElbowAtPort( trimmedPortPoint: [trimmed.x, trimmed.y, trimmed.z], } } + +// ─── Tee taps (branch off a trunk's body) ──────────────────────────── + +export type TeeTapPlan = { + /** Parsed tee node, its junction centered ON the tap point, run legs + * along the trunk and branch collar toward the new run. */ + fitting: DuctFittingNode + /** The tee's branch collar — where the new duct should start. */ + branchCollar: Point + /** Trunk rewritten to END one run-leg before the tap point. */ + trunkUpdate: { id: DuctSegmentNode['id']; data: { path: Point[] } } + /** New run carrying the rest of the trunk, starting one run-leg after + * the tap point. Created alongside the tee. */ + trunkTail: DuctSegmentNode +} + +/** + * Plan the tee that taps a branch off the SIDE of an existing run. + * + * The trunk is split at the tap point: the original node keeps the + * upstream half (trimmed one leg short), a new duct-segment node carries + * the downstream half (starting one leg after), and the tee's run legs + * bridge the gap with its junction exactly on the centerline hit. The + * branch collar points along `awayDir` projected perpendicular to the + * trunk axis — a tee's branch is square to its run, so a 45° drawn + * branch leaves square and the drawn duct continues from the collar. + * + * Returns null when the tap can't be built: too close to the segment's + * ends (no room for the run legs — join the end port instead), or the + * branch direction is parallel to the trunk. + */ +export function planTeeAtRunBody( + trunk: DuctSegmentNode, + hit: RunBodyHit, + awayDir: Point, + branchDiameterIn: number, +): TeeTapPlan | null { + const a = trunk.path[hit.segmentIndex] + const b = trunk.path[hit.segmentIndex + 1] + if (!a || !b) return null + const axis = new Vector3(b[0] - a[0], b[1] - a[1], b[2] - a[2]) + if (axis.lengthSq() < 1e-10) return null + axis.normalize() + + // Branch leaves square to the run: project the drawn direction onto + // the plane perpendicular to the trunk axis. + const away = new Vector3(...awayDir) + const branchDir = away.clone().addScaledVector(axis, -away.dot(axis)) + if (branchDir.lengthSq() < 1e-6) return null + branchDir.normalize() + + // Room check: both run legs must fit inside the hit segment with a + // margin of real duct on each side. + const legRun = fittingLegLength(trunk.diameter) + const legBranch = fittingLegLength(branchDiameterIn) + const P = new Vector3(...hit.point) + const upstream = P.distanceTo(new Vector3(...a)) + const downstream = P.distanceTo(new Vector3(...b)) + const MIN_STUB = 0.08 + if (upstream < legRun + MIN_STUB || downstream < legRun + MIN_STUB) return null + + // Local +X (the run) → axis, local +Z (the branch) → branchDir. Both + // pairs are perpendicular, so the basis transfer is exact. + const localFrame = frame(new Vector3(1, 0, 0), new Vector3(0, 0, 1)) + const worldFrame = frame(axis, branchDir) + if (!localFrame || !worldFrame) return null + const rotation = new Quaternion().setFromRotationMatrix( + worldFrame.multiply(localFrame.transpose()), + ) + const euler = new Euler().setFromQuaternion(rotation) + + const inletTrim = P.clone().addScaledVector(axis, -legRun) + const outletTrim = P.clone().addScaledVector(axis, legRun) + const collar = P.clone().addScaledVector(branchDir, legBranch) + + const fitting = DuctFittingNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Tee', + fittingType: 'tee', + diameter: trunk.diameter, + diameter2: branchDiameterIn, + ductMaterial: 'sheet-metal', + system: trunk.system, + position: [P.x, P.y, P.z], + rotation: [euler.x, euler.y, euler.z], + }) + + // Split the polyline: original keeps the upstream points + the inlet + // trim; the tail node starts at the outlet trim and carries the rest. + const upstreamPath: Point[] = [ + ...trunk.path.slice(0, hit.segmentIndex + 1).map((p) => [...p] as Point), + [inletTrim.x, inletTrim.y, inletTrim.z], + ] + const tailPath: Point[] = [ + [outletTrim.x, outletTrim.y, outletTrim.z], + ...trunk.path.slice(hit.segmentIndex + 1).map((p) => [...p] as Point), + ] + + const trunkTail = DuctSegmentNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: trunk.name ?? 'Duct run', + path: tailPath, + diameter: trunk.diameter, + ductMaterial: trunk.ductMaterial, + insulationR: trunk.insulationR, + system: trunk.system, + }) + + return { + fitting, + branchCollar: [collar.x, collar.y, collar.z], + trunkUpdate: { id: trunk.id, data: { path: upstreamPath } }, + trunkTail, + } +} diff --git a/packages/nodes/src/shared/ports.ts b/packages/nodes/src/shared/ports.ts index e37d038ec..18c1ba4eb 100644 --- a/packages/nodes/src/shared/ports.ts +++ b/packages/nodes/src/shared/ports.ts @@ -67,3 +67,62 @@ export function findNearestPortXZ( } return best } + +// ─── Run-body hits ─────────────────────────────────────────────────── + +/** Closest-point hit on a duct run's centerline (not its end ports). */ +export type RunBodyHit = { + nodeId: AnyNodeId + /** Polyline segment hit — between `path[segmentIndex]` and `path[segmentIndex + 1]`. */ + segmentIndex: number + /** Closest point on the centerline, level-local meters (Y interpolated). */ + point: [number, number, number] +} + +/** + * Nearest point on any duct-segment CENTERLINE within `radius` of `point` + * on the XZ plane — how a branch taps the side of a trunk. Same XZ-only + * distance convention as `findNearestPortXZ` (grid events ride the floor, + * runs hang at duct height); the hit adopts the centerline's full 3D + * position. Vertical risers project to a point in XZ and are skipped — + * tapping those isn't meaningful. + */ +export function findNearestRunBodyXZ( + point: readonly [number, number, number], + radius: number, + excludeNodeId?: AnyNodeId, +): RunBodyHit | null { + const { nodes } = useScene.getState() + let best: RunBodyHit | null = null + let bestDistSq = radius * radius + for (const node of Object.values(nodes)) { + if (!node || node.type !== 'duct-segment' || node.id === excludeNodeId) continue + const path = node.path + for (let i = 0; i < path.length - 1; i++) { + const a = path[i]! + const b = path[i + 1]! + const abx = b[0] - a[0] + const abz = b[2] - a[2] + const lenSq = abx * abx + abz * abz + if (lenSq < 1e-8) continue // vertical riser — no XZ extent + const t = Math.min( + 1, + Math.max(0, ((point[0] - a[0]) * abx + (point[2] - a[2]) * abz) / lenSq), + ) + const cx = a[0] + abx * t + const cz = a[2] + abz * t + const dx = point[0] - cx + const dz = point[2] - cz + const distSq = dx * dx + dz * dz + if (distSq <= bestDistSq) { + bestDistSq = distSq + best = { + nodeId: node.id, + segmentIndex: i, + point: [cx, a[1] + (b[1] - a[1]) * t, cz], + } + } + } + } + return best +} From d5499cb21bad5fa1282afe56f02308e96c1c3023 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 18:53:21 +0530 Subject: [PATCH 29/59] fix(nodes): re-aim an existing elbow when a run lands on its collar MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ending (or starting) a duct on an existing elbow's open collar left the elbow at its old orientation — a sloped run arriving at a riser elbow butt-joined at the wrong angle. planElbowRealign now patches the elbow in place: junction and the mated collar stay exactly where they were (the other run stays connected), the free collar swings to face the drawn direction, and the elbow's angle adjusts to the turn that requires. The drawn duct starts/ends at the swung collar. Realigns outside the elbow's 15-90° range, non-elbow fittings, and unknown ports are left as plain joints. Patch ships in the same applyNodeChanges as the new duct — one undo step. Tests verify the mated collar is bit-identical before/after and the free collar lands on the returned point facing the run. Co-Authored-By: Claude Fable 5 --- packages/nodes/src/duct-segment/tool.tsx | 27 ++++++- .../nodes/src/shared/auto-fitting.test.ts | 58 +++++++++++++- packages/nodes/src/shared/auto-fitting.ts | 80 +++++++++++++++++++ 3 files changed, 161 insertions(+), 4 deletions(-) diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx index ee3e07505..390d5a031 100644 --- a/packages/nodes/src/duct-segment/tool.tsx +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -6,7 +6,7 @@ import { getLevelHeight, useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' import { type Group, Vector3 } from 'three' -import { planElbowAtPort, planTeeAtRunBody } from '../shared/auto-fitting' +import { planElbowAtPort, planElbowRealign, planTeeAtRunBody } from '../shared/auto-fitting' import { collectScenePorts, DUCT_PORT_SYSTEMS, @@ -202,6 +202,19 @@ const DuctSegmentTool = () => { return { ...plan, trim: { id: port.nodeId, data: { path } as Partial } } } + /** + * Realign gate: the snapped port belongs to an existing ELBOW's open + * collar — re-aim that elbow (junction + mated collar fixed, free + * collar swings to the drawn direction). Null when the owner isn't + * an elbow or the required turn leaves the 15–90° range. + */ + const realignPlanFor = (port: ScenePort | null, awayDir: [number, number, number]) => { + if (!port) return null + const owner = useScene.getState().nodes[port.nodeId] + if (owner?.type !== 'duct-fitting') return null + return planElbowRealign(owner, port.id, awayDir) + } + // One segment per gesture: first click anchors the start, second // click commits a two-point duct immediately. No selection switch — // the tool stays armed so the next click starts the next segment @@ -226,6 +239,10 @@ const DuctSegmentTool = () => { const startPlan = elbowPlanFor(startPortRef.current, dir) const endPlan = elbowPlanFor(endPort, [-dir[0], -dir[1], -dir[2]]) + // Existing-fitting joints: re-aim the elbow whose collar was hit so + // it faces the drawn run instead of leaving a mismatched butt joint. + const startRealign = startPlan ? null : realignPlanFor(startPortRef.current, dir) + const endRealign = endPlan ? null : realignPlanFor(endPort, [-dir[0], -dir[1], -dir[2]]) // Tee tap: the start snapped onto a run's BODY (not an end port) — // split the trunk and branch from the tee's collar. const trunkBody = startPlan ? null : startBodyRef.current @@ -234,8 +251,9 @@ const DuctSegmentTool = () => { trunkBody && trunkOwner?.type === 'duct-segment' ? planTeeAtRunBody(trunkOwner, trunkBody, dir, diameterRef.current) : null - let ductStart = startPlan ? startPlan.collarPoint : (teePlan?.branchCollar ?? start) - let ductEnd = endPlan ? endPlan.collarPoint : end + let ductStart = + startPlan?.collarPoint ?? teePlan?.branchCollar ?? startRealign?.collarPoint ?? start + let ductEnd = endPlan?.collarPoint ?? endRealign?.collarPoint ?? end // The collar pull-back must leave a real piece of duct between the // fittings; if not, fall back to the plain joint. const remaining = Math.hypot( @@ -245,9 +263,11 @@ const DuctSegmentTool = () => { ) let plans = [startPlan, endPlan].filter((p) => p !== null) let tee = teePlan + let realigns = [startRealign, endRealign].filter((p) => p !== null) if (remaining <= 0.08) { plans = [] tee = null + realigns = [] ductStart = start ductEnd = end } @@ -277,6 +297,7 @@ const DuctSegmentTool = () => { update: [ ...plans.map((plan) => plan.trim), ...(tee ? [tee.trunkUpdate as { id: AnyNode['id']; data: Partial }] : []), + ...realigns.map((plan) => plan.update as { id: AnyNode['id']; data: Partial }), ], }) triggerSFX('sfx:item-place') diff --git a/packages/nodes/src/shared/auto-fitting.test.ts b/packages/nodes/src/shared/auto-fitting.test.ts index 37201d819..6049f96ea 100644 --- a/packages/nodes/src/shared/auto-fitting.test.ts +++ b/packages/nodes/src/shared/auto-fitting.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from 'bun:test' import { getDuctFittingPorts } from '../duct-fitting/ports' -import { planElbowAtPort } from './auto-fitting' +import { planElbowAtPort, planElbowRealign } from './auto-fitting' import type { ScenePort } from './ports' type Point = [number, number, number] @@ -208,3 +208,59 @@ describe('planTeeAtRunBody', () => { expect(dist(plan!.trunkTail.path[1]!, [4, 0, 4])).toBeLessThan(1e-6) }) }) + +describe('planElbowRealign', () => { + // A 90° elbow as the draw tool mints it: horizontal run arrives along + // +X (inlet mated), free outlet pointing +Z. + function existingElbow() { + const plan = planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [0, 0, 1], 6)! + return plan.fitting + } + + function realigned(elbow: ReturnType, away: Point) { + const plan = planElbowRealign(elbow, 'outlet', away) + expect(plan).not.toBeNull() + const patched = { ...elbow, ...plan!.update.data } as typeof elbow + return { plan: plan!, ports: getDuctFittingPorts(patched) } + } + + test('free collar swings to the incoming run; mated collar stays put', () => { + const elbow = existingElbow() + const before = getDuctFittingPorts(elbow) + const inletBefore = before.find((p) => p.id === 'inlet')! + + // Incoming slope: up at 60° from the trunk plane. + const away: Point = [0, Math.sin(Math.PI / 3), Math.cos(Math.PI / 3)] + const { plan, ports } = realigned(elbow, away) + const inlet = ports.find((p) => p.id === 'inlet')! + const outlet = ports.find((p) => p.id === 'outlet')! + + // Mated inlet collar unchanged — the horizontal run stays connected. + expect(dist(inlet.position, inletBefore.position)).toBeLessThan(1e-6) + expect(dot(inlet.direction, inletBefore.direction)).toBeCloseTo(1, 6) + // Free outlet now faces the slope, collar one leg out along it. + expect(dot(outlet.direction, away)).toBeCloseTo(1, 6) + expect(dist(outlet.position, plan.collarPoint)).toBeLessThan(1e-6) + }) + + test('straight-on arrival keeps the same geometry (no-op realign)', () => { + const elbow = existingElbow() + const { ports } = realigned(elbow, [0, 0, 1]) + const outlet = ports.find((p) => p.id === 'outlet')! + expect(dot(outlet.direction, [0, 0, 1])).toBeCloseTo(1, 6) + }) + + test('arrival needing a turn outside 15–90° → null', () => { + const elbow = existingElbow() + // Away nearly opposite the fixed inlet direction → turn < 15°. + expect(planElbowRealign(elbow, 'outlet', [0.99, 0, 0.14])).toBeNull() + // Away aligned WITH the fixed collar direction → turn > 90°. + expect(planElbowRealign(elbow, 'outlet', [-0.99, 0, 0.14])).toBeNull() + }) + + test('non-elbow fittings are left alone', () => { + const elbow = existingElbow() + const tee = { ...elbow, fittingType: 'tee' as const } + expect(planElbowRealign(tee, 'outlet', [0, 1, 0])).toBeNull() + }) +}) diff --git a/packages/nodes/src/shared/auto-fitting.ts b/packages/nodes/src/shared/auto-fitting.ts index 262cc9b96..a15c01a56 100644 --- a/packages/nodes/src/shared/auto-fitting.ts +++ b/packages/nodes/src/shared/auto-fitting.ts @@ -237,3 +237,83 @@ export function planTeeAtRunBody( trunkTail, } } + +// ─── Elbow realignment (run drawn onto an existing fitting's collar) ── + +export type ElbowRealignPlan = { + /** Patch for the existing elbow: new turn angle + orientation. */ + update: { id: DuctFittingNode['id']; data: { angle: number; rotation: Point } } + /** Where the free collar lands — the new duct starts (or ends) here. */ + collarPoint: Point +} + +/** + * Re-aim an existing elbow whose open collar a new run just snapped + * onto. The junction stays put and the OTHER collar keeps its exact + * position + direction (it's mated to something), while the snapped + * collar swings to face the incoming run — the elbow's `angle` adjusts + * to whatever turn that requires. + * + * Geometry: with the fixed collar's outward direction f and the desired + * free direction `awayDir`, the elbow's local inlet/outlet pair subtends + * 180° − angle, so the new turn is θ = 180° − ∠(f, away). Buildable only + * while θ stays in the elbow's 15–90° range — otherwise null and the + * caller leaves the joint as a plain butt joint. + */ +export function planElbowRealign( + elbow: DuctFittingNode, + snappedPortId: string, + awayDir: Point, +): ElbowRealignPlan | null { + if (elbow.fittingType !== 'elbow') return null + if (snappedPortId !== 'inlet' && snappedPortId !== 'outlet') return null + + const away = new Vector3(...awayDir) + if (away.lengthSq() < 1e-10) return null + away.normalize() + + // Current world directions of both collars. + const currentRotation = new Quaternion().setFromEuler( + new Euler(elbow.rotation[0], elbow.rotation[1], elbow.rotation[2]), + ) + const turnCur = (elbow.angle * Math.PI) / 180 + const inletWorld = new Vector3(-1, 0, 0).applyQuaternion(currentRotation) + const outletWorld = new Vector3(Math.cos(turnCur), 0, Math.sin(turnCur)).applyQuaternion( + currentRotation, + ) + const fixedWorld = snappedPortId === 'inlet' ? outletWorld : inletWorld + + // New turn from the fixed collar / free collar pair. + const spread = fixedWorld.angleTo(away) + const turnNew = Math.PI - spread + if (turnNew < MIN_TURN_RAD || turnNew > MAX_TURN_RAD) return null + + // Local outward pair at the new angle, ordered (fixed, free) to match + // the world pair. + const inletLocal = new Vector3(-1, 0, 0) + const outletLocal = new Vector3(Math.cos(turnNew), 0, Math.sin(turnNew)) + const fixedLocal = snappedPortId === 'inlet' ? outletLocal : inletLocal + const freeLocal = snappedPortId === 'inlet' ? inletLocal : outletLocal + + const localFrame = frame(fixedLocal, freeLocal) + const worldFrame = frame(fixedWorld, away) + if (!localFrame || !worldFrame) return null + const rotation = new Quaternion().setFromRotationMatrix( + worldFrame.multiply(localFrame.transpose()), + ) + const euler = new Euler().setFromQuaternion(rotation) + + const leg = fittingLegLength(elbow.diameter) + const collar = new Vector3(...elbow.position).addScaledVector(away, leg) + + return { + update: { + id: elbow.id, + data: { + angle: Math.min(90, (turnNew * 180) / Math.PI), + rotation: [euler.x, euler.y, euler.z], + }, + }, + collarPoint: [collar.x, collar.y, collar.z], + } +} From f566c24baa88a0d9c3febb82b593a076548730ca Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 19:01:59 +0530 Subject: [PATCH 30/59] feat(core,editor): system graph + system pill on selected HVAC nodes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The doc's "System" primitive: buildPortComponents groups every port-bearing node into connected components via coinciding ports (union-find, same tolerance as port-connectivity), and summarizeSystemFor reports a component's distribution loops, run count + total length, fitting / terminal / equipment counts, and the key health signal — connectedToEquipment. The floating action menu surfaces it: selecting any HVAC node shows a pill above move/duplicate/delete with the system ("Supply · 7.2m · 3 runs · 2 registers") and an amber "⚠ no equipment" warning when the tree doesn't reach a furnace / air handler — orphaned subtrees are visible at a glance. The fitting's rotation-axis pill stacks beneath it in the same slot. Core tests cover component grouping (tolerance, port-less bystanders) and summaries (full tree stats, orphan detection) via stub registry definitions, keeping core free of nodes-package imports. Co-Authored-By: Claude Fable 5 --- packages/core/src/services/index.ts | 5 + .../core/src/services/system-graph.test.ts | 153 ++++++++++++++ packages/core/src/services/system-graph.ts | 190 ++++++++++++++++++ .../editor/floating-action-menu.tsx | 104 ++++++++-- 4 files changed, 432 insertions(+), 20 deletions(-) create mode 100644 packages/core/src/services/system-graph.test.ts create mode 100644 packages/core/src/services/system-graph.ts diff --git a/packages/core/src/services/index.ts b/packages/core/src/services/index.ts index 91474aa31..0a4bec8a9 100644 --- a/packages/core/src/services/index.ts +++ b/packages/core/src/services/index.ts @@ -67,3 +67,8 @@ export { snapVec3ToGrid, snapWorldXZToBuildingLocal, } from './snap' +export { + buildPortComponents, + type SystemSummary, + summarizeSystemFor, +} from './system-graph' diff --git a/packages/core/src/services/system-graph.test.ts b/packages/core/src/services/system-graph.test.ts new file mode 100644 index 000000000..91d1a781f --- /dev/null +++ b/packages/core/src/services/system-graph.test.ts @@ -0,0 +1,153 @@ +import { describe, expect, test } from 'bun:test' +import type { AnyNodeDefinition, NodePort } from '../registry' +import { registerNode } from '../registry' +import type { AnyNode, AnyNodeId } from '../schema' +import { buildPortComponents, summarizeSystemFor } from './system-graph' + +type Point = [number, number, number] + +// Stub registrations: the graph only consults `def.ports`, so each test +// kind carries just that. Mirrors the real kinds' port conventions +// (duct runs expose start/end, equipment a supply collar, terminals one +// collar) without importing the nodes package — core can't. +function stubDef(kind: string, ports: (node: AnyNode) => NodePort[]): void { + registerNode({ + kind, + schemaVersion: 1, + schema: {}, + category: 'utility', + defaults: () => ({}), + capabilities: {}, + ports, + } as unknown as AnyNodeDefinition) +} + +stubDef('duct-segment', (node) => { + const path = (node as unknown as { path: Point[] }).path + const system = (node as unknown as { system: string }).system + return [ + { id: 'start', position: path[0]!, direction: [-1, 0, 0], diameter: 6, system }, + { + id: 'end', + position: path[path.length - 1]!, + direction: [1, 0, 0], + diameter: 6, + system, + }, + ] +}) +stubDef('hvac-equipment', (node) => { + const position = (node as unknown as { position: Point }).position + return [{ id: 'supply', position, direction: [0, 1, 0], diameter: 12, system: 'supply' }] +}) +stubDef('duct-terminal', (node) => { + const position = (node as unknown as { position: Point }).position + return [{ id: 'collar', position, direction: [0, -1, 0], diameter: 6, system: 'supply' }] +}) + +let nextId = 0 +function makeNode(type: string, fields: Record): AnyNode { + nextId += 1 + return { id: `${type}_${nextId}`, type, object: 'node', parentId: null, ...fields } as AnyNode +} + +function sceneOf(...nodes: AnyNode[]): Record { + return Object.fromEntries(nodes.map((n) => [n.id, n])) as Record +} + +function run(path: Point[], system = 'supply'): AnyNode { + return makeNode('duct-segment', { path, system, diameter: 6 }) +} + +describe('buildPortComponents', () => { + test('chained runs land in one component; a distant run is separate', () => { + const a = run([ + [0, 0, 0], + [3, 0, 0], + ]) + const b = run([ + [3, 0, 0], + [3, 0, 4], + ]) // shares a's end + const c = run([ + [20, 0, 0], + [24, 0, 0], + ]) // far away + const components = buildPortComponents(sceneOf(a, b, c)) + expect(components.length).toBe(2) + const joined = components.find((g) => g.length === 2)! + expect(new Set(joined)).toEqual(new Set([a.id, b.id])) + }) + + test('joints within tolerance still join; outside do not', () => { + const a = run([ + [0, 0, 0], + [3, 0, 0], + ]) + const near = run([ + [3.03, 0, 0], + [6, 0, 0], + ]) // 3 cm — joined + const far = run([ + [3.2, 0, 4], + [6, 0, 4], + ]) // 20 cm in another row — separate + const components = buildPortComponents(sceneOf(a, near, far)) + expect(components.length).toBe(2) + }) + + test('nodes without ports do not participate', () => { + const wall = makeNode('wall', {}) + const a = run([ + [0, 0, 0], + [3, 0, 0], + ]) + const components = buildPortComponents(sceneOf(wall, a)) + expect(components.length).toBe(1) + expect(components[0]).toEqual([a.id]) + }) +}) + +describe('summarizeSystemFor', () => { + test('full tree: equipment → run → terminal, stats add up', () => { + const furnace = makeNode('hvac-equipment', { position: [0, 0, 0] as Point }) + const trunk = run([ + [0, 0, 0], + [4, 0, 0], + ]) + const branch = run([ + [4, 0, 0], + [4, 0, 3], + ]) + const register = makeNode('duct-terminal', { + position: [4, 0, 3] as Point, + terminalType: 'supply-register', + }) + const scene = sceneOf(furnace, trunk, branch, register) + + const summary = summarizeSystemFor(register.id, scene)! + expect(summary.nodeIds.length).toBe(4) + expect(summary.connectedToEquipment).toBe(true) + expect(summary.runCount).toBe(2) + expect(summary.runLengthM).toBeCloseTo(7, 6) + expect(summary.terminalCount).toBe(1) + expect(summary.equipmentCount).toBe(1) + expect(summary.systems).toEqual(['supply']) + }) + + test('orphaned run reports no equipment', () => { + const lonely = run([ + [10, 0, 10], + [14, 0, 10], + ]) + const summary = summarizeSystemFor(lonely.id, sceneOf(lonely))! + expect(summary.connectedToEquipment).toBe(false) + expect(summary.runCount).toBe(1) + expect(summary.runLengthM).toBeCloseTo(4, 6) + }) + + test('port-less node → null', () => { + const wall = makeNode('wall', {}) + expect(summarizeSystemFor(wall.id, sceneOf(wall))).toBeNull() + }) +}) diff --git a/packages/core/src/services/system-graph.ts b/packages/core/src/services/system-graph.ts new file mode 100644 index 000000000..ef898c771 --- /dev/null +++ b/packages/core/src/services/system-graph.ts @@ -0,0 +1,190 @@ +import { nodeRegistry } from '../registry' +import type { AnyNode, AnyNodeId } from '../schema' + +/** + * The "System" primitive: connected components over the port graph. + * + * Two nodes are joined when a port of one coincides in space with a port + * of the other — the same mated-joint relationship `port-connectivity` + * uses for drag propagation, read here at whole-scene scope. A component + * is one distribution system: a furnace, its trunk, the tees, branches, + * and registers hanging off it. + * + * Pure logic (def.ports + arithmetic), no rendering — lives in core so + * the editor (badges, schedules) and analyses (sizing, code checks) can + * share it. + */ + +/** Distance (meters) under which two ports count as the same joint — + * matches port-connectivity's tolerance for hand-placed joints. */ +const COINCIDENT_EPS_M = 0.05 + +export type SystemSummary = { + /** Every node in this connected component. */ + nodeIds: AnyNodeId[] + /** Distribution loops present, e.g. ['supply'], ['supply','return']. */ + systems: string[] + /** Duct / lineset run statistics. */ + runCount: number + runLengthM: number + fittingCount: number + terminalCount: number + equipmentCount: number + /** False = orphaned subtree: air goes nowhere (no furnace / air + * handler / condenser anywhere in the component). */ + connectedToEquipment: boolean +} + +type PortRecord = { + nodeId: AnyNodeId + x: number + y: number + z: number + system: string | undefined +} + +function collectPorts(nodes: Readonly>): PortRecord[] { + const result: PortRecord[] = [] + for (const node of Object.values(nodes)) { + if (!node) continue + const ports = nodeRegistry.get(node.type)?.ports?.(node) + if (!ports) continue + for (const port of ports) { + result.push({ + nodeId: node.id, + x: port.position[0], + y: port.position[1], + z: port.position[2], + system: port.system, + }) + } + } + return result +} + +/** Union-find over node ids. */ +class Components { + private parent = new Map() + + find(id: AnyNodeId): AnyNodeId { + let root = this.parent.get(id) ?? id + if (root !== id) { + root = this.find(root) + this.parent.set(id, root) + } + return root + } + + union(a: AnyNodeId, b: AnyNodeId): void { + const ra = this.find(a) + const rb = this.find(b) + if (ra !== rb) this.parent.set(rb, ra) + } +} + +function pathLength(path: ReadonlyArray): number { + let total = 0 + for (let i = 0; i < path.length - 1; i++) { + const a = path[i]! + const b = path[i + 1]! + total += Math.hypot(b[0] - a[0], b[1] - a[1], b[2] - a[2]) + } + return total +} + +/** + * Group every port-bearing node into connected components via coinciding + * ports. Nodes with ports but no joints form singleton components; nodes + * without `def.ports` don't participate at all. + */ +export function buildPortComponents(nodes: Readonly>): AnyNodeId[][] { + const ports = collectPorts(nodes) + const components = new Components() + const epsSq = COINCIDENT_EPS_M * COINCIDENT_EPS_M + + for (let i = 0; i < ports.length; i++) { + const a = ports[i]! + for (let j = i + 1; j < ports.length; j++) { + const b = ports[j]! + if (a.nodeId === b.nodeId) continue + const dx = a.x - b.x + const dy = a.y - b.y + const dz = a.z - b.z + if (dx * dx + dy * dy + dz * dz <= epsSq) components.union(a.nodeId, b.nodeId) + } + } + + const grouped = new Map() + const seen = new Set() + for (const port of ports) { + if (seen.has(port.nodeId)) continue + seen.add(port.nodeId) + const root = components.find(port.nodeId) + const group = grouped.get(root) + if (group) group.push(port.nodeId) + else grouped.set(root, [port.nodeId]) + } + return [...grouped.values()] +} + +function summarize( + nodeIds: AnyNodeId[], + nodes: Readonly>, +): SystemSummary { + const systems = new Set() + let runCount = 0 + let runLengthM = 0 + let fittingCount = 0 + let terminalCount = 0 + let equipmentCount = 0 + + for (const id of nodeIds) { + const node = nodes[id] + if (!node) continue + if (node.type === 'duct-segment' || node.type === 'lineset') { + runCount += 1 + runLengthM += pathLength(node.path) + if (node.type === 'duct-segment') systems.add(node.system) + else systems.add('refrigerant') + } else if (node.type === 'duct-fitting') { + fittingCount += 1 + systems.add(node.system) + } else if (node.type === 'duct-terminal') { + terminalCount += 1 + systems.add(node.terminalType === 'return-grille' ? 'return' : 'supply') + } else if (node.type === 'hvac-equipment') { + equipmentCount += 1 + } + } + + return { + nodeIds, + systems: [...systems].sort(), + runCount, + runLengthM, + fittingCount, + terminalCount, + equipmentCount, + connectedToEquipment: equipmentCount > 0, + } +} + +/** + * Summary of the system the given node belongs to, or null when the node + * has no ports (not a distribution kind). A node with ports but no + * joints yet still gets a (singleton) summary — `connectedToEquipment: + * false` is the interesting signal there. + */ +export function summarizeSystemFor( + nodeId: AnyNodeId, + nodes: Readonly>, +): SystemSummary | null { + const node = nodes[nodeId] + if (!node) return null + const ports = nodeRegistry.get(node.type)?.ports?.(node) + if (!ports || ports.length === 0) return null + for (const component of buildPortComponents(nodes)) { + if (component.includes(nodeId)) return summarize(component, nodes) + } + return summarize([nodeId], nodes) +} diff --git a/packages/editor/src/components/editor/floating-action-menu.tsx b/packages/editor/src/components/editor/floating-action-menu.tsx index c5ee62e5d..2b3d1ed7f 100644 --- a/packages/editor/src/components/editor/floating-action-menu.tsx +++ b/packages/editor/src/components/editor/floating-action-menu.tsx @@ -22,6 +22,7 @@ import { StairNode, StairSegmentNode, sceneRegistry, + summarizeSystemFor, useLiveNodeOverrides, useScene, WallNode, @@ -30,7 +31,7 @@ import { import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useFrame } from '@react-three/fiber' -import { useCallback, useRef } from 'react' +import { useCallback, useMemo, useRef } from 'react' import * as THREE from 'three' import { duplicateRoofSubtree } from '../../lib/roof-duplication' import { emitDeleteSFX, sfxEmitter } from '../../lib/sfx-bus' @@ -39,6 +40,15 @@ import useEditor from '../../store/use-editor' import { formatMeasurement, MeasurementPill } from './measurement-pill' import { NodeActionMenu } from './node-action-menu' +/** Distribution kinds that get the system pill above the action menu. */ +const HVAC_KINDS = new Set([ + 'duct-segment', + 'duct-fitting', + 'duct-terminal', + 'hvac-equipment', + 'lineset', +]) + const ALLOWED_TYPES = [ 'item', 'door', @@ -191,6 +201,17 @@ export function FloatingActionMenu() { ? ALLOWED_TYPES.includes(node.type) || isRegistrySelectable(node.type) : false + // System summary for distribution kinds (HVAC): which supply/return + // tree the selected node belongs to, its run length, and whether it + // actually reaches a piece of equipment. Subscribes to the full nodes + // map — connectivity changes when ANY joint moves — but computes only + // while an HVAC node is selected. + const allNodes = useScene((s) => s.nodes) + const systemSummary = useMemo( + () => (node && HVAC_KINDS.has(node.type) ? summarizeSystemFor(node.id, allNodes) : null), + [node, allNodes], + ) + // Height-drag pill: shown just above the menu only while the selected // wall/fence height arrow is being dragged. Length + thickness are fixed // during a height drag, so they're computed here; the live height value @@ -586,25 +607,68 @@ export function FloatingActionMenu() { /> ) : null} - {/* Rotation-axis pill for kinds with full 3D orientation (duct - fittings): shows which world axis R/T turns around and that - Alt cycles it. Same slot as the wall height pill — directly - above the action menu. */} - {node?.type === 'duct-fitting' ? ( -
-
- - Axis {rotationAxis.toUpperCase()} - - - · - - R/T rotate - - · - - ⌥ axis -
+ {/* HVAC chrome above the menu — same slot as the wall height + pill. System pill (which tree, run length, equipment reach) + for every distribution kind; the rotation-axis pill stacks + under it for duct fittings. */} + {node && HVAC_KINDS.has(node.type) ? ( +
+ {systemSummary ? ( +
+ + {systemSummary.systems.length > 0 + ? systemSummary.systems + .map((sys) => sys[0]!.toUpperCase() + sys.slice(1)) + .join(' + ') + : 'System'} + + {systemSummary.runCount > 0 ? ( + <> + + · + + + {formatMeasurement(systemSummary.runLengthM, unit)} ·{' '} + {systemSummary.runCount} {systemSummary.runCount === 1 ? 'run' : 'runs'} + + + ) : null} + {systemSummary.terminalCount > 0 ? ( + <> + + · + + + {systemSummary.terminalCount}{' '} + {systemSummary.terminalCount === 1 ? 'register' : 'registers'} + + + ) : null} + {systemSummary.connectedToEquipment ? null : ( + <> + + · + + ⚠ no equipment + + )} +
+ ) : null} + {node.type === 'duct-fitting' ? ( +
+ + Axis {rotationAxis.toUpperCase()} + + + · + + R/T rotate + + · + + ⌥ axis +
+ ) : null}
) : null}
From fa4afc07a66b15ba8c4f0ac4e2029a86a0555199 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 19:11:21 +0530 Subject: [PATCH 31/59] feat(nodes): rectangular trunk cross-section for duct runs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Duct segments gain shape: 'round' | 'rect' with width/height in inches (default 14x8 trunk) — real US systems are a rect trunk with round branches. Q toggles the shape in the draw tool (ghost preview becomes a box, pill reads W/H instead of diameter, run commits named "Trunk"); the inspector switches between diameter and width/height fields. Geometry builds box sections with a stable basis (width stays horizontal — the minimal-rotation cylinder quaternion would roll the profile on axis-aligned runs), cube joints at interior points, and a matching insulation shell. The floor plan draws rect runs at their actual width. Joints stay round: rect ports advertise the area-equivalent diameter (2*sqrt(wh/pi), clamped to the fitting ceiling), so tee taps on a rect trunk mint a sensibly-sized round tee and split halves inherit the rect profile. Old scenes parse unchanged via schema defaults. Co-Authored-By: Claude Fable 5 --- .../core/src/schema/nodes/duct-segment.ts | 19 ++- packages/nodes/src/duct-segment/definition.ts | 24 +++- packages/nodes/src/duct-segment/floorplan.ts | 3 +- packages/nodes/src/duct-segment/geometry.ts | 136 ++++++++++++++---- .../nodes/src/duct-segment/parametrics.ts | 25 ++++ packages/nodes/src/duct-segment/tool.tsx | 65 ++++++++- .../nodes/src/shared/auto-fitting.test.ts | 30 ++++ packages/nodes/src/shared/auto-fitting.ts | 11 +- 8 files changed, 262 insertions(+), 51 deletions(-) diff --git a/packages/core/src/schema/nodes/duct-segment.ts b/packages/core/src/schema/nodes/duct-segment.ts index 98d981a9d..261afb17b 100644 --- a/packages/core/src/schema/nodes/duct-segment.ts +++ b/packages/core/src/schema/nodes/duct-segment.ts @@ -21,10 +21,17 @@ export const DuctSegmentNode = BaseNode.extend({ type: nodeType('duct-segment'), // Polyline path in level-local meters. Minimum two points (start, end). path: z.array(z.tuple([z.number(), z.number(), z.number()])).min(2), - // Nominal inner diameter in inches. Common residential sizes 4"–14"; we - // accept any positive number so the inspector slider stays ergonomic and - // larger commercial sizes load without a schema bump. + // Cross-section. Round is the branch default; rect is the trunk / + // plenum profile (real US systems: rect trunk, round branches). + shape: z.enum(['round', 'rect']).default('round'), + // Nominal inner diameter in inches (round shape). Common residential + // sizes 4"–14"; we accept any positive number so the inspector slider + // stays ergonomic and larger commercial sizes load without a schema bump. diameter: z.number().min(2).max(48).default(6), + // Rect-shape cross-section in inches: width is the horizontal face, + // height the vertical. Typical residential trunks 12×8 – 24×10. + width: z.number().min(4).max(60).default(14), + height: z.number().min(3).max(40).default(8), // Construction material. ductMaterial: z.enum(['sheet-metal', 'flex', 'duct-board']).default('flex'), // External insulation R-value. 0 = bare. Common flex-duct values are R-4.2, @@ -35,9 +42,11 @@ export const DuctSegmentNode = BaseNode.extend({ system: z.enum(['supply', 'return']).default('supply'), }).describe( dedent` - Round duct segment - polyline of 3D points connected by cylindrical sections. + Duct segment - polyline of 3D points connected by duct sections. - path: list of [x, y, z] points in level-local meters (min 2) - - diameter: nominal inner diameter in inches (typ. 4-14 residential) + - shape: round (branches) | rect (trunks / plenums) + - diameter: nominal inner diameter in inches for round (typ. 4-14 residential) + - width / height: rect cross-section in inches (typ. 12x8 - 24x10 trunks) - ductMaterial: sheet-metal | flex | duct-board - insulationR: external insulation R-value (0, 4, 6, 8 typical) - system: supply | return (drives visual tint) diff --git a/packages/nodes/src/duct-segment/definition.ts b/packages/nodes/src/duct-segment/definition.ts index b1e5581e3..88389f777 100644 --- a/packages/nodes/src/duct-segment/definition.ts +++ b/packages/nodes/src/duct-segment/definition.ts @@ -1,6 +1,6 @@ import type { NodeDefinition } from '@pascal-app/core' import { buildDuctSegmentFloorplan } from './floorplan' -import { buildDuctSegmentGeometry } from './geometry' +import { buildDuctSegmentGeometry, ductPortDiameterIn } from './geometry' import { ductSegmentParametrics } from './parametrics' import { DuctSegmentNode } from './schema' @@ -38,7 +38,10 @@ export const ductSegmentDefinition: NodeDefinition = { [0, 0, 0], [3, 0, 0], ], + shape: 'round', diameter: 6, + width: 14, + height: 8, ductMaterial: 'flex', insulationR: 0.5, system: 'supply', @@ -53,7 +56,17 @@ export const ductSegmentDefinition: NodeDefinition = { parametrics: ductSegmentParametrics, geometry: buildDuctSegmentGeometry, - geometryKey: (n) => JSON.stringify([n.path, n.diameter, n.ductMaterial, n.insulationR, n.system]), + geometryKey: (n) => + JSON.stringify([ + n.path, + n.shape, + n.diameter, + n.width, + n.height, + n.ductMaterial, + n.insulationR, + n.system, + ]), // Open run ends as typed ports — directions point outward along the // path tangent so fittings mate flush. Path coords are already @@ -77,14 +90,14 @@ export const ductSegmentDefinition: NodeDefinition = { id: 'start', position: first, direction: unit(first, second), - diameter: n.diameter, + diameter: ductPortDiameterIn(n), system: n.system, }, { id: 'end', position: last, direction: unit(last, prev), - diameter: n.diameter, + diameter: ductPortDiameterIn(n), system: n.system, }, ] @@ -102,6 +115,7 @@ export const ductSegmentDefinition: NodeDefinition = { { key: 'Shift', label: 'Free angle' }, { key: 'Alt + drag', label: 'Go vertical ↕, click to place' }, { key: '[ / ]', label: 'Duct diameter down / up' }, + { key: 'Q', label: 'Round / rect trunk' }, { key: 'C', label: 'Ceiling / floor height' }, { key: 'Esc', label: 'Cancel start point' }, ], @@ -116,6 +130,6 @@ export const ductSegmentDefinition: NodeDefinition = { mcp: { description: - 'A round HVAC duct run defined as a polyline. Supply or return, with configurable diameter, material, and external insulation.', + 'An HVAC duct run defined as a polyline — round (branches) or rect (trunks/plenums). Supply or return, with configurable size, material, and external insulation.', }, } diff --git a/packages/nodes/src/duct-segment/floorplan.ts b/packages/nodes/src/duct-segment/floorplan.ts index cc05f2672..c5893252f 100644 --- a/packages/nodes/src/duct-segment/floorplan.ts +++ b/packages/nodes/src/duct-segment/floorplan.ts @@ -28,7 +28,8 @@ export function buildDuctSegmentFloorplan( points.push([x, z]) } - const diameterM = node.diameter * INCHES_TO_METERS + // Plan width: a rect trunk draws at its actual width; round at diameter. + const diameterM = (node.shape === 'rect' ? node.width : node.diameter) * INCHES_TO_METERS const view = ctx.viewState const palette = view?.palette const showSelectedChrome = (view?.selected || view?.highlighted) ?? false diff --git a/packages/nodes/src/duct-segment/geometry.ts b/packages/nodes/src/duct-segment/geometry.ts index abc95fa14..b8f1bc45d 100644 --- a/packages/nodes/src/duct-segment/geometry.ts +++ b/packages/nodes/src/duct-segment/geometry.ts @@ -1,4 +1,14 @@ -import { CylinderGeometry, Group, Mesh, MeshStandardMaterial, SphereGeometry, Vector3 } from 'three' +import { + BoxGeometry, + CylinderGeometry, + Group, + Matrix4, + Mesh, + MeshStandardMaterial, + Quaternion, + SphereGeometry, + Vector3, +} from 'three' import type { DuctSegmentNode } from './schema' export const INCHES_TO_METERS = 0.0254 @@ -25,6 +35,62 @@ const RADIAL_SEGMENTS = 24 const UP = new Vector3(0, 1, 0) +/** + * Area-equivalent round diameter (inches) for a rect cross-section — + * what a rect trunk advertises on its ports so round fittings / branches + * mate at a sensible size. + */ +export function equivalentDiameterIn(widthIn: number, heightIn: number): number { + return 2 * Math.sqrt((widthIn * heightIn) / Math.PI) +} + +/** The diameter (inches) a duct segment presents at its ports. */ +export function ductPortDiameterIn(node: { + shape?: 'round' | 'rect' + diameter: number + width?: number + height?: number +}): number { + if (node.shape === 'rect' && node.width && node.height) { + return equivalentDiameterIn(node.width, node.height) + } + return node.diameter +} + +/** + * Rect box spanning `start`→`end` with a stable orientation: width stays + * horizontal and height vertical for any non-vertical run (vertical runs + * fall back to world X/Z). Quaternion from an explicit basis — the + * minimal-rotation `setFromUnitVectors` used for cylinders would roll + * the cross-section on axis-aligned runs. + */ +export function buildRectSection( + start: Vector3, + end: Vector3, + widthM: number, + heightM: number, + material: MeshStandardMaterial, + name: string, +): Mesh | null { + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-6) return null + dir.normalize() + + // Basis: y = run direction; x = horizontal width axis; z = height axis. + const x = new Vector3().crossVectors(UP, dir) + if (x.lengthSq() < 1e-8) x.set(1, 0, 0) + x.normalize() + const z = new Vector3().crossVectors(x, dir) + + const geom = new BoxGeometry(widthM, length, heightM) + const mesh = new Mesh(geom, material) + mesh.name = name + mesh.position.copy(start).addScaledVector(dir, length / 2) + mesh.quaternion.copy(new Quaternion().setFromRotationMatrix(new Matrix4().makeBasis(x, dir, z))) + return mesh +} + /** * Cylinder spanning `start`→`end` at `radius`. Shared by the segment and * fitting builders — fittings are just short sections + a junction. @@ -101,31 +167,47 @@ export function buildDuctSegmentGeometry(node: DuctSegmentNode): Group { const group = new Group() if (node.path.length < 2) return group + const isRect = node.shape === 'rect' const radius = (node.diameter * INCHES_TO_METERS) / 2 + const widthM = node.width * INCHES_TO_METERS + const heightM = node.height * INCHES_TO_METERS const ductMaterial = createDuctMaterial(node) const points = node.path.map(([x, y, z]) => new Vector3(x, y, z)) - for (let i = 0; i < points.length - 1; i++) { - // Loop bounds + min(2) on the schema guarantee both points exist. - const a = points[i] as Vector3 - const b = points[i + 1] as Vector3 - const mesh = buildSection(a, b, radius, ductMaterial, `duct-section-${i}`) - if (mesh) group.add(mesh) + const addRun = ( + half: number, + rectW: number, + rectH: number, + material: MeshStandardMaterial, + namePrefix: string, + ) => { + for (let i = 0; i < points.length - 1; i++) { + // Loop bounds + min(2) on the schema guarantee both points exist. + const a = points[i] as Vector3 + const b = points[i + 1] as Vector3 + const mesh = isRect + ? buildRectSection(a, b, rectW, rectH, material, `${namePrefix}-section-${i}`) + : buildSection(a, b, half, material, `${namePrefix}-section-${i}`) + if (mesh) group.add(mesh) + } + // Joint caps at interior points only (skip first and last — they're + // open ends; equipment / terminal / fitting collars cap them). Rect + // joints are cubes spanning the cross-section; round joints spheres. + for (let i = 1; i < points.length - 1; i++) { + const joint = isRect + ? new Mesh(new BoxGeometry(rectW, rectH, rectW), material) + : new Mesh(new SphereGeometry(half, RADIAL_SEGMENTS, 12), material) + joint.name = `${namePrefix}-joint-${i}` + joint.position.copy(points[i] as Vector3) + group.add(joint) + } } - // Joint caps at interior points only (skip first and last — they're open - // ends for now; equipment / terminal nodes will cap them later). - for (let i = 1; i < points.length - 1; i++) { - const joint = new Mesh(new SphereGeometry(radius, RADIAL_SEGMENTS, 12), ductMaterial) - joint.name = `duct-joint-${i}` - joint.position.copy(points[i] as Vector3) - group.add(joint) - } + addRun(radius, widthM, heightM, ductMaterial, 'duct') const insulationThickness = pickInsulationThickness(node.insulationR) if (insulationThickness > 0) { - const insulationRadius = radius + insulationThickness const insulationMaterial = new MeshStandardMaterial({ color: '#f0e4c8', roughness: 1, @@ -133,21 +215,13 @@ export function buildDuctSegmentGeometry(node: DuctSegmentNode): Group { transparent: true, opacity: 0.25, }) - for (let i = 0; i < points.length - 1; i++) { - const a = points[i] as Vector3 - const b = points[i + 1] as Vector3 - const mesh = buildSection(a, b, insulationRadius, insulationMaterial, `duct-insulation-${i}`) - if (mesh) group.add(mesh) - } - for (let i = 1; i < points.length - 1; i++) { - const joint = new Mesh( - new SphereGeometry(insulationRadius, RADIAL_SEGMENTS, 12), - insulationMaterial, - ) - joint.name = `duct-insulation-joint-${i}` - joint.position.copy(points[i] as Vector3) - group.add(joint) - } + addRun( + radius + insulationThickness, + widthM + insulationThickness * 2, + heightM + insulationThickness * 2, + insulationMaterial, + 'duct-insulation', + ) } return group diff --git a/packages/nodes/src/duct-segment/parametrics.ts b/packages/nodes/src/duct-segment/parametrics.ts index 35f4ebfec..3c019e8aa 100644 --- a/packages/nodes/src/duct-segment/parametrics.ts +++ b/packages/nodes/src/duct-segment/parametrics.ts @@ -12,6 +12,12 @@ export const ductSegmentParametrics: ParametricDescriptor = { options: ['supply', 'return'], display: 'segmented', }, + { + key: 'shape', + kind: 'enum', + options: ['round', 'rect'], + display: 'segmented', + }, { key: 'diameter', kind: 'number', @@ -19,6 +25,25 @@ export const ductSegmentParametrics: ParametricDescriptor = { min: 4, max: 24, step: 1, + visibleIf: (n) => n.shape !== 'rect', + }, + { + key: 'width', + kind: 'number', + unit: 'in', + min: 4, + max: 60, + step: 1, + visibleIf: (n) => n.shape === 'rect', + }, + { + key: 'height', + kind: 'number', + unit: 'in', + min: 3, + max: 40, + step: 1, + visibleIf: (n) => n.shape === 'rect', }, ], }, diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx index 390d5a031..2477d8579 100644 --- a/packages/nodes/src/duct-segment/tool.tsx +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -5,7 +5,7 @@ import { DimensionPill, markToolCancelConsumed, triggerSFX, useEditor } from '@p import { getLevelHeight, useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' -import { type Group, Vector3 } from 'three' +import { type Group, Matrix4, Vector3 } from 'three' import { planElbowAtPort, planElbowRealign, planTeeAtRunBody } from '../shared/auto-fitting' import { collectScenePorts, @@ -125,6 +125,9 @@ const DuctSegmentTool = () => { )?.diameter return seeded ?? (ductSegmentDefinition.defaults() as { diameter: number }).diameter }) + // Cross-section for the next committed segment (Q toggles): round + // branches or a rect trunk at the schema's default trunk size. + const [shape, setShape] = useState<'round' | 'rect'>('round') const [draftPoints, setDraftPoints] = useState>([]) const [cursorPos, setCursorPos] = useState<[number, number, number] | null>(null) // Ceiling mode (toggle with C): the first point lands at the level's @@ -144,6 +147,8 @@ const DuctSegmentTool = () => { cursorPosRef.current = cursorPos const diameterRef = useRef(diameter) diameterRef.current = diameter + const shapeRef = useRef(shape) + shapeRef.current = shape const ceilingModeRef = useRef(ceilingMode) ceilingModeRef.current = ceilingMode // Port the anchored START point snapped onto (null = free placement). @@ -277,8 +282,9 @@ const DuctSegmentTool = () => { const duct = DuctSegmentNode.parse({ ...defaults, ...toolDefaults, - name: 'Duct run', + name: shapeRef.current === 'rect' ? 'Trunk' : 'Duct run', path: [ductStart, ductEnd], + shape: shapeRef.current, diameter: diameterRef.current, }) // One atomic change: trim / split the joined runs, create the @@ -315,8 +321,9 @@ const DuctSegmentTool = () => { const resolveBaseY = (): number => { if (!ceilingModeRef.current) return 0 const ceiling = getLevelHeight(activeLevelId, useScene.getState().nodes) - const radius = (diameterRef.current * 0.0254) / 2 - return Math.max(0, ceiling - radius) + const defaults = ductSegmentDefinition.defaults() as { height: number } + const verticalIn = shapeRef.current === 'rect' ? defaults.height : diameterRef.current + return Math.max(0, ceiling - (verticalIn * 0.0254) / 2) } const resolveSnappedPoint = ( @@ -488,6 +495,10 @@ const DuctSegmentTool = () => { } else if (e.key === ']') { e.preventDefault() stepDiameter(1) + } else if (e.key === 'q' || e.key === 'Q') { + e.preventDefault() + setShape((current) => (current === 'round' ? 'rect' : 'round')) + triggerSFX('sfx:grid-snap') } else if (e.key === 'c' || e.key === 'C') { // Toggle ceiling mode. Only the first point reads the base Y, so // toggling mid-run is a no-op until the next fresh segment — flip @@ -555,7 +566,15 @@ const DuctSegmentTool = () => { value: last ? cursorPos[i]! - last[i]! : cursorPos[i]!, signed: !!last, })), - { key: 'diameter', prefix: 'Ø', value: diameter * 0.0254, signed: false }, + ...(shape === 'rect' + ? (() => { + const d = ductSegmentDefinition.defaults() as { width: number; height: number } + return [ + { key: 'trunk-w', prefix: 'W', value: d.width * 0.0254, signed: false }, + { key: 'trunk-h', prefix: 'H', value: d.height * 0.0254, signed: false }, + ] + })() + : [{ key: 'diameter', prefix: 'Ø', value: diameter * 0.0254, signed: false }]), ] : null const pillPrimary = @@ -609,9 +628,9 @@ const DuctSegmentTool = () => {
))} - {/* Preview cylinders */} + {/* Preview sections */} {previewSegments.map((seg, i) => ( - + ))}
) @@ -621,10 +640,12 @@ function PreviewSegment({ a, b, diameterIn, + shape, }: { a: [number, number, number] b: [number, number, number] diameterIn: number + shape: 'round' | 'rect' }) { const start = new Vector3(...a) const end = new Vector3(...b) @@ -633,6 +654,36 @@ function PreviewSegment({ if (length < 1e-4) return null dir.normalize() const mid = new Vector3().addVectors(start, end).multiplyScalar(0.5) + + if (shape === 'rect') { + const defaults = ductSegmentDefinition.defaults() as { width: number; height: number } + const w = defaults.width * 0.0254 + const h = defaults.height * 0.0254 + return ( + { + if (!m) return + // Same stable basis as the geometry builder: width horizontal. + const up = new Vector3(0, 1, 0) + const x = new Vector3().crossVectors(up, dir) + if (x.lengthSq() < 1e-8) x.set(1, 0, 0) + x.normalize() + const z = new Vector3().crossVectors(x, dir) + m.quaternion.setFromRotationMatrix(new Matrix4().makeBasis(x, dir, z)) + }} + > + + + + ) + } + const radius = (diameterIn * 0.0254) / 2 return ( { expect(plan!.branchCollar[1]).toBeLessThan(2.4) }) + test('rect trunk: tee sized to the equivalent diameter, tail stays rect', () => { + const rect = DuctSegmentNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Trunk', + path: [ + [0, 2.4, 0], + [6, 2.4, 0], + ], + shape: 'rect', + diameter: 6, + width: 14, + height: 8, + ductMaterial: 'sheet-metal', + insulationR: 0, + system: 'supply', + }) + const plan = planTeeAtRunBody(rect, bodyHit(rect, 0, [3, 2.4, 0]), [0, 0, 1], 6) + expect(plan).not.toBeNull() + // Tee run legs carry the area-equivalent round size of 14×8. + expect(plan!.fitting.diameter).toBeCloseTo(2 * Math.sqrt((14 * 8) / Math.PI), 6) + expect(plan!.fitting.diameter2).toBe(6) + // The downstream half keeps the trunk's rect profile. + expect(plan!.trunkTail.shape).toBe('rect') + expect(plan!.trunkTail.width).toBe(14) + expect(plan!.trunkTail.height).toBe(8) + }) + test('polyline trunk: split lands in the hit segment, other points preserved', () => { const run = trunk([ [0, 0, 0], diff --git a/packages/nodes/src/shared/auto-fitting.ts b/packages/nodes/src/shared/auto-fitting.ts index a15c01a56..1fe92bb72 100644 --- a/packages/nodes/src/shared/auto-fitting.ts +++ b/packages/nodes/src/shared/auto-fitting.ts @@ -1,6 +1,7 @@ import { DuctFittingNode, DuctSegmentNode } from '@pascal-app/core' import { Euler, Matrix4, Quaternion, Vector3 } from 'three' import { fittingLegLength } from '../duct-fitting/ports' +import { ductPortDiameterIn } from '../duct-segment/geometry' import type { RunBodyHit, ScenePort } from './ports' /** Turns shallower than this read as a straight continuation — butt-join @@ -169,7 +170,10 @@ export function planTeeAtRunBody( // Room check: both run legs must fit inside the hit segment with a // margin of real duct on each side. - const legRun = fittingLegLength(trunk.diameter) + // Rect trunks present their area-equivalent round size at joints + // (clamped to the fitting schema's 48" ceiling). + const trunkDiameterIn = Math.min(48, ductPortDiameterIn(trunk)) + const legRun = fittingLegLength(trunkDiameterIn) const legBranch = fittingLegLength(branchDiameterIn) const P = new Vector3(...hit.point) const upstream = P.distanceTo(new Vector3(...a)) @@ -198,7 +202,7 @@ export function planTeeAtRunBody( metadata: {}, name: 'Tee', fittingType: 'tee', - diameter: trunk.diameter, + diameter: trunkDiameterIn, diameter2: branchDiameterIn, ductMaterial: 'sheet-metal', system: trunk.system, @@ -224,7 +228,10 @@ export function planTeeAtRunBody( metadata: {}, name: trunk.name ?? 'Duct run', path: tailPath, + shape: trunk.shape, diameter: trunk.diameter, + width: trunk.width, + height: trunk.height, ductMaterial: trunk.ductMaterial, insulationR: trunk.insulationR, system: trunk.system, From 2cfee84dbfff097685137f78ed67647008ca92e8 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 19:21:57 +0530 Subject: [PATCH 32/59] feat(nodes): profile inheritance while drawing + rect fittings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Drawing off an existing node now CONTINUES its cross-section: snapping the segment start onto a port inherits the owner's profile — a rect trunk end keeps drawing rect at its exact W×H, a round run / fitting collar keeps its diameter, equipment / terminal collars start round at the port's size. The ghost preview, pill readout (W·H vs Ø), ceiling offset, and committed node all follow. Body taps (tee branches) keep the tool's own profile, since branches off trunks are round. duct-fitting gains shape/width/height: rect elbows and tee run-legs build as boxes at the trunk's profile with a cube junction (tee branch collar stays round), inspector swaps diameter for W/H. The planners carry profiles through — planElbowAtPort takes a DuctProfile (rect elbows mint at the trunk's W×H with the area-equivalent diameter driving leg lengths), planTeeAtRunBody stamps the trunk's shape onto the tee. Old scenes parse unchanged via schema defaults. Co-Authored-By: Claude Fable 5 --- .../core/src/schema/nodes/duct-fitting.ts | 10 ++ packages/nodes/src/duct-fitting/definition.ts | 15 +- packages/nodes/src/duct-fitting/geometry.ts | 60 ++++++-- .../nodes/src/duct-fitting/parametrics.ts | 26 ++++ packages/nodes/src/duct-fitting/tool.tsx | 7 +- packages/nodes/src/duct-segment/tool.tsx | 133 ++++++++++++------ .../nodes/src/shared/auto-fitting.test.ts | 28 +++- packages/nodes/src/shared/auto-fitting.ts | 33 ++++- 8 files changed, 245 insertions(+), 67 deletions(-) diff --git a/packages/core/src/schema/nodes/duct-fitting.ts b/packages/core/src/schema/nodes/duct-fitting.ts index 82f749c1b..f711005da 100644 --- a/packages/core/src/schema/nodes/duct-fitting.ts +++ b/packages/core/src/schema/nodes/duct-fitting.ts @@ -31,6 +31,14 @@ export const DuctFittingNode = BaseNode.extend({ // XYZ euler radians. rotation: z.tuple([z.number(), z.number(), z.number()]).default([0, 0, 0]), fittingType: z.enum(['elbow', 'tee', 'reducer']).default('elbow'), + // Run-leg cross-section: round collars or a rect profile matching a + // rect trunk. A tee's BRANCH collar is always round (diameter2); + // reducers ignore the shape. When rect, `diameter` carries the + // area-equivalent round size (drives leg lengths + advertised ports). + shape: z.enum(['round', 'rect']).default('round'), + // Rect run-leg profile in inches (used when shape = 'rect'). + width: z.number().min(4).max(60).default(14), + height: z.number().min(3).max(40).default(8), // Elbow turn angle in degrees. Residential sheet-metal elbows come in // 90° and 45°; adjustable elbows cover the range between. angle: z.number().min(15).max(90).default(90), @@ -47,6 +55,8 @@ export const DuctFittingNode = BaseNode.extend({ - position: [x, y, z] level-local meters - rotation: [x, y, z] euler radians - fittingType: elbow | tee | reducer + - shape: round | rect run legs (rect matches a rect trunk; branch stays round) + - width / height: rect run-leg profile in inches - angle: elbow turn in degrees (45 or 90 typical) - diameter: main nominal diameter in inches - diameter2: tee branch / reducer outlet diameter in inches diff --git a/packages/nodes/src/duct-fitting/definition.ts b/packages/nodes/src/duct-fitting/definition.ts index 1caa82689..73ff754a3 100644 --- a/packages/nodes/src/duct-fitting/definition.ts +++ b/packages/nodes/src/duct-fitting/definition.ts @@ -28,6 +28,9 @@ export const ductFittingDefinition: NodeDefinition = { position: [0, 0, 0], rotation: [0, 0, 0], fittingType: 'elbow', + shape: 'round', + width: 14, + height: 8, angle: 90, diameter: 6, diameter2: 6, @@ -49,7 +52,17 @@ export const ductFittingDefinition: NodeDefinition = { geometry: buildDuctFittingGeometry, geometryKey: (n) => - JSON.stringify([n.fittingType, n.angle, n.diameter, n.diameter2, n.ductMaterial, n.system]), + JSON.stringify([ + n.fittingType, + n.shape, + n.width, + n.height, + n.angle, + n.diameter, + n.diameter2, + n.ductMaterial, + n.system, + ]), ports: getDuctFittingPorts, diff --git a/packages/nodes/src/duct-fitting/geometry.ts b/packages/nodes/src/duct-fitting/geometry.ts index fa8a8d696..5152d89eb 100644 --- a/packages/nodes/src/duct-fitting/geometry.ts +++ b/packages/nodes/src/duct-fitting/geometry.ts @@ -1,5 +1,18 @@ -import { CylinderGeometry, Group, Mesh, SphereGeometry, TorusGeometry, Vector3 } from 'three' -import { buildSection, createDuctMaterial, INCHES_TO_METERS } from '../duct-segment/geometry' +import { + BoxGeometry, + CylinderGeometry, + Group, + Mesh, + SphereGeometry, + TorusGeometry, + Vector3, +} from 'three' +import { + buildRectSection, + buildSection, + createDuctMaterial, + INCHES_TO_METERS, +} from '../duct-segment/geometry' import { localFittingPorts } from './ports' import type { DuctFittingNode } from './schema' @@ -18,6 +31,12 @@ const UP = new Vector3(0, 1, 0) * * The reducer is special-cased: instead of equal stubs + sphere it draws * a short inlet stub, a tapered cone, and a short outlet stub inline. + * + * `shape: 'rect'` (elbow / tee): run legs become boxes at the fitting's + * width × height (matching the rect trunk they join) with a cube + * junction; a tee's branch leg stays a round cylinder at `diameter2`. + * The rect profile's height rides local +Y — for the horizontal-plane + * orientations rect trunks are drawn in, that's world-vertical. */ export function buildDuctFittingGeometry(node: DuctFittingNode): Group { const group = new Group() @@ -54,24 +73,43 @@ export function buildDuctFittingGeometry(node: DuctFittingNode): Group { ) if (stubB) group.add(stubB) } else { + const isRect = node.shape === 'rect' + const widthM = node.width * INCHES_TO_METERS + const heightM = node.height * INCHES_TO_METERS + // Run legs (elbow inlet/outlet, tee inlet/outlet) follow the shape; + // a tee's branch collar is always round. + const isRunLeg = (id: string) => id === 'inlet' || id === 'outlet' for (const port of ports) { - const radius = (port.diameter * INCHES_TO_METERS) / 2 - const stub = buildSection( - new Vector3(0, 0, 0), - port.position, - radius, - material, - `fitting-stub-${port.id}`, - ) + const stub = + isRect && isRunLeg(port.id) + ? buildRectSection( + new Vector3(0, 0, 0), + port.position, + widthM, + heightM, + material, + `fitting-stub-${port.id}`, + ) + : buildSection( + new Vector3(0, 0, 0), + port.position, + (port.diameter * INCHES_TO_METERS) / 2, + material, + `fitting-stub-${port.id}`, + ) if (stub) group.add(stub) } - const junction = new Mesh(new SphereGeometry(radiusMain * 1.02, RADIAL_SEGMENTS, 12), material) + const junction = isRect + ? new Mesh(new BoxGeometry(widthM * 1.02, heightM * 1.02, widthM * 1.02), material) + : new Mesh(new SphereGeometry(radiusMain * 1.02, RADIAL_SEGMENTS, 12), material) junction.name = 'fitting-junction' group.add(junction) } // Crimp collar at each opening — a thin torus just proud of the stub. + // Round collars only; rect run legs end in the bare box profile. for (const port of ports) { + if (node.shape === 'rect' && (port.id === 'inlet' || port.id === 'outlet')) continue const radius = (port.diameter * INCHES_TO_METERS) / 2 const collar = new Mesh(new TorusGeometry(radius, radius * 0.12, 8, RADIAL_SEGMENTS), material) collar.name = `fitting-collar-${port.id}` diff --git a/packages/nodes/src/duct-fitting/parametrics.ts b/packages/nodes/src/duct-fitting/parametrics.ts index 4ba77dc0b..b12caa5b7 100644 --- a/packages/nodes/src/duct-fitting/parametrics.ts +++ b/packages/nodes/src/duct-fitting/parametrics.ts @@ -32,6 +32,13 @@ export const ductFittingParametrics: ParametricDescriptor = { { label: 'Connections', fields: [ + { + key: 'shape', + kind: 'enum', + options: ['round', 'rect'], + display: 'segmented', + visibleIf: (n) => n.fittingType !== 'reducer', + }, { key: 'diameter', kind: 'number', @@ -39,6 +46,25 @@ export const ductFittingParametrics: ParametricDescriptor = { min: 4, max: 24, step: 1, + visibleIf: (n) => n.shape !== 'rect' || n.fittingType === 'reducer', + }, + { + key: 'width', + kind: 'number', + unit: 'in', + min: 4, + max: 60, + step: 1, + visibleIf: (n) => n.shape === 'rect' && n.fittingType !== 'reducer', + }, + { + key: 'height', + kind: 'number', + unit: 'in', + min: 3, + max: 40, + step: 1, + visibleIf: (n) => n.shape === 'rect' && n.fittingType !== 'reducer', }, { key: 'diameter2', diff --git a/packages/nodes/src/duct-fitting/tool.tsx b/packages/nodes/src/duct-fitting/tool.tsx index 3d9dca98a..d9cb0e068 100644 --- a/packages/nodes/src/duct-fitting/tool.tsx +++ b/packages/nodes/src/duct-fitting/tool.tsx @@ -6,7 +6,12 @@ import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useMemo, useRef, useState } from 'react' import { Euler, Quaternion, Vector3 } from 'three' -import { collectScenePorts, DUCT_PORT_SYSTEMS, findNearestPortXZ, type ScenePort } from '../shared/ports' +import { + collectScenePorts, + DUCT_PORT_SYSTEMS, + findNearestPortXZ, + type ScenePort, +} from '../shared/ports' import { ductFittingDefinition } from './definition' import { buildDuctFittingGeometry } from './geometry' import { localFittingPorts } from './ports' diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx index 2477d8579..e50ea87e1 100644 --- a/packages/nodes/src/duct-segment/tool.tsx +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -90,6 +90,46 @@ function portPoint(port: ScenePort): [number, number, number] { return [port.position[0], port.position[1], port.position[2]] } +/** Cross-section the tool draws with (and commits onto the node). */ +type DraftProfile = { + shape: 'round' | 'rect' + diameter: number + width: number + height: number +} + +/** + * Profile to inherit when the segment start snaps onto `port` — joining + * means continuing that thing: a rect trunk end keeps its W×H, a round + * run / fitting collar keeps its diameter. Equipment and terminal + * collars are round at the port's advertised size. + */ +function inheritProfile(port: ScenePort): DraftProfile | null { + const owner = useScene.getState().nodes[port.nodeId] + if (!owner) return null + if (owner.type === 'duct-segment' || owner.type === 'duct-fitting') { + return { + shape: owner.shape, + diameter: Math.min( + 48, + Math.max(2, owner.type === 'duct-segment' ? owner.diameter : port.diameter), + ), + width: owner.width, + height: owner.height, + } + } + if (owner.type === 'hvac-equipment' || owner.type === 'duct-terminal') { + const defaults = ductSegmentDefinition.defaults() as DraftProfile + return { + shape: 'round', + diameter: Math.min(48, Math.max(2, port.diameter)), + width: defaults.width, + height: defaults.height, + } + } + return null +} + /** * Project `raw` onto the nearest of the eight 45° rays emanating from * `from` in the XZ plane. Y is preserved from `from`. The projection @@ -117,17 +157,23 @@ const DuctSegmentTool = () => { const activeLevelId = useViewer((s) => s.selection.levelId) const unit = useViewer((s) => s.unit) const cursorRef = useRef(null) - // Diameter for the next committed segment. Seeded from `toolDefaults` - // (host-placed preset) when present, else the kind's schema default. - const [diameter, setDiameter] = useState(() => { - const seeded = ( - useEditor.getState().toolDefaults['duct-segment'] as { diameter?: number } | undefined - )?.diameter - return seeded ?? (ductSegmentDefinition.defaults() as { diameter: number }).diameter + // Cross-section profile for the next committed segment. Q toggles + // round/rect, [ / ] steps the round diameter, and snapping the start + // onto an existing run / fitting INHERITS that node's profile — so + // continuing a 14×8 trunk keeps drawing 14×8, and branching off a + // round collar keeps its diameter. Seeded from `toolDefaults`. + const [profile, setProfile] = useState(() => { + const defaults = ductSegmentDefinition.defaults() as DraftProfile + const seeded = useEditor.getState().toolDefaults['duct-segment'] as + | Partial + | undefined + return { + shape: seeded?.shape ?? defaults.shape, + diameter: seeded?.diameter ?? defaults.diameter, + width: seeded?.width ?? defaults.width, + height: seeded?.height ?? defaults.height, + } }) - // Cross-section for the next committed segment (Q toggles): round - // branches or a rect trunk at the schema's default trunk size. - const [shape, setShape] = useState<'round' | 'rect'>('round') const [draftPoints, setDraftPoints] = useState>([]) const [cursorPos, setCursorPos] = useState<[number, number, number] | null>(null) // Ceiling mode (toggle with C): the first point lands at the level's @@ -145,10 +191,8 @@ const DuctSegmentTool = () => { draftRef.current = draftPoints const cursorPosRef = useRef(cursorPos) cursorPosRef.current = cursorPos - const diameterRef = useRef(diameter) - diameterRef.current = diameter - const shapeRef = useRef(shape) - shapeRef.current = shape + const profileRef = useRef(profile) + profileRef.current = profile const ceilingModeRef = useRef(ceilingMode) ceilingModeRef.current = ceilingMode // Port the anchored START point snapped onto (null = free placement). @@ -182,7 +226,7 @@ const DuctSegmentTool = () => { if (!port) return null const owner = useScene.getState().nodes[port.nodeId] if (owner?.type !== 'duct-segment') return null - const plan = planElbowAtPort(port, awayDir, diameterRef.current) + const plan = planElbowAtPort(port, awayDir, profileRef.current) if (!plan) return null // Trim the run's snapped endpoint back to the elbow's inlet collar. @@ -254,7 +298,7 @@ const DuctSegmentTool = () => { const trunkOwner = trunkBody ? useScene.getState().nodes[trunkBody.nodeId] : null const teePlan = trunkBody && trunkOwner?.type === 'duct-segment' - ? planTeeAtRunBody(trunkOwner, trunkBody, dir, diameterRef.current) + ? planTeeAtRunBody(trunkOwner, trunkBody, dir, profileRef.current.diameter) : null let ductStart = startPlan?.collarPoint ?? teePlan?.branchCollar ?? startRealign?.collarPoint ?? start @@ -282,10 +326,12 @@ const DuctSegmentTool = () => { const duct = DuctSegmentNode.parse({ ...defaults, ...toolDefaults, - name: shapeRef.current === 'rect' ? 'Trunk' : 'Duct run', + name: profileRef.current.shape === 'rect' ? 'Trunk' : 'Duct run', path: [ductStart, ductEnd], - shape: shapeRef.current, - diameter: diameterRef.current, + shape: profileRef.current.shape, + diameter: profileRef.current.diameter, + width: profileRef.current.width, + height: profileRef.current.height, }) // One atomic change: trim / split the joined runs, create the // fittings + the new duct. Single undo step. @@ -321,8 +367,8 @@ const DuctSegmentTool = () => { const resolveBaseY = (): number => { if (!ceilingModeRef.current) return 0 const ceiling = getLevelHeight(activeLevelId, useScene.getState().nodes) - const defaults = ductSegmentDefinition.defaults() as { height: number } - const verticalIn = shapeRef.current === 'rect' ? defaults.height : diameterRef.current + const p = profileRef.current + const verticalIn = p.shape === 'rect' ? p.height : p.diameter return Math.max(0, ceiling - (verticalIn * 0.0254) / 2) } @@ -444,9 +490,16 @@ const DuctSegmentTool = () => { if (!start) { // First click: anchor the segment start, remembering the port or // run body it snapped to so the commit can mint an elbow / tee. + // Joining a port INHERITS the source's cross-section — continuing + // a rect trunk keeps drawing rect at its W×H, a round collar its + // diameter. Body taps (tee branches) keep the tool's own profile. triggerSFX('sfx:grid-snap') startPortRef.current = port startBodyRef.current = port ? null : body + if (port) { + const inherited = inheritProfile(port) + if (inherited) setProfile(inherited) + } setDraftPoints([point]) return } @@ -470,7 +523,7 @@ const DuctSegmentTool = () => { const stepDiameter = (step: 1 | -1) => { const sizes = DUCT_DIAMETERS_IN - const current = diameterRef.current + const current = profileRef.current.diameter // Nearest catalogue index, then step — handles seeded off-catalogue // values (e.g. a preset's 7.5") gracefully. let nearest = 0 @@ -479,7 +532,7 @@ const DuctSegmentTool = () => { } const next = sizes[Math.min(sizes.length - 1, Math.max(0, nearest + step))]! if (next === current) return - setDiameter(next) + setProfile((p) => ({ ...p, diameter: next })) triggerSFX('sfx:grid-snap') } @@ -497,7 +550,7 @@ const DuctSegmentTool = () => { stepDiameter(1) } else if (e.key === 'q' || e.key === 'Q') { e.preventDefault() - setShape((current) => (current === 'round' ? 'rect' : 'round')) + setProfile((p) => ({ ...p, shape: p.shape === 'round' ? 'rect' : 'round' })) triggerSFX('sfx:grid-snap') } else if (e.key === 'c' || e.key === 'C') { // Toggle ceiling mode. Only the first point reads the base Y, so @@ -566,15 +619,12 @@ const DuctSegmentTool = () => { value: last ? cursorPos[i]! - last[i]! : cursorPos[i]!, signed: !!last, })), - ...(shape === 'rect' - ? (() => { - const d = ductSegmentDefinition.defaults() as { width: number; height: number } - return [ - { key: 'trunk-w', prefix: 'W', value: d.width * 0.0254, signed: false }, - { key: 'trunk-h', prefix: 'H', value: d.height * 0.0254, signed: false }, - ] - })() - : [{ key: 'diameter', prefix: 'Ø', value: diameter * 0.0254, signed: false }]), + ...(profile.shape === 'rect' + ? [ + { key: 'trunk-w', prefix: 'W', value: profile.width * 0.0254, signed: false }, + { key: 'trunk-h', prefix: 'H', value: profile.height * 0.0254, signed: false }, + ] + : [{ key: 'diameter', prefix: 'Ø', value: profile.diameter * 0.0254, signed: false }]), ] : null const pillPrimary = @@ -630,7 +680,7 @@ const DuctSegmentTool = () => { ))} {/* Preview sections */} {previewSegments.map((seg, i) => ( - + ))} ) @@ -639,13 +689,11 @@ const DuctSegmentTool = () => { function PreviewSegment({ a, b, - diameterIn, - shape, + profile, }: { a: [number, number, number] b: [number, number, number] - diameterIn: number - shape: 'round' | 'rect' + profile: DraftProfile }) { const start = new Vector3(...a) const end = new Vector3(...b) @@ -655,10 +703,9 @@ function PreviewSegment({ dir.normalize() const mid = new Vector3().addVectors(start, end).multiplyScalar(0.5) - if (shape === 'rect') { - const defaults = ductSegmentDefinition.defaults() as { width: number; height: number } - const w = defaults.width * 0.0254 - const h = defaults.height * 0.0254 + if (profile.shape === 'rect') { + const w = profile.width * 0.0254 + const h = profile.height * 0.0254 return ( p.id === 'inlet')! @@ -68,17 +70,31 @@ describe('planElbowAtPort', () => { }) test('straight continuation → no fitting', () => { - expect(planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [1, 0, 0], 6)).toBeNull() + expect(planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [1, 0, 0], ROUND_6)).toBeNull() }) test('shallow 10° turn → no fitting (below the 15° elbow minimum)', () => { const t = (10 * Math.PI) / 180 - expect(planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [Math.cos(t), 0, Math.sin(t)], 6)).toBeNull() + expect( + planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [Math.cos(t), 0, Math.sin(t)], ROUND_6), + ).toBeNull() }) test('doubling back past 90° → no fitting', () => { const t = (135 * Math.PI) / 180 - expect(planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [Math.cos(t), 0, Math.sin(t)], 6)).toBeNull() + expect( + planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [Math.cos(t), 0, Math.sin(t)], ROUND_6), + ).toBeNull() + }) + + test('rect profile: elbow carries the trunk W×H and equivalent diameter', () => { + const rect: DuctProfile = { shape: 'rect', diameter: 6, width: 14, height: 8 } + const plan = planElbowAtPort(port([3, 2.4, 0], [1, 0, 0]), [0, 0, 1], rect) + expect(plan).not.toBeNull() + expect(plan!.fitting.shape).toBe('rect') + expect(plan!.fitting.width).toBe(14) + expect(plan!.fitting.height).toBe(8) + expect(plan!.fitting.diameter).toBeCloseTo(2 * Math.sqrt((14 * 8) / Math.PI), 6) }) test('junction on the corner; trim and collar one leg out on each side', () => { @@ -243,7 +259,7 @@ describe('planElbowRealign', () => { // A 90° elbow as the draw tool mints it: horizontal run arrives along // +X (inlet mated), free outlet pointing +Z. function existingElbow() { - const plan = planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [0, 0, 1], 6)! + const plan = planElbowAtPort(port([3, 0, 0], [1, 0, 0]), [0, 0, 1], ROUND_6)! return plan.fitting } diff --git a/packages/nodes/src/shared/auto-fitting.ts b/packages/nodes/src/shared/auto-fitting.ts index 1fe92bb72..65c572f76 100644 --- a/packages/nodes/src/shared/auto-fitting.ts +++ b/packages/nodes/src/shared/auto-fitting.ts @@ -1,7 +1,7 @@ import { DuctFittingNode, DuctSegmentNode } from '@pascal-app/core' import { Euler, Matrix4, Quaternion, Vector3 } from 'three' import { fittingLegLength } from '../duct-fitting/ports' -import { ductPortDiameterIn } from '../duct-segment/geometry' +import { ductPortDiameterIn, equivalentDiameterIn } from '../duct-segment/geometry' import type { RunBodyHit, ScenePort } from './ports' /** Turns shallower than this read as a straight continuation — butt-join @@ -14,6 +14,23 @@ const MAX_TURN_RAD = (90.5 * Math.PI) / 180 type Point = [number, number, number] +/** Cross-section a planned fitting (and the duct drawing it) carries. */ +export type DuctProfile = { + shape: 'round' | 'rect' + /** Round size in inches (ignored for rect — the equivalent is derived). */ + diameter: number + /** Rect profile in inches. */ + width: number + height: number +} + +/** Effective round-size (inches) a profile presents at joints. */ +export function profileDiameterIn(profile: DuctProfile): number { + return profile.shape === 'rect' + ? Math.min(48, equivalentDiameterIn(profile.width, profile.height)) + : profile.diameter +} + export type ElbowJointPlan = { /** Parsed elbow node, its junction centered ON the drawn corner point, * oriented so the inlet faces the existing run and the outlet faces @@ -58,7 +75,7 @@ function frame(primary: Vector3, reference: Vector3): Matrix4 | null { export function planElbowAtPort( port: ScenePort, awayDir: Point, - diameterIn: number, + profile: DuctProfile, ): ElbowJointPlan | null { const portDir = new Vector3(...port.direction).normalize() const away = new Vector3(...awayDir).normalize() @@ -85,7 +102,7 @@ export function planElbowAtPort( // leg therefore overlaps the last stretch of the existing run — the // caller trims that run back to `trimmedPortPoint` so the elbow // replaces it and the visual corner stays put. - const leg = fittingLegLength(diameterIn) + const leg = fittingLegLength(profileDiameterIn(profile)) const junction = new Vector3(...port.position) const collar = junction.clone().addScaledVector(away, leg) const trimmed = junction.clone().addScaledVector(portDir, -leg) @@ -101,9 +118,12 @@ export function planElbowAtPort( metadata: {}, name: 'Elbow', fittingType: 'elbow', + shape: profile.shape, + width: profile.width, + height: profile.height, angle: angleDeg, - diameter: diameterIn, - diameter2: diameterIn, + diameter: profileDiameterIn(profile), + diameter2: profileDiameterIn(profile), // Corner elbows are sheet metal even on flex runs (adjustable elbows). ductMaterial: 'sheet-metal', system, @@ -202,6 +222,9 @@ export function planTeeAtRunBody( metadata: {}, name: 'Tee', fittingType: 'tee', + shape: trunk.shape, + width: trunk.width, + height: trunk.height, diameter: trunkDiameterIn, diameter2: branchDiameterIn, ductMaterial: 'sheet-metal', From 31baa9ec533ebe93b7a7070171af6c5858527911 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 19:29:07 +0530 Subject: [PATCH 33/59] =?UTF-8?q?fix(nodes):=20mitered=20rect=20elbow=20?= =?UTF-8?q?=E2=80=94=20one=20folded=20solid=20instead=20of=20boxes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The rect elbow was two box stubs pushed into an axis-aligned cube, so the legs interpenetrated and the corner read as colliding boxes at any angle off 90°. It's now ONE closed swept solid: the rect profile runs from the inlet face through a miter ring on the corner's bisector plane (2D miter-join offset, exact for the elbow's 15-90° range) to the outlet face — a crisp seam like a folded sheet-metal square elbow. Non-indexed triangles give flat face normals for the metal look. The rect tee also drops its junction cube: one straight rect box inlet→outlet with the round branch stub tapping its side. Co-Authored-By: Claude Fable 5 --- packages/nodes/src/duct-fitting/geometry.ts | 152 ++++++++++++++++---- 1 file changed, 125 insertions(+), 27 deletions(-) diff --git a/packages/nodes/src/duct-fitting/geometry.ts b/packages/nodes/src/duct-fitting/geometry.ts index 5152d89eb..d53fd0e24 100644 --- a/packages/nodes/src/duct-fitting/geometry.ts +++ b/packages/nodes/src/duct-fitting/geometry.ts @@ -1,8 +1,11 @@ import { - BoxGeometry, + BufferGeometry, CylinderGeometry, + DoubleSide, + Float32BufferAttribute, Group, Mesh, + type MeshStandardMaterial, SphereGeometry, TorusGeometry, Vector3, @@ -19,6 +22,83 @@ import type { DuctFittingNode } from './schema' const RADIAL_SEGMENTS = 24 const UP = new Vector3(0, 1, 0) +/** + * Mitered rectangular elbow as ONE closed solid — the way sheet-metal + * square elbows are actually folded. The rect profile sweeps from the + * inlet face to the outlet face through a single miter ring lying on + * the corner's bisector plane (the classic 2D miter-join offset: + * join(u) = (wA + wB) · u / (1 + wA·wB)), so the two legs meet in a + * crisp seam instead of interpenetrating boxes. + * + * Local frame: legs in the XZ plane (ports convention), profile height + * along local Y. Non-indexed triangles → flat face normals for the + * folded-metal look; the closed solid renders double-sided so winding + * never makes a face vanish. + */ +function buildMiteredRectElbow( + inletPos: Vector3, + outletPos: Vector3, + widthM: number, + heightM: number, + material: MeshStandardMaterial, +): Mesh { + const travelIn = inletPos.clone().multiplyScalar(-1).normalize() // inlet → junction + const travelOut = outletPos.clone().normalize() // junction → outlet + const wA = new Vector3().crossVectors(UP, travelIn).normalize() + const wB = new Vector3().crossVectors(UP, travelOut).normalize() + // Elbow turns are ≤ 90°, so wA·wB ≥ 0 and the join never degenerates. + const miterScale = 1 / (1 + wA.dot(wB)) + const wJoin = new Vector3().addVectors(wA, wB) + + const hw = widthM / 2 + const hh = heightM / 2 + const corners: Array<[number, number]> = [ + [hw, hh], + [-hw, hh], + [-hw, -hh], + [hw, -hh], + ] + const ring = (center: Vector3, uAxis: Vector3, scale = 1): Vector3[] => + corners.map(([u, v]) => + center + .clone() + .addScaledVector(uAxis, u * scale) + .addScaledVector(UP, v), + ) + + const inletRing = ring(inletPos, wA) + const miterRing = ring(new Vector3(0, 0, 0), wJoin, miterScale) + const outletRing = ring(outletPos, wB) + + const positions: number[] = [] + const tri = (a: Vector3, b: Vector3, c: Vector3) => + positions.push(a.x, a.y, a.z, b.x, b.y, b.z, c.x, c.y, c.z) + const quad = (a: Vector3, b: Vector3, c: Vector3, d: Vector3) => { + tri(a, b, c) + tri(a, c, d) + } + const skin = (from: Vector3[], to: Vector3[]) => { + for (let k = 0; k < 4; k++) { + const k2 = (k + 1) % 4 + quad(from[k]!, to[k]!, to[k2]!, from[k2]!) + } + } + skin(inletRing, miterRing) + skin(miterRing, outletRing) + // End caps. + quad(inletRing[0]!, inletRing[1]!, inletRing[2]!, inletRing[3]!) + quad(outletRing[3]!, outletRing[2]!, outletRing[1]!, outletRing[0]!) + + const geometry = new BufferGeometry() + geometry.setAttribute('position', new Float32BufferAttribute(positions, 3)) + geometry.computeVertexNormals() + const solidMaterial = material.clone() + solidMaterial.side = DoubleSide + const mesh = new Mesh(geometry, solidMaterial) + mesh.name = 'fitting-elbow-rect' + return mesh +} + /** * Pure geometry builder for a duct fitting, in the fitting's LOCAL frame — * `` applies `node.position` / `node.rotation`. @@ -72,36 +152,54 @@ export function buildDuctFittingGeometry(node: DuctFittingNode): Group { 'fitting-stub-outlet', ) if (stubB) group.add(stubB) + } else if (node.shape === 'rect' && node.fittingType === 'elbow') { + // One mitered solid — no stubs, no junction blob. + const inlet = ports.find((p) => p.id === 'inlet')! + const outlet = ports.find((p) => p.id === 'outlet')! + group.add( + buildMiteredRectElbow( + inlet.position, + outlet.position, + node.width * INCHES_TO_METERS, + node.height * INCHES_TO_METERS, + material, + ), + ) + } else if (node.shape === 'rect' && node.fittingType === 'tee') { + // Straight rect run inlet→outlet (one box — nothing to miter) with a + // round branch stub tapping its side. + const inlet = ports.find((p) => p.id === 'inlet')! + const outlet = ports.find((p) => p.id === 'outlet')! + const branch = ports.find((p) => p.id === 'branch')! + const run = buildRectSection( + inlet.position, + outlet.position, + node.width * INCHES_TO_METERS, + node.height * INCHES_TO_METERS, + material, + 'fitting-run', + ) + if (run) group.add(run) + const stub = buildSection( + new Vector3(0, 0, 0), + branch.position, + (branch.diameter * INCHES_TO_METERS) / 2, + material, + 'fitting-stub-branch', + ) + if (stub) group.add(stub) } else { - const isRect = node.shape === 'rect' - const widthM = node.width * INCHES_TO_METERS - const heightM = node.height * INCHES_TO_METERS - // Run legs (elbow inlet/outlet, tee inlet/outlet) follow the shape; - // a tee's branch collar is always round. - const isRunLeg = (id: string) => id === 'inlet' || id === 'outlet' for (const port of ports) { - const stub = - isRect && isRunLeg(port.id) - ? buildRectSection( - new Vector3(0, 0, 0), - port.position, - widthM, - heightM, - material, - `fitting-stub-${port.id}`, - ) - : buildSection( - new Vector3(0, 0, 0), - port.position, - (port.diameter * INCHES_TO_METERS) / 2, - material, - `fitting-stub-${port.id}`, - ) + const stub = buildSection( + new Vector3(0, 0, 0), + port.position, + (port.diameter * INCHES_TO_METERS) / 2, + material, + `fitting-stub-${port.id}`, + ) if (stub) group.add(stub) } - const junction = isRect - ? new Mesh(new BoxGeometry(widthM * 1.02, heightM * 1.02, widthM * 1.02), material) - : new Mesh(new SphereGeometry(radiusMain * 1.02, RADIAL_SEGMENTS, 12), material) + const junction = new Mesh(new SphereGeometry(radiusMain * 1.02, RADIAL_SEGMENTS, 12), material) junction.name = 'fitting-junction' group.add(junction) } From b49de55182297710ba95e79fc4a3f46471142ec5 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 19:43:37 +0530 Subject: [PATCH 34/59] feat(app): proper vector icons for the HVAC Build tiles The five HVAC tiles were borrowing unrelated PNGs (wall, column, window, elevator). BuildType gains an `iconify` alternative to `iconSrc`, rendered via @iconify/react: wind (duct), git-branch (fitting), air-vent (register), heater (HVAC unit), cable (lineset). The duct-terminal registry presentation icon aligns to air-vent too. Co-Authored-By: Claude Fable 5 --- apps/editor/components/build-tab.tsx | 38 ++++++++++++------- .../nodes/src/duct-terminal/definition.ts | 2 +- 2 files changed, 26 insertions(+), 14 deletions(-) diff --git a/apps/editor/components/build-tab.tsx b/apps/editor/components/build-tab.tsx index 211960d27..b9ea906a4 100644 --- a/apps/editor/components/build-tab.tsx +++ b/apps/editor/components/build-tab.tsx @@ -1,5 +1,6 @@ 'use client' +import { Icon as IconifyIcon } from '@iconify/react' import { MaterialPaintPanel, triggerSFX, useEditor } from '@pascal-app/editor' import Image from 'next/image' import { useCallback, useEffect, useRef } from 'react' @@ -38,7 +39,10 @@ type BuildType = { /** Selection id — equals `kind` for tool types, `'painting'` for paint mode. */ id: string label: string - iconSrc: string + /** Raster asset tile (legacy Build sidebar artwork). */ + iconSrc?: string + /** Iconify identifier — used by kinds with no bespoke PNG (HVAC). */ + iconify?: string /** Present for structure-tool types (absent for the paint mode). */ kind?: BuildToolKind /** Non-placement special mode. */ @@ -59,11 +63,11 @@ const BUILD_TYPES: BuildType[] = [ { id: 'column', label: 'Column', iconSrc: '/icons/column.png', kind: 'column' }, { id: 'shelf', label: 'Shelf', iconSrc: '/icons/shelf.png', kind: 'shelf' }, { id: 'spawn', label: 'Spawn Point', iconSrc: '/icons/spawn-point.png', kind: 'spawn' }, - { id: 'duct-segment', label: 'Duct', iconSrc: '/icons/wall.png', kind: 'duct-segment' }, - { id: 'duct-fitting', label: 'Duct Fitting', iconSrc: '/icons/column.png', kind: 'duct-fitting' }, - { id: 'duct-terminal', label: 'Register', iconSrc: '/icons/window.png', kind: 'duct-terminal' }, - { id: 'hvac-equipment', label: 'HVAC Unit', iconSrc: '/icons/elevator.png', kind: 'hvac-equipment' }, - { id: 'lineset', label: 'Lineset', iconSrc: '/icons/column.png', kind: 'lineset' }, + { id: 'duct-segment', label: 'Duct', iconify: 'lucide:wind', kind: 'duct-segment' }, + { id: 'duct-fitting', label: 'Duct Fitting', iconify: 'lucide:git-branch', kind: 'duct-fitting' }, + { id: 'duct-terminal', label: 'Register', iconify: 'lucide:air-vent', kind: 'duct-terminal' }, + { id: 'hvac-equipment', label: 'HVAC Unit', iconify: 'lucide:heater', kind: 'hvac-equipment' }, + { id: 'lineset', label: 'Lineset', iconify: 'lucide:cable', kind: 'lineset' }, { id: 'painting', label: 'Painting', iconSrc: '/icons/paint.png', mode: 'material-paint' }, ] @@ -148,13 +152,21 @@ export function BuildTab() { onMouseEnter={() => triggerSFX('sfx:menu-hover')} type="button" > - {type.label} + {type.iconSrc ? ( + {type.label} + ) : ( + + )} diff --git a/packages/nodes/src/duct-terminal/definition.ts b/packages/nodes/src/duct-terminal/definition.ts index bf773f0e5..96fbe62f0 100644 --- a/packages/nodes/src/duct-terminal/definition.ts +++ b/packages/nodes/src/duct-terminal/definition.ts @@ -64,7 +64,7 @@ export const ductTerminalDefinition: NodeDefinition = { label: 'Register', description: 'Duct terminal — supply register, ceiling diffuser, or return grille. Duct runs end at its collar.', - icon: { kind: 'iconify', name: 'lucide:align-justify' }, + icon: { kind: 'iconify', name: 'lucide:air-vent' }, paletteSection: 'structure', paletteOrder: 93, }, From d1f46e0d74fe70f975459862070dc1e3f9e14d15 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 20:00:31 +0530 Subject: [PATCH 35/59] =?UTF-8?q?feat(nodes):=20DWV=20pipe-segment=20?= =?UTF-8?q?=E2=80=94=20plumbing=20phase=20opens=20with=20sloped=20drains?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit First kind of the research doc's Phase 2 (DWV plumbing): pipe-segment, the plumbing sibling of duct-segment on the same polyline + typed-port machinery, with SLOPE as the new ingredient. - Schema: path / diameter (1¼–8" nominal) / pvc-abs-cast-iron / system waste|vent. Slope lives in the path Y coordinates; Y may go below the floor. - Draw tool: two-click segments where WASTE runs fall automatically at the IPC default ¼" per foot of horizontal run (the pill's Y delta shows the live drop); vents stay level. Q toggles waste/vent, [ / ] steps nominal sizes, Alt-drag draws vertical stacks, 45° lock with Shift free, port snap scoped to the new DWV port systems so drains never mate onto duct or refrigerant collars. - Geometry: capped PVC/ABS/cast-iron sections with coupling hubs; floor plan follows drafting convention (waste solid at pipe width, vents dashed, stacks as circles). - System graph counts pipe runs, the floating-menu pill covers them, Build tab gains a DWV Pipe tile (lucide:droplets). Deferred: DWV fittings (wye / sanitary tee), fixtures, traps, IPC validators, riser view. Co-Authored-By: Claude Fable 5 --- apps/editor/components/build-tab.tsx | 2 + packages/core/src/events/bus.ts | 3 + packages/core/src/schema/index.ts | 3 +- .../core/src/schema/nodes/pipe-segment.ts | 41 ++ packages/core/src/schema/types.ts | 4 +- packages/core/src/services/system-graph.ts | 6 +- .../editor/floating-action-menu.tsx | 1 + packages/editor/src/store/use-editor.tsx | 1 + packages/nodes/src/index.ts | 4 + packages/nodes/src/pipe-segment/definition.ts | 108 +++++ packages/nodes/src/pipe-segment/floorplan.ts | 80 ++++ packages/nodes/src/pipe-segment/geometry.ts | 59 +++ packages/nodes/src/pipe-segment/index.ts | 3 + .../nodes/src/pipe-segment/parametrics.ts | 36 ++ packages/nodes/src/pipe-segment/schema.ts | 1 + packages/nodes/src/pipe-segment/tool.tsx | 381 ++++++++++++++++++ packages/nodes/src/shared/ports.ts | 2 + 17 files changed, 730 insertions(+), 5 deletions(-) create mode 100644 packages/core/src/schema/nodes/pipe-segment.ts create mode 100644 packages/nodes/src/pipe-segment/definition.ts create mode 100644 packages/nodes/src/pipe-segment/floorplan.ts create mode 100644 packages/nodes/src/pipe-segment/geometry.ts create mode 100644 packages/nodes/src/pipe-segment/index.ts create mode 100644 packages/nodes/src/pipe-segment/parametrics.ts create mode 100644 packages/nodes/src/pipe-segment/schema.ts create mode 100644 packages/nodes/src/pipe-segment/tool.tsx diff --git a/apps/editor/components/build-tab.tsx b/apps/editor/components/build-tab.tsx index b9ea906a4..728ebcff9 100644 --- a/apps/editor/components/build-tab.tsx +++ b/apps/editor/components/build-tab.tsx @@ -34,6 +34,7 @@ type BuildToolKind = | 'duct-terminal' | 'hvac-equipment' | 'lineset' + | 'pipe-segment' type BuildType = { /** Selection id — equals `kind` for tool types, `'painting'` for paint mode. */ @@ -68,6 +69,7 @@ const BUILD_TYPES: BuildType[] = [ { id: 'duct-terminal', label: 'Register', iconify: 'lucide:air-vent', kind: 'duct-terminal' }, { id: 'hvac-equipment', label: 'HVAC Unit', iconify: 'lucide:heater', kind: 'hvac-equipment' }, { id: 'lineset', label: 'Lineset', iconify: 'lucide:cable', kind: 'lineset' }, + { id: 'pipe-segment', label: 'DWV Pipe', iconify: 'lucide:droplets', kind: 'pipe-segment' }, { id: 'painting', label: 'Painting', iconSrc: '/icons/paint.png', mode: 'material-paint' }, ] diff --git a/packages/core/src/events/bus.ts b/packages/core/src/events/bus.ts index cd0067d43..9805d83f1 100644 --- a/packages/core/src/events/bus.ts +++ b/packages/core/src/events/bus.ts @@ -23,6 +23,7 @@ import type { ItemNode, LevelNode, LinesetNode, + PipeSegmentNode, RidgeVentNode, RoofNode, RoofSegmentNode, @@ -116,6 +117,7 @@ export type DuctSegmentEvent = NodeEvent export type DuctFittingEvent = NodeEvent export type DuctTerminalEvent = NodeEvent export type HvacEquipmentEvent = NodeEvent +export type PipeSegmentEvent = NodeEvent export type LinesetEvent = NodeEvent // Event suffixes - exported for use in hooks @@ -275,6 +277,7 @@ type EditorEvents = GridEvents & NodeEvents<'duct-fitting', DuctFittingEvent> & NodeEvents<'duct-terminal', DuctTerminalEvent> & NodeEvents<'hvac-equipment', HvacEquipmentEvent> & + NodeEvents<'pipe-segment', PipeSegmentEvent> & NodeEvents<'lineset', LinesetEvent> & CameraControlEvents & ToolEvents & diff --git a/packages/core/src/schema/index.ts b/packages/core/src/schema/index.ts index 70726baee..0233ef456 100644 --- a/packages/core/src/schema/index.ts +++ b/packages/core/src/schema/index.ts @@ -71,8 +71,8 @@ export { export { EyebrowVentNode } from './nodes/eyebrow-vent' export { FenceBaseStyle, FenceNode, FenceStyle } from './nodes/fence' export { GuideNode, GuideScaleReference } from './nodes/guide' -export { HvacEquipmentNode } from './nodes/hvac-equipment' export { GutterNode, GutterOutlet } from './nodes/gutter' +export { HvacEquipmentNode } from './nodes/hvac-equipment' export type { AnimationEffect, Asset, @@ -93,6 +93,7 @@ export { } from './nodes/item' export { LevelNode } from './nodes/level' export { LinesetNode } from './nodes/lineset' +export { PipeSegmentNode } from './nodes/pipe-segment' // Nodes export { RidgeVentNode } from './nodes/ridge-vent' export type { RoofSurfaceMaterialRole, RoofSurfaceMaterialSpec } from './nodes/roof' diff --git a/packages/core/src/schema/nodes/pipe-segment.ts b/packages/core/src/schema/nodes/pipe-segment.ts new file mode 100644 index 000000000..6f7512ec3 --- /dev/null +++ b/packages/core/src/schema/nodes/pipe-segment.ts @@ -0,0 +1,41 @@ +import dedent from 'dedent' +import { z } from 'zod' +import { BaseNode, nodeType, objectId } from '../base' + +/** + * DWV pipe segment — drain / waste / vent runs in US residential + * plumbing. Phase 2 of the distribution-system effort: the plumbing + * sibling of `duct-segment`, sharing the polyline model and the typed + * port machinery. + * + * The defining difference from ducts is SLOPE: drains must fall + * (IPC: ¼" per foot for pipes under 3", ⅛" allowed at 3"+). Slope is + * stored implicitly in the path's Y coordinates — the draw tool drops + * Y as you draw a waste run; vents run level or vertical. + * + * Path coordinates are level-local meters. Y may be negative (drains + * drop below the floor into the joist / crawl space). + */ +export const PipeSegmentNode = BaseNode.extend({ + id: objectId('pipe-segment'), + type: nodeType('pipe-segment'), + // Polyline path in level-local meters. Minimum two points. + path: z.array(z.tuple([z.number(), z.number(), z.number()])).min(2), + // Nominal pipe size in inches. Residential DWV: 1¼ (lav tailpiece) to + // 4 (building drain); 6 covers oversized mains. + diameter: z.number().min(1.25).max(8).default(2), + pipeMaterial: z.enum(['pvc', 'abs', 'cast-iron']).default('pvc'), + // Which DWV role the run plays. Waste carries water (sloped); vent + // carries air (level or vertical, dashed in plan). + system: z.enum(['waste', 'vent']).default('waste'), +}).describe( + dedent` + DWV pipe segment - drain / waste / vent run as a polyline of 3D points. + - path: list of [x, y, z] points in level-local meters (min 2; y may go below the floor) + - diameter: nominal size in inches (1.5 / 2 / 3 / 4 typical residential) + - pipeMaterial: pvc | abs | cast-iron + - system: waste (sloped drains) | vent (level / vertical air pipes) + `, +) +export type PipeSegmentNode = z.infer +export type PipeSegmentNodeId = PipeSegmentNode['id'] diff --git a/packages/core/src/schema/types.ts b/packages/core/src/schema/types.ts index 3ddc52820..a404ffb27 100644 --- a/packages/core/src/schema/types.ts +++ b/packages/core/src/schema/types.ts @@ -15,11 +15,12 @@ import { ElevatorNode } from './nodes/elevator' import { EyebrowVentNode } from './nodes/eyebrow-vent' import { FenceNode } from './nodes/fence' import { GuideNode } from './nodes/guide' -import { HvacEquipmentNode } from './nodes/hvac-equipment' import { GutterNode } from './nodes/gutter' +import { HvacEquipmentNode } from './nodes/hvac-equipment' import { ItemNode } from './nodes/item' import { LevelNode } from './nodes/level' import { LinesetNode } from './nodes/lineset' +import { PipeSegmentNode } from './nodes/pipe-segment' import { RidgeVentNode } from './nodes/ridge-vent' import { RoofNode } from './nodes/roof' import { RoofSegmentNode } from './nodes/roof-segment' @@ -75,6 +76,7 @@ export const AnyNode = z.discriminatedUnion('type', [ DuctTerminalNode, HvacEquipmentNode, LinesetNode, + PipeSegmentNode, ]) export type AnyNode = z.infer diff --git a/packages/core/src/services/system-graph.ts b/packages/core/src/services/system-graph.ts index ef898c771..aa798ed19 100644 --- a/packages/core/src/services/system-graph.ts +++ b/packages/core/src/services/system-graph.ts @@ -141,11 +141,11 @@ function summarize( for (const id of nodeIds) { const node = nodes[id] if (!node) continue - if (node.type === 'duct-segment' || node.type === 'lineset') { + if (node.type === 'duct-segment' || node.type === 'lineset' || node.type === 'pipe-segment') { runCount += 1 runLengthM += pathLength(node.path) - if (node.type === 'duct-segment') systems.add(node.system) - else systems.add('refrigerant') + if (node.type === 'lineset') systems.add('refrigerant') + else systems.add(node.system) } else if (node.type === 'duct-fitting') { fittingCount += 1 systems.add(node.system) diff --git a/packages/editor/src/components/editor/floating-action-menu.tsx b/packages/editor/src/components/editor/floating-action-menu.tsx index 2b3d1ed7f..9f20d956d 100644 --- a/packages/editor/src/components/editor/floating-action-menu.tsx +++ b/packages/editor/src/components/editor/floating-action-menu.tsx @@ -47,6 +47,7 @@ const HVAC_KINDS = new Set([ 'duct-terminal', 'hvac-equipment', 'lineset', + 'pipe-segment', ]) const ALLOWED_TYPES = [ diff --git a/packages/editor/src/store/use-editor.tsx b/packages/editor/src/store/use-editor.tsx index ed5398a85..89bbb14e7 100644 --- a/packages/editor/src/store/use-editor.tsx +++ b/packages/editor/src/store/use-editor.tsx @@ -111,6 +111,7 @@ export type StructureTool = | 'duct-terminal' | 'hvac-equipment' | 'lineset' + | 'pipe-segment' // Furnish mode tools (items and decoration) export type FurnishTool = 'item' diff --git a/packages/nodes/src/index.ts b/packages/nodes/src/index.ts index 7d3da6058..2cca53297 100644 --- a/packages/nodes/src/index.ts +++ b/packages/nodes/src/index.ts @@ -20,6 +20,7 @@ import { hvacEquipmentDefinition } from './hvac-equipment' import { itemDefinition } from './item' import { levelDefinition } from './level' import { linesetDefinition } from './lineset' +import { pipeSegmentDefinition } from './pipe-segment' import { ridgeVentDefinition } from './ridge-vent' import { roofDefinition } from './roof' import { roofSegmentDefinition } from './roof-segment' @@ -99,6 +100,8 @@ export const builtinPlugin: Plugin = { ductTerminalDefinition as unknown as AnyNodeDefinition, hvacEquipmentDefinition as unknown as AnyNodeDefinition, linesetDefinition as unknown as AnyNodeDefinition, + // DWV plumbing — Phase 2 of the research doc's plan. + pipeSegmentDefinition as unknown as AnyNodeDefinition, ], } @@ -123,6 +126,7 @@ export { hvacEquipmentDefinition } from './hvac-equipment' export { itemDefinition } from './item' export { levelDefinition } from './level' export { linesetDefinition } from './lineset' +export { pipeSegmentDefinition } from './pipe-segment' export { ridgeVentDefinition } from './ridge-vent' export { roofDefinition } from './roof' export { roofSegmentDefinition } from './roof-segment' diff --git a/packages/nodes/src/pipe-segment/definition.ts b/packages/nodes/src/pipe-segment/definition.ts new file mode 100644 index 000000000..b889af431 --- /dev/null +++ b/packages/nodes/src/pipe-segment/definition.ts @@ -0,0 +1,108 @@ +import type { NodeDefinition } from '@pascal-app/core' +import { buildPipeSegmentFloorplan } from './floorplan' +import { buildPipeSegmentGeometry } from './geometry' +import { pipeSegmentParametrics } from './parametrics' +import { PipeSegmentNode } from './schema' + +/** + * Phase 4 of the distribution-system effort (the research doc's Phase 2) + * — DWV plumbing's first kind: the pipe run. The plumbing sibling of + * `duct-segment`: same polyline + typed-ports model, with SLOPE as the + * new ingredient (the draw tool drops waste runs ¼"/ft; vents run level + * or vertical). + * + * Deferred to later slices: DWV fittings (wye / sanitary tee / closet + * bend), fixtures, traps, cleanouts, IPC validators, riser view. + */ +export const pipeSegmentDefinition: NodeDefinition = { + kind: 'pipe-segment', + schemaVersion: 1, + schema: PipeSegmentNode, + category: 'utility', + + defaults: () => ({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + path: [ + [0, 0, 0], + [3, -0.0625, 0], + ], + diameter: 2, + pipeMaterial: 'pvc', + system: 'waste', + }), + + capabilities: { + selectable: { hitVolume: 'bbox' }, + duplicable: true, + deletable: true, + }, + + parametrics: pipeSegmentParametrics, + + geometry: buildPipeSegmentGeometry, + geometryKey: (n) => JSON.stringify([n.path, n.diameter, n.pipeMaterial, n.system]), + + // Open run ends as typed ports — system 'waste'/'vent' keeps the DWV + // network invisible to duct / refrigerant tools and vice versa. + ports: (n) => { + if (n.path.length < 2) return [] + const unit = ( + a: readonly [number, number, number], + b: readonly [number, number, number], + ): [number, number, number] => { + const d: [number, number, number] = [a[0] - b[0], a[1] - b[1], a[2] - b[2]] + const len = Math.hypot(d[0], d[1], d[2]) + return len < 1e-9 ? [1, 0, 0] : [d[0] / len, d[1] / len, d[2] / len] + } + const first = n.path[0]! + const second = n.path[1]! + const last = n.path[n.path.length - 1]! + const prev = n.path[n.path.length - 2]! + return [ + { + id: 'start', + position: first, + direction: unit(first, second), + diameter: n.diameter, + system: n.system, + }, + { + id: 'end', + position: last, + direction: unit(last, prev), + diameter: n.diameter, + system: n.system, + }, + ] + }, + + floorplan: buildPipeSegmentFloorplan, + + tool: () => import('./tool'), + toolHints: [ + { key: 'Click', label: 'Start run' }, + { key: 'Click again', label: 'Place it (waste falls ¼″/ft)' }, + { key: 'Q', label: 'Waste / vent' }, + { key: '[ / ]', label: 'Pipe size down / up' }, + { key: 'Alt + drag', label: 'Vertical stack ↕, click to place' }, + { key: 'Shift', label: 'Free angle' }, + { key: 'Esc', label: 'Cancel start point' }, + ], + + presentation: { + label: 'DWV Pipe', + description: + 'Drain / waste / vent pipe run — waste lines fall at ¼″ per foot, vents run level or vertical.', + icon: { kind: 'iconify', name: 'lucide:droplets' }, + paletteSection: 'structure', + paletteOrder: 95, + }, + + mcp: { + description: + 'A DWV (drain-waste-vent) pipe run defined as a polyline. Waste runs slope downward (slope lives in the path Y coordinates); vents run level or vertical. Sized in nominal inches.', + }, +} diff --git a/packages/nodes/src/pipe-segment/floorplan.ts b/packages/nodes/src/pipe-segment/floorplan.ts new file mode 100644 index 000000000..b7b2c9778 --- /dev/null +++ b/packages/nodes/src/pipe-segment/floorplan.ts @@ -0,0 +1,80 @@ +import type { FloorplanGeometry, FloorplanPoint, GeometryContext } from '@pascal-app/core' +import { INCHES_TO_METERS } from '../duct-segment/geometry' +import type { PipeSegmentNode } from './schema' + +const WASTE_COLOR = '#57534e' +const VENT_COLOR = '#78716c' + +/** + * Floor-plan representation of a DWV run, following drafting convention: + * waste lines draw SOLID at the pipe's width, vent lines draw DASHED and + * thin. Vertical stacks collapse to a circle. + */ +export function buildPipeSegmentFloorplan( + node: PipeSegmentNode, + ctx: GeometryContext, +): FloorplanGeometry | null { + if (node.path.length < 2) return null + + const points: FloorplanPoint[] = [] + for (const [x, , z] of node.path) { + const prev = points[points.length - 1] + if (prev && Math.abs(prev[0] - x) < 1e-6 && Math.abs(prev[1] - z) < 1e-6) continue + points.push([x, z]) + } + + const diameterM = node.diameter * INCHES_TO_METERS + const view = ctx.viewState + const palette = view?.palette + const showSelectedChrome = (view?.selected || view?.highlighted) ?? false + const isVent = node.system === 'vent' + const stroke = + showSelectedChrome && palette ? palette.selectedStroke : isVent ? VENT_COLOR : WASTE_COLOR + + // Vertical stack — a single plan point: hub circle. + if (points.length < 2) { + const p = points[0] ?? [node.path[0]![0], node.path[0]![2]] + return { + kind: 'group', + children: [ + { + kind: 'circle', + cx: p[0], + cy: p[1], + r: diameterM / 2 + 0.01, + fill: 'none', + stroke, + strokeWidth: 2, + vectorEffect: 'non-scaling-stroke', + opacity: 0.95, + }, + ], + } + } + + const children: FloorplanGeometry[] = [ + isVent + ? { + kind: 'polyline', + points, + stroke, + strokeWidth: 1.5, + vectorEffect: 'non-scaling-stroke', + strokeDasharray: '6 4', + strokeLinecap: 'round', + strokeLinejoin: 'round', + opacity: 0.9, + } + : { + kind: 'polyline', + points, + stroke, + strokeWidth: diameterM, + strokeLinecap: 'round', + strokeLinejoin: 'round', + opacity: showSelectedChrome ? 0.95 : 0.85, + }, + ] + + return { kind: 'group', children } +} diff --git a/packages/nodes/src/pipe-segment/geometry.ts b/packages/nodes/src/pipe-segment/geometry.ts new file mode 100644 index 000000000..976432d24 --- /dev/null +++ b/packages/nodes/src/pipe-segment/geometry.ts @@ -0,0 +1,59 @@ +import { Group, Mesh, MeshStandardMaterial, SphereGeometry, Vector3 } from 'three' +import { buildSection, INCHES_TO_METERS } from '../duct-segment/geometry' +import type { PipeSegmentNode } from './schema' + +const PVC_COLOR = '#e9e7e1' +const ABS_COLOR = '#3a3a3a' +const CAST_IRON_COLOR = '#54575c' +/** Vents read slightly translucent-matte so they don't visually compete + * with the water-carrying waste runs. */ +const VENT_OPACITY = 0.85 + +const RADIAL_SEGMENTS = 20 + +function getPipeColor(node: PipeSegmentNode): string { + if (node.pipeMaterial === 'abs') return ABS_COLOR + if (node.pipeMaterial === 'cast-iron') return CAST_IRON_COLOR + return PVC_COLOR +} + +export function createPipeMaterial(node: PipeSegmentNode): MeshStandardMaterial { + return new MeshStandardMaterial({ + color: getPipeColor(node), + metalness: node.pipeMaterial === 'cast-iron' ? 0.5 : 0.05, + roughness: node.pipeMaterial === 'cast-iron' ? 0.6 : 0.45, + transparent: node.system === 'vent', + opacity: node.system === 'vent' ? VENT_OPACITY : 1, + }) +} + +/** + * Pure geometry builder for a DWV pipe run: capped cylinder sections + * between consecutive path points with sphere hubs at interior joints + * (proper wyes / sanitary tees come in the next slice). Slope lives in + * the path's Y coordinates — nothing here is slope-aware. + */ +export function buildPipeSegmentGeometry(node: PipeSegmentNode): Group { + const group = new Group() + if (node.path.length < 2) return group + + const radius = (node.diameter * INCHES_TO_METERS) / 2 + const material = createPipeMaterial(node) + const points = node.path.map(([x, y, z]) => new Vector3(x, y, z)) + + for (let i = 0; i < points.length - 1; i++) { + const a = points[i] as Vector3 + const b = points[i + 1] as Vector3 + const mesh = buildSection(a, b, radius, material, `pipe-section-${i}`) + if (mesh) group.add(mesh) + } + // Slightly proud hubs at interior joints — reads as a coupling. + for (let i = 1; i < points.length - 1; i++) { + const hub = new Mesh(new SphereGeometry(radius * 1.12, RADIAL_SEGMENTS, 12), material) + hub.name = `pipe-hub-${i}` + hub.position.copy(points[i] as Vector3) + group.add(hub) + } + + return group +} diff --git a/packages/nodes/src/pipe-segment/index.ts b/packages/nodes/src/pipe-segment/index.ts new file mode 100644 index 000000000..87fd91224 --- /dev/null +++ b/packages/nodes/src/pipe-segment/index.ts @@ -0,0 +1,3 @@ +export { pipeSegmentDefinition } from './definition' +export { buildPipeSegmentGeometry } from './geometry' +export { PipeSegmentNode } from './schema' diff --git a/packages/nodes/src/pipe-segment/parametrics.ts b/packages/nodes/src/pipe-segment/parametrics.ts new file mode 100644 index 000000000..797c2e507 --- /dev/null +++ b/packages/nodes/src/pipe-segment/parametrics.ts @@ -0,0 +1,36 @@ +import type { ParametricDescriptor } from '@pascal-app/core' +import type { PipeSegmentNode } from './schema' + +export const pipeSegmentParametrics: ParametricDescriptor = { + groups: [ + { + label: 'Drainage', + fields: [ + { + key: 'system', + kind: 'enum', + options: ['waste', 'vent'], + display: 'segmented', + }, + { + key: 'diameter', + kind: 'number', + unit: 'in', + min: 1.25, + max: 6, + step: 0.25, + }, + ], + }, + { + label: 'Construction', + fields: [ + { + key: 'pipeMaterial', + kind: 'enum', + options: ['pvc', 'abs', 'cast-iron'], + }, + ], + }, + ], +} diff --git a/packages/nodes/src/pipe-segment/schema.ts b/packages/nodes/src/pipe-segment/schema.ts new file mode 100644 index 000000000..b195086e2 --- /dev/null +++ b/packages/nodes/src/pipe-segment/schema.ts @@ -0,0 +1 @@ +export { PipeSegmentNode } from '@pascal-app/core' diff --git a/packages/nodes/src/pipe-segment/tool.tsx b/packages/nodes/src/pipe-segment/tool.tsx new file mode 100644 index 000000000..384582a3f --- /dev/null +++ b/packages/nodes/src/pipe-segment/tool.tsx @@ -0,0 +1,381 @@ +'use client' + +import { emitter, type GridEvent, PipeSegmentNode, useScene } from '@pascal-app/core' +import { DimensionPill, markToolCancelConsumed, triggerSFX, useEditor } from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { useEffect, useRef, useState } from 'react' +import { Vector3 } from 'three' +import { + collectScenePorts, + DWV_PORT_SYSTEMS, + findNearestPortXZ, + type ScenePort, +} from '../shared/ports' +import { pipeSegmentDefinition } from './definition' + +/** + * Slope-aware two-click placement tool for DWV pipe runs — the plumbing + * sibling of the duct tool. + * + * - **First click** anchors the run start (port snap joins onto an + * existing pipe end — DWV ports only, duct/refrigerant collars are + * invisible to it). The start inherits the snapped port's height. + * - **Second click** commits a two-point pipe and re-arms. + * - **Slope**: waste runs FALL automatically — the end point drops by + * ¼" per foot (1:48) of horizontal distance, the IPC default for + * residential drains. Vent runs stay level. The pill shows the live + * drop in the Y part. + * - **Q** toggles waste ↔ vent. **[ / ]** steps the pipe size through + * nominal DWV diameters. + * - Hold **Alt** → vertical mode (stacks): XZ locks to the start, + * mouse vertical motion drives Y, click commits the riser. + * - 45° XZ angle lock from the start; **Shift** frees the angle and + * grid snap. + * - Esc clears an anchored start point. + */ +const PREVIEW_OPACITY = 0.55 +/** Nominal residential DWV sizes (inches). */ +const PIPE_DIAMETERS_IN = [1.25, 1.5, 2, 3, 4, 6] as const +/** IPC default drain slope — ¼" per foot (1:48). */ +const DRAIN_SLOPE = 1 / 48 +/** Snap radius (meters, XZ) for joining onto an existing pipe end. */ +const PORT_SNAP_RADIUS_M = 0.5 +const ANGLE_STEP_RAD = Math.PI / 4 +const ALT_PIXELS_PER_METER = 100 +const ALT_Y_MIN_M = -3 +const ALT_Y_MAX_M = 10 + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +function findNearbyPort(point: [number, number, number]): ScenePort | null { + return findNearestPortXZ( + point, + collectScenePorts({ systems: DWV_PORT_SYSTEMS }), + PORT_SNAP_RADIUS_M, + ) +} + +function projectToAngleLock( + from: [number, number, number], + raw: [number, number, number], +): [number, number, number] { + const dx = raw[0] - from[0] + const dz = raw[2] - from[2] + const len = Math.hypot(dx, dz) + if (len < 1e-4) return [from[0], from[1], from[2]] + const theta = Math.atan2(dz, dx) + const snapped = Math.round(theta / ANGLE_STEP_RAD) * ANGLE_STEP_RAD + const proj = dx * Math.cos(snapped) + dz * Math.sin(snapped) + const d = Math.max(0, proj) + return [from[0] + Math.cos(snapped) * d, from[1], from[2] + Math.sin(snapped) * d] +} + +const PipeSegmentTool = () => { + const activeLevelId = useViewer((s) => s.selection.levelId) + const unit = useViewer((s) => s.unit) + const [system, setSystem] = useState<'waste' | 'vent'>('waste') + const [diameter, setDiameter] = useState( + (pipeSegmentDefinition.defaults() as { diameter: number }).diameter, + ) + const [draftStart, setDraftStart] = useState<[number, number, number] | null>(null) + const [cursorPos, setCursorPos] = useState<[number, number, number] | null>(null) + const [snapTarget, setSnapTarget] = useState<[number, number, number] | null>(null) + const [altActive, setAltActive] = useState(false) + + const startRef = useRef(draftStart) + startRef.current = draftStart + const systemRef = useRef(system) + systemRef.current = system + const diameterRef = useRef(diameter) + diameterRef.current = diameter + const altAnchorRef = useRef<{ clientY: number; baseY: number } | null>(null) + const lastClientYRef = useRef(null) + + useEffect(() => { + if (!activeLevelId) return + + const commitSegment = (start: [number, number, number], end: [number, number, number]) => { + const length = Math.hypot(end[0] - start[0], end[1] - start[1], end[2] - start[2]) + if (length < 1e-4) return + const pipe = PipeSegmentNode.parse({ + ...pipeSegmentDefinition.defaults(), + name: systemRef.current === 'vent' ? 'Vent' : 'Drain', + path: [start, end], + diameter: diameterRef.current, + system: systemRef.current, + }) + useScene.getState().createNode(pipe, activeLevelId) + triggerSFX('sfx:item-place') + setDraftStart(null) + setSnapTarget(null) + altAnchorRef.current = null + setAltActive(false) + } + + /** Apply the drain fall to an XZ-resolved end point. */ + const applySlope = ( + start: [number, number, number], + end: [number, number, number], + ): [number, number, number] => { + if (systemRef.current !== 'waste') return end + const run = Math.hypot(end[0] - start[0], end[2] - start[2]) + return [end[0], start[1] - run * DRAIN_SLOPE, end[2]] + } + + const resolveSnappedPoint = ( + event: GridEvent, + ): { point: [number, number, number]; snapped: [number, number, number] | null } => { + const start = startRef.current + if (!start) { + const raw: [number, number, number] = [event.localPosition[0], 0, event.localPosition[2]] + if (event.nativeEvent?.altKey !== true) { + const port = findNearbyPort(raw) + if (port) { + const p: [number, number, number] = [ + port.position[0], + port.position[1], + port.position[2], + ] + return { point: p, snapped: p } + } + } + const step = useEditor.getState().gridSnapStep + return { point: [snap(raw[0], step), 0, snap(raw[2], step)], snapped: null } + } + const rawXZ: [number, number, number] = [ + event.localPosition[0], + start[1], + event.localPosition[2], + ] + const shift = event.nativeEvent?.shiftKey === true + const angled = shift ? rawXZ : projectToAngleLock(start, rawXZ) + if (event.nativeEvent?.altKey !== true && !shift) { + const port = findNearbyPort(rawXZ) + if (port) { + const p: [number, number, number] = [port.position[0], port.position[1], port.position[2]] + return { point: p, snapped: p } + } + } + const step = useEditor.getState().gridSnapStep + const snapped: [number, number, number] = [ + snap(angled[0], step), + angled[1], + snap(angled[2], step), + ] + return { point: applySlope(start, snapped), snapped: null } + } + + const resolveAltVerticalPoint = (clientY: number): [number, number, number] | null => { + const anchor = altAnchorRef.current + const start = startRef.current + if (!anchor || !start) return null + const dy = (anchor.clientY - clientY) / ALT_PIXELS_PER_METER + const y = Math.min(ALT_Y_MAX_M, Math.max(ALT_Y_MIN_M, anchor.baseY + dy)) + return [start[0], y, start[2]] + } + + const onMove = (event: GridEvent) => { + const clientY = (event.nativeEvent as { clientY?: number } | undefined)?.clientY + if (typeof clientY === 'number') lastClientYRef.current = clientY + if (altAnchorRef.current && typeof clientY === 'number') { + const point = resolveAltVerticalPoint(clientY) + if (point) { + setCursorPos(point) + setSnapTarget(null) + return + } + } + const { point, snapped } = resolveSnappedPoint(event) + setCursorPos(point) + setSnapTarget(snapped) + } + + const onClick = (event: GridEvent) => { + const start = startRef.current + if (altAnchorRef.current && start) { + const clientY = + (event.nativeEvent as { clientY?: number } | undefined)?.clientY ?? lastClientYRef.current + if (typeof clientY === 'number') { + const point = resolveAltVerticalPoint(clientY) + if (point && Math.abs(point[1] - start[1]) >= 1e-4) commitSegment(start, point) + } + return + } + const { point } = resolveSnappedPoint(event) + if (!start) { + triggerSFX('sfx:grid-snap') + setDraftStart(point) + return + } + commitSegment(start, point) + } + + const enterAltMode = () => { + const start = startRef.current + if (!start || lastClientYRef.current === null) return + if (altAnchorRef.current) return + altAnchorRef.current = { clientY: lastClientYRef.current, baseY: start[1] } + setAltActive(true) + } + + const exitAltMode = () => { + if (!altAnchorRef.current) return + altAnchorRef.current = null + setAltActive(false) + } + + const stepDiameter = (step: 1 | -1) => { + const sizes = PIPE_DIAMETERS_IN + const current = diameterRef.current + let nearest = 0 + for (let i = 1; i < sizes.length; i++) { + if (Math.abs(sizes[i]! - current) < Math.abs(sizes[nearest]! - current)) nearest = i + } + const next = sizes[Math.min(sizes.length - 1, Math.max(0, nearest + step))]! + if (next === current) return + setDiameter(next) + triggerSFX('sfx:grid-snap') + } + + const onKeyDown = (e: KeyboardEvent) => { + const tag = (e.target as HTMLElement | null)?.tagName + if (tag === 'INPUT' || tag === 'TEXTAREA') return + if (e.key === 'Alt') { + e.preventDefault() + enterAltMode() + } else if (e.key === '[') { + e.preventDefault() + stepDiameter(-1) + } else if (e.key === ']') { + e.preventDefault() + stepDiameter(1) + } else if (e.key === 'q' || e.key === 'Q') { + e.preventDefault() + setSystem((s) => (s === 'waste' ? 'vent' : 'waste')) + triggerSFX('sfx:grid-snap') + } + } + + const onKeyUp = (e: KeyboardEvent) => { + if (e.key === 'Alt') { + e.preventDefault() + exitAltMode() + } + } + + const onCancel = () => { + if (!startRef.current) return + markToolCancelConsumed() + setDraftStart(null) + setCursorPos(null) + setSnapTarget(null) + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', onClick) + emitter.on('tool:cancel', onCancel) + window.addEventListener('keydown', onKeyDown) + window.addEventListener('keyup', onKeyUp) + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', onClick) + emitter.off('tool:cancel', onCancel) + window.removeEventListener('keydown', onKeyDown) + window.removeEventListener('keyup', onKeyUp) + altAnchorRef.current = null + } + }, [activeLevelId]) + + if (!activeLevelId) return null + + const pillParts = cursorPos + ? [ + ...(['x', 'y', 'z'] as const).map((axis, i) => ({ + key: axis, + prefix: axis.toUpperCase(), + value: draftStart ? cursorPos[i]! - draftStart[i]! : cursorPos[i]!, + signed: !!draftStart, + })), + { key: 'diameter', prefix: 'Ø', value: diameter * 0.0254, signed: false }, + ] + : null + const pillPrimary = draftStart && cursorPos ? (altActive ? 'y' : 'y') : undefined + + return ( + + + + + + + {pillParts && ( + +
+ +
+ {system === 'waste' ? 'Waste · ¼″/ft fall' : 'Vent · level'} · Q to toggle +
+
+ + )} +
+ {snapTarget && ( + + + + + )} + {draftStart && ( + + + + + )} + {draftStart && cursorPos && ( + + )} +
+ ) +} + +function PreviewPipe({ + a, + b, + diameterIn, +}: { + a: [number, number, number] + b: [number, number, number] + diameterIn: number +}) { + const start = new Vector3(...a) + const end = new Vector3(...b) + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-4) return null + dir.normalize() + const mid = new Vector3().addVectors(start, end).multiplyScalar(0.5) + const radius = (diameterIn * 0.0254) / 2 + return ( + { + if (!m) return + m.quaternion.setFromUnitVectors(new Vector3(0, 1, 0), dir) + }} + > + + + + ) +} + +export default PipeSegmentTool diff --git a/packages/nodes/src/shared/ports.ts b/packages/nodes/src/shared/ports.ts index 18c1ba4eb..92ca72a01 100644 --- a/packages/nodes/src/shared/ports.ts +++ b/packages/nodes/src/shared/ports.ts @@ -5,6 +5,8 @@ export type ScenePort = NodePort & { nodeId: AnyNodeId } /** Air-loop port systems — what duct runs and fittings snap to. */ export const DUCT_PORT_SYSTEMS = ['supply', 'return'] as const +/** DWV port systems — what drain / waste / vent pipe runs snap to. */ +export const DWV_PORT_SYSTEMS = ['waste', 'vent'] as const /** Refrigerant-loop port system — what linesets snap to. */ export const REFRIGERANT_PORT_SYSTEMS = ['refrigerant'] as const From 82d6f0ad57f1cbb1527c1c232689979e92713e8b Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 20:18:56 +0530 Subject: [PATCH 36/59] =?UTF-8?q?feat(nodes):=20DWV=20fittings=20=E2=80=94?= =?UTF-8?q?=20bends,=20wyes,=20sanitary=20tees=20auto-minted?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit pipe-fitting kind (elbow / wye / sanitary-tee) with typed ports and the plumbing-correct joint vocabulary, minted automatically by the pipe draw tool: - Corner joints: a run drawn off another run's open end at an angle mints a BEND — planCornerJoint extracts the duct elbow's junction / trim / collar math into a domain-agnostic planner shared by both. - Body taps: starting on a run's side splits it and mints the code-correct entry — a 45° WYE leaning downstream on horizontal drains, a square SANITARY TEE on vertical stacks (axis steeper than ~45° reads as a stack). - findNearestRunBodyXZ takes a kind filter so pipe taps target pipes and duct taps target ducts. Fittings carry pvc/abs/cast-iron material and waste/vent system from the run they join; no placement tool (a loose DWV fitting isn't a real workflow) but full inspector editing, floorplan symbol (45° branch at true plan angle), system-graph counting, and the action-menu pill. Joints round-trip through the fitting's own port math in tests. Note: src/shared/floorplan-cursor.test.ts fails under bun from a pre-existing three-bvh-csg import issue (ships in 8dc602ca) — unrelated to this change. Co-Authored-By: Claude Fable 5 --- packages/core/src/events/bus.ts | 3 + packages/core/src/schema/index.ts | 1 + .../core/src/schema/nodes/pipe-fitting.ts | 47 ++++ packages/core/src/schema/types.ts | 2 + packages/core/src/services/system-graph.ts | 2 +- .../editor/floating-action-menu.tsx | 1 + packages/nodes/src/index.ts | 3 + packages/nodes/src/pipe-fitting/definition.ts | 66 +++++ packages/nodes/src/pipe-fitting/floorplan.ts | 58 +++++ packages/nodes/src/pipe-fitting/geometry.ts | 42 ++++ packages/nodes/src/pipe-fitting/index.ts | 4 + .../nodes/src/pipe-fitting/parametrics.ts | 56 +++++ packages/nodes/src/pipe-fitting/ports.ts | 83 ++++++ packages/nodes/src/pipe-fitting/schema.ts | 1 + packages/nodes/src/pipe-segment/geometry.ts | 9 +- packages/nodes/src/pipe-segment/tool.tsx | 132 +++++++++- packages/nodes/src/shared/auto-fitting.ts | 236 ++++++++++++++++-- .../src/shared/pipe-auto-fitting.test.ts | 121 +++++++++ packages/nodes/src/shared/ports.ts | 8 +- 19 files changed, 840 insertions(+), 35 deletions(-) create mode 100644 packages/core/src/schema/nodes/pipe-fitting.ts create mode 100644 packages/nodes/src/pipe-fitting/definition.ts create mode 100644 packages/nodes/src/pipe-fitting/floorplan.ts create mode 100644 packages/nodes/src/pipe-fitting/geometry.ts create mode 100644 packages/nodes/src/pipe-fitting/index.ts create mode 100644 packages/nodes/src/pipe-fitting/parametrics.ts create mode 100644 packages/nodes/src/pipe-fitting/ports.ts create mode 100644 packages/nodes/src/pipe-fitting/schema.ts create mode 100644 packages/nodes/src/shared/pipe-auto-fitting.test.ts diff --git a/packages/core/src/events/bus.ts b/packages/core/src/events/bus.ts index 9805d83f1..209c41280 100644 --- a/packages/core/src/events/bus.ts +++ b/packages/core/src/events/bus.ts @@ -23,6 +23,7 @@ import type { ItemNode, LevelNode, LinesetNode, + PipeFittingNode, PipeSegmentNode, RidgeVentNode, RoofNode, @@ -118,6 +119,7 @@ export type DuctFittingEvent = NodeEvent export type DuctTerminalEvent = NodeEvent export type HvacEquipmentEvent = NodeEvent export type PipeSegmentEvent = NodeEvent +export type PipeFittingEvent = NodeEvent export type LinesetEvent = NodeEvent // Event suffixes - exported for use in hooks @@ -278,6 +280,7 @@ type EditorEvents = GridEvents & NodeEvents<'duct-terminal', DuctTerminalEvent> & NodeEvents<'hvac-equipment', HvacEquipmentEvent> & NodeEvents<'pipe-segment', PipeSegmentEvent> & + NodeEvents<'pipe-fitting', PipeFittingEvent> & NodeEvents<'lineset', LinesetEvent> & CameraControlEvents & ToolEvents & diff --git a/packages/core/src/schema/index.ts b/packages/core/src/schema/index.ts index 0233ef456..628a26aaf 100644 --- a/packages/core/src/schema/index.ts +++ b/packages/core/src/schema/index.ts @@ -93,6 +93,7 @@ export { } from './nodes/item' export { LevelNode } from './nodes/level' export { LinesetNode } from './nodes/lineset' +export { PipeFittingNode } from './nodes/pipe-fitting' export { PipeSegmentNode } from './nodes/pipe-segment' // Nodes export { RidgeVentNode } from './nodes/ridge-vent' diff --git a/packages/core/src/schema/nodes/pipe-fitting.ts b/packages/core/src/schema/nodes/pipe-fitting.ts new file mode 100644 index 000000000..0f0c921c3 --- /dev/null +++ b/packages/core/src/schema/nodes/pipe-fitting.ts @@ -0,0 +1,47 @@ +import dedent from 'dedent' +import { z } from 'zod' +import { BaseNode, nodeType, objectId } from '../base' + +/** + * DWV pipe fitting — the joints drain systems are actually built from: + * elbows (bends), wyes (45° branch entries, the code-preferred way to + * join horizontal drains), and sanitary tees (90° branch into a + * vertical stack). + * + * Local-frame conventions (before `rotation`): + * - elbow: inlet faces -X, outlet turned `angle`° in XZ. + * - wye: run along X (inlet -X, outlet +X), branch collar at + * 45° between +X and +Z. + * - sanitary-tee: run along X, branch collar faces +Z. + */ +export const PipeFittingNode = BaseNode.extend({ + id: objectId('pipe-fitting'), + type: nodeType('pipe-fitting'), + // Level-local meters. + position: z.tuple([z.number(), z.number(), z.number()]).default([0, 0, 0]), + // XYZ euler radians. + rotation: z.tuple([z.number(), z.number(), z.number()]).default([0, 0, 0]), + fittingType: z.enum(['elbow', 'wye', 'sanitary-tee']).default('elbow'), + // Elbow turn in degrees — DWV bends ship as 22.5 / 45 / 90 ("long + // sweep" for drains); adjustable range matches the duct elbow. + angle: z.number().min(15).max(90).default(90), + // Run nominal size in inches. + diameter: z.number().min(1.25).max(8).default(2), + // Branch collar size (wye / sanitary-tee). + diameter2: z.number().min(1.25).max(8).default(2), + pipeMaterial: z.enum(['pvc', 'abs', 'cast-iron']).default('pvc'), + system: z.enum(['waste', 'vent']).default('waste'), +}).describe( + dedent` + DWV pipe fitting - elbow (bend), wye (45° branch), or sanitary tee (90° branch into a stack). + - position: [x, y, z] level-local meters + - rotation: [x, y, z] euler radians + - fittingType: elbow | wye | sanitary-tee + - angle: elbow turn in degrees (22.5 / 45 / 90 typical) + - diameter: run size in inches; diameter2: branch collar size + - pipeMaterial: pvc | abs | cast-iron + - system: waste | vent + `, +) +export type PipeFittingNode = z.infer +export type PipeFittingNodeId = PipeFittingNode['id'] diff --git a/packages/core/src/schema/types.ts b/packages/core/src/schema/types.ts index a404ffb27..425b33c56 100644 --- a/packages/core/src/schema/types.ts +++ b/packages/core/src/schema/types.ts @@ -20,6 +20,7 @@ import { HvacEquipmentNode } from './nodes/hvac-equipment' import { ItemNode } from './nodes/item' import { LevelNode } from './nodes/level' import { LinesetNode } from './nodes/lineset' +import { PipeFittingNode } from './nodes/pipe-fitting' import { PipeSegmentNode } from './nodes/pipe-segment' import { RidgeVentNode } from './nodes/ridge-vent' import { RoofNode } from './nodes/roof' @@ -77,6 +78,7 @@ export const AnyNode = z.discriminatedUnion('type', [ HvacEquipmentNode, LinesetNode, PipeSegmentNode, + PipeFittingNode, ]) export type AnyNode = z.infer diff --git a/packages/core/src/services/system-graph.ts b/packages/core/src/services/system-graph.ts index aa798ed19..fda79a2c1 100644 --- a/packages/core/src/services/system-graph.ts +++ b/packages/core/src/services/system-graph.ts @@ -146,7 +146,7 @@ function summarize( runLengthM += pathLength(node.path) if (node.type === 'lineset') systems.add('refrigerant') else systems.add(node.system) - } else if (node.type === 'duct-fitting') { + } else if (node.type === 'duct-fitting' || node.type === 'pipe-fitting') { fittingCount += 1 systems.add(node.system) } else if (node.type === 'duct-terminal') { diff --git a/packages/editor/src/components/editor/floating-action-menu.tsx b/packages/editor/src/components/editor/floating-action-menu.tsx index 9f20d956d..048bd5f2b 100644 --- a/packages/editor/src/components/editor/floating-action-menu.tsx +++ b/packages/editor/src/components/editor/floating-action-menu.tsx @@ -48,6 +48,7 @@ const HVAC_KINDS = new Set([ 'hvac-equipment', 'lineset', 'pipe-segment', + 'pipe-fitting', ]) const ALLOWED_TYPES = [ diff --git a/packages/nodes/src/index.ts b/packages/nodes/src/index.ts index 2cca53297..0850b3f34 100644 --- a/packages/nodes/src/index.ts +++ b/packages/nodes/src/index.ts @@ -20,6 +20,7 @@ import { hvacEquipmentDefinition } from './hvac-equipment' import { itemDefinition } from './item' import { levelDefinition } from './level' import { linesetDefinition } from './lineset' +import { pipeFittingDefinition } from './pipe-fitting' import { pipeSegmentDefinition } from './pipe-segment' import { ridgeVentDefinition } from './ridge-vent' import { roofDefinition } from './roof' @@ -102,6 +103,7 @@ export const builtinPlugin: Plugin = { linesetDefinition as unknown as AnyNodeDefinition, // DWV plumbing — Phase 2 of the research doc's plan. pipeSegmentDefinition as unknown as AnyNodeDefinition, + pipeFittingDefinition as unknown as AnyNodeDefinition, ], } @@ -126,6 +128,7 @@ export { hvacEquipmentDefinition } from './hvac-equipment' export { itemDefinition } from './item' export { levelDefinition } from './level' export { linesetDefinition } from './lineset' +export { pipeFittingDefinition } from './pipe-fitting' export { pipeSegmentDefinition } from './pipe-segment' export { ridgeVentDefinition } from './ridge-vent' export { roofDefinition } from './roof' diff --git a/packages/nodes/src/pipe-fitting/definition.ts b/packages/nodes/src/pipe-fitting/definition.ts new file mode 100644 index 000000000..1536af0e1 --- /dev/null +++ b/packages/nodes/src/pipe-fitting/definition.ts @@ -0,0 +1,66 @@ +import type { NodeDefinition } from '@pascal-app/core' +import { buildPipeFittingFloorplan } from './floorplan' +import { buildPipeFittingGeometry } from './geometry' +import { pipeFittingParametrics } from './parametrics' +import { getPipeFittingPorts } from './ports' +import { PipeFittingNode } from './schema' + +/** + * DWV fittings — minted automatically by the pipe draw tool (corner + * joints → elbows, body taps → wyes on horizontal drains / sanitary + * tees on stacks). No placement tool of its own: unlike duct fittings, + * a loose DWV fitting on the floor isn't a real workflow. Editable + * after the fact via the inspector. + */ +export const pipeFittingDefinition: NodeDefinition = { + kind: 'pipe-fitting', + schemaVersion: 1, + schema: PipeFittingNode, + category: 'utility', + + defaults: () => ({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + position: [0, 0, 0], + rotation: [0, 0, 0], + fittingType: 'elbow', + angle: 90, + diameter: 2, + diameter2: 2, + pipeMaterial: 'pvc', + system: 'waste', + }), + + capabilities: { + selectable: { hitVolume: 'bbox' }, + movable: { axes: ['x', 'y', 'z'], gridSnap: true, cursorAttached: true }, + duplicable: true, + deletable: true, + }, + + parametrics: pipeFittingParametrics, + + geometry: buildPipeFittingGeometry, + geometryKey: (n) => + JSON.stringify([n.fittingType, n.angle, n.diameter, n.diameter2, n.pipeMaterial, n.system]), + + ports: getPipeFittingPorts, + + floorplan: buildPipeFittingFloorplan, + + presentation: { + label: 'Pipe Fitting', + description: 'DWV joint — elbow bend, 45° wye, or sanitary tee.', + icon: { kind: 'iconify', name: 'lucide:git-merge' }, + paletteSection: 'structure', + paletteOrder: 96, + hidden: true, + }, + + mcp: { + description: + 'A DWV pipe fitting (elbow, wye, or sanitary tee) with typed ports. Minted automatically at drain joints; position is level-local meters, rotation an XYZ euler.', + }, +} diff --git a/packages/nodes/src/pipe-fitting/floorplan.ts b/packages/nodes/src/pipe-fitting/floorplan.ts new file mode 100644 index 000000000..1db7f3e46 --- /dev/null +++ b/packages/nodes/src/pipe-fitting/floorplan.ts @@ -0,0 +1,58 @@ +import type { FloorplanGeometry, GeometryContext } from '@pascal-app/core' +import { INCHES_TO_METERS } from '../duct-segment/geometry' +import { getPipeFittingPorts } from './ports' +import type { PipeFittingNode } from './schema' + +const WASTE_COLOR = '#57534e' +const VENT_COLOR = '#78716c' + +/** + * Floor-plan symbol for a DWV fitting: one line per collar from the + * junction out (a wye's 45° branch reads at its true plan angle), plus + * a hub circle. Vertical collars (stack connections) collapse onto the + * hub, which is how they should read from above. + */ +export function buildPipeFittingFloorplan( + node: PipeFittingNode, + ctx: GeometryContext, +): FloorplanGeometry | null { + const [cx, , cz] = node.position + const view = ctx.viewState + const palette = view?.palette + const showSelectedChrome = (view?.selected || view?.highlighted) ?? false + const stroke = + showSelectedChrome && palette + ? palette.selectedStroke + : node.system === 'vent' + ? VENT_COLOR + : WASTE_COLOR + + const children: FloorplanGeometry[] = [] + for (const port of getPipeFittingPorts(node)) { + const px = port.position[0] + const pz = port.position[2] + if (Math.hypot(px - cx, pz - cz) < 1e-4) continue + children.push({ + kind: 'line', + x1: cx, + y1: cz, + x2: px, + y2: pz, + stroke, + strokeWidth: port.diameter * INCHES_TO_METERS, + strokeLinecap: 'round', + opacity: showSelectedChrome ? 0.95 : 0.85, + }) + } + children.push({ + kind: 'circle', + cx, + cy: cz, + r: (node.diameter * INCHES_TO_METERS) / 2 + 0.012, + fill: stroke, + opacity: 0.95, + }) + if (showSelectedChrome) children.push({ kind: 'move-handle', point: [cx, cz] }) + + return { kind: 'group', children } +} diff --git a/packages/nodes/src/pipe-fitting/geometry.ts b/packages/nodes/src/pipe-fitting/geometry.ts new file mode 100644 index 000000000..b7db2552c --- /dev/null +++ b/packages/nodes/src/pipe-fitting/geometry.ts @@ -0,0 +1,42 @@ +import { Group, Mesh, SphereGeometry, Vector3 } from 'three' +import { buildSection, INCHES_TO_METERS } from '../duct-segment/geometry' +import { createPipeMaterial } from '../pipe-segment/geometry' +import { localPipeFittingPorts } from './ports' +import type { PipeFittingNode } from './schema' + +const RADIAL_SEGMENTS = 20 + +/** + * Pure geometry builder for a DWV fitting, in the node's LOCAL frame. + * One cylinder stub per port from the junction outward, an oversized + * hub sphere at the junction, and a smaller hub at each collar opening + * (solvent-weld couplings). Wyes read correctly because their branch + * stub leaves at 45° — the port layout does the work. + */ +export function buildPipeFittingGeometry(node: PipeFittingNode): Group { + const group = new Group() + const material = createPipeMaterial(node) + const radiusRun = (node.diameter * INCHES_TO_METERS) / 2 + + for (const port of localPipeFittingPorts(node)) { + const radius = (port.diameter * INCHES_TO_METERS) / 2 + const stub = buildSection( + new Vector3(0, 0, 0), + port.position, + radius, + material, + `pipe-fitting-stub-${port.id}`, + ) + if (stub) group.add(stub) + const hub = new Mesh(new SphereGeometry(radius * 1.18, RADIAL_SEGMENTS, 12), material) + hub.name = `pipe-fitting-hub-${port.id}` + hub.position.copy(port.position) + group.add(hub) + } + + const junction = new Mesh(new SphereGeometry(radiusRun * 1.18, RADIAL_SEGMENTS, 12), material) + junction.name = 'pipe-fitting-junction' + group.add(junction) + + return group +} diff --git a/packages/nodes/src/pipe-fitting/index.ts b/packages/nodes/src/pipe-fitting/index.ts new file mode 100644 index 000000000..6943690ca --- /dev/null +++ b/packages/nodes/src/pipe-fitting/index.ts @@ -0,0 +1,4 @@ +export { pipeFittingDefinition } from './definition' +export { buildPipeFittingGeometry } from './geometry' +export { getPipeFittingPorts } from './ports' +export { PipeFittingNode } from './schema' diff --git a/packages/nodes/src/pipe-fitting/parametrics.ts b/packages/nodes/src/pipe-fitting/parametrics.ts new file mode 100644 index 000000000..bb45a5b7d --- /dev/null +++ b/packages/nodes/src/pipe-fitting/parametrics.ts @@ -0,0 +1,56 @@ +import type { ParametricDescriptor } from '@pascal-app/core' +import type { PipeFittingNode } from './schema' + +export const pipeFittingParametrics: ParametricDescriptor = { + groups: [ + { + label: 'Fitting', + fields: [ + { + key: 'fittingType', + kind: 'enum', + options: ['elbow', 'wye', 'sanitary-tee'], + display: 'segmented', + }, + { + key: 'angle', + kind: 'number', + unit: '°', + min: 15, + max: 90, + step: 7.5, + visibleIf: (n) => n.fittingType === 'elbow', + }, + { + key: 'system', + kind: 'enum', + options: ['waste', 'vent'], + display: 'segmented', + }, + ], + }, + { + label: 'Connections', + fields: [ + { key: 'diameter', kind: 'number', unit: 'in', min: 1.25, max: 6, step: 0.25 }, + { + key: 'diameter2', + kind: 'number', + unit: 'in', + min: 1.25, + max: 6, + step: 0.25, + visibleIf: (n) => n.fittingType !== 'elbow', + }, + { key: 'pipeMaterial', kind: 'enum', options: ['pvc', 'abs', 'cast-iron'] }, + ], + }, + { + label: 'Placement', + fields: [ + { key: 'position', kind: 'vec3' }, + { key: 'rotation', kind: 'vec3' }, + ], + }, + ], +} diff --git a/packages/nodes/src/pipe-fitting/ports.ts b/packages/nodes/src/pipe-fitting/ports.ts new file mode 100644 index 000000000..573aba433 --- /dev/null +++ b/packages/nodes/src/pipe-fitting/ports.ts @@ -0,0 +1,83 @@ +import type { NodePort } from '@pascal-app/core' +import { Euler, Vector3 } from 'three' +import { INCHES_TO_METERS } from '../duct-segment/geometry' +import type { PipeFittingNode } from './schema' + +/** Hub stub length in meters — pipe fittings are stubbier than duct + * fittings (a 2" wye hub is ~7 cm to the collar). */ +export function pipeFittingLegLength(diameterInches: number): number { + const radius = (diameterInches * INCHES_TO_METERS) / 2 + return Math.max(0.07, radius * 2.2) +} + +/** Wye branch angle — DWV wyes enter at 45°. */ +export const WYE_BRANCH_RAD = Math.PI / 4 + +type LocalPort = { id: string; position: Vector3; direction: Vector3; diameter: number } + +/** + * Ports in the fitting's LOCAL frame (origin at the junction, before + * `position`/`rotation`). Conventions documented on the schema: elbow + * inlet -X / outlet at `angle`° in XZ; wye run along X with the branch + * at 45° between +X and +Z; sanitary tee run along X, branch +Z. + */ +export function localPipeFittingPorts(node: PipeFittingNode): LocalPort[] { + const run = pipeFittingLegLength(node.diameter) + const inlet: LocalPort = { + id: 'inlet', + position: new Vector3(-run, 0, 0), + direction: new Vector3(-1, 0, 0), + diameter: node.diameter, + } + if (node.fittingType === 'elbow') { + const theta = (node.angle * Math.PI) / 180 + const outDir = new Vector3(Math.cos(theta), 0, Math.sin(theta)) + return [ + inlet, + { + id: 'outlet', + position: outDir.clone().multiplyScalar(run), + direction: outDir, + diameter: node.diameter, + }, + ] + } + const outlet: LocalPort = { + id: 'outlet', + position: new Vector3(run, 0, 0), + direction: new Vector3(1, 0, 0), + diameter: node.diameter, + } + const branchLeg = pipeFittingLegLength(node.diameter2) + const branchDir = + node.fittingType === 'wye' + ? new Vector3(Math.cos(WYE_BRANCH_RAD), 0, Math.sin(WYE_BRANCH_RAD)) + : new Vector3(0, 0, 1) + return [ + inlet, + outlet, + { + id: 'branch', + position: branchDir.clone().multiplyScalar(branchLeg), + direction: branchDir, + diameter: node.diameter2, + }, + ] +} + +/** `def.ports` — local ports transformed into level-local space. */ +export function getPipeFittingPorts(node: PipeFittingNode): NodePort[] { + const euler = new Euler(node.rotation[0], node.rotation[1], node.rotation[2]) + const offset = new Vector3(node.position[0], node.position[1], node.position[2]) + return localPipeFittingPorts(node).map((port) => { + const position = port.position.clone().applyEuler(euler).add(offset) + const direction = port.direction.clone().applyEuler(euler).normalize() + return { + id: port.id, + position: [position.x, position.y, position.z] as const, + direction: [direction.x, direction.y, direction.z] as const, + diameter: port.diameter, + system: node.system, + } + }) +} diff --git a/packages/nodes/src/pipe-fitting/schema.ts b/packages/nodes/src/pipe-fitting/schema.ts new file mode 100644 index 000000000..ab5ae3b5d --- /dev/null +++ b/packages/nodes/src/pipe-fitting/schema.ts @@ -0,0 +1 @@ +export { PipeFittingNode } from '@pascal-app/core' diff --git a/packages/nodes/src/pipe-segment/geometry.ts b/packages/nodes/src/pipe-segment/geometry.ts index 976432d24..cbf4d316c 100644 --- a/packages/nodes/src/pipe-segment/geometry.ts +++ b/packages/nodes/src/pipe-segment/geometry.ts @@ -11,13 +11,18 @@ const VENT_OPACITY = 0.85 const RADIAL_SEGMENTS = 20 -function getPipeColor(node: PipeSegmentNode): string { +type PipeAppearance = { + pipeMaterial: 'pvc' | 'abs' | 'cast-iron' + system: 'waste' | 'vent' +} + +function getPipeColor(node: PipeAppearance): string { if (node.pipeMaterial === 'abs') return ABS_COLOR if (node.pipeMaterial === 'cast-iron') return CAST_IRON_COLOR return PVC_COLOR } -export function createPipeMaterial(node: PipeSegmentNode): MeshStandardMaterial { +export function createPipeMaterial(node: PipeAppearance): MeshStandardMaterial { return new MeshStandardMaterial({ color: getPipeColor(node), metalness: node.pipeMaterial === 'cast-iron' ? 0.5 : 0.05, diff --git a/packages/nodes/src/pipe-segment/tool.tsx b/packages/nodes/src/pipe-segment/tool.tsx index 384582a3f..77ae024de 100644 --- a/packages/nodes/src/pipe-segment/tool.tsx +++ b/packages/nodes/src/pipe-segment/tool.tsx @@ -1,15 +1,18 @@ 'use client' -import { emitter, type GridEvent, PipeSegmentNode, useScene } from '@pascal-app/core' +import { type AnyNode, emitter, type GridEvent, PipeSegmentNode, useScene } from '@pascal-app/core' import { DimensionPill, markToolCancelConsumed, triggerSFX, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' import { Vector3 } from 'three' +import { planPipeBranchTap, planPipeElbowAtPort } from '../shared/auto-fitting' import { collectScenePorts, DWV_PORT_SYSTEMS, findNearestPortXZ, + findNearestRunBodyXZ, + type RunBodyHit, type ScenePort, } from '../shared/ports' import { pipeSegmentDefinition } from './definition' @@ -41,6 +44,8 @@ const PIPE_DIAMETERS_IN = [1.25, 1.5, 2, 3, 4, 6] as const const DRAIN_SLOPE = 1 / 48 /** Snap radius (meters, XZ) for joining onto an existing pipe end. */ const PORT_SNAP_RADIUS_M = 0.5 +/** Snap radius (meters, XZ) for tapping the side of an existing run. */ +const BODY_SNAP_RADIUS_M = 0.3 const ANGLE_STEP_RAD = Math.PI / 4 const ALT_PIXELS_PER_METER = 100 const ALT_Y_MIN_M = -3 @@ -92,26 +97,110 @@ const PipeSegmentTool = () => { systemRef.current = system const diameterRef = useRef(diameter) diameterRef.current = diameter + // Port / run-body the anchored start snapped onto — read at commit so + // joints mint bends (corner) or wyes / sanitary tees (body tap). + const startPortRef = useRef(null) + const startBodyRef = useRef(null) const altAnchorRef = useRef<{ clientY: number; baseY: number } | null>(null) const lastClientYRef = useRef(null) useEffect(() => { if (!activeLevelId) return - const commitSegment = (start: [number, number, number], end: [number, number, number]) => { + /** Corner-bend gate: joints onto another PIPE run's open end. */ + const bendPlanFor = (port: ScenePort | null, awayDir: [number, number, number]) => { + if (!port) return null + const owner = useScene.getState().nodes[port.nodeId] + if (owner?.type !== 'pipe-segment') return null + const plan = planPipeElbowAtPort(port, awayDir, diameterRef.current, owner.pipeMaterial) + if (!plan) return null + // Trim the run's snapped endpoint back to the bend's inlet collar. + const path = owner.path.map((p) => [...p] as [number, number, number]) + const index = port.id === 'start' ? 0 : path.length - 1 + const neighbor = path[index === 0 ? 1 : index - 1]! + const remaining = Math.hypot( + plan.trimmedPortPoint[0] - neighbor[0], + plan.trimmedPortPoint[1] - neighbor[1], + plan.trimmedPortPoint[2] - neighbor[2], + ) + const original = path[index]! + const originalLen = Math.hypot( + original[0] - neighbor[0], + original[1] - neighbor[1], + original[2] - neighbor[2], + ) + if (remaining < 0.05 || remaining >= originalLen) return null + path[index] = plan.trimmedPortPoint + return { ...plan, trim: { id: port.nodeId, data: { path } as Partial } } + } + + const commitSegment = ( + start: [number, number, number], + end: [number, number, number], + endPort: ScenePort | null = null, + ) => { const length = Math.hypot(end[0] - start[0], end[1] - start[1], end[2] - start[2]) if (length < 1e-4) return + const dir: [number, number, number] = [ + (end[0] - start[0]) / length, + (end[1] - start[1]) / length, + (end[2] - start[2]) / length, + ] + + const startPlan = bendPlanFor(startPortRef.current, dir) + const endPlan = bendPlanFor(endPort, [-dir[0], -dir[1], -dir[2]]) + // Body tap (wye / sanitary tee) when the start landed on a run's side. + const body = startPlan ? null : startBodyRef.current + const bodyOwner = body ? useScene.getState().nodes[body.nodeId] : null + const tapPlan = + body && bodyOwner?.type === 'pipe-segment' + ? planPipeBranchTap(bodyOwner, body, dir, diameterRef.current) + : null + + let pipeStart = startPlan?.collarPoint ?? tapPlan?.branchCollar ?? start + let pipeEnd = endPlan?.collarPoint ?? end + const remaining = Math.hypot( + pipeEnd[0] - pipeStart[0], + pipeEnd[1] - pipeStart[1], + pipeEnd[2] - pipeStart[2], + ) + let bends = [startPlan, endPlan].filter((p) => p !== null) + let tap = tapPlan + if (remaining <= 0.05) { + bends = [] + tap = null + pipeStart = start + pipeEnd = end + } + const pipe = PipeSegmentNode.parse({ ...pipeSegmentDefinition.defaults(), name: systemRef.current === 'vent' ? 'Vent' : 'Drain', - path: [start, end], + path: [pipeStart, pipeEnd], diameter: diameterRef.current, system: systemRef.current, }) - useScene.getState().createNode(pipe, activeLevelId) + useScene.getState().applyNodeChanges({ + create: [ + ...bends.map((plan) => ({ node: plan.fitting, parentId: activeLevelId })), + ...(tap + ? [ + { node: tap.fitting, parentId: activeLevelId }, + { node: tap.runTail, parentId: activeLevelId }, + ] + : []), + { node: pipe, parentId: activeLevelId }, + ], + update: [ + ...bends.map((plan) => plan.trim), + ...(tap ? [tap.runUpdate as { id: AnyNode['id']; data: Partial }] : []), + ], + }) triggerSFX('sfx:item-place') setDraftStart(null) setSnapTarget(null) + startPortRef.current = null + startBodyRef.current = null altAnchorRef.current = null setAltActive(false) } @@ -128,7 +217,12 @@ const PipeSegmentTool = () => { const resolveSnappedPoint = ( event: GridEvent, - ): { point: [number, number, number]; snapped: [number, number, number] | null } => { + ): { + point: [number, number, number] + snapped: [number, number, number] | null + port: ScenePort | null + body: RunBodyHit | null + } => { const start = startRef.current if (!start) { const raw: [number, number, number] = [event.localPosition[0], 0, event.localPosition[2]] @@ -140,11 +234,21 @@ const PipeSegmentTool = () => { port.position[1], port.position[2], ] - return { point: p, snapped: p } + return { point: p, snapped: p, port, body: null } } + // No open end nearby — try the side of a run (wye / santee tap). + const body = findNearestRunBodyXZ(raw, BODY_SNAP_RADIUS_M, { + kinds: ['pipe-segment'], + }) + if (body) return { point: body.point, snapped: body.point, port: null, body } } const step = useEditor.getState().gridSnapStep - return { point: [snap(raw[0], step), 0, snap(raw[2], step)], snapped: null } + return { + point: [snap(raw[0], step), 0, snap(raw[2], step)], + snapped: null, + port: null, + body: null, + } } const rawXZ: [number, number, number] = [ event.localPosition[0], @@ -157,7 +261,7 @@ const PipeSegmentTool = () => { const port = findNearbyPort(rawXZ) if (port) { const p: [number, number, number] = [port.position[0], port.position[1], port.position[2]] - return { point: p, snapped: p } + return { point: p, snapped: p, port, body: null } } } const step = useEditor.getState().gridSnapStep @@ -166,7 +270,7 @@ const PipeSegmentTool = () => { angled[1], snap(angled[2], step), ] - return { point: applySlope(start, snapped), snapped: null } + return { point: applySlope(start, snapped), snapped: null, port: null, body: null } } const resolveAltVerticalPoint = (clientY: number): [number, number, number] | null => { @@ -205,13 +309,17 @@ const PipeSegmentTool = () => { } return } - const { point } = resolveSnappedPoint(event) + const { point, port, body } = resolveSnappedPoint(event) if (!start) { + // First click: anchor the start, remembering the port / run body + // it snapped to so the commit can mint a bend / wye. triggerSFX('sfx:grid-snap') + startPortRef.current = port + startBodyRef.current = port ? null : body setDraftStart(point) return } - commitSegment(start, point) + commitSegment(start, point, port) } const enterAltMode = () => { @@ -273,6 +381,8 @@ const PipeSegmentTool = () => { setDraftStart(null) setCursorPos(null) setSnapTarget(null) + startPortRef.current = null + startBodyRef.current = null } emitter.on('grid:move', onMove) diff --git a/packages/nodes/src/shared/auto-fitting.ts b/packages/nodes/src/shared/auto-fitting.ts index 65c572f76..a54e619b6 100644 --- a/packages/nodes/src/shared/auto-fitting.ts +++ b/packages/nodes/src/shared/auto-fitting.ts @@ -1,7 +1,13 @@ -import { DuctFittingNode, DuctSegmentNode } from '@pascal-app/core' +import { + DuctFittingNode, + DuctSegmentNode, + PipeFittingNode, + PipeSegmentNode, +} from '@pascal-app/core' import { Euler, Matrix4, Quaternion, Vector3 } from 'three' import { fittingLegLength } from '../duct-fitting/ports' import { ductPortDiameterIn, equivalentDiameterIn } from '../duct-segment/geometry' +import { pipeFittingLegLength, WYE_BRANCH_RAD } from '../pipe-fitting/ports' import type { RunBodyHit, ScenePort } from './ports' /** Turns shallower than this read as a straight continuation — butt-join @@ -72,11 +78,27 @@ function frame(primary: Vector3, reference: Vector3): Matrix4 | null { * continuation (butt-join is fine), a back-turn sharper than 90°, or a * degenerate direction pair. */ -export function planElbowAtPort( - port: ScenePort, +/** + * Domain-agnostic corner-joint math: where an elbow-shaped fitting (any + * kind whose local inlet faces -X with the outlet turned `angle`° in + * XZ) lands when joining `port` to a run leaving along `awayDir`, with + * legs of `legM` meters. The junction sits exactly ON the corner; the + * caller trims the existing run to `trimmedPortPoint` and starts the + * new one at `collarPoint`. + */ +export type CornerJointGeometry = { + angleDeg: number + rotation: Point + junction: Point + collarPoint: Point + trimmedPortPoint: Point +} + +export function planCornerJoint( + port: Pick, awayDir: Point, - profile: DuctProfile, -): ElbowJointPlan | null { + legM: number, +): CornerJointGeometry | null { const portDir = new Vector3(...port.direction).normalize() const away = new Vector3(...awayDir).normalize() if (portDir.lengthSq() < 1e-10 || away.lengthSq() < 1e-10) return null @@ -88,7 +110,7 @@ export function planElbowAtPort( // Rotation mapping the local pair onto the world pair: local +X (the // inlet axis, flow direction) → portDir, local outlet → awayDir. Both // pairs subtend the same angle, so a shared-plane basis transfer is - // exact. + // exact — vertical turns included. const outletLocal = new Vector3(Math.cos(turn), 0, Math.sin(turn)) const localFrame = frame(new Vector3(1, 0, 0), outletLocal) const worldFrame = frame(portDir, away) @@ -98,14 +120,26 @@ export function planElbowAtPort( ) const euler = new Euler().setFromQuaternion(rotation) - // Junction sits exactly ON the corner the user drew. The elbow's inlet - // leg therefore overlaps the last stretch of the existing run — the - // caller trims that run back to `trimmedPortPoint` so the elbow - // replaces it and the visual corner stays put. - const leg = fittingLegLength(profileDiameterIn(profile)) const junction = new Vector3(...port.position) - const collar = junction.clone().addScaledVector(away, leg) - const trimmed = junction.clone().addScaledVector(portDir, -leg) + const collar = junction.clone().addScaledVector(away, legM) + const trimmed = junction.clone().addScaledVector(portDir, -legM) + + return { + angleDeg, + rotation: [euler.x, euler.y, euler.z], + junction: [junction.x, junction.y, junction.z], + collarPoint: [collar.x, collar.y, collar.z], + trimmedPortPoint: [trimmed.x, trimmed.y, trimmed.z], + } +} + +export function planElbowAtPort( + port: ScenePort, + awayDir: Point, + profile: DuctProfile, +): ElbowJointPlan | null { + const joint = planCornerJoint(port, awayDir, fittingLegLength(profileDiameterIn(profile))) + if (!joint) return null const system = port.system === 'return' ? 'return' : 'supply' // Built from the schema directly (defaults fill the rest) — importing @@ -121,20 +155,20 @@ export function planElbowAtPort( shape: profile.shape, width: profile.width, height: profile.height, - angle: angleDeg, + angle: joint.angleDeg, diameter: profileDiameterIn(profile), diameter2: profileDiameterIn(profile), // Corner elbows are sheet metal even on flex runs (adjustable elbows). ductMaterial: 'sheet-metal', system, - position: [junction.x, junction.y, junction.z], - rotation: [euler.x, euler.y, euler.z], + position: joint.junction, + rotation: joint.rotation, }) return { fitting, - collarPoint: [collar.x, collar.y, collar.z], - trimmedPortPoint: [trimmed.x, trimmed.y, trimmed.z], + collarPoint: joint.collarPoint, + trimmedPortPoint: joint.trimmedPortPoint, } } @@ -347,3 +381,169 @@ export function planElbowRealign( collarPoint: [collar.x, collar.y, collar.z], } } + +// ─── DWV pipe joints ───────────────────────────────────────────────── + +export type PipeElbowPlan = { + fitting: PipeFittingNode + collarPoint: Point + trimmedPortPoint: Point +} + +/** + * Elbow (bend) joining an existing DWV run's open port to a new run — + * same corner geometry as the duct elbow, minted as a pipe fitting. + */ +export function planPipeElbowAtPort( + port: ScenePort, + awayDir: Point, + diameterIn: number, + pipeMaterial: PipeFittingNode['pipeMaterial'] = 'pvc', +): PipeElbowPlan | null { + const joint = planCornerJoint(port, awayDir, pipeFittingLegLength(diameterIn)) + if (!joint) return null + + const fitting = PipeFittingNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Bend', + fittingType: 'elbow', + angle: joint.angleDeg, + diameter: diameterIn, + diameter2: diameterIn, + pipeMaterial, + system: port.system === 'vent' ? 'vent' : 'waste', + position: joint.junction, + rotation: joint.rotation, + }) + + return { + fitting, + collarPoint: joint.collarPoint, + trimmedPortPoint: joint.trimmedPortPoint, + } +} + +export type PipeBranchTapPlan = { + /** Parsed wye / sanitary tee, junction ON the tap point. */ + fitting: PipeFittingNode + /** The branch collar — where the new run starts. */ + branchCollar: Point + /** Tapped run rewritten to END one run-leg before the tap. */ + runUpdate: { id: PipeSegmentNode['id']; data: { path: Point[] } } + /** New run carrying the rest of the tapped run. */ + runTail: PipeSegmentNode +} + +/** A run steeper than this reads as a vertical stack — branch entries + * use a sanitary tee instead of a wye. */ +const STACK_AXIS_Y = 0.7 + +/** + * Plan the branch fitting that taps a new run into the SIDE of an + * existing DWV run — plumbing's code-correct joints: + * + * - Horizontal drain → **wye**: the branch enters at 45°, leaning + * DOWNSTREAM (along the run's draw direction, which is its fall + * direction), so flow merges instead of colliding. + * - Vertical stack → **sanitary tee**: the branch enters square. + * + * The run splits like a duct tee tap: original keeps the upstream half, + * a new node carries the downstream half, both trimmed one run-leg from + * the tap point. + */ +export function planPipeBranchTap( + run: PipeSegmentNode, + hit: RunBodyHit, + awayDir: Point, + branchDiameterIn: number, +): PipeBranchTapPlan | null { + const a = run.path[hit.segmentIndex] + const b = run.path[hit.segmentIndex + 1] + if (!a || !b) return null + const axis = new Vector3(b[0] - a[0], b[1] - a[1], b[2] - a[2]) + if (axis.lengthSq() < 1e-10) return null + axis.normalize() + + const away = new Vector3(...awayDir) + const perp = away.clone().addScaledVector(axis, -away.dot(axis)) + if (perp.lengthSq() < 1e-6) return null + perp.normalize() + + const isStack = Math.abs(axis.y) > STACK_AXIS_Y + const fittingType = isStack ? 'sanitary-tee' : 'wye' + const branchDir = isStack + ? perp.clone() + : axis + .clone() + .multiplyScalar(Math.cos(WYE_BRANCH_RAD)) + .addScaledVector(perp, Math.sin(WYE_BRANCH_RAD)) + .normalize() + + const legRun = pipeFittingLegLength(run.diameter) + const legBranch = pipeFittingLegLength(branchDiameterIn) + const P = new Vector3(...hit.point) + const upstream = P.distanceTo(new Vector3(...a)) + const downstream = P.distanceTo(new Vector3(...b)) + const MIN_STUB = 0.05 + if (upstream < legRun + MIN_STUB || downstream < legRun + MIN_STUB) return null + + // Local +X (run) → axis, local +Z (branch plane) → perp. The wye's + // 45° local branch maps onto branchDir automatically. + const localFrame = frame(new Vector3(1, 0, 0), new Vector3(0, 0, 1)) + const worldFrame = frame(axis, perp) + if (!localFrame || !worldFrame) return null + const rotation = new Quaternion().setFromRotationMatrix( + worldFrame.multiply(localFrame.transpose()), + ) + const euler = new Euler().setFromQuaternion(rotation) + + const inletTrim = P.clone().addScaledVector(axis, -legRun) + const outletTrim = P.clone().addScaledVector(axis, legRun) + const collar = P.clone().addScaledVector(branchDir, legBranch) + + const fitting = PipeFittingNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: isStack ? 'Sanitary tee' : 'Wye', + fittingType, + diameter: run.diameter, + diameter2: branchDiameterIn, + pipeMaterial: run.pipeMaterial, + system: run.system, + position: [P.x, P.y, P.z], + rotation: [euler.x, euler.y, euler.z], + }) + + const upstreamPath: Point[] = [ + ...run.path.slice(0, hit.segmentIndex + 1).map((p) => [...p] as Point), + [inletTrim.x, inletTrim.y, inletTrim.z], + ] + const tailPath: Point[] = [ + [outletTrim.x, outletTrim.y, outletTrim.z], + ...run.path.slice(hit.segmentIndex + 1).map((p) => [...p] as Point), + ] + + const runTail = PipeSegmentNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: run.name ?? 'Drain', + path: tailPath, + diameter: run.diameter, + pipeMaterial: run.pipeMaterial, + system: run.system, + }) + + return { + fitting, + branchCollar: [collar.x, collar.y, collar.z], + runUpdate: { id: run.id, data: { path: upstreamPath } }, + runTail, + } +} diff --git a/packages/nodes/src/shared/pipe-auto-fitting.test.ts b/packages/nodes/src/shared/pipe-auto-fitting.test.ts new file mode 100644 index 000000000..f03057c9a --- /dev/null +++ b/packages/nodes/src/shared/pipe-auto-fitting.test.ts @@ -0,0 +1,121 @@ +import { describe, expect, test } from 'bun:test' +import { PipeSegmentNode } from '@pascal-app/core' +import { getPipeFittingPorts } from '../pipe-fitting/ports' +import { planPipeBranchTap, planPipeElbowAtPort } from './auto-fitting' +import type { RunBodyHit, ScenePort } from './ports' + +type Point = [number, number, number] + +function port(position: Point, direction: Point): ScenePort { + return { + id: 'end', + nodeId: 'pipe-segment_test' as ScenePort['nodeId'], + position, + direction, + diameter: 2, + system: 'waste', + } +} + +function drain(path: Point[], system: 'waste' | 'vent' = 'waste'): PipeSegmentNode { + return PipeSegmentNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Drain', + path, + diameter: 3, + pipeMaterial: 'pvc', + system, + }) +} + +function dist(a: readonly number[], b: readonly number[]): number { + return Math.hypot(a[0]! - b[0]!, a[1]! - b[1]!, a[2]! - b[2]!) +} + +function dot(a: readonly number[], b: readonly number[]): number { + return a[0]! * b[0]! + a[1]! * b[1]! + a[2]! * b[2]! +} + +describe('planPipeElbowAtPort', () => { + test('90° bend mates both collars through the fitting port math', () => { + const plan = planPipeElbowAtPort(port([3, -0.05, 0], [1, 0, 0]), [0, 0, 1], 2) + expect(plan).not.toBeNull() + const ports = getPipeFittingPorts(plan!.fitting) + const inlet = ports.find((p) => p.id === 'inlet')! + const outlet = ports.find((p) => p.id === 'outlet')! + expect(dist(plan!.fitting.position, [3, -0.05, 0])).toBeLessThan(1e-6) + expect(dist(inlet.position, plan!.trimmedPortPoint)).toBeLessThan(1e-6) + expect(dot(inlet.direction, [1, 0, 0])).toBeCloseTo(-1, 6) + expect(dist(outlet.position, plan!.collarPoint)).toBeLessThan(1e-6) + expect(dot(outlet.direction, [0, 0, 1])).toBeCloseTo(1, 6) + expect(plan!.fitting.system).toBe('waste') + }) + + test('straight continuation → no fitting', () => { + expect(planPipeElbowAtPort(port([3, 0, 0], [1, 0, 0]), [1, 0, 0], 2)).toBeNull() + }) +}) + +describe('planPipeBranchTap', () => { + function hit(node: PipeSegmentNode, segmentIndex: number, point: Point): RunBodyHit { + return { nodeId: node.id, segmentIndex, point } + } + + test('horizontal drain tap → wye, branch leaning 45° downstream', () => { + const run = drain([ + [0, 0, 0], + [6, -0.125, 0], + ]) + const plan = planPipeBranchTap(run, hit(run, 0, [3, -0.0625, 0]), [0, 0, 1], 2) + expect(plan).not.toBeNull() + expect(plan!.fitting.fittingType).toBe('wye') + + const ports = getPipeFittingPorts(plan!.fitting) + const branch = ports.find((p) => p.id === 'branch')! + const inlet = ports.find((p) => p.id === 'inlet')! + const outlet = ports.find((p) => p.id === 'outlet')! + // Branch leaves at 45° between the run axis and the drawn direction — + // i.e. leaning downstream, the code-correct wye entry. + const axis = [6 / Math.hypot(6, 0.125), -0.125 / Math.hypot(6, 0.125), 0] + expect(dot(branch.direction, axis)).toBeCloseTo(Math.SQRT1_2, 3) + expect(branch.direction[2]).toBeGreaterThan(0.6) + // Split halves mate the run collars. + const upstream = plan!.runUpdate.data.path + expect(dist(upstream[upstream.length - 1]!, inlet.position)).toBeLessThan(1e-6) + expect(dist(plan!.runTail.path[0]!, outlet.position)).toBeLessThan(1e-6) + // Branch starts at the collar. + expect(dist(plan!.branchCollar, branch.position)).toBeLessThan(1e-6) + }) + + test('vertical stack tap → sanitary tee, branch square', () => { + const stack = drain([ + [0, 0, 0], + [0, 3, 0], + ]) + const plan = planPipeBranchTap(stack, hit(stack, 0, [0, 1.5, 0]), [1, 0, 0], 2) + expect(plan).not.toBeNull() + expect(plan!.fitting.fittingType).toBe('sanitary-tee') + const branch = getPipeFittingPorts(plan!.fitting).find((p) => p.id === 'branch')! + expect(dot(branch.direction, [1, 0, 0])).toBeCloseTo(1, 6) + expect(Math.abs(branch.direction[1])).toBeLessThan(1e-6) + }) + + test('tap too close to a run end → null', () => { + const run = drain([ + [0, 0, 0], + [6, 0, 0], + ]) + expect(planPipeBranchTap(run, hit(run, 0, [0.05, 0, 0]), [0, 0, 1], 2)).toBeNull() + }) + + test('branch parallel to the run → null', () => { + const run = drain([ + [0, 0, 0], + [6, 0, 0], + ]) + expect(planPipeBranchTap(run, hit(run, 0, [3, 0, 0]), [1, 0, 0], 2)).toBeNull() + }) +}) diff --git a/packages/nodes/src/shared/ports.ts b/packages/nodes/src/shared/ports.ts index 92ca72a01..a7258731c 100644 --- a/packages/nodes/src/shared/ports.ts +++ b/packages/nodes/src/shared/ports.ts @@ -92,14 +92,16 @@ export type RunBodyHit = { export function findNearestRunBodyXZ( point: readonly [number, number, number], radius: number, - excludeNodeId?: AnyNodeId, + filter: { excludeNodeId?: AnyNodeId; kinds?: readonly string[] } = {}, ): RunBodyHit | null { + const kinds = filter.kinds ?? ['duct-segment'] const { nodes } = useScene.getState() let best: RunBodyHit | null = null let bestDistSq = radius * radius for (const node of Object.values(nodes)) { - if (!node || node.type !== 'duct-segment' || node.id === excludeNodeId) continue - const path = node.path + if (!node || !kinds.includes(node.type) || node.id === filter.excludeNodeId) continue + const path = (node as { path?: Array }).path + if (!path) continue for (let i = 0; i < path.length - 1; i++) { const a = path[i]! const b = path[i + 1]! From f232b1b1c0c429f630a33a2bc4255d30703e4484 Mon Sep 17 00:00:00 2001 From: sudhir Date: Thu, 11 Jun 2026 20:25:31 +0530 Subject: [PATCH 37/59] =?UTF-8?q?feat(nodes):=20plumbing=20fixtures=20?= =?UTF-8?q?=E2=80=94=20toilets,=20sinks,=20tubs=20with=20drain=20ports?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit plumbing-fixture kind: toilet / lavatory / kitchen-sink / tub / washer, each a recognizable simple silhouette with one WASTE port at its floor rough-in — so drain runs are drawn FROM a fixture, the way DWV systems actually start. FIXTURE_SPECS centralizes per-type footprint, drain rough-in position, drain size, and IPC Table 709.1 DFU values. - Click-place tool: Q cycles the fixture type (ghost rebuilds live), R/T rotate, pill shows the type + its DFU. - System graph sums drainage fixture units per component (summary.fixtureUnits) and the action-menu pill shows "N DFU" — the load number the upcoming pipe-sizing validators read. - Floorplan: footprint rect + drain dot (toilets get the conventional bowl ellipse); Build tab gains a Fixture tile (lucide:bath). Co-Authored-By: Claude Fable 5 --- apps/editor/components/build-tab.tsx | 2 + packages/core/src/events/bus.ts | 3 + packages/core/src/schema/index.ts | 1 + .../core/src/schema/nodes/plumbing-fixture.ts | 34 +++++ packages/core/src/schema/types.ts | 2 + packages/core/src/services/system-graph.ts | 23 +++ .../editor/floating-action-menu.tsx | 11 ++ packages/editor/src/store/use-editor.tsx | 1 + packages/nodes/src/index.ts | 3 + .../nodes/src/plumbing-fixture/definition.ts | 69 +++++++++ .../nodes/src/plumbing-fixture/floorplan.ts | 80 ++++++++++ .../nodes/src/plumbing-fixture/geometry.ts | 127 ++++++++++++++++ packages/nodes/src/plumbing-fixture/index.ts | 5 + .../nodes/src/plumbing-fixture/parametrics.ts | 21 +++ packages/nodes/src/plumbing-fixture/ports.ts | 27 ++++ packages/nodes/src/plumbing-fixture/schema.ts | 1 + packages/nodes/src/plumbing-fixture/spec.ts | 56 +++++++ packages/nodes/src/plumbing-fixture/tool.tsx | 141 ++++++++++++++++++ 18 files changed, 607 insertions(+) create mode 100644 packages/core/src/schema/nodes/plumbing-fixture.ts create mode 100644 packages/nodes/src/plumbing-fixture/definition.ts create mode 100644 packages/nodes/src/plumbing-fixture/floorplan.ts create mode 100644 packages/nodes/src/plumbing-fixture/geometry.ts create mode 100644 packages/nodes/src/plumbing-fixture/index.ts create mode 100644 packages/nodes/src/plumbing-fixture/parametrics.ts create mode 100644 packages/nodes/src/plumbing-fixture/ports.ts create mode 100644 packages/nodes/src/plumbing-fixture/schema.ts create mode 100644 packages/nodes/src/plumbing-fixture/spec.ts create mode 100644 packages/nodes/src/plumbing-fixture/tool.tsx diff --git a/apps/editor/components/build-tab.tsx b/apps/editor/components/build-tab.tsx index 728ebcff9..3a4cb583e 100644 --- a/apps/editor/components/build-tab.tsx +++ b/apps/editor/components/build-tab.tsx @@ -35,6 +35,7 @@ type BuildToolKind = | 'hvac-equipment' | 'lineset' | 'pipe-segment' + | 'plumbing-fixture' type BuildType = { /** Selection id — equals `kind` for tool types, `'painting'` for paint mode. */ @@ -70,6 +71,7 @@ const BUILD_TYPES: BuildType[] = [ { id: 'hvac-equipment', label: 'HVAC Unit', iconify: 'lucide:heater', kind: 'hvac-equipment' }, { id: 'lineset', label: 'Lineset', iconify: 'lucide:cable', kind: 'lineset' }, { id: 'pipe-segment', label: 'DWV Pipe', iconify: 'lucide:droplets', kind: 'pipe-segment' }, + { id: 'plumbing-fixture', label: 'Fixture', iconify: 'lucide:bath', kind: 'plumbing-fixture' }, { id: 'painting', label: 'Painting', iconSrc: '/icons/paint.png', mode: 'material-paint' }, ] diff --git a/packages/core/src/events/bus.ts b/packages/core/src/events/bus.ts index 209c41280..9de5c87b0 100644 --- a/packages/core/src/events/bus.ts +++ b/packages/core/src/events/bus.ts @@ -25,6 +25,7 @@ import type { LinesetNode, PipeFittingNode, PipeSegmentNode, + PlumbingFixtureNode, RidgeVentNode, RoofNode, RoofSegmentNode, @@ -120,6 +121,7 @@ export type DuctTerminalEvent = NodeEvent export type HvacEquipmentEvent = NodeEvent export type PipeSegmentEvent = NodeEvent export type PipeFittingEvent = NodeEvent +export type PlumbingFixtureEvent = NodeEvent export type LinesetEvent = NodeEvent // Event suffixes - exported for use in hooks @@ -281,6 +283,7 @@ type EditorEvents = GridEvents & NodeEvents<'hvac-equipment', HvacEquipmentEvent> & NodeEvents<'pipe-segment', PipeSegmentEvent> & NodeEvents<'pipe-fitting', PipeFittingEvent> & + NodeEvents<'plumbing-fixture', PlumbingFixtureEvent> & NodeEvents<'lineset', LinesetEvent> & CameraControlEvents & ToolEvents & diff --git a/packages/core/src/schema/index.ts b/packages/core/src/schema/index.ts index 628a26aaf..5e96f7bf5 100644 --- a/packages/core/src/schema/index.ts +++ b/packages/core/src/schema/index.ts @@ -95,6 +95,7 @@ export { LevelNode } from './nodes/level' export { LinesetNode } from './nodes/lineset' export { PipeFittingNode } from './nodes/pipe-fitting' export { PipeSegmentNode } from './nodes/pipe-segment' +export { PlumbingFixtureNode } from './nodes/plumbing-fixture' // Nodes export { RidgeVentNode } from './nodes/ridge-vent' export type { RoofSurfaceMaterialRole, RoofSurfaceMaterialSpec } from './nodes/roof' diff --git a/packages/core/src/schema/nodes/plumbing-fixture.ts b/packages/core/src/schema/nodes/plumbing-fixture.ts new file mode 100644 index 000000000..b62542c58 --- /dev/null +++ b/packages/core/src/schema/nodes/plumbing-fixture.ts @@ -0,0 +1,34 @@ +import dedent from 'dedent' +import { z } from 'zod' +import { BaseNode, nodeType, objectId } from '../base' + +/** + * Plumbing fixture — where the DWV system starts: water closet, + * lavatory, kitchen sink, tub/shower, clothes washer. + * + * Each fixture exposes one waste port at its floor rough-in point, so + * drain runs are drawn FROM a fixture toward the stack. Fixture-unit + * values (IPC DFU) are derived from the type — they feed the system + * summary and, in a later slice, the pipe-sizing validators. + * + * Floor-placed: `position` is level-local meters with y at the floor, + * `rotation` is yaw radians. + */ +export const PlumbingFixtureNode = BaseNode.extend({ + id: objectId('plumbing-fixture'), + type: nodeType('plumbing-fixture'), + // Level-local meters, y at the floor. + position: z.tuple([z.number(), z.number(), z.number()]).default([0, 0, 0]), + // Yaw in radians. + rotation: z.number().default(0), + fixtureType: z.enum(['toilet', 'lavatory', 'kitchen-sink', 'tub', 'washer']).default('toilet'), +}).describe( + dedent` + Plumbing fixture - toilet, lavatory (bath sink), kitchen sink, tub/shower, or clothes washer. + - position: [x, y, z] level-local meters (y = floor) + - rotation: yaw radians + - fixtureType drives geometry, the drain rough-in port size, and the IPC fixture-unit value + `, +) +export type PlumbingFixtureNode = z.infer +export type PlumbingFixtureNodeId = PlumbingFixtureNode['id'] diff --git a/packages/core/src/schema/types.ts b/packages/core/src/schema/types.ts index 425b33c56..088971f78 100644 --- a/packages/core/src/schema/types.ts +++ b/packages/core/src/schema/types.ts @@ -22,6 +22,7 @@ import { LevelNode } from './nodes/level' import { LinesetNode } from './nodes/lineset' import { PipeFittingNode } from './nodes/pipe-fitting' import { PipeSegmentNode } from './nodes/pipe-segment' +import { PlumbingFixtureNode } from './nodes/plumbing-fixture' import { RidgeVentNode } from './nodes/ridge-vent' import { RoofNode } from './nodes/roof' import { RoofSegmentNode } from './nodes/roof-segment' @@ -79,6 +80,7 @@ export const AnyNode = z.discriminatedUnion('type', [ LinesetNode, PipeSegmentNode, PipeFittingNode, + PlumbingFixtureNode, ]) export type AnyNode = z.infer diff --git a/packages/core/src/services/system-graph.ts b/packages/core/src/services/system-graph.ts index fda79a2c1..f245d4704 100644 --- a/packages/core/src/services/system-graph.ts +++ b/packages/core/src/services/system-graph.ts @@ -19,6 +19,17 @@ import type { AnyNode, AnyNodeId } from '../schema' * matches port-connectivity's tolerance for hand-placed joints. */ const COINCIDENT_EPS_M = 0.05 +/** IPC Table 709.1 drainage fixture units (private installations) — + * mirrors `plumbing-fixture/spec.ts` in the nodes package (core can't + * import it; the fixture kind owns geometry, this service owns load). */ +const FIXTURE_DFU: Record = { + toilet: 3, + lavatory: 1, + 'kitchen-sink': 2, + tub: 2, + washer: 2, +} + export type SystemSummary = { /** Every node in this connected component. */ nodeIds: AnyNodeId[] @@ -30,6 +41,10 @@ export type SystemSummary = { fittingCount: number terminalCount: number equipmentCount: number + /** Plumbing fixtures in the component + their summed IPC drainage + * fixture units — the load number pipe-sizing validators read. */ + fixtureCount: number + fixtureUnits: number /** False = orphaned subtree: air goes nowhere (no furnace / air * handler / condenser anywhere in the component). */ connectedToEquipment: boolean @@ -137,6 +152,8 @@ function summarize( let fittingCount = 0 let terminalCount = 0 let equipmentCount = 0 + let fixtureCount = 0 + let fixtureUnits = 0 for (const id of nodeIds) { const node = nodes[id] @@ -154,6 +171,10 @@ function summarize( systems.add(node.terminalType === 'return-grille' ? 'return' : 'supply') } else if (node.type === 'hvac-equipment') { equipmentCount += 1 + } else if (node.type === 'plumbing-fixture') { + fixtureCount += 1 + fixtureUnits += FIXTURE_DFU[node.fixtureType] ?? 0 + systems.add('waste') } } @@ -165,6 +186,8 @@ function summarize( fittingCount, terminalCount, equipmentCount, + fixtureCount, + fixtureUnits, connectedToEquipment: equipmentCount > 0, } } diff --git a/packages/editor/src/components/editor/floating-action-menu.tsx b/packages/editor/src/components/editor/floating-action-menu.tsx index 048bd5f2b..e089ea3f7 100644 --- a/packages/editor/src/components/editor/floating-action-menu.tsx +++ b/packages/editor/src/components/editor/floating-action-menu.tsx @@ -49,6 +49,7 @@ const HVAC_KINDS = new Set([ 'lineset', 'pipe-segment', 'pipe-fitting', + 'plumbing-fixture', ]) const ALLOWED_TYPES = [ @@ -635,6 +636,16 @@ export function FloatingActionMenu() {
) : null} + {systemSummary.fixtureUnits > 0 ? ( + <> + + · + + + {systemSummary.fixtureUnits} DFU + + + ) : null} {systemSummary.terminalCount > 0 ? ( <> diff --git a/packages/editor/src/store/use-editor.tsx b/packages/editor/src/store/use-editor.tsx index 89bbb14e7..72a617bb9 100644 --- a/packages/editor/src/store/use-editor.tsx +++ b/packages/editor/src/store/use-editor.tsx @@ -112,6 +112,7 @@ export type StructureTool = | 'hvac-equipment' | 'lineset' | 'pipe-segment' + | 'plumbing-fixture' // Furnish mode tools (items and decoration) export type FurnishTool = 'item' diff --git a/packages/nodes/src/index.ts b/packages/nodes/src/index.ts index 0850b3f34..9c00743a6 100644 --- a/packages/nodes/src/index.ts +++ b/packages/nodes/src/index.ts @@ -22,6 +22,7 @@ import { levelDefinition } from './level' import { linesetDefinition } from './lineset' import { pipeFittingDefinition } from './pipe-fitting' import { pipeSegmentDefinition } from './pipe-segment' +import { plumbingFixtureDefinition } from './plumbing-fixture' import { ridgeVentDefinition } from './ridge-vent' import { roofDefinition } from './roof' import { roofSegmentDefinition } from './roof-segment' @@ -104,6 +105,7 @@ export const builtinPlugin: Plugin = { // DWV plumbing — Phase 2 of the research doc's plan. pipeSegmentDefinition as unknown as AnyNodeDefinition, pipeFittingDefinition as unknown as AnyNodeDefinition, + plumbingFixtureDefinition as unknown as AnyNodeDefinition, ], } @@ -130,6 +132,7 @@ export { levelDefinition } from './level' export { linesetDefinition } from './lineset' export { pipeFittingDefinition } from './pipe-fitting' export { pipeSegmentDefinition } from './pipe-segment' +export { plumbingFixtureDefinition } from './plumbing-fixture' export { ridgeVentDefinition } from './ridge-vent' export { roofDefinition } from './roof' export { roofSegmentDefinition } from './roof-segment' diff --git a/packages/nodes/src/plumbing-fixture/definition.ts b/packages/nodes/src/plumbing-fixture/definition.ts new file mode 100644 index 000000000..7a86930fb --- /dev/null +++ b/packages/nodes/src/plumbing-fixture/definition.ts @@ -0,0 +1,69 @@ +import type { NodeDefinition } from '@pascal-app/core' +import { buildPlumbingFixtureFloorplan } from './floorplan' +import { buildPlumbingFixtureGeometry } from './geometry' +import { plumbingFixtureParametrics } from './parametrics' +import { getPlumbingFixturePorts } from './ports' +import { PlumbingFixtureNode } from './schema' + +/** + * DWV plumbing's start points — fixtures whose drain rough-ins are + * waste ports the pipe tool draws runs from. Fixture-unit values (IPC + * DFU) come from `spec.ts` and feed the system summary; the sizing + * validators in a later slice read the same table. + */ +export const plumbingFixtureDefinition: NodeDefinition = { + kind: 'plumbing-fixture', + schemaVersion: 1, + schema: PlumbingFixtureNode, + category: 'utility', + + defaults: () => ({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + position: [0, 0, 0], + rotation: 0, + fixtureType: 'toilet', + }), + + capabilities: { + selectable: { hitVolume: 'bbox' }, + movable: { axes: ['x', 'z'], gridSnap: true }, + rotatable: { axes: ['y'], snapAngles: [Math.PI / 4] }, + duplicable: true, + deletable: true, + }, + + parametrics: plumbingFixtureParametrics, + + geometry: buildPlumbingFixtureGeometry, + geometryKey: (n) => JSON.stringify([n.fixtureType]), + + ports: getPlumbingFixturePorts, + + floorplan: buildPlumbingFixtureFloorplan, + + tool: () => import('./tool'), + toolHints: [ + { key: 'Click', label: 'Place fixture' }, + { key: 'Q', label: 'Cycle fixture type' }, + { key: 'R / T', label: 'Rotate ±45°' }, + { key: 'Shift', label: 'Smooth (no grid snap)' }, + { key: 'Esc', label: 'Exit' }, + ], + + presentation: { + label: 'Fixture', + description: + 'Plumbing fixture — toilet, lavatory, kitchen sink, tub, or washer. Drain runs start at its waste rough-in.', + icon: { kind: 'iconify', name: 'lucide:bath' }, + paletteSection: 'structure', + paletteOrder: 97, + }, + + mcp: { + description: + 'A plumbing fixture (toilet, lavatory, kitchen sink, tub/shower, or clothes washer) with a waste rough-in port. Position is level-local meters; rotation is yaw radians. DFU and drain size derive from the fixture type.', + }, +} diff --git a/packages/nodes/src/plumbing-fixture/floorplan.ts b/packages/nodes/src/plumbing-fixture/floorplan.ts new file mode 100644 index 000000000..04630aa3a --- /dev/null +++ b/packages/nodes/src/plumbing-fixture/floorplan.ts @@ -0,0 +1,80 @@ +import type { FloorplanGeometry, FloorplanPoint, GeometryContext } from '@pascal-app/core' +import { getPlumbingFixturePorts } from './ports' +import type { PlumbingFixtureNode } from './schema' +import { FIXTURE_SPECS } from './spec' + +const BODY_FILL = '#f5f5f4' +const BODY_STROKE = '#78716c' +const DRAIN_COLOR = '#57534e' + +/** + * Floor-plan symbol: the fixture's footprint rectangle (rotated by yaw) + * with a drain dot at the rough-in point. Toilets additionally get the + * conventional bowl ellipse so they read instantly. + */ +export function buildPlumbingFixtureFloorplan( + node: PlumbingFixtureNode, + ctx: GeometryContext, +): FloorplanGeometry | null { + const [cx, , cz] = node.position + const spec = FIXTURE_SPECS[node.fixtureType] + const cos = Math.cos(node.rotation) + const sin = Math.sin(node.rotation) + const hw = spec.size[0] / 2 + const hd = spec.size[2] / 2 + const corner = (lx: number, lz: number): FloorplanPoint => [ + cx + lx * cos + lz * sin, + cz - lx * sin + lz * cos, + ] + const points: FloorplanPoint[] = [ + corner(-hw, -hd), + corner(hw, -hd), + corner(hw, hd), + corner(-hw, hd), + ] + + const view = ctx.viewState + const palette = view?.palette + const showSelectedChrome = (view?.selected || view?.highlighted) ?? false + const stroke = showSelectedChrome && palette ? palette.selectedStroke : BODY_STROKE + + const children: FloorplanGeometry[] = [ + { + kind: 'polygon', + points, + fill: BODY_FILL, + stroke, + strokeWidth: showSelectedChrome ? 0.025 : 0.015, + opacity: 0.95, + }, + ] + + if (node.fixtureType === 'toilet') { + const bowl = corner(0, 0.08) + children.push({ + kind: 'circle', + cx: bowl[0], + cy: bowl[1], + r: 0.16, + fill: 'none', + stroke, + strokeWidth: 1.5, + vectorEffect: 'non-scaling-stroke', + opacity: 0.9, + }) + } + + const drain = getPlumbingFixturePorts(node)[0]! + children.push({ + kind: 'circle', + cx: drain.position[0], + cy: drain.position[2], + r: 0.035, + fill: DRAIN_COLOR, + opacity: 0.9, + }) + + if (showSelectedChrome) children.push({ kind: 'move-handle', point: [cx, cz] }) + + return { kind: 'group', children } +} diff --git a/packages/nodes/src/plumbing-fixture/geometry.ts b/packages/nodes/src/plumbing-fixture/geometry.ts new file mode 100644 index 000000000..6f046f1fe --- /dev/null +++ b/packages/nodes/src/plumbing-fixture/geometry.ts @@ -0,0 +1,127 @@ +import { + BoxGeometry, + CylinderGeometry, + Group, + Mesh, + MeshStandardMaterial, + SphereGeometry, + TorusGeometry, + Vector3, +} from 'three' +import type { PlumbingFixtureNode } from './schema' +import { FIXTURE_SPECS } from './spec' + +const PORCELAIN = '#f4f4f2' +const STEEL = '#d7dade' +const CHROME = '#9aa1a8' +const APPLIANCE_DARK = '#3f4549' + +const SEGMENTS = 20 + +/** + * Pure geometry builder for a plumbing fixture, in the node's LOCAL + * frame (origin at base center, +Z toward the room) — + * `` applies position + yaw. + * + * Deliberately simple silhouettes: enough to read each fixture at a + * glance (tank + bowl toilet, pedestal lav, counter sink, low tub, + * front-load washer) without item-catalog detail. + */ +export function buildPlumbingFixtureGeometry(node: PlumbingFixtureNode): Group { + const group = new Group() + const spec = FIXTURE_SPECS[node.fixtureType] + const [w, h, d] = spec.size + + const porcelain = new MeshStandardMaterial({ color: PORCELAIN, metalness: 0.05, roughness: 0.3 }) + const steel = new MeshStandardMaterial({ color: STEEL, metalness: 0.6, roughness: 0.35 }) + const chrome = new MeshStandardMaterial({ color: CHROME, metalness: 0.7, roughness: 0.3 }) + const dark = new MeshStandardMaterial({ color: APPLIANCE_DARK, metalness: 0.3, roughness: 0.6 }) + + const box = ( + bw: number, + bh: number, + bd: number, + mat: MeshStandardMaterial, + x: number, + y: number, + z: number, + name: string, + ) => { + const mesh = new Mesh(new BoxGeometry(bw, bh, bd), mat) + mesh.position.set(x, y, z) + mesh.name = name + group.add(mesh) + return mesh + } + + switch (node.fixtureType) { + case 'toilet': { + // Tank at the back, bowl forward, base pedestal. + box(w, 0.4, 0.14, porcelain, 0, 0.55, -d / 2 + 0.07, 'fixture-tank') + const bowl = new Mesh(new SphereGeometry(0.19, SEGMENTS, 12), porcelain) + bowl.scale.set(1, 0.55, 1.25) + bowl.position.set(0, 0.4, 0.08) + bowl.name = 'fixture-bowl' + group.add(bowl) + const base = new Mesh(new CylinderGeometry(0.1, 0.13, 0.38, SEGMENTS), porcelain) + base.position.set(0, 0.19, 0.05) + base.name = 'fixture-base' + group.add(base) + break + } + case 'lavatory': { + const pedestal = new Mesh(new CylinderGeometry(0.06, 0.09, h - 0.12, SEGMENTS), porcelain) + pedestal.position.set(0, (h - 0.12) / 2, 0) + pedestal.name = 'fixture-pedestal' + group.add(pedestal) + const basin = new Mesh(new CylinderGeometry(w / 2, w / 2 - 0.06, 0.12, SEGMENTS), porcelain) + basin.position.set(0, h - 0.06, 0) + basin.name = 'fixture-basin' + group.add(basin) + const spout = new Mesh(new CylinderGeometry(0.012, 0.012, 0.12, 10), chrome) + spout.position.set(0, h + 0.05, -w / 2 + 0.08) + spout.name = 'fixture-spout' + group.add(spout) + break + } + case 'kitchen-sink': { + box(w, h - 0.05, d, steel, 0, (h - 0.05) / 2, 0, 'fixture-cabinet') + // Basin recess rim on top. + const rim = new Mesh(new BoxGeometry(w * 0.8, 0.04, d * 0.7), dark) + rim.position.set(0, h - 0.02, 0.02) + rim.name = 'fixture-basin' + group.add(rim) + const faucet = new Mesh(new CylinderGeometry(0.015, 0.015, 0.22, 10), chrome) + faucet.position.set(0, h + 0.09, -d / 2 + 0.08) + faucet.name = 'fixture-faucet' + group.add(faucet) + break + } + case 'tub': { + box(w, h, d, porcelain, 0, h / 2, 0, 'fixture-tub') + // Inner recess hint. + const recess = new Mesh(new BoxGeometry(w - 0.12, 0.03, d - 0.12), dark) + recess.position.set(0, h - 0.015, 0) + recess.name = 'fixture-recess' + group.add(recess) + break + } + case 'washer': { + box(w, h, d, steel, 0, h / 2, 0, 'fixture-body') + const door = new Mesh(new TorusGeometry(0.16, 0.025, 10, SEGMENTS), dark) + door.position.set(0, h * 0.5, d / 2 + 0.005) + door.name = 'fixture-door' + group.add(door) + break + } + } + + // Drain rough-in marker — a small dark cylinder at the waste port, so + // the connection point reads in 3D even before a pipe is drawn. + const drain = new Mesh(new CylinderGeometry(0.03, 0.03, 0.02, 12), dark) + drain.position.copy(new Vector3(...spec.drainLocal)) + drain.name = 'fixture-drain' + group.add(drain) + + return group +} diff --git a/packages/nodes/src/plumbing-fixture/index.ts b/packages/nodes/src/plumbing-fixture/index.ts new file mode 100644 index 000000000..b3a0b104f --- /dev/null +++ b/packages/nodes/src/plumbing-fixture/index.ts @@ -0,0 +1,5 @@ +export { plumbingFixtureDefinition } from './definition' +export { buildPlumbingFixtureGeometry } from './geometry' +export { getPlumbingFixturePorts } from './ports' +export { PlumbingFixtureNode } from './schema' +export { FIXTURE_SPECS } from './spec' diff --git a/packages/nodes/src/plumbing-fixture/parametrics.ts b/packages/nodes/src/plumbing-fixture/parametrics.ts new file mode 100644 index 000000000..be2e89ed1 --- /dev/null +++ b/packages/nodes/src/plumbing-fixture/parametrics.ts @@ -0,0 +1,21 @@ +import type { ParametricDescriptor } from '@pascal-app/core' +import type { PlumbingFixtureNode } from './schema' + +export const plumbingFixtureParametrics: ParametricDescriptor = { + groups: [ + { + label: 'Fixture', + fields: [ + { + key: 'fixtureType', + kind: 'enum', + options: ['toilet', 'lavatory', 'kitchen-sink', 'tub', 'washer'], + }, + ], + }, + { + label: 'Placement', + fields: [{ key: 'position', kind: 'vec3' }], + }, + ], +} diff --git a/packages/nodes/src/plumbing-fixture/ports.ts b/packages/nodes/src/plumbing-fixture/ports.ts new file mode 100644 index 000000000..af67c0b97 --- /dev/null +++ b/packages/nodes/src/plumbing-fixture/ports.ts @@ -0,0 +1,27 @@ +import type { NodePort } from '@pascal-app/core' +import { Vector3 } from 'three' +import type { PlumbingFixtureNode } from './schema' +import { FIXTURE_SPECS } from './spec' + +/** + * `def.ports` — the fixture's single waste rough-in, level-local. The + * direction points DOWN: drains leave a fixture through the floor, so a + * run drawn from the port starts by dropping (or the planner mints a + * bend when it turns horizontal). + */ +export function getPlumbingFixturePorts(node: PlumbingFixtureNode): NodePort[] { + const spec = FIXTURE_SPECS[node.fixtureType] + const local = new Vector3(...spec.drainLocal) + const position = local + .applyAxisAngle(new Vector3(0, 1, 0), node.rotation) + .add(new Vector3(node.position[0], node.position[1], node.position[2])) + return [ + { + id: 'drain', + position: [position.x, position.y, position.z] as const, + direction: [0, -1, 0] as const, + diameter: spec.drainIn, + system: 'waste', + }, + ] +} diff --git a/packages/nodes/src/plumbing-fixture/schema.ts b/packages/nodes/src/plumbing-fixture/schema.ts new file mode 100644 index 000000000..9451845dc --- /dev/null +++ b/packages/nodes/src/plumbing-fixture/schema.ts @@ -0,0 +1 @@ +export { PlumbingFixtureNode } from '@pascal-app/core' diff --git a/packages/nodes/src/plumbing-fixture/spec.ts b/packages/nodes/src/plumbing-fixture/spec.ts new file mode 100644 index 000000000..fe8f049e8 --- /dev/null +++ b/packages/nodes/src/plumbing-fixture/spec.ts @@ -0,0 +1,56 @@ +import type { PlumbingFixtureNode } from './schema' + +/** + * Per-fixture facts the geometry, ports, and (later) IPC validators + * read. DFU values follow IPC Table 709.1 (private installations); + * drain sizes are the standard residential rough-ins. + */ +export type FixtureSpec = { + label: string + /** Cabinet/body footprint + height in meters: [width, height, depth]. */ + size: [number, number, number] + /** Drain rough-in point in the fixture's LOCAL frame (y ≈ floor). */ + drainLocal: [number, number, number] + /** Drain size in inches. */ + drainIn: number + /** IPC drainage fixture units. */ + dfu: number +} + +export const FIXTURE_SPECS: Record = { + toilet: { + label: 'Toilet', + size: [0.4, 0.78, 0.7], + drainLocal: [0, 0.02, 0.05], + drainIn: 3, + dfu: 3, + }, + lavatory: { + label: 'Lavatory', + size: [0.5, 0.82, 0.45], + drainLocal: [0, 0.02, -0.12], + drainIn: 1.25, + dfu: 1, + }, + 'kitchen-sink': { + label: 'Kitchen sink', + size: [0.6, 0.9, 0.55], + drainLocal: [0, 0.02, -0.18], + drainIn: 1.5, + dfu: 2, + }, + tub: { + label: 'Tub / shower', + size: [1.5, 0.5, 0.75], + drainLocal: [-0.55, 0.02, 0], + drainIn: 1.5, + dfu: 2, + }, + washer: { + label: 'Washer', + size: [0.6, 0.85, 0.6], + drainLocal: [0, 0.02, -0.22], + drainIn: 2, + dfu: 2, + }, +} diff --git a/packages/nodes/src/plumbing-fixture/tool.tsx b/packages/nodes/src/plumbing-fixture/tool.tsx new file mode 100644 index 000000000..efc5f2aa3 --- /dev/null +++ b/packages/nodes/src/plumbing-fixture/tool.tsx @@ -0,0 +1,141 @@ +'use client' + +import { emitter, type GridEvent, PlumbingFixtureNode, useScene } from '@pascal-app/core' +import { triggerSFX, useEditor } from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { useEffect, useMemo, useRef, useState } from 'react' +import { plumbingFixtureDefinition } from './definition' +import { buildPlumbingFixtureGeometry } from './geometry' +import type { PlumbingFixtureNode as Fixture } from './schema' +import { FIXTURE_SPECS } from './spec' + +const PREVIEW_OPACITY = 0.55 +const ROTATE_STEP_RAD = Math.PI / 4 +const TYPE_CYCLE: Fixture['fixtureType'][] = ['toilet', 'lavatory', 'kitchen-sink', 'tub', 'washer'] + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +/** + * Click-place tool for plumbing fixtures. Ghost follows the cursor on + * the floor with grid snap (Shift = smooth); **Q** cycles the fixture + * type, **R / T** rotate ±45°. The placed fixture's drain rough-in is a + * waste port, so the DWV pipe tool starts runs straight off it. + */ +const PlumbingFixtureTool = () => { + const activeLevelId = useViewer((s) => s.selection.levelId) + const [cursor, setCursor] = useState<[number, number, number] | null>(null) + const [yaw, setYaw] = useState(0) + const [fixtureType, setFixtureType] = useState('toilet') + const yawRef = useRef(0) + const typeRef = useRef(fixtureType) + typeRef.current = fixtureType + + const previewNode = useMemo( + () => + PlumbingFixtureNode.parse({ + ...plumbingFixtureDefinition.defaults(), + name: FIXTURE_SPECS[fixtureType].label, + fixtureType, + }), + [fixtureType], + ) + const ghost = useMemo(() => { + const group = buildPlumbingFixtureGeometry(previewNode) + group.traverse((child) => { + const mesh = child as { material?: { transparent: boolean; opacity: number } } + if (mesh.material) { + mesh.material.transparent = true + mesh.material.opacity = PREVIEW_OPACITY + } + }) + return group + }, [previewNode]) + + useEffect(() => { + if (!activeLevelId) return + + const resolve = (event: GridEvent): [number, number, number] => { + const step = event.nativeEvent?.shiftKey === true ? 0 : useEditor.getState().gridSnapStep + return [snap(event.localPosition[0], step), 0, snap(event.localPosition[2], step)] + } + + const onMove = (event: GridEvent) => setCursor(resolve(event)) + + const onClick = (event: GridEvent) => { + const position = resolve(event) + const fixture = PlumbingFixtureNode.parse({ + ...plumbingFixtureDefinition.defaults(), + name: FIXTURE_SPECS[typeRef.current].label, + fixtureType: typeRef.current, + position, + rotation: yawRef.current, + }) + useScene.getState().createNode(fixture, activeLevelId) + useViewer.getState().setSelection({ selectedIds: [fixture.id] }) + triggerSFX('sfx:item-place') + } + + const onKeyDown = (e: KeyboardEvent) => { + const tag = (e.target as HTMLElement | null)?.tagName + if (tag === 'INPUT' || tag === 'TEXTAREA') return + const key = e.key + if (key === 'r' || key === 'R' || key === 't' || key === 'T') { + e.preventDefault() + e.stopPropagation() + const steps = key === 't' || key === 'T' || e.shiftKey ? -1 : 1 + yawRef.current += steps * ROTATE_STEP_RAD + setYaw(yawRef.current) + triggerSFX('sfx:item-rotate') + } else if (key === 'q' || key === 'Q') { + e.preventDefault() + const index = TYPE_CYCLE.indexOf(typeRef.current) + setFixtureType(TYPE_CYCLE[(index + 1) % TYPE_CYCLE.length]!) + triggerSFX('sfx:grid-snap') + } + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', onClick) + window.addEventListener('keydown', onKeyDown, true) + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', onClick) + window.removeEventListener('keydown', onKeyDown, true) + } + }, [activeLevelId]) + + if (!activeLevelId || !cursor) return null + + const spec = FIXTURE_SPECS[fixtureType] + return ( + + + + + +
+ {spec.label} + + · + + {spec.dfu} DFU + + · + + Q type · R/T rotate +
+ +
+ ) +} + +export default PlumbingFixtureTool From 3e70bfa89a35c83b5de00fa909877aae583d6df3 Mon Sep 17 00:00:00 2001 From: sudhir Date: Fri, 12 Jun 2026 23:21:44 +0530 Subject: [PATCH 38/59] refactor(nodes): replace plumbing-fixture node with pipe-trap Swaps the fixture node kind (toilets/sinks/tubs) for a pipe-trap node across the schema union, event bus, node registry, and editor menus. The DFU load accounting that depended on fixtures is removed from the system graph; trap-based DWV modeling supersedes the fixture approach. Co-Authored-By: Claude Opus 4.7 --- packages/core/src/events/bus.ts | 6 +- packages/core/src/schema/index.ts | 2 +- packages/core/src/schema/nodes/pipe-trap.ts | 41 ++++++ .../core/src/schema/nodes/plumbing-fixture.ts | 34 ----- packages/core/src/schema/types.ts | 4 +- packages/core/src/services/system-graph.ts | 23 ---- .../editor/floating-action-menu.tsx | 12 +- packages/editor/src/store/use-editor.tsx | 1 - packages/nodes/src/index.ts | 6 +- packages/nodes/src/pipe-trap/definition.ts | 69 ++++++++++ packages/nodes/src/pipe-trap/floorplan.ts | 53 ++++++++ packages/nodes/src/pipe-trap/geometry.ts | 72 ++++++++++ packages/nodes/src/pipe-trap/index.ts | 4 + packages/nodes/src/pipe-trap/parametrics.ts | 19 +++ packages/nodes/src/pipe-trap/ports.ts | 29 ++++ packages/nodes/src/pipe-trap/schema.ts | 1 + .../{plumbing-fixture => pipe-trap}/tool.tsx | 83 ++++++------ .../nodes/src/plumbing-fixture/definition.ts | 69 ---------- .../nodes/src/plumbing-fixture/floorplan.ts | 80 ----------- .../nodes/src/plumbing-fixture/geometry.ts | 127 ------------------ packages/nodes/src/plumbing-fixture/index.ts | 5 - .../nodes/src/plumbing-fixture/parametrics.ts | 21 --- packages/nodes/src/plumbing-fixture/ports.ts | 27 ---- packages/nodes/src/plumbing-fixture/schema.ts | 1 - packages/nodes/src/plumbing-fixture/spec.ts | 56 -------- 25 files changed, 336 insertions(+), 509 deletions(-) create mode 100644 packages/core/src/schema/nodes/pipe-trap.ts delete mode 100644 packages/core/src/schema/nodes/plumbing-fixture.ts create mode 100644 packages/nodes/src/pipe-trap/definition.ts create mode 100644 packages/nodes/src/pipe-trap/floorplan.ts create mode 100644 packages/nodes/src/pipe-trap/geometry.ts create mode 100644 packages/nodes/src/pipe-trap/index.ts create mode 100644 packages/nodes/src/pipe-trap/parametrics.ts create mode 100644 packages/nodes/src/pipe-trap/ports.ts create mode 100644 packages/nodes/src/pipe-trap/schema.ts rename packages/nodes/src/{plumbing-fixture => pipe-trap}/tool.tsx (53%) delete mode 100644 packages/nodes/src/plumbing-fixture/definition.ts delete mode 100644 packages/nodes/src/plumbing-fixture/floorplan.ts delete mode 100644 packages/nodes/src/plumbing-fixture/geometry.ts delete mode 100644 packages/nodes/src/plumbing-fixture/index.ts delete mode 100644 packages/nodes/src/plumbing-fixture/parametrics.ts delete mode 100644 packages/nodes/src/plumbing-fixture/ports.ts delete mode 100644 packages/nodes/src/plumbing-fixture/schema.ts delete mode 100644 packages/nodes/src/plumbing-fixture/spec.ts diff --git a/packages/core/src/events/bus.ts b/packages/core/src/events/bus.ts index 9de5c87b0..91b1a8f35 100644 --- a/packages/core/src/events/bus.ts +++ b/packages/core/src/events/bus.ts @@ -25,7 +25,7 @@ import type { LinesetNode, PipeFittingNode, PipeSegmentNode, - PlumbingFixtureNode, + PipeTrapNode, RidgeVentNode, RoofNode, RoofSegmentNode, @@ -121,7 +121,7 @@ export type DuctTerminalEvent = NodeEvent export type HvacEquipmentEvent = NodeEvent export type PipeSegmentEvent = NodeEvent export type PipeFittingEvent = NodeEvent -export type PlumbingFixtureEvent = NodeEvent +export type PipeTrapEvent = NodeEvent export type LinesetEvent = NodeEvent // Event suffixes - exported for use in hooks @@ -283,7 +283,7 @@ type EditorEvents = GridEvents & NodeEvents<'hvac-equipment', HvacEquipmentEvent> & NodeEvents<'pipe-segment', PipeSegmentEvent> & NodeEvents<'pipe-fitting', PipeFittingEvent> & - NodeEvents<'plumbing-fixture', PlumbingFixtureEvent> & + NodeEvents<'pipe-trap', PipeTrapEvent> & NodeEvents<'lineset', LinesetEvent> & CameraControlEvents & ToolEvents & diff --git a/packages/core/src/schema/index.ts b/packages/core/src/schema/index.ts index 5e96f7bf5..dbc51a229 100644 --- a/packages/core/src/schema/index.ts +++ b/packages/core/src/schema/index.ts @@ -95,7 +95,7 @@ export { LevelNode } from './nodes/level' export { LinesetNode } from './nodes/lineset' export { PipeFittingNode } from './nodes/pipe-fitting' export { PipeSegmentNode } from './nodes/pipe-segment' -export { PlumbingFixtureNode } from './nodes/plumbing-fixture' +export { PipeTrapNode } from './nodes/pipe-trap' // Nodes export { RidgeVentNode } from './nodes/ridge-vent' export type { RoofSurfaceMaterialRole, RoofSurfaceMaterialSpec } from './nodes/roof' diff --git a/packages/core/src/schema/nodes/pipe-trap.ts b/packages/core/src/schema/nodes/pipe-trap.ts new file mode 100644 index 000000000..ca63f242f --- /dev/null +++ b/packages/core/src/schema/nodes/pipe-trap.ts @@ -0,0 +1,41 @@ +import dedent from 'dedent' +import { z } from 'zod' +import { BaseNode, nodeType, objectId } from '../base' + +/** + * DWV trap — the P-trap between a fixture and the waste system. Holds a + * water seal that blocks sewer gas; every drained fixture has exactly + * one. Modeled as an explicit fitting (not folded into the fixture) so + * the trap-arm rule (IPC 909.1 max developed length to the vent) has a + * node to attach to and the inspector can edit size + arm length. + * + * Local-frame convention (before `rotation`): inlet faces +Y (up, to + * the fixture tailpiece), outlet faces +X (the horizontal trap arm + * toward the vented waste line). + */ +export const PipeTrapNode = BaseNode.extend({ + id: objectId('pipe-trap'), + type: nodeType('pipe-trap'), + // Level-local meters. + position: z.tuple([z.number(), z.number(), z.number()]).default([0, 0, 0]), + // Yaw in radians (the arm direction in plan). + rotation: z.number().default(0), + // Trap size in inches — matches the fixture drain it serves. + diameter: z.number().min(1.25).max(4).default(1.5), + pipeMaterial: z.enum(['pvc', 'abs', 'cast-iron']).default('pvc'), + // Developed length of the trap arm (trap weir → vent) in meters. The + // draw tool measures it when the arm is drawn; editable in the + // inspector. Drives the IPC 909.1 max-trap-arm check. + armLengthM: z.number().min(0).default(0), +}).describe( + dedent` + DWV trap (P-trap) - the water-seal fitting between a fixture and the waste line. + - position: [x, y, z] level-local meters + - rotation: yaw radians (trap-arm direction in plan) + - diameter: trap size in inches (matches the fixture drain) + - pipeMaterial: pvc | abs | cast-iron + - armLengthM: developed length from trap to vent in meters (IPC 909.1 limited by size) + `, +) +export type PipeTrapNode = z.infer +export type PipeTrapNodeId = PipeTrapNode['id'] diff --git a/packages/core/src/schema/nodes/plumbing-fixture.ts b/packages/core/src/schema/nodes/plumbing-fixture.ts deleted file mode 100644 index b62542c58..000000000 --- a/packages/core/src/schema/nodes/plumbing-fixture.ts +++ /dev/null @@ -1,34 +0,0 @@ -import dedent from 'dedent' -import { z } from 'zod' -import { BaseNode, nodeType, objectId } from '../base' - -/** - * Plumbing fixture — where the DWV system starts: water closet, - * lavatory, kitchen sink, tub/shower, clothes washer. - * - * Each fixture exposes one waste port at its floor rough-in point, so - * drain runs are drawn FROM a fixture toward the stack. Fixture-unit - * values (IPC DFU) are derived from the type — they feed the system - * summary and, in a later slice, the pipe-sizing validators. - * - * Floor-placed: `position` is level-local meters with y at the floor, - * `rotation` is yaw radians. - */ -export const PlumbingFixtureNode = BaseNode.extend({ - id: objectId('plumbing-fixture'), - type: nodeType('plumbing-fixture'), - // Level-local meters, y at the floor. - position: z.tuple([z.number(), z.number(), z.number()]).default([0, 0, 0]), - // Yaw in radians. - rotation: z.number().default(0), - fixtureType: z.enum(['toilet', 'lavatory', 'kitchen-sink', 'tub', 'washer']).default('toilet'), -}).describe( - dedent` - Plumbing fixture - toilet, lavatory (bath sink), kitchen sink, tub/shower, or clothes washer. - - position: [x, y, z] level-local meters (y = floor) - - rotation: yaw radians - - fixtureType drives geometry, the drain rough-in port size, and the IPC fixture-unit value - `, -) -export type PlumbingFixtureNode = z.infer -export type PlumbingFixtureNodeId = PlumbingFixtureNode['id'] diff --git a/packages/core/src/schema/types.ts b/packages/core/src/schema/types.ts index 088971f78..f164ed80a 100644 --- a/packages/core/src/schema/types.ts +++ b/packages/core/src/schema/types.ts @@ -22,7 +22,7 @@ import { LevelNode } from './nodes/level' import { LinesetNode } from './nodes/lineset' import { PipeFittingNode } from './nodes/pipe-fitting' import { PipeSegmentNode } from './nodes/pipe-segment' -import { PlumbingFixtureNode } from './nodes/plumbing-fixture' +import { PipeTrapNode } from './nodes/pipe-trap' import { RidgeVentNode } from './nodes/ridge-vent' import { RoofNode } from './nodes/roof' import { RoofSegmentNode } from './nodes/roof-segment' @@ -80,7 +80,7 @@ export const AnyNode = z.discriminatedUnion('type', [ LinesetNode, PipeSegmentNode, PipeFittingNode, - PlumbingFixtureNode, + PipeTrapNode, ]) export type AnyNode = z.infer diff --git a/packages/core/src/services/system-graph.ts b/packages/core/src/services/system-graph.ts index f245d4704..fda79a2c1 100644 --- a/packages/core/src/services/system-graph.ts +++ b/packages/core/src/services/system-graph.ts @@ -19,17 +19,6 @@ import type { AnyNode, AnyNodeId } from '../schema' * matches port-connectivity's tolerance for hand-placed joints. */ const COINCIDENT_EPS_M = 0.05 -/** IPC Table 709.1 drainage fixture units (private installations) — - * mirrors `plumbing-fixture/spec.ts` in the nodes package (core can't - * import it; the fixture kind owns geometry, this service owns load). */ -const FIXTURE_DFU: Record = { - toilet: 3, - lavatory: 1, - 'kitchen-sink': 2, - tub: 2, - washer: 2, -} - export type SystemSummary = { /** Every node in this connected component. */ nodeIds: AnyNodeId[] @@ -41,10 +30,6 @@ export type SystemSummary = { fittingCount: number terminalCount: number equipmentCount: number - /** Plumbing fixtures in the component + their summed IPC drainage - * fixture units — the load number pipe-sizing validators read. */ - fixtureCount: number - fixtureUnits: number /** False = orphaned subtree: air goes nowhere (no furnace / air * handler / condenser anywhere in the component). */ connectedToEquipment: boolean @@ -152,8 +137,6 @@ function summarize( let fittingCount = 0 let terminalCount = 0 let equipmentCount = 0 - let fixtureCount = 0 - let fixtureUnits = 0 for (const id of nodeIds) { const node = nodes[id] @@ -171,10 +154,6 @@ function summarize( systems.add(node.terminalType === 'return-grille' ? 'return' : 'supply') } else if (node.type === 'hvac-equipment') { equipmentCount += 1 - } else if (node.type === 'plumbing-fixture') { - fixtureCount += 1 - fixtureUnits += FIXTURE_DFU[node.fixtureType] ?? 0 - systems.add('waste') } } @@ -186,8 +165,6 @@ function summarize( fittingCount, terminalCount, equipmentCount, - fixtureCount, - fixtureUnits, connectedToEquipment: equipmentCount > 0, } } diff --git a/packages/editor/src/components/editor/floating-action-menu.tsx b/packages/editor/src/components/editor/floating-action-menu.tsx index e089ea3f7..e56f14f34 100644 --- a/packages/editor/src/components/editor/floating-action-menu.tsx +++ b/packages/editor/src/components/editor/floating-action-menu.tsx @@ -49,7 +49,7 @@ const HVAC_KINDS = new Set([ 'lineset', 'pipe-segment', 'pipe-fitting', - 'plumbing-fixture', + 'pipe-trap', ]) const ALLOWED_TYPES = [ @@ -636,16 +636,6 @@ export function FloatingActionMenu() {
) : null} - {systemSummary.fixtureUnits > 0 ? ( - <> - - · - - - {systemSummary.fixtureUnits} DFU - - - ) : null} {systemSummary.terminalCount > 0 ? ( <> diff --git a/packages/editor/src/store/use-editor.tsx b/packages/editor/src/store/use-editor.tsx index 72a617bb9..89bbb14e7 100644 --- a/packages/editor/src/store/use-editor.tsx +++ b/packages/editor/src/store/use-editor.tsx @@ -112,7 +112,6 @@ export type StructureTool = | 'hvac-equipment' | 'lineset' | 'pipe-segment' - | 'plumbing-fixture' // Furnish mode tools (items and decoration) export type FurnishTool = 'item' diff --git a/packages/nodes/src/index.ts b/packages/nodes/src/index.ts index 9c00743a6..bac5b582e 100644 --- a/packages/nodes/src/index.ts +++ b/packages/nodes/src/index.ts @@ -22,7 +22,7 @@ import { levelDefinition } from './level' import { linesetDefinition } from './lineset' import { pipeFittingDefinition } from './pipe-fitting' import { pipeSegmentDefinition } from './pipe-segment' -import { plumbingFixtureDefinition } from './plumbing-fixture' +import { pipeTrapDefinition } from './pipe-trap' import { ridgeVentDefinition } from './ridge-vent' import { roofDefinition } from './roof' import { roofSegmentDefinition } from './roof-segment' @@ -105,7 +105,7 @@ export const builtinPlugin: Plugin = { // DWV plumbing — Phase 2 of the research doc's plan. pipeSegmentDefinition as unknown as AnyNodeDefinition, pipeFittingDefinition as unknown as AnyNodeDefinition, - plumbingFixtureDefinition as unknown as AnyNodeDefinition, + pipeTrapDefinition as unknown as AnyNodeDefinition, ], } @@ -132,7 +132,7 @@ export { levelDefinition } from './level' export { linesetDefinition } from './lineset' export { pipeFittingDefinition } from './pipe-fitting' export { pipeSegmentDefinition } from './pipe-segment' -export { plumbingFixtureDefinition } from './plumbing-fixture' +export { pipeTrapDefinition } from './pipe-trap' export { ridgeVentDefinition } from './ridge-vent' export { roofDefinition } from './roof' export { roofSegmentDefinition } from './roof-segment' diff --git a/packages/nodes/src/pipe-trap/definition.ts b/packages/nodes/src/pipe-trap/definition.ts new file mode 100644 index 000000000..a933b69be --- /dev/null +++ b/packages/nodes/src/pipe-trap/definition.ts @@ -0,0 +1,69 @@ +import type { NodeDefinition } from '@pascal-app/core' +import { buildPipeTrapFloorplan } from './floorplan' +import { buildPipeTrapGeometry } from './geometry' +import { pipeTrapParametrics } from './parametrics' +import { getPipeTrapPorts } from './ports' +import { PipeTrapNode } from './schema' + +/** + * DWV P-trap — the water-seal fitting on the waste line. Placed by its + * own click tool; the pipe tool then draws the trap arm off the outlet. + * Modeled explicitly so the IPC 909.1 trap-arm rule has a node to + * validate. + */ +export const pipeTrapDefinition: NodeDefinition = { + kind: 'pipe-trap', + schemaVersion: 1, + schema: PipeTrapNode, + category: 'utility', + + defaults: () => ({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + position: [0, 0, 0], + rotation: 0, + diameter: 1.5, + pipeMaterial: 'pvc', + armLengthM: 0, + }), + + capabilities: { + selectable: { hitVolume: 'bbox' }, + movable: { axes: ['x', 'y', 'z'], gridSnap: true, portSnap: { systems: ['waste'] } }, + rotatable: { axes: ['y'], snapAngles: [Math.PI / 4] }, + duplicable: true, + deletable: true, + }, + + parametrics: pipeTrapParametrics, + + geometry: buildPipeTrapGeometry, + geometryKey: (n) => JSON.stringify([n.diameter, n.pipeMaterial, n.armLengthM]), + + ports: getPipeTrapPorts, + + floorplan: buildPipeTrapFloorplan, + + tool: () => import('./tool'), + toolHints: [ + { key: 'Click', label: 'Place trap' }, + { key: 'R / T', label: 'Rotate ±45°' }, + { key: 'Shift', label: 'Smooth (no grid snap)' }, + { key: 'Esc', label: 'Exit' }, + ], + + presentation: { + label: 'Trap', + description: 'DWV P-trap — water seal on the waste line. The trap arm runs to the vent.', + icon: { kind: 'iconify', name: 'lucide:spline' }, + paletteSection: 'structure', + paletteOrder: 98, + }, + + mcp: { + description: + 'A DWV P-trap with inlet (up) and outlet (trap arm) ports. Position is level-local meters; rotation is yaw radians. armLengthM is the trap-arm developed length checked against IPC 909.1.', + }, +} diff --git a/packages/nodes/src/pipe-trap/floorplan.ts b/packages/nodes/src/pipe-trap/floorplan.ts new file mode 100644 index 000000000..9a7a81268 --- /dev/null +++ b/packages/nodes/src/pipe-trap/floorplan.ts @@ -0,0 +1,53 @@ +import type { FloorplanGeometry, FloorplanPoint, GeometryContext } from '@pascal-app/core' +import { getPipeTrapPorts } from './ports' +import type { PipeTrapNode } from './schema' + +const PIPE_STROKE = '#57534e' + +/** + * Floor-plan symbol — the conventional trap glyph: a short stub at the + * inlet (the fixture drop, drawn as a dot since it's vertical) and a + * solid line for the trap arm out to the outlet. Reads as the P-trap's + * arm in plan. + */ +export function buildPipeTrapFloorplan( + node: PipeTrapNode, + ctx: GeometryContext, +): FloorplanGeometry | null { + const ports = getPipeTrapPorts(node) + const inlet = ports.find((p) => p.id === 'inlet')! + const outlet = ports.find((p) => p.id === 'outlet')! + + const view = ctx.viewState + const palette = view?.palette + const showSelectedChrome = (view?.selected || view?.highlighted) ?? false + const stroke = showSelectedChrome && palette ? palette.selectedStroke : PIPE_STROKE + + const inletXZ: FloorplanPoint = [inlet.position[0], inlet.position[2]] + const outletXZ: FloorplanPoint = [outlet.position[0], outlet.position[2]] + + const children: FloorplanGeometry[] = [ + { + kind: 'polyline', + points: [inletXZ, outletXZ], + stroke, + strokeWidth: showSelectedChrome ? 2.5 : 1.8, + vectorEffect: 'non-scaling-stroke', + opacity: 0.9, + }, + { + kind: 'circle', + cx: inletXZ[0], + cy: inletXZ[1], + r: 0.04, + fill: stroke, + opacity: 0.9, + }, + ] + + if (showSelectedChrome) { + children.push({ kind: 'move-handle', point: [node.position[0], node.position[2]] }) + } + + return { kind: 'group', children } +} diff --git a/packages/nodes/src/pipe-trap/geometry.ts b/packages/nodes/src/pipe-trap/geometry.ts new file mode 100644 index 000000000..a69e9169b --- /dev/null +++ b/packages/nodes/src/pipe-trap/geometry.ts @@ -0,0 +1,72 @@ +import { Group, Mesh, TorusGeometry, Vector3 } from 'three' +import { buildSection, INCHES_TO_METERS } from '../duct-segment/geometry' +import { createPipeMaterial } from '../pipe-segment/geometry' +import type { PipeTrapNode } from './schema' + +const BEND_SEGMENTS = 24 + +/** Inlet drop and arm reach in pipe radii — keeps the trap proportional + * to its size without per-size tuning. */ +const INLET_DROP_RADII = 2.6 +const ARM_REACH_RADII = 3.2 + +/** + * P-trap geometry in the LOCAL frame (origin at the trap weir, the low + * point of the U). Inlet stub rises +Y to the fixture tailpiece; a + * half-torus U-bend turns the flow; the trap arm runs +X toward the + * vented waste line. `` applies position + yaw. + */ +export function buildPipeTrapGeometry(node: PipeTrapNode): Group { + const group = new Group() + const material = createPipeMaterial({ pipeMaterial: node.pipeMaterial, system: 'waste' }) + const radius = (node.diameter * INCHES_TO_METERS) / 2 + const bendR = radius * 1.6 + + // U-bend: half torus in the XY plane, opening upward. Sits so its two + // tops are at y = bendR (the inlet riser and the arm rise). + const bend = new Mesh( + new TorusGeometry(bendR, radius, 12, BEND_SEGMENTS, Math.PI), + material, + ) + bend.rotation.z = Math.PI // open side up + bend.position.set(bendR, bendR, 0) + bend.name = 'pipe-trap-bend' + group.add(bend) + + // Inlet riser: from the left top of the U straight up to the fixture. + const inletDrop = radius * INLET_DROP_RADII + const inletTop = new Vector3(0, bendR + inletDrop, 0) + const inletStub = buildSection( + new Vector3(0, bendR, 0), + inletTop, + radius, + material, + 'pipe-trap-inlet', + ) + if (inletStub) group.add(inletStub) + + // Trap arm: from the right top of the U horizontally along +X. + const armReach = Math.max(radius * ARM_REACH_RADII, node.armLengthM) + const armStart = new Vector3(bendR * 2, bendR, 0) + const armEnd = new Vector3(bendR * 2 + armReach, bendR, 0) + const arm = buildSection(armStart, armEnd, radius, material, 'pipe-trap-arm') + if (arm) group.add(arm) + + return group +} + +/** Local-frame port positions (before position/yaw): inlet at the top + * of the riser facing +Y, outlet at the end of the arm facing +X. */ +export function localTrapPorts(node: PipeTrapNode): { + inlet: Vector3 + outlet: Vector3 +} { + const radius = (node.diameter * INCHES_TO_METERS) / 2 + const bendR = radius * 1.6 + const inletDrop = radius * INLET_DROP_RADII + const armReach = Math.max(radius * ARM_REACH_RADII, node.armLengthM) + return { + inlet: new Vector3(0, bendR + inletDrop, 0), + outlet: new Vector3(bendR * 2 + armReach, bendR, 0), + } +} diff --git a/packages/nodes/src/pipe-trap/index.ts b/packages/nodes/src/pipe-trap/index.ts new file mode 100644 index 000000000..94928a2e9 --- /dev/null +++ b/packages/nodes/src/pipe-trap/index.ts @@ -0,0 +1,4 @@ +export { pipeTrapDefinition } from './definition' +export { buildPipeTrapGeometry } from './geometry' +export { getPipeTrapPorts } from './ports' +export { PipeTrapNode } from './schema' diff --git a/packages/nodes/src/pipe-trap/parametrics.ts b/packages/nodes/src/pipe-trap/parametrics.ts new file mode 100644 index 000000000..502377cb6 --- /dev/null +++ b/packages/nodes/src/pipe-trap/parametrics.ts @@ -0,0 +1,19 @@ +import type { ParametricDescriptor } from '@pascal-app/core' +import type { PipeTrapNode } from './schema' + +export const pipeTrapParametrics: ParametricDescriptor = { + groups: [ + { + label: 'Trap', + fields: [ + { key: 'diameter', kind: 'number', unit: 'in', min: 1.25, max: 4, step: 0.25 }, + { key: 'pipeMaterial', kind: 'enum', options: ['pvc', 'abs', 'cast-iron'] }, + { key: 'armLengthM', kind: 'number', unit: 'm', min: 0, max: 4, step: 0.05 }, + ], + }, + { + label: 'Placement', + fields: [{ key: 'position', kind: 'vec3' }], + }, + ], +} diff --git a/packages/nodes/src/pipe-trap/ports.ts b/packages/nodes/src/pipe-trap/ports.ts new file mode 100644 index 000000000..0bd260f50 --- /dev/null +++ b/packages/nodes/src/pipe-trap/ports.ts @@ -0,0 +1,29 @@ +import type { NodePort } from '@pascal-app/core' +import { Vector3 } from 'three' +import { localTrapPorts } from './geometry' +import type { PipeTrapNode } from './schema' + +/** + * `def.ports` — the trap's inlet (up, to the fixture) and outlet (the + * trap arm, toward the vented waste line), transformed by position + + * yaw into level-local space. Both carry the trap diameter and the + * 'waste' system tag so the pipe tool and system graph treat them like + * any other DWV joint. + */ +export function getPipeTrapPorts(node: PipeTrapNode): NodePort[] { + const { inlet, outlet } = localTrapPorts(node) + const yaw = node.rotation + const offset = new Vector3(node.position[0], node.position[1], node.position[2]) + const place = (local: Vector3, dir: Vector3): NodePort => { + const position = local.clone().applyAxisAngle(new Vector3(0, 1, 0), yaw).add(offset) + const direction = dir.clone().applyAxisAngle(new Vector3(0, 1, 0), yaw).normalize() + return { + id: local === inlet ? 'inlet' : 'outlet', + position: [position.x, position.y, position.z] as const, + direction: [direction.x, direction.y, direction.z] as const, + diameter: node.diameter, + system: 'waste', + } + } + return [place(inlet, new Vector3(0, 1, 0)), place(outlet, new Vector3(1, 0, 0))] +} diff --git a/packages/nodes/src/pipe-trap/schema.ts b/packages/nodes/src/pipe-trap/schema.ts new file mode 100644 index 000000000..d99c585b4 --- /dev/null +++ b/packages/nodes/src/pipe-trap/schema.ts @@ -0,0 +1 @@ +export { PipeTrapNode } from '@pascal-app/core' diff --git a/packages/nodes/src/plumbing-fixture/tool.tsx b/packages/nodes/src/pipe-trap/tool.tsx similarity index 53% rename from packages/nodes/src/plumbing-fixture/tool.tsx rename to packages/nodes/src/pipe-trap/tool.tsx index efc5f2aa3..bcf445086 100644 --- a/packages/nodes/src/plumbing-fixture/tool.tsx +++ b/packages/nodes/src/pipe-trap/tool.tsx @@ -1,18 +1,15 @@ 'use client' -import { emitter, type GridEvent, PlumbingFixtureNode, useScene } from '@pascal-app/core' +import { emitter, type GridEvent, PipeTrapNode, useScene } from '@pascal-app/core' import { triggerSFX, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useMemo, useRef, useState } from 'react' -import { plumbingFixtureDefinition } from './definition' -import { buildPlumbingFixtureGeometry } from './geometry' -import type { PlumbingFixtureNode as Fixture } from './schema' -import { FIXTURE_SPECS } from './spec' +import { pipeTrapDefinition } from './definition' +import { buildPipeTrapGeometry } from './geometry' const PREVIEW_OPACITY = 0.55 const ROTATE_STEP_RAD = Math.PI / 4 -const TYPE_CYCLE: Fixture['fixtureType'][] = ['toilet', 'lavatory', 'kitchen-sink', 'tub', 'washer'] function snap(value: number, step: number): number { if (step <= 0) return value @@ -20,31 +17,29 @@ function snap(value: number, step: number): number { } /** - * Click-place tool for plumbing fixtures. Ghost follows the cursor on - * the floor with grid snap (Shift = smooth); **Q** cycles the fixture - * type, **R / T** rotate ±45°. The placed fixture's drain rough-in is a - * waste port, so the DWV pipe tool starts runs straight off it. + * Click-place tool for P-traps. The ghost follows the cursor on the + * floor. **R / T** rotate the arm ±45°, **Shift** disables grid snap. + * The pipe tool then draws the trap arm off the outlet toward the vent. */ -const PlumbingFixtureTool = () => { +const PipeTrapTool = () => { const activeLevelId = useViewer((s) => s.selection.levelId) const [cursor, setCursor] = useState<[number, number, number] | null>(null) const [yaw, setYaw] = useState(0) - const [fixtureType, setFixtureType] = useState('toilet') + const [diameter] = useState(1.5) const yawRef = useRef(0) - const typeRef = useRef(fixtureType) - typeRef.current = fixtureType + const diameterRef = useRef(diameter) + diameterRef.current = diameter const previewNode = useMemo( () => - PlumbingFixtureNode.parse({ - ...plumbingFixtureDefinition.defaults(), - name: FIXTURE_SPECS[fixtureType].label, - fixtureType, + PipeTrapNode.parse({ + ...pipeTrapDefinition.defaults(), + diameter, }), - [fixtureType], + [diameter], ) const ghost = useMemo(() => { - const group = buildPlumbingFixtureGeometry(previewNode) + const group = buildPipeTrapGeometry(previewNode) group.traverse((child) => { const mesh = child as { material?: { transparent: boolean; opacity: number } } if (mesh.material) { @@ -58,24 +53,32 @@ const PlumbingFixtureTool = () => { useEffect(() => { if (!activeLevelId) return - const resolve = (event: GridEvent): [number, number, number] => { + const resolve = (event: GridEvent) => { const step = event.nativeEvent?.shiftKey === true ? 0 : useEditor.getState().gridSnapStep - return [snap(event.localPosition[0], step), 0, snap(event.localPosition[2], step)] + return { + position: [snap(event.localPosition[0], step), 0, snap(event.localPosition[2], step)] as [ + number, + number, + number, + ], + diameter: diameterRef.current, + } } - const onMove = (event: GridEvent) => setCursor(resolve(event)) + const onMove = (event: GridEvent) => { + setCursor(resolve(event).position) + } const onClick = (event: GridEvent) => { - const position = resolve(event) - const fixture = PlumbingFixtureNode.parse({ - ...plumbingFixtureDefinition.defaults(), - name: FIXTURE_SPECS[typeRef.current].label, - fixtureType: typeRef.current, - position, + const r = resolve(event) + const trap = PipeTrapNode.parse({ + ...pipeTrapDefinition.defaults(), + diameter: r.diameter, + position: r.position, rotation: yawRef.current, }) - useScene.getState().createNode(fixture, activeLevelId) - useViewer.getState().setSelection({ selectedIds: [fixture.id] }) + useScene.getState().createNode(trap, activeLevelId) + useViewer.getState().setSelection({ selectedIds: [trap.id] }) triggerSFX('sfx:item-place') } @@ -90,11 +93,6 @@ const PlumbingFixtureTool = () => { yawRef.current += steps * ROTATE_STEP_RAD setYaw(yawRef.current) triggerSFX('sfx:item-rotate') - } else if (key === 'q' || key === 'Q') { - e.preventDefault() - const index = TYPE_CYCLE.indexOf(typeRef.current) - setFixtureType(TYPE_CYCLE[(index + 1) % TYPE_CYCLE.length]!) - triggerSFX('sfx:grid-snap') } } @@ -110,7 +108,6 @@ const PlumbingFixtureTool = () => { if (!activeLevelId || !cursor) return null - const spec = FIXTURE_SPECS[fixtureType] return ( @@ -118,24 +115,20 @@ const PlumbingFixtureTool = () => {
- {spec.label} - - · - - {spec.dfu} DFU + {diameter}" Trap · - Q type · R/T rotate + R/T rotate
) } -export default PlumbingFixtureTool +export default PipeTrapTool diff --git a/packages/nodes/src/plumbing-fixture/definition.ts b/packages/nodes/src/plumbing-fixture/definition.ts deleted file mode 100644 index 7a86930fb..000000000 --- a/packages/nodes/src/plumbing-fixture/definition.ts +++ /dev/null @@ -1,69 +0,0 @@ -import type { NodeDefinition } from '@pascal-app/core' -import { buildPlumbingFixtureFloorplan } from './floorplan' -import { buildPlumbingFixtureGeometry } from './geometry' -import { plumbingFixtureParametrics } from './parametrics' -import { getPlumbingFixturePorts } from './ports' -import { PlumbingFixtureNode } from './schema' - -/** - * DWV plumbing's start points — fixtures whose drain rough-ins are - * waste ports the pipe tool draws runs from. Fixture-unit values (IPC - * DFU) come from `spec.ts` and feed the system summary; the sizing - * validators in a later slice read the same table. - */ -export const plumbingFixtureDefinition: NodeDefinition = { - kind: 'plumbing-fixture', - schemaVersion: 1, - schema: PlumbingFixtureNode, - category: 'utility', - - defaults: () => ({ - object: 'node', - parentId: null, - visible: true, - metadata: {}, - position: [0, 0, 0], - rotation: 0, - fixtureType: 'toilet', - }), - - capabilities: { - selectable: { hitVolume: 'bbox' }, - movable: { axes: ['x', 'z'], gridSnap: true }, - rotatable: { axes: ['y'], snapAngles: [Math.PI / 4] }, - duplicable: true, - deletable: true, - }, - - parametrics: plumbingFixtureParametrics, - - geometry: buildPlumbingFixtureGeometry, - geometryKey: (n) => JSON.stringify([n.fixtureType]), - - ports: getPlumbingFixturePorts, - - floorplan: buildPlumbingFixtureFloorplan, - - tool: () => import('./tool'), - toolHints: [ - { key: 'Click', label: 'Place fixture' }, - { key: 'Q', label: 'Cycle fixture type' }, - { key: 'R / T', label: 'Rotate ±45°' }, - { key: 'Shift', label: 'Smooth (no grid snap)' }, - { key: 'Esc', label: 'Exit' }, - ], - - presentation: { - label: 'Fixture', - description: - 'Plumbing fixture — toilet, lavatory, kitchen sink, tub, or washer. Drain runs start at its waste rough-in.', - icon: { kind: 'iconify', name: 'lucide:bath' }, - paletteSection: 'structure', - paletteOrder: 97, - }, - - mcp: { - description: - 'A plumbing fixture (toilet, lavatory, kitchen sink, tub/shower, or clothes washer) with a waste rough-in port. Position is level-local meters; rotation is yaw radians. DFU and drain size derive from the fixture type.', - }, -} diff --git a/packages/nodes/src/plumbing-fixture/floorplan.ts b/packages/nodes/src/plumbing-fixture/floorplan.ts deleted file mode 100644 index 04630aa3a..000000000 --- a/packages/nodes/src/plumbing-fixture/floorplan.ts +++ /dev/null @@ -1,80 +0,0 @@ -import type { FloorplanGeometry, FloorplanPoint, GeometryContext } from '@pascal-app/core' -import { getPlumbingFixturePorts } from './ports' -import type { PlumbingFixtureNode } from './schema' -import { FIXTURE_SPECS } from './spec' - -const BODY_FILL = '#f5f5f4' -const BODY_STROKE = '#78716c' -const DRAIN_COLOR = '#57534e' - -/** - * Floor-plan symbol: the fixture's footprint rectangle (rotated by yaw) - * with a drain dot at the rough-in point. Toilets additionally get the - * conventional bowl ellipse so they read instantly. - */ -export function buildPlumbingFixtureFloorplan( - node: PlumbingFixtureNode, - ctx: GeometryContext, -): FloorplanGeometry | null { - const [cx, , cz] = node.position - const spec = FIXTURE_SPECS[node.fixtureType] - const cos = Math.cos(node.rotation) - const sin = Math.sin(node.rotation) - const hw = spec.size[0] / 2 - const hd = spec.size[2] / 2 - const corner = (lx: number, lz: number): FloorplanPoint => [ - cx + lx * cos + lz * sin, - cz - lx * sin + lz * cos, - ] - const points: FloorplanPoint[] = [ - corner(-hw, -hd), - corner(hw, -hd), - corner(hw, hd), - corner(-hw, hd), - ] - - const view = ctx.viewState - const palette = view?.palette - const showSelectedChrome = (view?.selected || view?.highlighted) ?? false - const stroke = showSelectedChrome && palette ? palette.selectedStroke : BODY_STROKE - - const children: FloorplanGeometry[] = [ - { - kind: 'polygon', - points, - fill: BODY_FILL, - stroke, - strokeWidth: showSelectedChrome ? 0.025 : 0.015, - opacity: 0.95, - }, - ] - - if (node.fixtureType === 'toilet') { - const bowl = corner(0, 0.08) - children.push({ - kind: 'circle', - cx: bowl[0], - cy: bowl[1], - r: 0.16, - fill: 'none', - stroke, - strokeWidth: 1.5, - vectorEffect: 'non-scaling-stroke', - opacity: 0.9, - }) - } - - const drain = getPlumbingFixturePorts(node)[0]! - children.push({ - kind: 'circle', - cx: drain.position[0], - cy: drain.position[2], - r: 0.035, - fill: DRAIN_COLOR, - opacity: 0.9, - }) - - if (showSelectedChrome) children.push({ kind: 'move-handle', point: [cx, cz] }) - - return { kind: 'group', children } -} diff --git a/packages/nodes/src/plumbing-fixture/geometry.ts b/packages/nodes/src/plumbing-fixture/geometry.ts deleted file mode 100644 index 6f046f1fe..000000000 --- a/packages/nodes/src/plumbing-fixture/geometry.ts +++ /dev/null @@ -1,127 +0,0 @@ -import { - BoxGeometry, - CylinderGeometry, - Group, - Mesh, - MeshStandardMaterial, - SphereGeometry, - TorusGeometry, - Vector3, -} from 'three' -import type { PlumbingFixtureNode } from './schema' -import { FIXTURE_SPECS } from './spec' - -const PORCELAIN = '#f4f4f2' -const STEEL = '#d7dade' -const CHROME = '#9aa1a8' -const APPLIANCE_DARK = '#3f4549' - -const SEGMENTS = 20 - -/** - * Pure geometry builder for a plumbing fixture, in the node's LOCAL - * frame (origin at base center, +Z toward the room) — - * `` applies position + yaw. - * - * Deliberately simple silhouettes: enough to read each fixture at a - * glance (tank + bowl toilet, pedestal lav, counter sink, low tub, - * front-load washer) without item-catalog detail. - */ -export function buildPlumbingFixtureGeometry(node: PlumbingFixtureNode): Group { - const group = new Group() - const spec = FIXTURE_SPECS[node.fixtureType] - const [w, h, d] = spec.size - - const porcelain = new MeshStandardMaterial({ color: PORCELAIN, metalness: 0.05, roughness: 0.3 }) - const steel = new MeshStandardMaterial({ color: STEEL, metalness: 0.6, roughness: 0.35 }) - const chrome = new MeshStandardMaterial({ color: CHROME, metalness: 0.7, roughness: 0.3 }) - const dark = new MeshStandardMaterial({ color: APPLIANCE_DARK, metalness: 0.3, roughness: 0.6 }) - - const box = ( - bw: number, - bh: number, - bd: number, - mat: MeshStandardMaterial, - x: number, - y: number, - z: number, - name: string, - ) => { - const mesh = new Mesh(new BoxGeometry(bw, bh, bd), mat) - mesh.position.set(x, y, z) - mesh.name = name - group.add(mesh) - return mesh - } - - switch (node.fixtureType) { - case 'toilet': { - // Tank at the back, bowl forward, base pedestal. - box(w, 0.4, 0.14, porcelain, 0, 0.55, -d / 2 + 0.07, 'fixture-tank') - const bowl = new Mesh(new SphereGeometry(0.19, SEGMENTS, 12), porcelain) - bowl.scale.set(1, 0.55, 1.25) - bowl.position.set(0, 0.4, 0.08) - bowl.name = 'fixture-bowl' - group.add(bowl) - const base = new Mesh(new CylinderGeometry(0.1, 0.13, 0.38, SEGMENTS), porcelain) - base.position.set(0, 0.19, 0.05) - base.name = 'fixture-base' - group.add(base) - break - } - case 'lavatory': { - const pedestal = new Mesh(new CylinderGeometry(0.06, 0.09, h - 0.12, SEGMENTS), porcelain) - pedestal.position.set(0, (h - 0.12) / 2, 0) - pedestal.name = 'fixture-pedestal' - group.add(pedestal) - const basin = new Mesh(new CylinderGeometry(w / 2, w / 2 - 0.06, 0.12, SEGMENTS), porcelain) - basin.position.set(0, h - 0.06, 0) - basin.name = 'fixture-basin' - group.add(basin) - const spout = new Mesh(new CylinderGeometry(0.012, 0.012, 0.12, 10), chrome) - spout.position.set(0, h + 0.05, -w / 2 + 0.08) - spout.name = 'fixture-spout' - group.add(spout) - break - } - case 'kitchen-sink': { - box(w, h - 0.05, d, steel, 0, (h - 0.05) / 2, 0, 'fixture-cabinet') - // Basin recess rim on top. - const rim = new Mesh(new BoxGeometry(w * 0.8, 0.04, d * 0.7), dark) - rim.position.set(0, h - 0.02, 0.02) - rim.name = 'fixture-basin' - group.add(rim) - const faucet = new Mesh(new CylinderGeometry(0.015, 0.015, 0.22, 10), chrome) - faucet.position.set(0, h + 0.09, -d / 2 + 0.08) - faucet.name = 'fixture-faucet' - group.add(faucet) - break - } - case 'tub': { - box(w, h, d, porcelain, 0, h / 2, 0, 'fixture-tub') - // Inner recess hint. - const recess = new Mesh(new BoxGeometry(w - 0.12, 0.03, d - 0.12), dark) - recess.position.set(0, h - 0.015, 0) - recess.name = 'fixture-recess' - group.add(recess) - break - } - case 'washer': { - box(w, h, d, steel, 0, h / 2, 0, 'fixture-body') - const door = new Mesh(new TorusGeometry(0.16, 0.025, 10, SEGMENTS), dark) - door.position.set(0, h * 0.5, d / 2 + 0.005) - door.name = 'fixture-door' - group.add(door) - break - } - } - - // Drain rough-in marker — a small dark cylinder at the waste port, so - // the connection point reads in 3D even before a pipe is drawn. - const drain = new Mesh(new CylinderGeometry(0.03, 0.03, 0.02, 12), dark) - drain.position.copy(new Vector3(...spec.drainLocal)) - drain.name = 'fixture-drain' - group.add(drain) - - return group -} diff --git a/packages/nodes/src/plumbing-fixture/index.ts b/packages/nodes/src/plumbing-fixture/index.ts deleted file mode 100644 index b3a0b104f..000000000 --- a/packages/nodes/src/plumbing-fixture/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -export { plumbingFixtureDefinition } from './definition' -export { buildPlumbingFixtureGeometry } from './geometry' -export { getPlumbingFixturePorts } from './ports' -export { PlumbingFixtureNode } from './schema' -export { FIXTURE_SPECS } from './spec' diff --git a/packages/nodes/src/plumbing-fixture/parametrics.ts b/packages/nodes/src/plumbing-fixture/parametrics.ts deleted file mode 100644 index be2e89ed1..000000000 --- a/packages/nodes/src/plumbing-fixture/parametrics.ts +++ /dev/null @@ -1,21 +0,0 @@ -import type { ParametricDescriptor } from '@pascal-app/core' -import type { PlumbingFixtureNode } from './schema' - -export const plumbingFixtureParametrics: ParametricDescriptor = { - groups: [ - { - label: 'Fixture', - fields: [ - { - key: 'fixtureType', - kind: 'enum', - options: ['toilet', 'lavatory', 'kitchen-sink', 'tub', 'washer'], - }, - ], - }, - { - label: 'Placement', - fields: [{ key: 'position', kind: 'vec3' }], - }, - ], -} diff --git a/packages/nodes/src/plumbing-fixture/ports.ts b/packages/nodes/src/plumbing-fixture/ports.ts deleted file mode 100644 index af67c0b97..000000000 --- a/packages/nodes/src/plumbing-fixture/ports.ts +++ /dev/null @@ -1,27 +0,0 @@ -import type { NodePort } from '@pascal-app/core' -import { Vector3 } from 'three' -import type { PlumbingFixtureNode } from './schema' -import { FIXTURE_SPECS } from './spec' - -/** - * `def.ports` — the fixture's single waste rough-in, level-local. The - * direction points DOWN: drains leave a fixture through the floor, so a - * run drawn from the port starts by dropping (or the planner mints a - * bend when it turns horizontal). - */ -export function getPlumbingFixturePorts(node: PlumbingFixtureNode): NodePort[] { - const spec = FIXTURE_SPECS[node.fixtureType] - const local = new Vector3(...spec.drainLocal) - const position = local - .applyAxisAngle(new Vector3(0, 1, 0), node.rotation) - .add(new Vector3(node.position[0], node.position[1], node.position[2])) - return [ - { - id: 'drain', - position: [position.x, position.y, position.z] as const, - direction: [0, -1, 0] as const, - diameter: spec.drainIn, - system: 'waste', - }, - ] -} diff --git a/packages/nodes/src/plumbing-fixture/schema.ts b/packages/nodes/src/plumbing-fixture/schema.ts deleted file mode 100644 index 9451845dc..000000000 --- a/packages/nodes/src/plumbing-fixture/schema.ts +++ /dev/null @@ -1 +0,0 @@ -export { PlumbingFixtureNode } from '@pascal-app/core' diff --git a/packages/nodes/src/plumbing-fixture/spec.ts b/packages/nodes/src/plumbing-fixture/spec.ts deleted file mode 100644 index fe8f049e8..000000000 --- a/packages/nodes/src/plumbing-fixture/spec.ts +++ /dev/null @@ -1,56 +0,0 @@ -import type { PlumbingFixtureNode } from './schema' - -/** - * Per-fixture facts the geometry, ports, and (later) IPC validators - * read. DFU values follow IPC Table 709.1 (private installations); - * drain sizes are the standard residential rough-ins. - */ -export type FixtureSpec = { - label: string - /** Cabinet/body footprint + height in meters: [width, height, depth]. */ - size: [number, number, number] - /** Drain rough-in point in the fixture's LOCAL frame (y ≈ floor). */ - drainLocal: [number, number, number] - /** Drain size in inches. */ - drainIn: number - /** IPC drainage fixture units. */ - dfu: number -} - -export const FIXTURE_SPECS: Record = { - toilet: { - label: 'Toilet', - size: [0.4, 0.78, 0.7], - drainLocal: [0, 0.02, 0.05], - drainIn: 3, - dfu: 3, - }, - lavatory: { - label: 'Lavatory', - size: [0.5, 0.82, 0.45], - drainLocal: [0, 0.02, -0.12], - drainIn: 1.25, - dfu: 1, - }, - 'kitchen-sink': { - label: 'Kitchen sink', - size: [0.6, 0.9, 0.55], - drainLocal: [0, 0.02, -0.18], - drainIn: 1.5, - dfu: 2, - }, - tub: { - label: 'Tub / shower', - size: [1.5, 0.5, 0.75], - drainLocal: [-0.55, 0.02, 0], - drainIn: 1.5, - dfu: 2, - }, - washer: { - label: 'Washer', - size: [0.6, 0.85, 0.6], - drainLocal: [0, 0.02, -0.22], - drainIn: 2, - dfu: 2, - }, -} From 0b2364b269c377d2b4ce1c4388bb46d8231653b8 Mon Sep 17 00:00:00 2001 From: sudhir Date: Fri, 12 Jun 2026 23:21:53 +0530 Subject: [PATCH 39/59] feat(core): parametric derive/reconcile inspector hooks Extends ParametricDescriptor with a patch-aware `derive(next, patch)` and a cross-node `reconcile(prev, next)` companion. The inspector folds the derive result into the same update and applies reconcile's other-node patches in one gesture, so editing one field can keep dependent fields and neighbouring nodes consistent (e.g. duct runs re-trimmed onto a resized fitting's collars). Direct store/MCP writes bypass it. Co-Authored-By: Claude Opus 4.7 --- packages/core/src/registry/types.ts | 19 ++++++++++++++++++- .../ui/panels/parametric-inspector.tsx | 15 +++++++++++++-- 2 files changed, 31 insertions(+), 3 deletions(-) diff --git a/packages/core/src/registry/types.ts b/packages/core/src/registry/types.ts index 0a33262ed..485abfb42 100644 --- a/packages/core/src/registry/types.ts +++ b/packages/core/src/registry/types.ts @@ -1419,7 +1419,24 @@ export type Relations = { export type ParametricDescriptor = { groups: ParamGroup[] invariants?: ReadonlyArray<(n: N) => Issue[]> - derive?: (n: N) => Partial + /** + * Co-update hook for fields that must stay consistent when edited + * from the inspector. Called with the node AFTER `patch` is merged + * plus the patch itself (so the hook can tell which field the user + * touched); whatever it returns is folded into the same update. + * Direct store/MCP writes bypass it — keep real invariants in + * `invariants`. + */ + derive?: (next: N, patch: Partial) => Partial + /** + * Cross-node companion to `derive`: after an inspector edit lands on + * this node, return patches for OTHER nodes that must follow to keep + * the scene consistent — e.g. duct runs re-trimmed onto a resized + * fitting's collars. `prev` is the node before the edit, `next` after + * (with `derive` already folded in). Applied in the same gesture via + * `updateNodes`. + */ + reconcile?: (prev: N, next: N) => Array<{ id: AnyNodeId; data: Partial }> customPanel?: () => Promise<{ default: ComponentType<{ node: N }> }> /** * Extra buttons rendered in the inspector's Actions section diff --git a/packages/editor/src/components/ui/panels/parametric-inspector.tsx b/packages/editor/src/components/ui/panels/parametric-inspector.tsx index e046fbf20..57210c54b 100644 --- a/packages/editor/src/components/ui/panels/parametric-inspector.tsx +++ b/packages/editor/src/components/ui/panels/parametric-inspector.tsx @@ -62,9 +62,20 @@ export function ParametricInspector({ const handleUpdate = useCallback( (patch: Partial) => { if (!selectedId) return - useScene.getState().updateNode(selectedId, patch) + const scene = useScene.getState() + const node = scene.nodes[selectedId] + if (parametrics?.derive && node) { + const next = { ...node, ...patch } as AnyNode + patch = { ...patch, ...parametrics.derive(next, patch) } + } + scene.updateNode(selectedId, patch) + if (parametrics?.reconcile && node) { + const next = { ...node, ...patch } as AnyNode + const updates = parametrics.reconcile(node as AnyNode, next) + if (updates.length > 0) scene.updateNodes(updates) + } }, - [selectedId], + [selectedId, parametrics], ) const clearSelection = useCallback(() => { From 6af9559fe94048d70ba83f31d3912070b9ff228b Mon Sep 17 00:00:00 2001 From: sudhir Date: Fri, 12 Jun 2026 23:22:17 +0530 Subject: [PATCH 40/59] feat(nodes): oval duct fittings + lateral tees MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds flat-oval cross-sections to duct segments and fittings (elbows sweep a stadium ring through the mitered solid; tees carry oval run/branch profiles), with roll continuity so a riser's profile stays continuous through a fitting. Tees gain a `branchAngle` (45–135°): 90° square tap, <90° a lateral leaning downstream toward flow, >90° leaning upstream. Auto-fitting sizes oval joints by area-equivalent diameter, and the Build tab arms the fitting tool from a Duct sub-panel (also drops the removed fixture tile). Co-Authored-By: Claude Opus 4.7 --- apps/editor/components/build-tab.tsx | 34 ++- .../core/src/schema/nodes/duct-fitting.ts | 47 ++- .../core/src/schema/nodes/duct-segment.ts | 45 ++- packages/nodes/src/duct-fitting/definition.ts | 16 +- packages/nodes/src/duct-fitting/geometry.ts | 279 ++++++++++++++--- .../nodes/src/duct-fitting/parametrics.ts | 215 ++++++++++++- packages/nodes/src/duct-fitting/ports.ts | 19 +- packages/nodes/src/duct-segment/definition.ts | 10 +- packages/nodes/src/duct-segment/floorplan.ts | 4 +- packages/nodes/src/duct-segment/geometry.ts | 287 ++++++++++++++++-- .../nodes/src/duct-segment/parametrics.ts | 124 +++++++- packages/nodes/src/duct-segment/tool.tsx | 114 ++++++- .../nodes/src/shared/auto-fitting.test.ts | 102 ++++++- packages/nodes/src/shared/auto-fitting.ts | 30 +- 14 files changed, 1177 insertions(+), 149 deletions(-) diff --git a/apps/editor/components/build-tab.tsx b/apps/editor/components/build-tab.tsx index 3a4cb583e..a919d9630 100644 --- a/apps/editor/components/build-tab.tsx +++ b/apps/editor/components/build-tab.tsx @@ -35,7 +35,6 @@ type BuildToolKind = | 'hvac-equipment' | 'lineset' | 'pipe-segment' - | 'plumbing-fixture' type BuildType = { /** Selection id — equals `kind` for tool types, `'painting'` for paint mode. */ @@ -66,12 +65,10 @@ const BUILD_TYPES: BuildType[] = [ { id: 'shelf', label: 'Shelf', iconSrc: '/icons/shelf.png', kind: 'shelf' }, { id: 'spawn', label: 'Spawn Point', iconSrc: '/icons/spawn-point.png', kind: 'spawn' }, { id: 'duct-segment', label: 'Duct', iconify: 'lucide:wind', kind: 'duct-segment' }, - { id: 'duct-fitting', label: 'Duct Fitting', iconify: 'lucide:git-branch', kind: 'duct-fitting' }, { id: 'duct-terminal', label: 'Register', iconify: 'lucide:air-vent', kind: 'duct-terminal' }, { id: 'hvac-equipment', label: 'HVAC Unit', iconify: 'lucide:heater', kind: 'hvac-equipment' }, { id: 'lineset', label: 'Lineset', iconify: 'lucide:cable', kind: 'lineset' }, { id: 'pipe-segment', label: 'DWV Pipe', iconify: 'lucide:droplets', kind: 'pipe-segment' }, - { id: 'plumbing-fixture', label: 'Fixture', iconify: 'lucide:bath', kind: 'plumbing-fixture' }, { id: 'painting', label: 'Painting', iconSrc: '/icons/paint.png', mode: 'material-paint' }, ] @@ -107,10 +104,16 @@ export function BuildTab() { const activeTool = useEditor((s) => s.tool) const mode = useEditor((s) => s.mode) + // The fitting tool is armed from the Duct panel, not a grid tile — keep + // the Duct tile lit so the panel (and the way back) stays visible. + const ductContext = mode === 'build' && (activeTool === 'duct-segment' || activeTool === 'duct-fitting') + const isTypeActive = (type: BuildType) => type.mode === 'material-paint' ? mode === 'material-paint' - : mode === 'build' && activeTool === type.kind + : type.kind === 'duct-segment' + ? ductContext + : mode === 'build' && activeTool === type.kind const handleTypeClick = useCallback((type: BuildType) => { if (type.mode === 'material-paint') { @@ -182,6 +185,29 @@ export function BuildTab() { + {ductContext ? ( +
+ Duct + +
+ ) : null} + {mode === 'material-paint' ? (
diff --git a/packages/core/src/schema/nodes/duct-fitting.ts b/packages/core/src/schema/nodes/duct-fitting.ts index f711005da..afab7eb05 100644 --- a/packages/core/src/schema/nodes/duct-fitting.ts +++ b/packages/core/src/schema/nodes/duct-fitting.ts @@ -19,9 +19,15 @@ import { BaseNode, nodeType, objectId } from '../base' * - elbow: inlet faces -X, outlet turned by `angle` degrees in the * XZ plane (90° → +Z). * - tee: run along the X axis (ports face -X and +X), branch - * collar faces +Z at `diameter2`. + * collar at `branchAngle`° from the +X (outlet) axis in the + * XZ plane — 90° a square straight tee, <90° a lateral + * leaning downstream toward the outlet, >90° leaning upstream + * toward the inlet — sized at `diameter2`. * - reducer: inlet at `diameter` faces -X, outlet at `diameter2` * faces +X. + * - transition: square-to-round — rect end at `width` × `height` faces + * -X, round end at `diameter2` faces +X. `diameter` carries + * the rect end's area-equivalent round size. */ export const DuctFittingNode = BaseNode.extend({ id: objectId('duct-fitting'), @@ -30,18 +36,30 @@ export const DuctFittingNode = BaseNode.extend({ position: z.tuple([z.number(), z.number(), z.number()]).default([0, 0, 0]), // XYZ euler radians. rotation: z.tuple([z.number(), z.number(), z.number()]).default([0, 0, 0]), - fittingType: z.enum(['elbow', 'tee', 'reducer']).default('elbow'), - // Run-leg cross-section: round collars or a rect profile matching a - // rect trunk. A tee's BRANCH collar is always round (diameter2); - // reducers ignore the shape. When rect, `diameter` carries the - // area-equivalent round size (drives leg lengths + advertised ports). - shape: z.enum(['round', 'rect']).default('round'), - // Rect run-leg profile in inches (used when shape = 'rect'). + fittingType: z.enum(['elbow', 'tee', 'reducer', 'transition']).default('elbow'), + // Run-leg cross-section: round collars, or a rect / flat-oval profile + // matching the trunk the fitting sits in. Reducers ignore the shape. + // When non-round, `diameter` carries the area-equivalent round size + // (drives leg lengths + advertised ports). + shape: z.enum(['round', 'rect', 'oval']).default('round'), + // Rect / oval run-leg profile in inches (used when shape ≠ 'round'). width: z.number().min(4).max(60).default(14), height: z.number().min(3).max(40).default(8), + // Tee BRANCH cross-section: a round collar at `diameter2` or a rect / + // oval profile matching the duct drawn off the tap. When non-round, + // `diameter2` carries the branch's area-equivalent round size. + shape2: z.enum(['round', 'rect', 'oval']).default('round'), + // Rect / oval branch profile in inches (used when shape2 ≠ 'round'). + width2: z.number().min(4).max(60).default(14), + height2: z.number().min(3).max(40).default(8), // Elbow turn angle in degrees. Residential sheet-metal elbows come in // 90° and 45°; adjustable elbows cover the range between. angle: z.number().min(15).max(90).default(90), + // Tee branch angle in degrees, measured off the +X (outlet) axis: 90° + // is a square straight tee, <90° a lateral whose branch sweeps + // downstream toward the outlet (flow merges), >90° leans the branch + // upstream toward the inlet. Ignored by every other fitting type. + branchAngle: z.number().min(45).max(135).default(90), // Main (run/inlet) nominal diameter in inches. diameter: z.number().min(2).max(48).default(6), // Secondary diameter in inches — tee branch collar, reducer outlet. @@ -51,15 +69,18 @@ export const DuctFittingNode = BaseNode.extend({ system: z.enum(['supply', 'return']).default('supply'), }).describe( dedent` - Duct fitting - elbow, tee, or reducer junction between round duct runs. + Duct fitting - elbow, tee, reducer, or square-to-round transition between duct runs. - position: [x, y, z] level-local meters - rotation: [x, y, z] euler radians - - fittingType: elbow | tee | reducer - - shape: round | rect run legs (rect matches a rect trunk; branch stays round) - - width / height: rect run-leg profile in inches + - fittingType: elbow | tee | reducer | transition (rect end -X, round end +X) + - shape: round | rect | oval run legs (matches the trunk; ignored by reducer / transition) + - width / height: rect / oval run-leg profile in inches (transition: the rect end) + - shape2: round | rect | oval tee branch (matches the duct drawn off the tap) + - width2 / height2: rect / oval branch profile in inches - angle: elbow turn in degrees (45 or 90 typical) + - branchAngle: tee branch angle off the outlet axis (90 straight tee, 45 downstream lateral, 135 upstream) - diameter: main nominal diameter in inches - - diameter2: tee branch / reducer outlet diameter in inches + - diameter2: tee branch / reducer outlet / transition round-end diameter in inches - ductMaterial: sheet-metal | flex | duct-board - system: supply | return `, diff --git a/packages/core/src/schema/nodes/duct-segment.ts b/packages/core/src/schema/nodes/duct-segment.ts index 261afb17b..21af751f3 100644 --- a/packages/core/src/schema/nodes/duct-segment.ts +++ b/packages/core/src/schema/nodes/duct-segment.ts @@ -22,20 +22,38 @@ export const DuctSegmentNode = BaseNode.extend({ // Polyline path in level-local meters. Minimum two points (start, end). path: z.array(z.tuple([z.number(), z.number(), z.number()])).min(2), // Cross-section. Round is the branch default; rect is the trunk / - // plenum profile (real US systems: rect trunk, round branches). - shape: z.enum(['round', 'rect']).default('round'), + // plenum profile (real US systems: rect trunk, round branches); oval + // is the flat-oval profile (two semicircles of the duct height joined + // by flat sides) used where round won't fit a joist bay. + shape: z.enum(['round', 'rect', 'oval']).default('round'), // Nominal inner diameter in inches (round shape). Common residential // sizes 4"–14"; we accept any positive number so the inspector slider // stays ergonomic and larger commercial sizes load without a schema bump. diameter: z.number().min(2).max(48).default(6), - // Rect-shape cross-section in inches: width is the horizontal face, - // height the vertical. Typical residential trunks 12×8 – 24×10. + // Rect / oval cross-section in inches: width is the horizontal face, + // height the vertical. Typical residential trunks 12×8 – 24×10. For + // oval, height is also the end-cap semicircle diameter (width ≥ height). width: z.number().min(4).max(60).default(14), height: z.number().min(3).max(40).default(8), - // Construction material. - ductMaterial: z.enum(['sheet-metal', 'flex', 'duct-board']).default('flex'), - // External insulation R-value. 0 = bare. Common flex-duct values are R-4.2, - // R-6, R-8. + // Cross-section roll (radians) about the run direction. 0 = width + // horizontal / height vertical (the natural orientation the geometry + // derives from direction). Non-zero only on a rect riser turned out of + // the horizontal plane, so its profile stays continuous through the + // elbow it left instead of snapping to the world-axis fallback. + roll: z.number().default(0), + // Construction material. Spiral is round rigid sheet metal with the + // helical lock seam drawn on the body (round shape only — rect / oval + // runs render it as plain sheet metal). + ductMaterial: z.enum(['sheet-metal', 'spiral', 'flex', 'duct-board']).default('flex'), + // Whether to draw the construction body detail (spiral lock seam / + // flex wire corrugation) on round runs. Off renders a smooth body — + // lighter on the eyes and the GPU in dense scenes. + seamDetail: z.boolean().default(false), + // Whether the run wears its external insulation wrap (drawn as a + // translucent shell). Off by default — bare duct. + insulated: z.boolean().default(false), + // External insulation R-value (used when insulated). Common flex-duct + // values are R-4.2, R-6, R-8. insulationR: z.number().min(0).max(12).default(0.5), // Which side of the air loop this segment belongs to. Drives visual tint // and (in later slices) System graph membership. @@ -44,11 +62,14 @@ export const DuctSegmentNode = BaseNode.extend({ dedent` Duct segment - polyline of 3D points connected by duct sections. - path: list of [x, y, z] points in level-local meters (min 2) - - shape: round (branches) | rect (trunks / plenums) + - shape: round (branches) | rect (trunks / plenums) | oval (flat-oval, tight joist bays) - diameter: nominal inner diameter in inches for round (typ. 4-14 residential) - - width / height: rect cross-section in inches (typ. 12x8 - 24x10 trunks) - - ductMaterial: sheet-metal | flex | duct-board - - insulationR: external insulation R-value (0, 4, 6, 8 typical) + - width / height: rect / oval cross-section in inches (typ. 12x8 - 24x10 trunks) + - roll: cross-section roll in radians (0 = upright; set on risers to stay continuous through their elbow) + - ductMaterial: sheet-metal | spiral (round rigid, helical seam) | flex | duct-board + - seamDetail: draw the spiral seam / flex corrugation on round runs (default off) + - insulated: whether the run wears its external insulation wrap (default off) + - insulationR: external insulation R-value when insulated (4, 6, 8 typical) - system: supply | return (drives visual tint) `, ) diff --git a/packages/nodes/src/duct-fitting/definition.ts b/packages/nodes/src/duct-fitting/definition.ts index 73ff754a3..5f954be0c 100644 --- a/packages/nodes/src/duct-fitting/definition.ts +++ b/packages/nodes/src/duct-fitting/definition.ts @@ -31,7 +31,11 @@ export const ductFittingDefinition: NodeDefinition = { shape: 'round', width: 14, height: 8, + shape2: 'round', + width2: 14, + height2: 8, angle: 90, + branchAngle: 90, diameter: 6, diameter2: 6, ductMaterial: 'sheet-metal', @@ -54,10 +58,18 @@ export const ductFittingDefinition: NodeDefinition = { geometryKey: (n) => JSON.stringify([ n.fittingType, + // The mitered elbow + flange profiles swap width/height roles based + // on where world-up sits in the local frame, so orientation is a + // geometry input. + n.rotation, n.shape, n.width, n.height, + n.shape2, + n.width2, + n.height2, n.angle, + n.branchAngle, n.diameter, n.diameter2, n.ductMaterial, @@ -96,7 +108,7 @@ export const ductFittingDefinition: NodeDefinition = { presentation: { label: 'Duct Fitting', - description: 'Elbow, tee, or reducer junction connecting round duct runs.', + description: 'Elbow, tee, reducer, or square-to-round transition connecting duct runs.', icon: { kind: 'iconify', name: 'lucide:git-branch' }, paletteSection: 'structure', paletteOrder: 91, @@ -104,6 +116,6 @@ export const ductFittingDefinition: NodeDefinition = { mcp: { description: - 'A duct fitting (elbow, tee, or reducer) with typed connection ports. Position is level-local meters; rotation is an XYZ euler in radians.', + 'A duct fitting (elbow, tee, reducer, or square-to-round transition) with typed connection ports. Position is level-local meters; rotation is an XYZ euler in radians.', }, } diff --git a/packages/nodes/src/duct-fitting/geometry.ts b/packages/nodes/src/duct-fitting/geometry.ts index d53fd0e24..b66de4944 100644 --- a/packages/nodes/src/duct-fitting/geometry.ts +++ b/packages/nodes/src/duct-fitting/geometry.ts @@ -2,6 +2,7 @@ import { BufferGeometry, CylinderGeometry, DoubleSide, + Euler, Float32BufferAttribute, Group, Mesh, @@ -11,6 +12,7 @@ import { Vector3, } from 'three' import { + buildOvalSection, buildRectSection, buildSection, createDuctMaterial, @@ -30,16 +32,50 @@ const UP = new Vector3(0, 1, 0) * join(u) = (wA + wB) · u / (1 + wA·wB)), so the two legs meet in a * crisp seam instead of interpenetrating boxes. * - * Local frame: legs in the XZ plane (ports convention), profile height - * along local Y. Non-indexed triangles → flat face normals for the - * folded-metal look; the closed solid renders double-sided so winding - * never makes a face vanish. + * Local frame: legs in the XZ plane (ports convention) so the fold hinge + * is always local Y. `sweepM` is the profile dimension carried through the + * bend (in the XZ bend plane); `cheekM` is the dimension that stays + * constant along the hinge. Which physical dimension (width vs height) + * plays each role depends on the elbow's world orientation and is decided + * by the caller — a floor turn folds about vertical (cheek = height), + * a wall riser folds about horizontal (cheek = width). + * + * Non-indexed triangles → flat face normals for the folded-metal look; + * the closed solid renders double-sided so winding never makes a face + * vanish. + */ +/** + * Stadium (flat-oval) outline in profile (u, v) coordinates: u-extent + * `uM`, v-extent `vM`, semicircular caps of the smaller dimension. The + * caps land on whichever axis is longer, so a riser-rotated profile + * (swapped roles) stays a valid stadium. */ -function buildMiteredRectElbow( +function stadiumOutline(uM: number, vM: number, samplesPerCap = 10): Array<[number, number]> { + const pts: Array<[number, number]> = [] + const r = Math.min(uM, vM) / 2 + const s = (Math.max(uM, vM) - Math.min(uM, vM)) / 2 + const cap = (cu: number, cv: number, startA: number) => { + for (let i = 0; i <= samplesPerCap; i++) { + const a = startA + (Math.PI * i) / samplesPerCap + pts.push([cu + r * Math.cos(a), cv + r * Math.sin(a)]) + } + } + if (uM >= vM) { + cap(s, 0, -Math.PI / 2) + cap(-s, 0, Math.PI / 2) + } else { + cap(0, s, 0) + cap(0, -s, Math.PI) + } + return pts +} + +function buildMiteredElbow( inletPos: Vector3, outletPos: Vector3, - widthM: number, - heightM: number, + sweepM: number, + cheekM: number, + profileShape: 'rect' | 'oval', material: MeshStandardMaterial, ): Mesh { const travelIn = inletPos.clone().multiplyScalar(-1).normalize() // inlet → junction @@ -50,14 +86,18 @@ function buildMiteredRectElbow( const miterScale = 1 / (1 + wA.dot(wB)) const wJoin = new Vector3().addVectors(wA, wB) - const hw = widthM / 2 - const hh = heightM / 2 - const corners: Array<[number, number]> = [ - [hw, hh], - [-hw, hh], - [-hw, -hh], - [hw, -hh], - ] + const hw = sweepM / 2 + const hh = cheekM / 2 + const corners: Array<[number, number]> = + profileShape === 'oval' + ? stadiumOutline(sweepM, cheekM) + : [ + [hw, hh], + [-hw, hh], + [-hw, -hh], + [hw, -hh], + ] + const n = corners.length const ring = (center: Vector3, uAxis: Vector3, scale = 1): Vector3[] => corners.map(([u, v]) => center @@ -78,16 +118,69 @@ function buildMiteredRectElbow( tri(a, c, d) } const skin = (from: Vector3[], to: Vector3[]) => { - for (let k = 0; k < 4; k++) { - const k2 = (k + 1) % 4 + for (let k = 0; k < n; k++) { + const k2 = (k + 1) % n quad(from[k]!, to[k]!, to[k2]!, from[k2]!) } } skin(inletRing, miterRing) skin(miterRing, outletRing) - // End caps. - quad(inletRing[0]!, inletRing[1]!, inletRing[2]!, inletRing[3]!) - quad(outletRing[3]!, outletRing[2]!, outletRing[1]!, outletRing[0]!) + // End caps — triangle fans so any convex profile closes. + for (let k = 1; k < n - 1; k++) { + tri(inletRing[0]!, inletRing[k]!, inletRing[k + 1]!) + tri(outletRing[k + 1]!, outletRing[k]!, outletRing[0]!) + } + + const geometry = new BufferGeometry() + geometry.setAttribute('position', new Float32BufferAttribute(positions, 3)) + geometry.computeVertexNormals() + const solidMaterial = material.clone() + solidMaterial.side = DoubleSide + const mesh = new Mesh(geometry, solidMaterial) + mesh.name = `fitting-elbow-${profileShape}` + return mesh +} + +/** + * Square-to-round loft between a rect ring at `xRect` and a round ring + * at `xRound`, both centered on the local X axis (the straight-through + * run). Profiles are sampled at matching polar angles — the rect point + * is the ray's intersection with the rectangle boundary — so the skin + * twists nowhere. Non-indexed triangles + computed normals give the + * faceted gore look of a real shop-made square-to-round. + */ +function buildRectToRoundLoft( + xRect: number, + xRound: number, + widthM: number, + heightM: number, + radius: number, + material: MeshStandardMaterial, +): Mesh { + const hw = widthM / 2 + const hh = heightM / 2 + const rectRing: Vector3[] = [] + const roundRing: Vector3[] = [] + for (let i = 0; i < RADIAL_SEGMENTS; i++) { + const theta = (2 * Math.PI * i) / RADIAL_SEGMENTS + const cz = Math.cos(theta) + const sy = Math.sin(theta) + // Scale the unit ray until it hits the rectangle boundary. Width + // spans local Z and height local Y — the same axes buildRectSection + // gives a +X run. + const t = 1 / Math.max(Math.abs(cz) / hw, Math.abs(sy) / hh) + rectRing.push(new Vector3(xRect, t * sy, t * cz)) + roundRing.push(new Vector3(xRound, radius * sy, radius * cz)) + } + + const positions: number[] = [] + const tri = (a: Vector3, b: Vector3, c: Vector3) => + positions.push(a.x, a.y, a.z, b.x, b.y, b.z, c.x, c.y, c.z) + for (let i = 0; i < RADIAL_SEGMENTS; i++) { + const j = (i + 1) % RADIAL_SEGMENTS + tri(rectRing[i]!, roundRing[i]!, roundRing[j]!) + tri(rectRing[i]!, roundRing[j]!, rectRing[j]!) + } const geometry = new BufferGeometry() geometry.setAttribute('position', new Float32BufferAttribute(positions, 3)) @@ -95,7 +188,7 @@ function buildMiteredRectElbow( const solidMaterial = material.clone() solidMaterial.side = DoubleSide const mesh = new Mesh(geometry, solidMaterial) - mesh.name = 'fitting-elbow-rect' + mesh.name = 'fitting-transition-loft' return mesh } @@ -112,17 +205,29 @@ function buildMiteredRectElbow( * The reducer is special-cased: instead of equal stubs + sphere it draws * a short inlet stub, a tapered cone, and a short outlet stub inline. * - * `shape: 'rect'` (elbow / tee): run legs become boxes at the fitting's - * width × height (matching the rect trunk they join) with a cube - * junction; a tee's branch leg stays a round cylinder at `diameter2`. - * The rect profile's height rides local +Y — for the horizontal-plane - * orientations rect trunks are drawn in, that's world-vertical. + * Non-round shapes (elbow / tee): run legs carry the fitting's + * width × height profile — rect prisms or flat-oval stadiums — matching + * the trunk they join; a tee's branch leg carries its own `shape2` + * profile (width2 × height2, or round at `diameter2`). The profile's + * height rides local +Y — for the horizontal-plane orientations trunks + * are drawn in, that's world-vertical. */ export function buildDuctFittingGeometry(node: DuctFittingNode): Group { const group = new Group() const material = createDuctMaterial(node) const radiusMain = (node.diameter * INCHES_TO_METERS) / 2 const ports = localFittingPorts(node) + const widthM = node.width * INCHES_TO_METERS + const heightM = node.height * INCHES_TO_METERS + // The elbow folds about its local Y. Width spans the XZ bend plane and + // height rides the hinge ONLY when local Y is world-vertical (a floor + // turn). For a riser the node is rotated so local Y lands horizontal — + // then it's width that runs along the hinge, so the roles swap. Pick by + // where world-up sits in the fitting's local frame. + const hingeWorld = UP.clone().applyEuler( + new Euler(node.rotation[0], node.rotation[1], node.rotation[2]), + ) + const hingeIsVertical = Math.abs(hingeWorld.y) >= Math.SQRT1_2 if (node.fittingType === 'reducer') { const radiusOut = (node.diameter2 * INCHES_TO_METERS) / 2 @@ -152,26 +257,56 @@ export function buildDuctFittingGeometry(node: DuctFittingNode): Group { 'fitting-stub-outlet', ) if (stubB) group.add(stubB) - } else if (node.shape === 'rect' && node.fittingType === 'elbow') { - // One mitered solid — no stubs, no junction blob. + } else if (node.fittingType === 'transition') { + // Square-to-round: rect stub on the inlet, lofted gore body through + // the junction, round stub on the outlet. Same inline layout as the + // reducer, with the taper replaced by the loft. + const radiusOut = (node.diameter2 * INCHES_TO_METERS) / 2 + const inlet = ports[0]! + const outlet = ports[1]! + const taperHalf = Math.abs(inlet.position.x) / 3 + const stubA = buildRectSection( + inlet.position, + new Vector3(-taperHalf, 0, 0), + widthM, + heightM, + material, + 'fitting-stub-inlet', + ) + if (stubA) group.add(stubA) + group.add(buildRectToRoundLoft(-taperHalf, taperHalf, widthM, heightM, radiusOut, material)) + const stubB = buildSection( + new Vector3(taperHalf, 0, 0), + outlet.position, + radiusOut, + material, + 'fitting-stub-outlet', + ) + if (stubB) group.add(stubB) + } else if (node.shape !== 'round' && node.fittingType === 'elbow') { + // One mitered solid — no stubs, no junction blob. Oval profiles + // sweep the same way; the ring is a stadium instead of 4 corners. const inlet = ports.find((p) => p.id === 'inlet')! const outlet = ports.find((p) => p.id === 'outlet')! group.add( - buildMiteredRectElbow( + buildMiteredElbow( inlet.position, outlet.position, - node.width * INCHES_TO_METERS, - node.height * INCHES_TO_METERS, + hingeIsVertical ? widthM : heightM, + hingeIsVertical ? heightM : widthM, + node.shape, material, ), ) - } else if (node.shape === 'rect' && node.fittingType === 'tee') { - // Straight rect run inlet→outlet (one box — nothing to miter) with a - // round branch stub tapping its side. + } else if (node.shape !== 'round' && node.fittingType === 'tee') { + // Straight rect / oval run inlet→outlet (one prism — nothing to + // miter) plus a branch leg tapping its side. The branch carries its + // own profile: rect or oval at width2 × height2, round at diameter2. const inlet = ports.find((p) => p.id === 'inlet')! const outlet = ports.find((p) => p.id === 'outlet')! const branch = ports.find((p) => p.id === 'branch')! - const run = buildRectSection( + const buildRunSection = node.shape === 'oval' ? buildOvalSection : buildRectSection + const run = buildRunSection( inlet.position, outlet.position, node.width * INCHES_TO_METERS, @@ -180,13 +315,24 @@ export function buildDuctFittingGeometry(node: DuctFittingNode): Group { 'fitting-run', ) if (run) group.add(run) - const stub = buildSection( - new Vector3(0, 0, 0), - branch.position, - (branch.diameter * INCHES_TO_METERS) / 2, - material, - 'fitting-stub-branch', - ) + const buildBranchSection = node.shape2 === 'oval' ? buildOvalSection : buildRectSection + const stub = + node.shape2 !== 'round' + ? buildBranchSection( + new Vector3(0, 0, 0), + branch.position, + node.width2 * INCHES_TO_METERS, + node.height2 * INCHES_TO_METERS, + material, + 'fitting-stub-branch', + ) + : buildSection( + new Vector3(0, 0, 0), + branch.position, + (branch.diameter * INCHES_TO_METERS) / 2, + material, + 'fitting-stub-branch', + ) if (stub) group.add(stub) } else { for (const port of ports) { @@ -204,10 +350,53 @@ export function buildDuctFittingGeometry(node: DuctFittingNode): Group { group.add(junction) } - // Crimp collar at each opening — a thin torus just proud of the stub. - // Round collars only; rect run legs end in the bare box profile. + // Joint trim at each opening. Round legs get a crimp-collar torus just + // proud of the stub; rect legs get a drive-cleat flange — the thin + // raised rim (TDC/S-cleat) real sheet-metal trunk joints wear where a + // section meets a fitting. The plate is centered on the collar plane so + // the rim reads as the seam between fitting and duct. Run legs + // (inlet/outlet) are rect when `shape` is rect; a rect tee's branch is + // rect when `shape2` is rect. Reducers ignore shape. + // Which profile a leg's opening carries: a transition's inlet is its + // rect end regardless of `shape`; reducers are always round; otherwise + // the run legs follow `shape` and a tee's branch follows `shape2` + // (only meaningful when the run itself is non-round). + const legShape = (portId: string): 'round' | 'rect' | 'oval' => { + if (node.fittingType === 'transition') return portId === 'inlet' ? 'rect' : 'round' + if (node.fittingType === 'reducer' || node.shape === 'round') return 'round' + return portId === 'branch' ? node.shape2 : node.shape + } + // The flange's profile must match the leg it caps: the branch carries + // its own width2 × height2; elbow legs swap width/height roles when the + // fold hinge lies horizontal (riser elbows) — same choice as the + // mitered solid above. + const rectLegProfile = (portId: string): [number, number] => { + if (portId === 'branch') { + return [node.width2 * INCHES_TO_METERS, node.height2 * INCHES_TO_METERS] + } + if (node.fittingType === 'elbow' && !hingeIsVertical) return [heightM, widthM] + return [widthM, heightM] + } + const FLANGE_LIP_M = 0.02 + const FLANGE_THICK_M = 0.012 for (const port of ports) { - if (node.shape === 'rect' && (port.id === 'inlet' || port.id === 'outlet')) continue + const profile = legShape(port.id) + if (profile !== 'round') { + const [w, h] = rectLegProfile(port.id) + const start = port.position.clone().addScaledVector(port.direction, -FLANGE_THICK_M / 2) + const end = port.position.clone().addScaledVector(port.direction, FLANGE_THICK_M / 2) + const buildFlange = profile === 'oval' ? buildOvalSection : buildRectSection + const flange = buildFlange( + start, + end, + w + FLANGE_LIP_M * 2, + h + FLANGE_LIP_M * 2, + material, + `fitting-flange-${port.id}`, + ) + if (flange) group.add(flange) + continue + } const radius = (port.diameter * INCHES_TO_METERS) / 2 const collar = new Mesh(new TorusGeometry(radius, radius * 0.12, 8, RADIAL_SEGMENTS), material) collar.name = `fitting-collar-${port.id}` diff --git a/packages/nodes/src/duct-fitting/parametrics.ts b/packages/nodes/src/duct-fitting/parametrics.ts index b12caa5b7..298a289e3 100644 --- a/packages/nodes/src/duct-fitting/parametrics.ts +++ b/packages/nodes/src/duct-fitting/parametrics.ts @@ -1,7 +1,161 @@ -import type { ParametricDescriptor } from '@pascal-app/core' +import { + type AnyNode, + type AnyNodeId, + type DuctSegmentNode, + type ParametricDescriptor, + useScene, +} from '@pascal-app/core' +import { Vector3 } from 'three' +import { + ductPortDiameterIn, + equivalentDiameterIn, + ovalEquivalentDiameterIn, + rollToContinueAcrossElbow, +} from '../duct-segment/geometry' +import { getDuctFittingPorts } from './ports' import type { DuctFittingNode } from './schema' +/** Schema bounds for `diameter` / `diameter2`. */ +const clampDiameter = (d: number) => Math.min(48, Math.max(2, d)) + +/** A duct endpoint sitting this close to a collar counts as mated. */ +const MATE_TOL_M = 0.03 + +type DuctMate = { duct: DuctSegmentNode; endIndex: number } + +/** + * Ducts whose endpoint sits ON one of the fitting's collars, keyed by + * port id. Auto-minted joints place duct ends exactly on the collar, so + * a tight distance check is enough — no connectivity graph yet. + */ +function matedDucts(fitting: DuctFittingNode): Map { + const mates = new Map() + const ports = getDuctFittingPorts(fitting) + for (const node of Object.values(useScene.getState().nodes)) { + if (node.type !== 'duct-segment') continue + const duct = node as DuctSegmentNode + for (const endIndex of [0, duct.path.length - 1]) { + const p = duct.path[endIndex] + if (!p) continue + for (const port of ports) { + if (mates.has(port.id)) continue + const dx = p[0] - port.position[0] + const dy = p[1] - port.position[1] + const dz = p[2] - port.position[2] + if (dx * dx + dy * dy + dz * dz <= MATE_TOL_M * MATE_TOL_M) { + mates.set(port.id, { duct, endIndex }) + } + } + } + } + return mates +} + export const ductFittingParametrics: ParametricDescriptor = { + // Switching the run legs round↔rect flips the whole fitting and sizes + // the new profile off the ducts actually mated to its collars, so the + // fitting lands flush instead of at schema defaults. The tee branch + // follows its own mated duct (or the run shape when nothing is mated); + // `shape2` stays editable afterwards for mixed taps. Rect profiles + // also write their area-equivalent round size back into `diameter` / + // `diameter2`, which drive leg lengths + advertised ports — without + // this the legs keep the stale round size. + derive: (next, patch) => { + const out: Partial = {} + if ('shape' in patch && next.fittingType !== 'reducer') { + // `next` still carries the pre-edit diameters, so its ports sit + // where the mated ducts end — size off the actual neighbours. + const mates = matedDucts(next) + const run = (mates.get('inlet') ?? mates.get('outlet'))?.duct + if (next.shape !== 'round' && run?.shape === next.shape) { + out.width = run.width + out.height = run.height + } else if (next.shape === 'round' && run && run.shape !== 'rect') { + // Oval runs present their area-equivalent round size. + out.diameter = clampDiameter(ductPortDiameterIn(run)) + } + if (next.fittingType === 'tee') { + const branchDuct = mates.get('branch')?.duct + out.shape2 = branchDuct?.shape ?? next.shape + if (branchDuct && branchDuct.shape !== 'round') { + out.width2 = branchDuct.width + out.height2 = branchDuct.height + } else if (branchDuct) { + out.diameter2 = clampDiameter(ductPortDiameterIn(branchDuct)) + } + } + } + // Non-round legs write their area-equivalent round size back into the + // diameters (leg lengths + advertised ports). A transition's inlet is + // always the rect end regardless of `shape`. + const runShape = next.fittingType === 'transition' ? 'rect' : next.shape + if (runShape !== 'round' && next.fittingType !== 'reducer') { + const equivalent = runShape === 'oval' ? ovalEquivalentDiameterIn : equivalentDiameterIn + out.diameter = clampDiameter( + equivalent(out.width ?? next.width, out.height ?? next.height), + ) + } + const shape2 = out.shape2 ?? next.shape2 + if (next.fittingType === 'tee' && shape2 !== 'round') { + const equivalent2 = shape2 === 'oval' ? ovalEquivalentDiameterIn : equivalentDiameterIn + out.diameter2 = clampDiameter( + equivalent2(out.width2 ?? next.width2, out.height2 ?? next.height2), + ) + } + return out + }, + + // Resizing a fitting moves its collars (leg lengths follow the + // diameters) — re-trim each mated duct's endpoint onto the collar's + // new position so metal keeps meeting metal instead of overlapping + // one neighbour and gapping off another. + reconcile: (prev, next) => { + const updates: Array<{ id: AnyNodeId; data: Partial }> = [] + const newPorts = new Map(getDuctFittingPorts(next).map((p) => [p.id, p])) + const mates = matedDucts(prev) + for (const [portId, mate] of mates) { + const target = newPorts.get(portId) + if (!target) continue + const end = mate.duct.path[mate.endIndex] + if (!end) continue + const data: Partial = {} + const dx = end[0] - target.position[0] + const dy = end[1] - target.position[1] + const dz = end[2] - target.position[2] + if (dx * dx + dy * dy + dz * dz >= 1e-12) { + const path = mate.duct.path.map((p) => [...p] as [number, number, number]) + path[mate.endIndex] = [...target.position] + data.path = path + } + // Steep rect / oval runs also re-derive their cross-section roll + // so a riser's profile stays continuous through the fitting (same + // continuity the draw tool computes; runs flipped to rect after + // drawing never got it). Horizontal runs are left alone — their + // roll-0 orientation is canonical and re-deriving it from a + // possibly-stale riser roll would corrupt it. + if (next.shape !== 'round' && mate.duct.shape !== 'round') { + const away = mate.duct.path[mate.endIndex === 0 ? 1 : mate.duct.path.length - 2] + const source = getDuctFittingPorts(next).find( + (p) => p.id !== portId && p.id !== 'branch', + ) + if (away && source) { + const newDir = new Vector3(away[0] - end[0], away[1] - end[1], away[2] - end[2]) + if (newDir.lengthSq() >= 1e-10) { + newDir.normalize() + if (Math.abs(newDir.y) >= Math.SQRT1_2) { + const srcMate = mates.get(source.id) + const srcRoll = srcMate && srcMate.duct.shape !== 'round' ? srcMate.duct.roll : 0 + const srcDir = new Vector3(...source.direction) + const roll = rollToContinueAcrossElbow(srcDir, srcRoll, srcDir, newDir) + if (Math.abs(roll - mate.duct.roll) > 1e-6) data.roll = roll + } + } + } + } + if (Object.keys(data).length > 0) updates.push({ id: mate.duct.id, data }) + } + return updates + }, groups: [ { label: 'Fitting', @@ -9,7 +163,7 @@ export const ductFittingParametrics: ParametricDescriptor = { { key: 'fittingType', kind: 'enum', - options: ['elbow', 'tee', 'reducer'], + options: ['elbow', 'tee', 'reducer', 'transition'], display: 'segmented', }, { @@ -21,6 +175,15 @@ export const ductFittingParametrics: ParametricDescriptor = { step: 15, visibleIf: (n) => n.fittingType === 'elbow', }, + { + key: 'branchAngle', + kind: 'number', + unit: '°', + min: 45, + max: 135, + step: 15, + visibleIf: (n) => n.fittingType === 'tee', + }, { key: 'system', kind: 'enum', @@ -35,9 +198,11 @@ export const ductFittingParametrics: ParametricDescriptor = { { key: 'shape', kind: 'enum', - options: ['round', 'rect'], + options: ['round', 'rect', 'oval'], display: 'segmented', - visibleIf: (n) => n.fittingType !== 'reducer', + // Reducers are always round; a transition's ends are fixed + // (rect inlet, round outlet) so there's nothing to pick. + visibleIf: (n) => n.fittingType !== 'reducer' && n.fittingType !== 'transition', }, { key: 'diameter', @@ -46,7 +211,11 @@ export const ductFittingParametrics: ParametricDescriptor = { min: 4, max: 24, step: 1, - visibleIf: (n) => n.shape !== 'rect' || n.fittingType === 'reducer', + // Hidden when the run legs are rect / oval (transition's inlet + // always is) — `diameter` is then derived as the area equivalent. + visibleIf: (n) => + n.fittingType === 'reducer' || + (n.fittingType !== 'transition' && n.shape === 'round'), }, { key: 'width', @@ -55,7 +224,9 @@ export const ductFittingParametrics: ParametricDescriptor = { min: 4, max: 60, step: 1, - visibleIf: (n) => n.shape === 'rect' && n.fittingType !== 'reducer', + visibleIf: (n) => + n.fittingType === 'transition' || + (n.shape !== 'round' && n.fittingType !== 'reducer'), }, { key: 'height', @@ -64,7 +235,16 @@ export const ductFittingParametrics: ParametricDescriptor = { min: 3, max: 40, step: 1, - visibleIf: (n) => n.shape === 'rect' && n.fittingType !== 'reducer', + visibleIf: (n) => + n.fittingType === 'transition' || + (n.shape !== 'round' && n.fittingType !== 'reducer'), + }, + { + key: 'shape2', + kind: 'enum', + options: ['round', 'rect', 'oval'], + display: 'segmented', + visibleIf: (n) => n.fittingType === 'tee', }, { key: 'diameter2', @@ -73,7 +253,26 @@ export const ductFittingParametrics: ParametricDescriptor = { min: 4, max: 24, step: 1, - visibleIf: (n) => n.fittingType !== 'elbow', + visibleIf: (n) => + n.fittingType !== 'elbow' && (n.fittingType !== 'tee' || n.shape2 === 'round'), + }, + { + key: 'width2', + kind: 'number', + unit: 'in', + min: 4, + max: 60, + step: 1, + visibleIf: (n) => n.fittingType === 'tee' && n.shape2 !== 'round', + }, + { + key: 'height2', + kind: 'number', + unit: 'in', + min: 3, + max: 40, + step: 1, + visibleIf: (n) => n.fittingType === 'tee' && n.shape2 !== 'round', }, { key: 'ductMaterial', diff --git a/packages/nodes/src/duct-fitting/ports.ts b/packages/nodes/src/duct-fitting/ports.ts index 9b2522e05..c69583791 100644 --- a/packages/nodes/src/duct-fitting/ports.ts +++ b/packages/nodes/src/duct-fitting/ports.ts @@ -23,7 +23,9 @@ type LocalPort = { id: string; position: Vector3; direction: Vector3; diameter: * port). * * Conventions documented on the schema: elbow inlet -X / outlet turned - * `angle`° in XZ; tee run along X with branch +Z; reducer -X → +X. + * `angle`° in XZ; tee run along X with the branch at `branchAngle`° off + * the +X outlet axis (90° → +Z square tee, 45° → downstream lateral, + * 135° → upstream lateral); reducer -X → +X. */ export function localFittingPorts(node: DuctFittingNode): LocalPort[] { const main = fittingLegLength(node.diameter) @@ -47,6 +49,13 @@ export function localFittingPorts(node: DuctFittingNode): LocalPort[] { } if (node.fittingType === 'tee') { const branch = fittingLegLength(node.diameter2) + // Branch leans `branchAngle`° off the +X outlet axis in XZ: 90° is a + // square tap (+Z), shallower angles sweep the branch downstream + // toward the outlet so the lateral merges with the run's flow, and + // angles past 90° lean it upstream toward the inlet (cos goes + // negative, swinging the collar to -X). + const phi = (node.branchAngle * Math.PI) / 180 + const branchDir = new Vector3(Math.cos(phi), 0, Math.sin(phi)) return [ { id: 'inlet', @@ -62,13 +71,15 @@ export function localFittingPorts(node: DuctFittingNode): LocalPort[] { }, { id: 'branch', - position: new Vector3(0, 0, branch), - direction: new Vector3(0, 0, 1), + position: branchDir.clone().multiplyScalar(branch), + direction: branchDir, diameter: node.diameter2, }, ] } - // reducer + // reducer / transition: straight-through, inlet at `diameter` (the + // transition's rect end advertises its area-equivalent round size), + // outlet at `diameter2`. return [ { id: 'inlet', diff --git a/packages/nodes/src/duct-segment/definition.ts b/packages/nodes/src/duct-segment/definition.ts index 88389f777..1ab59e8be 100644 --- a/packages/nodes/src/duct-segment/definition.ts +++ b/packages/nodes/src/duct-segment/definition.ts @@ -43,8 +43,11 @@ export const ductSegmentDefinition: NodeDefinition = { width: 14, height: 8, ductMaterial: 'flex', + seamDetail: false, + insulated: false, insulationR: 0.5, system: 'supply', + roll: 0, }), capabilities: { @@ -63,7 +66,10 @@ export const ductSegmentDefinition: NodeDefinition = { n.diameter, n.width, n.height, + n.roll, n.ductMaterial, + n.seamDetail, + n.insulated, n.insulationR, n.system, ]), @@ -122,7 +128,7 @@ export const ductSegmentDefinition: NodeDefinition = { presentation: { label: 'Duct', - description: 'Round HVAC duct run — polyline of points connected by cylindrical sections.', + description: 'HVAC duct run — polyline of round, rect, or flat-oval sections.', icon: { kind: 'iconify', name: 'lucide:wind' }, paletteSection: 'structure', paletteOrder: 90, @@ -130,6 +136,6 @@ export const ductSegmentDefinition: NodeDefinition = { mcp: { description: - 'An HVAC duct run defined as a polyline — round (branches) or rect (trunks/plenums). Supply or return, with configurable size, material, and external insulation.', + 'An HVAC duct run defined as a polyline — round (branches), rect (trunks/plenums), or flat-oval (tight joist bays). Supply or return, with configurable size, material (incl. spiral seam), and external insulation.', }, } diff --git a/packages/nodes/src/duct-segment/floorplan.ts b/packages/nodes/src/duct-segment/floorplan.ts index c5893252f..ce730bd4a 100644 --- a/packages/nodes/src/duct-segment/floorplan.ts +++ b/packages/nodes/src/duct-segment/floorplan.ts @@ -28,8 +28,8 @@ export function buildDuctSegmentFloorplan( points.push([x, z]) } - // Plan width: a rect trunk draws at its actual width; round at diameter. - const diameterM = (node.shape === 'rect' ? node.width : node.diameter) * INCHES_TO_METERS + // Plan width: rect / oval runs draw at their actual width; round at diameter. + const diameterM = (node.shape === 'round' ? node.diameter : node.width) * INCHES_TO_METERS const view = ctx.viewState const palette = view?.palette const showSelectedChrome = (view?.selected || view?.highlighted) ?? false diff --git a/packages/nodes/src/duct-segment/geometry.ts b/packages/nodes/src/duct-segment/geometry.ts index b8f1bc45d..a15992a87 100644 --- a/packages/nodes/src/duct-segment/geometry.ts +++ b/packages/nodes/src/duct-segment/geometry.ts @@ -1,12 +1,16 @@ import { BoxGeometry, + CatmullRomCurve3, CylinderGeometry, + ExtrudeGeometry, Group, Matrix4, Mesh, MeshStandardMaterial, Quaternion, + Shape, SphereGeometry, + TubeGeometry, Vector3, } from 'three' import type { DuctSegmentNode } from './schema' @@ -44,9 +48,20 @@ export function equivalentDiameterIn(widthIn: number, heightIn: number): number return 2 * Math.sqrt((widthIn * heightIn) / Math.PI) } +/** + * Area-equivalent round diameter (inches) for a flat-oval cross-section: + * a rectangle of (width − height) × height plus the two semicircular caps. + */ +export function ovalEquivalentDiameterIn(widthIn: number, heightIn: number): number { + const minor = Math.min(widthIn, heightIn) + const major = Math.max(widthIn, heightIn) + const area = (major - minor) * minor + Math.PI * (minor / 2) ** 2 + return 2 * Math.sqrt(area / Math.PI) +} + /** The diameter (inches) a duct segment presents at its ports. */ export function ductPortDiameterIn(node: { - shape?: 'round' | 'rect' + shape?: 'round' | 'rect' | 'oval' diameter: number width?: number height?: number @@ -54,14 +69,71 @@ export function ductPortDiameterIn(node: { if (node.shape === 'rect' && node.width && node.height) { return equivalentDiameterIn(node.width, node.height) } + if (node.shape === 'oval' && node.width && node.height) { + return ovalEquivalentDiameterIn(node.width, node.height) + } return node.diameter } /** - * Rect box spanning `start`→`end` with a stable orientation: width stays - * horizontal and height vertical for any non-vertical run (vertical runs - * fall back to world X/Z). Quaternion from an explicit basis — the - * minimal-rotation `setFromUnitVectors` used for cylinders would roll + * Cross-section axes for a rect run along `dir`, rolled `roll` radians + * about the run direction. At roll 0: width is the horizontal axis + * (UP × dir) and height the vertical one — vertical runs, where that + * cross product degenerates, fall back to world X/Z. `roll` rotates the + * pair in the plane perpendicular to `dir`, letting a riser carry the + * orientation of the run it turned off instead of the bare fallback. + */ +export function rectSectionAxes( + dir: Vector3, + roll = 0, +): { width: Vector3; height: Vector3 } { + const d = dir.clone().normalize() + const xBase = new Vector3().crossVectors(UP, d) + if (xBase.lengthSq() < 1e-8) xBase.set(1, 0, 0) + xBase.normalize() + const zBase = new Vector3().crossVectors(xBase, d) + const c = Math.cos(roll) + const s = Math.sin(roll) + const width = xBase.clone().multiplyScalar(c).addScaledVector(zBase, s) + const height = xBase.clone().multiplyScalar(-s).addScaledVector(zBase, c) + return { width, height } +} + +/** + * Roll (radians) that keeps a rect cross-section continuous across an + * elbow: the dimension lying along the joint's hinge — the bend-plane + * normal `portDir × newDir`, perpendicular to both legs — must stay on + * the same physical face on the new run as on the source run. Returns 0 + * for an in-plane (degenerate-normal) joint, so horizontal turns keep + * the natural width-horizontal orientation. + */ +export function rollToContinueAcrossElbow( + sourceDir: Vector3, + sourceRoll: number, + portDir: Vector3, + newDir: Vector3, +): number { + const n = new Vector3().crossVectors(portDir, newDir) + if (n.lengthSq() < 1e-8) return 0 + n.normalize() + const src = rectSectionAxes(sourceDir, sourceRoll) + const carriesWidth = Math.abs(src.width.dot(n)) >= Math.abs(src.height.dot(n)) + const d = newDir.clone().normalize() + const xBase = new Vector3().crossVectors(UP, d) + if (xBase.lengthSq() < 1e-8) xBase.set(1, 0, 0) + xBase.normalize() + const zBase = new Vector3().crossVectors(xBase, d) + // Place the hinge-aligned face on the same axis the source carries it. + return carriesWidth + ? Math.atan2(n.dot(zBase), n.dot(xBase)) + : Math.atan2(-n.dot(xBase), n.dot(zBase)) +} + +/** + * Rect box spanning `start`→`end`. Orientation comes from `rectSectionAxes` + * (width horizontal, height vertical by default; `roll` reorients a riser + * to stay continuous through its elbow). Quaternion from an explicit basis + * — the minimal-rotation `setFromUnitVectors` used for cylinders would roll * the cross-section on axis-aligned runs. */ export function buildRectSection( @@ -71,17 +143,14 @@ export function buildRectSection( heightM: number, material: MeshStandardMaterial, name: string, + roll = 0, ): Mesh | null { const dir = new Vector3().subVectors(end, start) const length = dir.length() if (length < 1e-6) return null dir.normalize() - // Basis: y = run direction; x = horizontal width axis; z = height axis. - const x = new Vector3().crossVectors(UP, dir) - if (x.lengthSq() < 1e-8) x.set(1, 0, 0) - x.normalize() - const z = new Vector3().crossVectors(x, dir) + const { width: x, height: z } = rectSectionAxes(dir, roll) const geom = new BoxGeometry(widthM, length, heightM) const mesh = new Mesh(geom, material) @@ -91,6 +160,68 @@ export function buildRectSection( return mesh } +/** + * Flat-oval (stadium) profile in the XY plane: width along X, height + * along Y, flat top/bottom joined by semicircular end caps of the height. + * Degenerates to a circle when width ≤ height. + */ +function stadiumShape(widthM: number, heightM: number): Shape { + const r = Math.min(widthM, heightM) / 2 + const straight = Math.max(0, widthM - heightM) / 2 + const shape = new Shape() + shape.absarc(straight, 0, r, -Math.PI / 2, Math.PI / 2, false) + shape.absarc(-straight, 0, r, Math.PI / 2, (3 * Math.PI) / 2, false) + shape.closePath() + return shape +} + +/** + * Centered flat-oval prism with the same local axes as the rect box + * (X = width, Y = run length, Z = height), so sections and previews + * orient it with the `rectSectionAxes` basis. + */ +export function createOvalSectionGeometry( + widthM: number, + heightM: number, + lengthM: number, +): ExtrudeGeometry { + const geom = new ExtrudeGeometry(stadiumShape(widthM, heightM), { + depth: lengthM, + bevelEnabled: false, + curveSegments: RADIAL_SEGMENTS / 2, + }) + geom.translate(0, 0, -lengthM / 2) + geom.rotateX(-Math.PI / 2) + return geom +} + +/** + * Flat-oval section spanning `start`→`end` — the oval counterpart of + * `buildRectSection`, sharing its orientation basis and roll semantics. + */ +export function buildOvalSection( + start: Vector3, + end: Vector3, + widthM: number, + heightM: number, + material: MeshStandardMaterial, + name: string, + roll = 0, +): Mesh | null { + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-6) return null + dir.normalize() + + const { width: x, height: z } = rectSectionAxes(dir, roll) + + const mesh = new Mesh(createOvalSectionGeometry(widthM, heightM, length), material) + mesh.name = name + mesh.position.copy(start).addScaledVector(dir, length / 2) + mesh.quaternion.copy(new Quaternion().setFromRotationMatrix(new Matrix4().makeBasis(x, dir, z))) + return mesh +} + /** * Cylinder spanning `start`→`end` at `radius`. Shared by the segment and * fitting builders — fittings are just short sections + a junction. @@ -117,14 +248,87 @@ export function buildSection( return mesh } +/** + * Helical ridge wound around the cylinder spanning `start`→`end` at the + * given `pitch` (meters of run per turn) and `ridge` tube radius. The + * ridge sits centered on the body surface, so half its thickness reads + * as raised. Two construction details share this: the spiral duct's + * lock seam (long pitch, thin ridge) and the flex duct's wire helix + * (tight pitch, fat ridge → corrugated look). + */ +function buildHelixRidge( + start: Vector3, + end: Vector3, + radius: number, + pitch: number, + ridge: number, + material: MeshStandardMaterial, + name: string, +): Mesh | null { + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-6) return null + dir.normalize() + + const turns = length / pitch + const { width: u, height: v } = rectSectionAxes(dir) + const samples = Math.min(4096, Math.max(8, Math.ceil(turns * 12))) + const pts: Vector3[] = [] + for (let i = 0; i <= samples; i++) { + const t = i / samples + const theta = 2 * Math.PI * turns * t + pts.push( + start + .clone() + .addScaledVector(dir, t * length) + .addScaledVector(u, radius * Math.cos(theta)) + .addScaledVector(v, radius * Math.sin(theta)), + ) + } + const geom = new TubeGeometry(new CatmullRomCurve3(pts), samples, ridge, 6, false) + const mesh = new Mesh(geom, material) + mesh.name = name + return mesh +} + +/** + * Helix parameters for a construction material's body detail, or null + * for materials with a smooth body. Spiral: the machine seam keeps a + * roughly constant helix angle, so pitch scales with the diameter. + * Flex: the wire helix is tight and reads as corrugation; its pitch + * also follows the diameter but is clamped much lower. + */ +function helixRidgeFor( + ductMaterial: DuctAppearance['ductMaterial'], + radius: number, +): { pitch: number; ridge: number; color: string } | null { + if (ductMaterial === 'spiral') { + return { + pitch: Math.min(0.3, Math.max(0.08, radius * 1.2)), + ridge: Math.min(0.006, Math.max(0.002, radius * 0.06)), + color: '#9b9b9b', + } + } + if (ductMaterial === 'flex') { + return { + pitch: Math.min(0.06, Math.max(0.025, radius * 0.5)), + ridge: Math.min(0.009, Math.max(0.004, radius * 0.12)), + color: '#737373', + } + } + return null +} + type DuctAppearance = { - ductMaterial: 'sheet-metal' | 'flex' | 'duct-board' + ductMaterial: 'sheet-metal' | 'spiral' | 'flex' | 'duct-board' system: 'supply' | 'return' } function getDuctColor(node: DuctAppearance): string { if (node.ductMaterial === 'flex') return FLEX_COLOR if (node.ductMaterial === 'duct-board') return DUCT_BOARD_COLOR + // Spiral is galvanized sheet metal — same body finish; the seam ridge + // is what tells it apart. return SHEET_METAL_COLOR } @@ -168,6 +372,7 @@ export function buildDuctSegmentGeometry(node: DuctSegmentNode): Group { if (node.path.length < 2) return group const isRect = node.shape === 'rect' + const isOval = node.shape === 'oval' const radius = (node.diameter * INCHES_TO_METERS) / 2 const widthM = node.width * INCHES_TO_METERS const heightM = node.height * INCHES_TO_METERS @@ -181,23 +386,41 @@ export function buildDuctSegmentGeometry(node: DuctSegmentNode): Group { rectH: number, material: MeshStandardMaterial, namePrefix: string, + endInsetM = 0, ) => { for (let i = 0; i < points.length - 1; i++) { // Loop bounds + min(2) on the schema guarantee both points exist. - const a = points[i] as Vector3 - const b = points[i + 1] as Vector3 + let a = points[i] as Vector3 + let b = points[i + 1] as Vector3 + // Pull the run's open ends in so this shell's end faces never sit + // coplanar with the duct's own end caps (z-fighting). Clamped so + // a short section can't invert. + if (endInsetM > 0) { + const dir = new Vector3().subVectors(b, a) + const length = dir.length() + if (length < 1e-6) continue + dir.divideScalar(length) + const inset = Math.min(endInsetM, length * 0.25) + if (i === 0) a = a.clone().addScaledVector(dir, inset) + if (i === points.length - 2) b = b.clone().addScaledVector(dir, -inset) + } const mesh = isRect - ? buildRectSection(a, b, rectW, rectH, material, `${namePrefix}-section-${i}`) - : buildSection(a, b, half, material, `${namePrefix}-section-${i}`) + ? buildRectSection(a, b, rectW, rectH, material, `${namePrefix}-section-${i}`, node.roll) + : isOval + ? buildOvalSection(a, b, rectW, rectH, material, `${namePrefix}-section-${i}`, node.roll) + : buildSection(a, b, half, material, `${namePrefix}-section-${i}`) if (mesh) group.add(mesh) } // Joint caps at interior points only (skip first and last — they're // open ends; equipment / terminal / fitting collars cap them). Rect - // joints are cubes spanning the cross-section; round joints spheres. + // joints are cubes spanning the cross-section (oval joints the same + // prism in stadium profile); round joints spheres. for (let i = 1; i < points.length - 1; i++) { const joint = isRect ? new Mesh(new BoxGeometry(rectW, rectH, rectW), material) - : new Mesh(new SphereGeometry(half, RADIAL_SEGMENTS, 12), material) + : isOval + ? new Mesh(createOvalSectionGeometry(rectW, rectH, rectW), material) + : new Mesh(new SphereGeometry(half, RADIAL_SEGMENTS, 12), material) joint.name = `${namePrefix}-joint-${i}` joint.position.copy(points[i] as Vector3) group.add(joint) @@ -206,7 +429,34 @@ export function buildDuctSegmentGeometry(node: DuctSegmentNode): Group { addRun(radius, widthM, heightM, ductMaterial, 'duct') - const insulationThickness = pickInsulationThickness(node.insulationR) + // Construction body detail: spiral winds its lock seam, flex its wire + // helix (tight pitch — reads as corrugation) over each round section. + // These are round-body details, so rect / oval runs render smooth. + const helix = + node.shape === 'round' && node.seamDetail ? helixRidgeFor(node.ductMaterial, radius) : null + if (helix) { + const ridgeMaterial = new MeshStandardMaterial({ + color: helix.color, + metalness: node.ductMaterial === 'flex' ? 0.1 : 0.7, + roughness: node.ductMaterial === 'flex' ? 0.85 : 0.35, + emissive: getSystemTint(node), + emissiveIntensity: 0.08, + }) + for (let i = 0; i < points.length - 1; i++) { + const seam = buildHelixRidge( + points[i] as Vector3, + points[i + 1] as Vector3, + radius, + helix.pitch, + helix.ridge, + ridgeMaterial, + `duct-seam-${i}`, + ) + if (seam) group.add(seam) + } + } + + const insulationThickness = node.insulated ? pickInsulationThickness(node.insulationR) : 0 if (insulationThickness > 0) { const insulationMaterial = new MeshStandardMaterial({ color: '#f0e4c8', @@ -221,6 +471,7 @@ export function buildDuctSegmentGeometry(node: DuctSegmentNode): Group { heightM + insulationThickness * 2, insulationMaterial, 'duct-insulation', + 0.01, ) } diff --git a/packages/nodes/src/duct-segment/parametrics.ts b/packages/nodes/src/duct-segment/parametrics.ts index 3c019e8aa..8416b573a 100644 --- a/packages/nodes/src/duct-segment/parametrics.ts +++ b/packages/nodes/src/duct-segment/parametrics.ts @@ -1,7 +1,106 @@ -import type { ParametricDescriptor } from '@pascal-app/core' +import { + type DuctFittingNode, + type ParametricDescriptor, + useScene, +} from '@pascal-app/core' +import { Vector3 } from 'three' +import { getDuctFittingPorts } from '../duct-fitting/ports' +import { rollToContinueAcrossElbow } from './geometry' import type { DuctSegmentNode } from './schema' +/** A run endpoint sitting this close to a collar counts as mated. */ +const MATE_TOL_M = 0.03 + +function dist2( + a: readonly [number, number, number], + b: readonly [number, number, number], +): number { + const dx = a[0] - b[0] + const dy = a[1] - b[1] + const dz = a[2] - b[2] + return dx * dx + dy * dy + dz * dz +} + +/** + * Cross-section roll that keeps this run continuous through a fitting + * mated at either endpoint — the same continuity the draw tool computes + * for freshly drawn risers (`rollToContinueAcrossElbow`), recovered here + * for runs whose shape is flipped to rect AFTER they were drawn. Without + * it a riser falls back to the world-axis orientation and its profile + * lands 90° off the elbow it rises from. Returns null when no fitting is + * mated (roll 0 — the natural horizontal orientation — is correct). + */ +function rollFromMatedFitting(duct: DuctSegmentNode): number | null { + if (duct.path.length < 2) return null + const first = duct.path[0]! + const last = duct.path[duct.path.length - 1]! + const ends = [ + { point: first, away: duct.path[1]! }, + { point: last, away: duct.path[duct.path.length - 2]! }, + ] + const tol2 = MATE_TOL_M * MATE_TOL_M + for (const node of Object.values(useScene.getState().nodes)) { + if (node.type !== 'duct-fitting') continue + const fitting = node as DuctFittingNode + if (fitting.fittingType === 'reducer') continue + const ports = getDuctFittingPorts(fitting) + for (const end of ends) { + const mated = ports.find((p) => dist2(end.point, p.position) <= tol2) + if (!mated) continue + // The leg on the far side of the junction is the source the + // profile must stay continuous with: an elbow's other run leg, or + // the tee's run when this duct is the branch. + const source = ports.find((p) => p.id !== mated.id && p.id !== 'branch') + if (!source) continue + const srcDuct = Object.values(useScene.getState().nodes).find( + (n) => + n.type === 'duct-segment' && + n.id !== duct.id && + ((n as DuctSegmentNode).path.length >= 2 + ? dist2((n as DuctSegmentNode).path[0]!, source.position) <= tol2 || + dist2( + (n as DuctSegmentNode).path[(n as DuctSegmentNode).path.length - 1]!, + source.position, + ) <= tol2 + : false), + ) as DuctSegmentNode | undefined + const newDir = new Vector3( + end.away[0] - end.point[0], + end.away[1] - end.point[1], + end.away[2] - end.point[2], + ) + if (newDir.lengthSq() < 1e-10) continue + newDir.normalize() + // Only steep runs are ambiguous (world-axis fallback); a + // horizontal run's roll-0 orientation is already canonical, and + // re-deriving it from a possibly-stale riser roll would corrupt it. + if (Math.abs(newDir.y) < Math.SQRT1_2) continue + const srcRoll = srcDuct && srcDuct.shape !== 'round' ? srcDuct.roll : 0 + const srcDir = new Vector3(...source.direction) + return rollToContinueAcrossElbow(srcDir, srcRoll, srcDir, newDir) + } + } + return null +} + export const ductSegmentParametrics: ParametricDescriptor = { + // Flipping a drawn run to rect / oval recovers the cross-section roll + // the draw tool would have computed — risers re-orient to stay + // continuous through the elbow they turn off instead of snapping to + // the world-axis fallback. Spiral is a round-only construction, so a + // non-round run can never hold it: leaving round (or picking spiral on + // a rect / oval run) falls back to plain sheet metal. + derive: (next, patch) => { + const out: Partial = {} + if (next.ductMaterial === 'spiral' && next.shape !== 'round') { + out.ductMaterial = 'sheet-metal' + } + if ('shape' in patch && next.shape !== 'round') { + const roll = rollFromMatedFitting(next) + if (roll !== null) out.roll = roll + } + return out + }, groups: [ { label: 'Air', @@ -15,7 +114,7 @@ export const ductSegmentParametrics: ParametricDescriptor = { { key: 'shape', kind: 'enum', - options: ['round', 'rect'], + options: ['round', 'rect', 'oval'], display: 'segmented', }, { @@ -25,7 +124,7 @@ export const ductSegmentParametrics: ParametricDescriptor = { min: 4, max: 24, step: 1, - visibleIf: (n) => n.shape !== 'rect', + visibleIf: (n) => n.shape === 'round', }, { key: 'width', @@ -34,7 +133,7 @@ export const ductSegmentParametrics: ParametricDescriptor = { min: 4, max: 60, step: 1, - visibleIf: (n) => n.shape === 'rect', + visibleIf: (n) => n.shape !== 'round', }, { key: 'height', @@ -43,7 +142,7 @@ export const ductSegmentParametrics: ParametricDescriptor = { min: 3, max: 40, step: 1, - visibleIf: (n) => n.shape === 'rect', + visibleIf: (n) => n.shape !== 'round', }, ], }, @@ -53,7 +152,19 @@ export const ductSegmentParametrics: ParametricDescriptor = { { key: 'ductMaterial', kind: 'enum', - options: ['sheet-metal', 'flex', 'duct-board'], + options: ['sheet-metal', 'spiral', 'flex', 'duct-board'], + }, + { + key: 'seamDetail', + kind: 'boolean', + // Only meaningful where a body detail exists: round spiral + // (lock seam) and round flex (wire corrugation). + visibleIf: (n) => + n.shape === 'round' && (n.ductMaterial === 'spiral' || n.ductMaterial === 'flex'), + }, + { + key: 'insulated', + kind: 'boolean', }, { key: 'insulationR', @@ -61,6 +172,7 @@ export const ductSegmentParametrics: ParametricDescriptor = { min: 0, max: 8, step: 0.5, + visibleIf: (n) => n.insulated, }, ], }, diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx index e50ea87e1..6a2b9d6d6 100644 --- a/packages/nodes/src/duct-segment/tool.tsx +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -6,7 +6,9 @@ import { getLevelHeight, useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' import { type Group, Matrix4, Vector3 } from 'three' +import { getDuctFittingPorts } from '../duct-fitting/ports' import { planElbowAtPort, planElbowRealign, planTeeAtRunBody } from '../shared/auto-fitting' +import { rectSectionAxes, rollToContinueAcrossElbow } from './geometry' import { collectScenePorts, DUCT_PORT_SYSTEMS, @@ -70,6 +72,63 @@ function snap(value: number, step: number): number { return Math.round(value / step) * step } +function dist2( + a: readonly [number, number, number], + b: readonly [number, number, number], +): number { + const dx = a[0] - b[0] + const dy = a[1] - b[1] + const dz = a[2] - b[2] + return dx * dx + dy * dy + dz * dz +} + +/** + * Cross-section roll for a new rect run leaving `port` along `newDir`, + * so its profile stays continuous with whatever it joined: a turn + * re-derives the roll through the (future) elbow, a straight + * continuation inherits the source's roll as-is. Sources: a rect run's + * open end, or a rect fitting's open collar (continuity then comes from + * the leg on the far side of the junction and the rect run mated + * there). Null when the port doesn't carry a rect orientation. Shared + * by the ghost preview and the commit so what you see is what lands. + */ +function continuityRollFrom(port: ScenePort | null, newDir: Vector3): number | null { + if (!port) return null + const nodes = useScene.getState().nodes + const owner = nodes[port.nodeId] + let srcDir: Vector3 | null = null + let srcRoll = 0 + if (owner?.type === 'duct-segment' && owner.shape !== 'round') { + srcDir = new Vector3(...port.direction) + srcRoll = owner.roll + } else if ( + owner?.type === 'duct-fitting' && + owner.shape !== 'round' && + owner.fittingType !== 'reducer' && + owner.fittingType !== 'transition' + ) { + const source = getDuctFittingPorts(owner).find( + (p) => p.id !== port.id && p.id !== 'branch', + ) + if (source) { + srcDir = new Vector3(...source.direction) + const tol2 = 0.03 * 0.03 + for (const n of Object.values(nodes)) { + if (n.type !== 'duct-segment' || n.shape === 'round' || n.path.length < 2) continue + const ends = [n.path[0]!, n.path[n.path.length - 1]!] + if (ends.some((e) => dist2(e, source.position) <= tol2)) { + srcRoll = n.roll + break + } + } + } + } + if (!srcDir) return null + const cross = new Vector3().crossVectors(srcDir, newDir) + if (cross.lengthSq() < 1e-8) return srcRoll + return rollToContinueAcrossElbow(srcDir, srcRoll, srcDir, newDir) +} + /** * Nearest typed port — duct run ends, fitting collars, anything whose * kind registers `def.ports` — within snap range of `point` on the XZ @@ -90,9 +149,11 @@ function portPoint(port: ScenePort): [number, number, number] { return [port.position[0], port.position[1], port.position[2]] } -/** Cross-section the tool draws with (and commits onto the node). */ +/** Cross-section the tool draws with (and commits onto the node). Oval + * never comes from the Q toggle (round ↔ rect) — it enters by joining + * an existing oval run / fitting collar and continuing its profile. */ type DraftProfile = { - shape: 'round' | 'rect' + shape: 'round' | 'rect' | 'oval' diameter: number width: number height: number @@ -298,7 +359,7 @@ const DuctSegmentTool = () => { const trunkOwner = trunkBody ? useScene.getState().nodes[trunkBody.nodeId] : null const teePlan = trunkBody && trunkOwner?.type === 'duct-segment' - ? planTeeAtRunBody(trunkOwner, trunkBody, dir, profileRef.current.diameter) + ? planTeeAtRunBody(trunkOwner, trunkBody, dir, profileRef.current) : null let ductStart = startPlan?.collarPoint ?? teePlan?.branchCollar ?? startRealign?.collarPoint ?? start @@ -321,6 +382,19 @@ const DuctSegmentTool = () => { ductEnd = end } + // Rect / oval continuity: roll the new run's cross-section so its + // profile stays continuous with whatever either end joined — run + // end or fitting collar, turn or straight continuation (see + // `continuityRollFrom`). The start joint wins if both ends join. + let roll = 0 + if (profileRef.current.shape !== 'round') { + const newDir = new Vector3(...dir) + roll = + continuityRollFrom(startPortRef.current, newDir) ?? + continuityRollFrom(endPort, newDir) ?? + 0 + } + const defaults = ductSegmentDefinition.defaults() const toolDefaults = useEditor.getState().toolDefaults['duct-segment'] ?? {} const duct = DuctSegmentNode.parse({ @@ -332,6 +406,7 @@ const DuctSegmentTool = () => { diameter: profileRef.current.diameter, width: profileRef.current.width, height: profileRef.current.height, + roll, }) // One atomic change: trim / split the joined runs, create the // fittings + the new duct. Single undo step. @@ -368,7 +443,7 @@ const DuctSegmentTool = () => { if (!ceilingModeRef.current) return 0 const ceiling = getLevelHeight(activeLevelId, useScene.getState().nodes) const p = profileRef.current - const verticalIn = p.shape === 'rect' ? p.height : p.diameter + const verticalIn = p.shape === 'round' ? p.diameter : p.height return Math.max(0, ceiling - (verticalIn * 0.0254) / 2) } @@ -619,12 +694,12 @@ const DuctSegmentTool = () => { value: last ? cursorPos[i]! - last[i]! : cursorPos[i]!, signed: !!last, })), - ...(profile.shape === 'rect' - ? [ + ...(profile.shape === 'round' + ? [{ key: 'diameter', prefix: 'Ø', value: profile.diameter * 0.0254, signed: false }] + : [ { key: 'trunk-w', prefix: 'W', value: profile.width * 0.0254, signed: false }, { key: 'trunk-h', prefix: 'H', value: profile.height * 0.0254, signed: false }, - ] - : [{ key: 'diameter', prefix: 'Ø', value: profile.diameter * 0.0254, signed: false }]), + ]), ] : null const pillPrimary = @@ -680,7 +755,13 @@ const DuctSegmentTool = () => { ))} {/* Preview sections */} {previewSegments.map((seg, i) => ( - + ))} ) @@ -690,10 +771,12 @@ function PreviewSegment({ a, b, profile, + startPort, }: { a: [number, number, number] b: [number, number, number] profile: DraftProfile + startPort: ScenePort | null }) { const start = new Vector3(...a) const end = new Vector3(...b) @@ -703,7 +786,8 @@ function PreviewSegment({ dir.normalize() const mid = new Vector3().addVectors(start, end).multiplyScalar(0.5) - if (profile.shape === 'rect') { + // Rect AND oval ghost as a box — close enough for a translucent guide. + if (profile.shape !== 'round') { const w = profile.width * 0.0254 const h = profile.height * 0.0254 return ( @@ -711,12 +795,10 @@ function PreviewSegment({ position={mid.toArray()} ref={(m) => { if (!m) return - // Same stable basis as the geometry builder: width horizontal. - const up = new Vector3(0, 1, 0) - const x = new Vector3().crossVectors(up, dir) - if (x.lengthSq() < 1e-8) x.set(1, 0, 0) - x.normalize() - const z = new Vector3().crossVectors(x, dir) + // Same basis AND roll as the commit will use, so the ghost + // shows the orientation that actually lands. + const roll = continuityRollFrom(startPort, dir) ?? 0 + const { width: x, height: z } = rectSectionAxes(dir, roll) m.quaternion.setFromRotationMatrix(new Matrix4().makeBasis(x, dir, z)) }} > diff --git a/packages/nodes/src/shared/auto-fitting.test.ts b/packages/nodes/src/shared/auto-fitting.test.ts index 619b3fd18..f4fc4fc00 100644 --- a/packages/nodes/src/shared/auto-fitting.test.ts +++ b/packages/nodes/src/shared/auto-fitting.test.ts @@ -97,6 +97,18 @@ describe('planElbowAtPort', () => { expect(plan!.fitting.diameter).toBeCloseTo(2 * Math.sqrt((14 * 8) / Math.PI), 6) }) + test('oval profile: elbow carries the trunk W×H and oval equivalent diameter', () => { + const oval: DuctProfile = { shape: 'oval', diameter: 6, width: 14, height: 8 } + const plan = planElbowAtPort(port([3, 2.4, 0], [1, 0, 0]), [0, 0, 1], oval) + expect(plan).not.toBeNull() + expect(plan!.fitting.shape).toBe('oval') + expect(plan!.fitting.width).toBe(14) + expect(plan!.fitting.height).toBe(8) + // Flat-oval area: (14 − 8) × 8 + π(8/2)² + const area = (14 - 8) * 8 + Math.PI * 16 + expect(plan!.fitting.diameter).toBeCloseTo(2 * Math.sqrt(area / Math.PI), 6) + }) + test('junction on the corner; trim and collar one leg out on each side', () => { const plan = expectMated(port([0, 0, 0], [1, 0, 0]), [0, 0, 1]) // Junction exactly at the drawn corner. @@ -113,7 +125,7 @@ describe('planElbowAtPort', () => { }) }) -import { DuctSegmentNode } from '@pascal-app/core' +import { DuctFittingNode, DuctSegmentNode } from '@pascal-app/core' import { planTeeAtRunBody } from './auto-fitting' import type { RunBodyHit } from './ports' @@ -142,7 +154,7 @@ describe('planTeeAtRunBody', () => { [0, 2.4, 0], [6, 2.4, 0], ]) - const plan = planTeeAtRunBody(run, bodyHit(run, 0, [3, 2.4, 0]), [0, 0, 1], 6) + const plan = planTeeAtRunBody(run, bodyHit(run, 0, [3, 2.4, 0]), [0, 0, 1], ROUND_6) expect(plan).not.toBeNull() const ports = getDuctFittingPorts(plan!.fitting) @@ -173,7 +185,7 @@ describe('planTeeAtRunBody', () => { [6, 0, 0], ]) const d = Math.SQRT1_2 - const plan = planTeeAtRunBody(run, bodyHit(run, 0, [3, 0, 0]), [d, 0, d], 6) + const plan = planTeeAtRunBody(run, bodyHit(run, 0, [3, 0, 0]), [d, 0, d], ROUND_6) expect(plan).not.toBeNull() const branch = getDuctFittingPorts(plan!.fitting).find((p) => p.id === 'branch')! expect(dot(branch.direction, [0, 0, 1])).toBeCloseTo(1, 6) @@ -184,8 +196,8 @@ describe('planTeeAtRunBody', () => { [0, 0, 0], [6, 0, 0], ]) - expect(planTeeAtRunBody(run, bodyHit(run, 0, [0.1, 0, 0]), [0, 0, 1], 6)).toBeNull() - expect(planTeeAtRunBody(run, bodyHit(run, 0, [5.95, 0, 0]), [0, 0, 1], 6)).toBeNull() + expect(planTeeAtRunBody(run, bodyHit(run, 0, [0.1, 0, 0]), [0, 0, 1], ROUND_6)).toBeNull() + expect(planTeeAtRunBody(run, bodyHit(run, 0, [5.95, 0, 0]), [0, 0, 1], ROUND_6)).toBeNull() }) test('branch parallel to the trunk → null', () => { @@ -193,7 +205,7 @@ describe('planTeeAtRunBody', () => { [0, 0, 0], [6, 0, 0], ]) - expect(planTeeAtRunBody(run, bodyHit(run, 0, [3, 0, 0]), [1, 0, 0], 6)).toBeNull() + expect(planTeeAtRunBody(run, bodyHit(run, 0, [3, 0, 0]), [1, 0, 0], ROUND_6)).toBeNull() }) test('vertical drop off a horizontal trunk', () => { @@ -201,7 +213,7 @@ describe('planTeeAtRunBody', () => { [0, 2.4, 0], [6, 2.4, 0], ]) - const plan = planTeeAtRunBody(run, bodyHit(run, 0, [3, 2.4, 0]), [0, -1, 0], 6) + const plan = planTeeAtRunBody(run, bodyHit(run, 0, [3, 2.4, 0]), [0, -1, 0], ROUND_6) expect(plan).not.toBeNull() const branch = getDuctFittingPorts(plan!.fitting).find((p) => p.id === 'branch')! expect(dot(branch.direction, [0, -1, 0])).toBeCloseTo(1, 6) @@ -227,7 +239,7 @@ describe('planTeeAtRunBody', () => { insulationR: 0, system: 'supply', }) - const plan = planTeeAtRunBody(rect, bodyHit(rect, 0, [3, 2.4, 0]), [0, 0, 1], 6) + const plan = planTeeAtRunBody(rect, bodyHit(rect, 0, [3, 2.4, 0]), [0, 0, 1], ROUND_6) expect(plan).not.toBeNull() // Tee run legs carry the area-equivalent round size of 14×8. expect(plan!.fitting.diameter).toBeCloseTo(2 * Math.sqrt((14 * 8) / Math.PI), 6) @@ -238,13 +250,42 @@ describe('planTeeAtRunBody', () => { expect(plan!.trunkTail.height).toBe(8) }) + test('rect branch: tee carries the branch W×H profile and equivalent diameter', () => { + const run = trunk([ + [0, 2.4, 0], + [6, 2.4, 0], + ]) + const rectBranch: DuctProfile = { shape: 'rect', diameter: 6, width: 12, height: 6 } + const plan = planTeeAtRunBody(run, bodyHit(run, 0, [3, 2.4, 0]), [0, 0, 1], rectBranch) + expect(plan).not.toBeNull() + expect(plan!.fitting.shape2).toBe('rect') + expect(plan!.fitting.width2).toBe(12) + expect(plan!.fitting.height2).toBe(6) + expect(plan!.fitting.diameter2).toBeCloseTo(2 * Math.sqrt((12 * 6) / Math.PI), 6) + }) + + test('oval branch: tee carries the branch W×H profile and oval equivalent diameter', () => { + const run = trunk([ + [0, 2.4, 0], + [6, 2.4, 0], + ]) + const ovalBranch: DuctProfile = { shape: 'oval', diameter: 6, width: 12, height: 6 } + const plan = planTeeAtRunBody(run, bodyHit(run, 0, [3, 2.4, 0]), [0, 0, 1], ovalBranch) + expect(plan).not.toBeNull() + expect(plan!.fitting.shape2).toBe('oval') + expect(plan!.fitting.width2).toBe(12) + expect(plan!.fitting.height2).toBe(6) + const area = (12 - 6) * 6 + Math.PI * 9 + expect(plan!.fitting.diameter2).toBeCloseTo(2 * Math.sqrt(area / Math.PI), 6) + }) + test('polyline trunk: split lands in the hit segment, other points preserved', () => { const run = trunk([ [0, 0, 0], [4, 0, 0], [4, 0, 4], ]) - const plan = planTeeAtRunBody(run, bodyHit(run, 1, [4, 0, 2]), [1, 0, 0], 6) + const plan = planTeeAtRunBody(run, bodyHit(run, 1, [4, 0, 2]), [1, 0, 0], ROUND_6) expect(plan).not.toBeNull() // Upstream half keeps both leading points. expect(plan!.trunkUpdate.data.path.length).toBe(3) @@ -255,6 +296,49 @@ describe('planTeeAtRunBody', () => { }) }) +describe('tee branchAngle (lateral)', () => { + function tee(branchAngle: number): DuctFittingNode { + return DuctFittingNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Tee', + fittingType: 'tee', + diameter: 8, + diameter2: 6, + branchAngle, + system: 'supply', + }) + } + + test('90° branch leaves square to the run (+Z), run legs untouched', () => { + const ports = getDuctFittingPorts(tee(90)) + const branch = ports.find((p) => p.id === 'branch')! + expect(dot(branch.direction, [0, 0, 1])).toBeCloseTo(1, 6) + expect(dot(ports.find((p) => p.id === 'inlet')!.direction, [-1, 0, 0])).toBeCloseTo(1, 6) + expect(dot(ports.find((p) => p.id === 'outlet')!.direction, [1, 0, 0])).toBeCloseTo(1, 6) + }) + + test('45° lateral sweeps the branch downstream toward the outlet', () => { + const d = Math.SQRT1_2 + const branch = getDuctFittingPorts(tee(45)).find((p) => p.id === 'branch')! + // Leans equally toward +X (outlet) and +Z; collar sits along that ray. + expect(dot(branch.direction, [d, 0, d])).toBeCloseTo(1, 6) + expect(branch.position[0]).toBeGreaterThan(0) + expect(branch.position[2]).toBeGreaterThan(0) + }) + + test('135° lateral leans the branch upstream toward the inlet', () => { + const d = Math.SQRT1_2 + const branch = getDuctFittingPorts(tee(135)).find((p) => p.id === 'branch')! + // Mirror of 45°: leans toward -X (inlet) and +Z. + expect(dot(branch.direction, [-d, 0, d])).toBeCloseTo(1, 6) + expect(branch.position[0]).toBeLessThan(0) + expect(branch.position[2]).toBeGreaterThan(0) + }) +}) + describe('planElbowRealign', () => { // A 90° elbow as the draw tool mints it: horizontal run arrives along // +X (inlet mated), free outlet pointing +Z. diff --git a/packages/nodes/src/shared/auto-fitting.ts b/packages/nodes/src/shared/auto-fitting.ts index a54e619b6..18aca8c09 100644 --- a/packages/nodes/src/shared/auto-fitting.ts +++ b/packages/nodes/src/shared/auto-fitting.ts @@ -6,7 +6,11 @@ import { } from '@pascal-app/core' import { Euler, Matrix4, Quaternion, Vector3 } from 'three' import { fittingLegLength } from '../duct-fitting/ports' -import { ductPortDiameterIn, equivalentDiameterIn } from '../duct-segment/geometry' +import { + ductPortDiameterIn, + equivalentDiameterIn, + ovalEquivalentDiameterIn, +} from '../duct-segment/geometry' import { pipeFittingLegLength, WYE_BRANCH_RAD } from '../pipe-fitting/ports' import type { RunBodyHit, ScenePort } from './ports' @@ -22,19 +26,23 @@ type Point = [number, number, number] /** Cross-section a planned fitting (and the duct drawing it) carries. */ export type DuctProfile = { - shape: 'round' | 'rect' - /** Round size in inches (ignored for rect — the equivalent is derived). */ + shape: 'round' | 'rect' | 'oval' + /** Round size in inches (ignored for rect / oval — the equivalent is derived). */ diameter: number - /** Rect profile in inches. */ + /** Rect / oval profile in inches. */ width: number height: number } /** Effective round-size (inches) a profile presents at joints. */ export function profileDiameterIn(profile: DuctProfile): number { - return profile.shape === 'rect' - ? Math.min(48, equivalentDiameterIn(profile.width, profile.height)) - : profile.diameter + if (profile.shape === 'rect') { + return Math.min(48, equivalentDiameterIn(profile.width, profile.height)) + } + if (profile.shape === 'oval') { + return Math.min(48, ovalEquivalentDiameterIn(profile.width, profile.height)) + } + return profile.diameter } export type ElbowJointPlan = { @@ -206,7 +214,7 @@ export function planTeeAtRunBody( trunk: DuctSegmentNode, hit: RunBodyHit, awayDir: Point, - branchDiameterIn: number, + branch: DuctProfile, ): TeeTapPlan | null { const a = trunk.path[hit.segmentIndex] const b = trunk.path[hit.segmentIndex + 1] @@ -227,6 +235,7 @@ export function planTeeAtRunBody( // Rect trunks present their area-equivalent round size at joints // (clamped to the fitting schema's 48" ceiling). const trunkDiameterIn = Math.min(48, ductPortDiameterIn(trunk)) + const branchDiameterIn = Math.min(48, profileDiameterIn(branch)) const legRun = fittingLegLength(trunkDiameterIn) const legBranch = fittingLegLength(branchDiameterIn) const P = new Vector3(...hit.point) @@ -260,6 +269,9 @@ export function planTeeAtRunBody( width: trunk.width, height: trunk.height, diameter: trunkDiameterIn, + shape2: branch.shape, + width2: branch.width, + height2: branch.height, diameter2: branchDiameterIn, ductMaterial: 'sheet-metal', system: trunk.system, @@ -289,7 +301,9 @@ export function planTeeAtRunBody( diameter: trunk.diameter, width: trunk.width, height: trunk.height, + roll: trunk.roll, ductMaterial: trunk.ductMaterial, + insulated: trunk.insulated, insulationR: trunk.insulationR, system: trunk.system, }) From 444d658e885e610f5321edf08601614d667a5801 Mon Sep 17 00:00:00 2001 From: sudhir Date: Fri, 12 Jun 2026 23:22:36 +0530 Subject: [PATCH 41/59] feat(nodes): pipe-segment auto-slope start lift + selection handles A freely placed drain start is now raised so the 1:48 fall lands on the grid plane (nothing clips below), while a port/body-snapped start keeps its fixed height and the end drops instead. Adds a selection-time system module exposing path-point handles to edit a committed run. Co-Authored-By: Claude Opus 4.7 --- packages/nodes/src/pipe-segment/definition.ts | 3 + packages/nodes/src/pipe-segment/system.tsx | 361 ++++++++++++++++++ packages/nodes/src/pipe-segment/tool.tsx | 62 ++- 3 files changed, 414 insertions(+), 12 deletions(-) create mode 100644 packages/nodes/src/pipe-segment/system.tsx diff --git a/packages/nodes/src/pipe-segment/definition.ts b/packages/nodes/src/pipe-segment/definition.ts index b889af431..baf3a16b1 100644 --- a/packages/nodes/src/pipe-segment/definition.ts +++ b/packages/nodes/src/pipe-segment/definition.ts @@ -81,6 +81,9 @@ export const pipeSegmentDefinition: NodeDefinition = { floorplan: buildPipeSegmentFloorplan, + // Selection-time path-point handles (drag to edit a committed run). + system: { module: () => import('./system') }, + tool: () => import('./tool'), toolHints: [ { key: 'Click', label: 'Start run' }, diff --git a/packages/nodes/src/pipe-segment/system.tsx b/packages/nodes/src/pipe-segment/system.tsx new file mode 100644 index 000000000..f37dc28c0 --- /dev/null +++ b/packages/nodes/src/pipe-segment/system.tsx @@ -0,0 +1,361 @@ +'use client' + +import { + type AnyNode, + type AnyNodeId, + analyzePortConnectivity, + type PipeSegmentNode, + type PortConnectivity, + pauseSceneHistory, + resolveConnectivityUpdates, + resumeSceneHistory, + sceneRegistry, + useScene, +} from '@pascal-app/core' +import { DimensionPill, useEditor } from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { createPortal, type ThreeEvent, useThree } from '@react-three/fiber' +import { useEffect, useRef, useState } from 'react' +import { type Object3D, Plane, Raycaster, Vector2, Vector3 } from 'three' +import { collectScenePorts, DWV_PORT_SYSTEMS, findNearestPortXZ } from '../shared/ports' + +/** Handle pip radius (meters). */ +const HANDLE_RADIUS = 0.09 +/** Port-snap radius for dragged run endpoints (meters, XZ). */ +const PORT_SNAP_RADIUS_M = 0.4 + +const UP = new Vector3(0, 1, 0) + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +type Point = [number, number, number] + +/** + * Selection-time editing for committed DWV pipe runs: one draggable + * handle per path point. The plumbing sibling of the duct-segment + * system — same portal / constrained-drag / single-undo model, snapping + * to DWV ports instead of duct ports. + * + * Handles are PORTALED into the pipe's registered scene group so they + * share its exact frame — path coords are node-local, and the level / + * building transform above the group applies to the handles for free. + * + * Drag model: by default the point is CONSTRAINED to the axis the + * segment was drawn along. Holding **Alt** releases it into free + * horizontal-plane movement (endpoints port-snap onto nearby DWV ports). + * Holding **Shift** bypasses grid snapping for a precision drag. + */ +const PipeSegmentSystem = () => { + const selectedIds = useViewer((s) => s.selection.selectedIds) + const pipe = useScene((s) => { + if (selectedIds.length !== 1) return null + const node = s.nodes[selectedIds[0] as AnyNodeId] + return node?.type === 'pipe-segment' ? (node as PipeSegmentNode) : null + }) + + // Portal target: the pipe's registered group. Resolved with a rAF + // retry because registration happens on the renderer's mount, which + // can land a frame after selection. + const pipeId = pipe?.id ?? null + const [target, setTarget] = useState(null) + useEffect(() => { + if (!pipeId) { + setTarget(null) + return + } + let frameId = 0 + const resolve = () => { + const next = sceneRegistry.nodes.get(pipeId as AnyNodeId) ?? null + setTarget((cur) => (cur === next ? cur : next)) + if (!next) frameId = window.requestAnimationFrame(resolve) + } + resolve() + return () => window.cancelAnimationFrame(frameId) + }, [pipeId]) + + if (!pipe || !target) return null + return createPortal(, target, undefined) +} + +const PipePointHandles = ({ pipe, target }: { pipe: PipeSegmentNode; target: Object3D }) => { + const { camera, gl } = useThree() + const unit = useViewer((s) => s.unit) + const [draggingIndex, setDraggingIndex] = useState(null) + const [hoverIndex, setHoverIndex] = useState(null) + // Set while a drag is live; null otherwise. Holds everything the window + // pointer handlers need so they never read stale React state. + const dragRef = useRef<{ + index: number + initialPath: Point[] + current: Point + cleanup: () => void + // Connectivity snapshot taken at pointer-down: which fittings / pipes are + // mated to this run's endpoints, so they follow as the endpoint moves. + connectivity: PortConnectivity | null + } | null>(null) + + const makeRay = (clientX: number, clientY: number) => { + const rect = gl.domElement.getBoundingClientRect() + const ndc = new Vector2( + ((clientX - rect.left) / rect.width) * 2 - 1, + -((clientY - rect.top) / rect.height) * 2 + 1, + ) + const raycaster = new Raycaster() + raycaster.setFromCamera(ndc, camera) + return raycaster.ray + } + + const intersect = (clientX: number, clientY: number, plane: Plane): Vector3 | null => { + const hit = new Vector3() + return makeRay(clientX, clientY).intersectPlane(plane, hit) ? hit : null + } + + /** + * Signed distance along `axisWorld` (unit, through `anchorWorld`) of the + * point on that line closest to the cursor ray. Null when the ray runs + * (near-)parallel to the axis and the projection is unstable. + */ + const projectOntoAxis = ( + clientX: number, + clientY: number, + anchorWorld: Vector3, + axisWorld: Vector3, + ): number | null => { + const ray = makeRay(clientX, clientY) + const w0 = new Vector3().subVectors(ray.origin, anchorWorld) + const b = ray.direction.dot(axisWorld) + const denom = 1 - b * b + if (Math.abs(denom) < 1e-6) return null + const d0 = ray.direction.dot(w0) + const e0 = axisWorld.dot(w0) + return (e0 - b * d0) / denom + } + + /** World-space position of a local path point. */ + const toWorld = (p: Point): Vector3 => target.localToWorld(new Vector3(p[0], p[1], p[2])) + /** Convert a world-space hit back into the pipe group's local frame. */ + const toLocal = (world: Vector3): Point => { + const local = target.worldToLocal(world.clone()) + return [local.x, local.y, local.z] + } + + // Follow-updates for fittings / pipes mated to this run's endpoints, given + // the run's live path. Endpoints whose position didn't change resolve to a + // zero delta, so only the dragged endpoint's partner actually moves. + const connectivityUpdatesForPath = ( + connectivity: PortConnectivity | null, + path: Point[], + ): { id: AnyNodeId; data: Partial }[] => { + if (!connectivity) return [] + const preview = { ...(pipe as Record), path } as AnyNode + return resolveConnectivityUpdates(connectivity, preview).filter( + (u) => useScene.getState().nodes[u.id], + ) + } + + const onHandleDown = (index: number) => (e: ThreeEvent) => { + e.stopPropagation() + const initialPath = pipe.path.map((p) => [...p] as Point) + const startPoint = initialPath[index]! + const connectivity = analyzePortConnectivity(pipe as AnyNode, useScene.getState().nodes) + pauseSceneHistory(useScene) + useViewer.getState().setInputDragging(true) + document.body.style.cursor = 'grabbing' + setDraggingIndex(index) + + const isEndpoint = index === 0 || index === initialPath.length - 1 + + // Axis the segment was drawn along, at this point: from the + // neighbouring path point toward the dragged one. The default drag + // is constrained to this line. + const neighbor = initialPath[index === 0 ? 1 : index - 1]! + const axisLocal = new Vector3( + startPoint[0] - neighbor[0], + startPoint[1] - neighbor[1], + startPoint[2] - neighbor[2], + ) + if (axisLocal.lengthSq() < 1e-9) axisLocal.set(1, 0, 0) + axisLocal.normalize() + // World-space anchor + axis, derived once — the constraint line is + // fixed for the whole drag regardless of where the point currently is. + const anchorWorldStart = toWorld(startPoint) + const axisWorld = toWorld([ + startPoint[0] + axisLocal.x, + startPoint[1] + axisLocal.y, + startPoint[2] + axisLocal.z, + ]) + .sub(anchorWorldStart) + .normalize() + + const onMove = (event: PointerEvent) => { + const drag = dragRef.current + if (!drag) return + const current = drag.current + // Shift = precision: bypass grid snapping for a perfectly smooth + // drag (snap() is a no-op at step 0). + const step = event.shiftKey ? 0 : useEditor.getState().gridSnapStep + let next: Point | null = null + if (event.altKey) { + // Alt = freedom: slide on the horizontal plane at the point's + // height. Endpoints can port-snap here to mate onto a fitting. + const plane = new Plane().setFromNormalAndCoplanarPoint(UP, toWorld(current)) + const hit = intersect(event.clientX, event.clientY, plane) + if (hit) { + const local = toLocal(hit) + next = [snap(local[0], step), current[1], snap(local[2], step)] + if (isEndpoint) { + const port = findNearestPortXZ( + [local[0], current[1], local[2]], + collectScenePorts({ excludeNodeId: pipe.id, systems: DWV_PORT_SYSTEMS }), + PORT_SNAP_RADIUS_M, + ) + if (port) next = [port.position[0], port.position[1], port.position[2]] + } + } + } else { + // Default: constrained to the axis the segment was drawn along — + // slide the point closer / further along its own line. + const t = projectOntoAxis(event.clientX, event.clientY, anchorWorldStart, axisWorld) + if (t !== null) { + const dist = snap(t, step) + next = [ + startPoint[0] + axisLocal.x * dist, + Math.max(0, startPoint[1] + axisLocal.y * dist), + startPoint[2] + axisLocal.z * dist, + ] + } + } + if (!next) return + if (next[0] === current[0] && next[1] === current[1] && next[2] === current[2]) return + drag.current = next + const path = pipe.path.map((p, i) => (i === drag.index ? next! : p)) as Point[] + // Drag the run + any fittings mated to the moved endpoint as one batch. + useScene + .getState() + .updateNodes([ + { id: pipe.id as AnyNodeId, data: { path } }, + ...connectivityUpdatesForPath(drag.connectivity, path), + ]) + } + + const onUp = () => { + const drag = dragRef.current + if (!drag) return + drag.cleanup() + dragRef.current = null + setDraggingIndex(null) + // Single-undo dance: revert (still paused), resume, re-apply the + // final path — plus any connected fitting moves — as one tracked batch. + const finalPath = drag.initialPath.map((p, i) => + i === drag.index ? drag.current : p, + ) as Point[] + const finalUpdates = connectivityUpdatesForPath(drag.connectivity, finalPath) + // Revert the run AND the followers to their pre-drag state while paused + // so history captures a clean before→after delta. + const revertUpdates = (drag.connectivity?.connections ?? []).flatMap((conn) => + conn.kind === 'rigid-node' + ? [{ id: conn.nodeId, data: { position: conn.startPosition } as Partial }] + : [{ id: conn.nodeId, data: { path: conn.startPath } as Partial }], + ) + useScene + .getState() + .updateNodes([ + { id: pipe.id as AnyNodeId, data: { path: drag.initialPath } }, + ...revertUpdates.filter((u) => useScene.getState().nodes[u.id]), + ]) + resumeSceneHistory(useScene) + const moved = finalPath[drag.index]!.some( + (v, axis) => v !== drag.initialPath[drag.index]![axis], + ) + if (moved) { + useScene + .getState() + .updateNodes([{ id: pipe.id as AnyNodeId, data: { path: finalPath } }, ...finalUpdates]) + } + } + + const cleanup = () => { + window.removeEventListener('pointermove', onMove) + window.removeEventListener('pointerup', onUp) + window.removeEventListener('pointercancel', onUp) + useViewer.getState().setInputDragging(false) + document.body.style.cursor = '' + } + + dragRef.current = { index, initialPath, current: startPoint, cleanup, connectivity } + window.addEventListener('pointermove', onMove) + window.addEventListener('pointerup', onUp) + window.addEventListener('pointercancel', onUp) + } + + return ( + + {pipe.path.map((p, i) => { + const active = draggingIndex === i + const hovered = hoverIndex === i + return ( + { + e.stopPropagation() + setHoverIndex(i) + if (draggingIndex === null) document.body.style.cursor = 'grab' + }} + onPointerLeave={() => { + setHoverIndex((prev) => (prev === i ? null : prev)) + if (draggingIndex === null) document.body.style.cursor = '' + }} + position={p as Point} + > + + + + ) + })} + {draggingIndex !== null && + pipe.path[draggingIndex] && + (() => { + // Same pill as the draw tool: signed per-axis deltas from the + // drag-start position, dominant axis emphasised. + const point = pipe.path[draggingIndex]! + const origin = dragRef.current?.initialPath[draggingIndex] ?? point + const deltas = [point[0] - origin[0], point[1] - origin[1], point[2] - origin[2]] + const axes = ['x', 'y', 'z'] as const + const primary = axes.reduce((best, axis, i) => + Math.abs(deltas[i]!) > Math.abs(deltas[axes.indexOf(best)]!) ? axis : best, + ) + return ( + + ({ + key: axis, + prefix: axis.toUpperCase(), + value: deltas[i]!, + signed: true, + }))} + primary={primary} + unit={unit} + /> + + ) + })()} + + ) +} + +export default PipeSegmentSystem diff --git a/packages/nodes/src/pipe-segment/tool.tsx b/packages/nodes/src/pipe-segment/tool.tsx index 77ae024de..46a4ccf31 100644 --- a/packages/nodes/src/pipe-segment/tool.tsx +++ b/packages/nodes/src/pipe-segment/tool.tsx @@ -25,10 +25,12 @@ import { pipeSegmentDefinition } from './definition' * existing pipe end — DWV ports only, duct/refrigerant collars are * invisible to it). The start inherits the snapped port's height. * - **Second click** commits a two-point pipe and re-arms. - * - **Slope**: waste runs FALL automatically — the end point drops by - * ¼" per foot (1:48) of horizontal distance, the IPC default for - * residential drains. Vent runs stay level. The pill shows the live - * drop in the Y part. + * - **Slope**: waste runs FALL automatically at ¼" per foot (1:48) of + * horizontal distance, the IPC default for residential drains. A + * freely placed start is RAISED so the run falls onto the grid plane + * (nothing clips below); a port/body-snapped start keeps its fixed + * height and the end drops instead. Vent runs stay level. The pill + * shows the live drop in the Y part. * - **Q** toggles waste ↔ vent. **[ / ]** steps the pipe size through * nominal DWV diameters. * - Hold **Alt** → vertical mode (stacks): XZ locks to the start, @@ -135,10 +137,23 @@ const PipeSegmentTool = () => { } const commitSegment = ( - start: [number, number, number], + rawStart: [number, number, number], end: [number, number, number], endPort: ScenePort | null = null, ) => { + // Free waste start: lift it by the drain fall so the run lands ON + // the grid plane instead of sinking below it. Snapped starts are + // height-fixed (fixture drain, run end), so their end drops instead. + let start = rawStart + if ( + systemRef.current === 'waste' && + !startPortRef.current && + !startBodyRef.current && + !endPort + ) { + const run = Math.hypot(end[0] - rawStart[0], end[2] - rawStart[2]) + start = [rawStart[0], rawStart[1] + run * DRAIN_SLOPE, rawStart[2]] + } const length = Math.hypot(end[0] - start[0], end[1] - start[1], end[2] - start[2]) if (length < 1e-4) return const dir: [number, number, number] = [ @@ -205,12 +220,16 @@ const PipeSegmentTool = () => { setAltActive(false) } - /** Apply the drain fall to an XZ-resolved end point. */ + /** Apply the drain fall to an XZ-resolved end point. Only snapped + * starts (fixture drain, run end/body) drop the end — they're + * height-fixed. A free start keeps the end on the grid plane and + * gets LIFTED at commit instead, so the run never sinks below it. */ const applySlope = ( start: [number, number, number], end: [number, number, number], ): [number, number, number] => { if (systemRef.current !== 'waste') return end + if (!startPortRef.current && !startBodyRef.current) return end const run = Math.hypot(end[0] - start[0], end[2] - start[2]) return [end[0], start[1] - run * DRAIN_SLOPE, end[2]] } @@ -402,13 +421,32 @@ const PipeSegmentTool = () => { if (!activeLevelId) return null + // Free waste start lifts at commit so the run falls ONTO the grid — + // mirror that here so the preview line / pill match the placed pipe. + // A snapped end (snapTarget set) keeps the start where it is. + const displayStart = + draftStart && + cursorPos && + system === 'waste' && + !startPortRef.current && + !startBodyRef.current && + !snapTarget && + !altActive + ? ([ + draftStart[0], + draftStart[1] + + Math.hypot(cursorPos[0] - draftStart[0], cursorPos[2] - draftStart[2]) * DRAIN_SLOPE, + draftStart[2], + ] as [number, number, number]) + : draftStart + const pillParts = cursorPos ? [ ...(['x', 'y', 'z'] as const).map((axis, i) => ({ key: axis, prefix: axis.toUpperCase(), - value: draftStart ? cursorPos[i]! - draftStart[i]! : cursorPos[i]!, - signed: !!draftStart, + value: displayStart ? cursorPos[i]! - displayStart[i]! : cursorPos[i]!, + signed: !!displayStart, })), { key: 'diameter', prefix: 'Ø', value: diameter * 0.0254, signed: false }, ] @@ -444,14 +482,14 @@ const PipeSegmentTool = () => { )} - {draftStart && ( - + {displayStart && ( + )} - {draftStart && cursorPos && ( - + {displayStart && cursorPos && ( + )} ) From 0aafe9d87b84758f5c3b602aadea93ca5e40d152 Mon Sep 17 00:00:00 2001 From: sudhir Date: Fri, 12 Jun 2026 23:22:50 +0530 Subject: [PATCH 42/59] feat: DWV riser diagram + validation services Adds two core services: `buildRiserDiagram` projects a plumbing network to an isometric riser diagram (lines/markers), and `validateDwv` reports DWV code findings by severity. Surfaces them in the editor via a toggleable riser-diagram overlay panel and a view-toggle button. Co-Authored-By: Claude Opus 4.7 --- packages/core/src/services/index.ts | 12 ++ .../core/src/services/riser-diagram.test.ts | 75 ++++++++ packages/core/src/services/riser-diagram.ts | 143 ++++++++++++++++ .../core/src/services/validate-dwv.test.ts | 125 ++++++++++++++ packages/core/src/services/validate-dwv.ts | 161 ++++++++++++++++++ .../editor/src/components/editor/index.tsx | 2 + .../components/editor/riser-diagram-panel.tsx | 131 ++++++++++++++ .../ui/action-menu/view-toggles.tsx | 26 ++- packages/editor/src/store/use-editor.tsx | 7 + 9 files changed, 681 insertions(+), 1 deletion(-) create mode 100644 packages/core/src/services/riser-diagram.test.ts create mode 100644 packages/core/src/services/riser-diagram.ts create mode 100644 packages/core/src/services/validate-dwv.test.ts create mode 100644 packages/core/src/services/validate-dwv.ts create mode 100644 packages/editor/src/components/editor/riser-diagram-panel.tsx diff --git a/packages/core/src/services/index.ts b/packages/core/src/services/index.ts index 0a4bec8a9..17233110d 100644 --- a/packages/core/src/services/index.ts +++ b/packages/core/src/services/index.ts @@ -72,3 +72,15 @@ export { type SystemSummary, summarizeSystemFor, } from './system-graph' +export { + type DwvFinding, + type DwvSeverity, + validateDwv, +} from './validate-dwv' +export { + buildRiserDiagram, + projectIso, + type RiserDiagram, + type RiserLine, + type RiserMarker, +} from './riser-diagram' diff --git a/packages/core/src/services/riser-diagram.test.ts b/packages/core/src/services/riser-diagram.test.ts new file mode 100644 index 000000000..56014f29d --- /dev/null +++ b/packages/core/src/services/riser-diagram.test.ts @@ -0,0 +1,75 @@ +import { describe, expect, test } from 'bun:test' +import type { AnyNode, AnyNodeId } from '../schema' +import { buildRiserDiagram, projectIso } from './riser-diagram' + +type Point = [number, number, number] + +let nextId = 0 +function makeNode(type: string, fields: Record): AnyNode { + nextId += 1 + return { id: `${type}_${nextId}`, type, object: 'node', parentId: null, ...fields } as AnyNode +} +function sceneOf(...nodes: AnyNode[]): Record { + return Object.fromEntries(nodes.map((n) => [n.id, n])) as Record +} + +describe('projectIso', () => { + test('higher elevation maps to smaller screen Y', () => { + const [, lowY] = projectIso(0, 0, 0) + const [, highY] = projectIso(0, 2, 0) + expect(highY).toBeLessThan(lowY) + }) +}) + +describe('buildRiserDiagram', () => { + test('null when no DWV nodes', () => { + const wall = makeNode('wall', {}) + expect(buildRiserDiagram(sceneOf(wall))).toBeNull() + }) + + test('classifies a vertical stack vs a sloped horizontal drain', () => { + const stack = makeNode('pipe-segment', { + path: [ + [0, 0, 0], + [0, 3, 0], + ] as Point[], + diameter: 3, + system: 'vent', + }) + const drain = makeNode('pipe-segment', { + path: [ + [0, 0, 0], + [3, -0.06, 0], + ] as Point[], + diameter: 2, + system: 'waste', + }) + const diagram = buildRiserDiagram(sceneOf(stack, drain))! + const stackLine = diagram.lines.find((l) => l.nodeId === stack.id)! + const drainLine = diagram.lines.find((l) => l.nodeId === drain.id)! + expect(stackLine.vertical).toBe(true) + expect(drainLine.vertical).toBe(false) + }) + + test('emits a vent-termination marker for a vent run', () => { + const vent = makeNode('pipe-segment', { + path: [ + [0, 0, 0], + [0, 3, 0], + ] as Point[], + diameter: 2, + system: 'vent', + }) + const diagram = buildRiserDiagram(sceneOf(vent))! + expect(diagram.markers.some((m) => m.kind === 'vent-termination')).toBe(true) + }) + + test('labels traps', () => { + const trap = makeNode('pipe-trap', { + position: [1, 0, 0] as Point, + diameter: 1.5, + }) + const diagram = buildRiserDiagram(sceneOf(trap))! + expect(diagram.markers.some((m) => m.kind === 'trap')).toBe(true) + }) +}) diff --git a/packages/core/src/services/riser-diagram.ts b/packages/core/src/services/riser-diagram.ts new file mode 100644 index 000000000..d5c7a7aef --- /dev/null +++ b/packages/core/src/services/riser-diagram.ts @@ -0,0 +1,143 @@ +import type { AnyNode, AnyNodeId } from '../schema' + +/** + * Riser diagram (plumbing isometric) — the conventional way DWV systems + * are drawn for permit: the drain/vent tree projected to a 30° iso so + * vertical stacks read as vertical and horizontal runs lean off at 30°, + * annotated with size + slope and vent terminations. + * + * This is a pure projector: it turns the scene's DWV nodes into 2D + * drawables (level-independent, no rendering). The editor draws the + * result as SVG. Air/refrigerant nodes are ignored — riser diagrams are + * a plumbing convention. + */ + +const COS30 = Math.cos(Math.PI / 6) +const SIN30 = Math.sin(Math.PI / 6) + +/** A 3D level-local point (meters) projected to 2D iso screen space. + * Screen Y grows DOWNWARD (SVG convention), so higher elevation → lower + * screen Y. */ +export function projectIso(x: number, y: number, z: number): [number, number] { + const sx = (x - z) * COS30 + const sy = (x + z) * SIN30 - y + return [sx, sy] +} + +export type RiserLine = { + /** Projected endpoints in iso screen space. */ + from: [number, number] + to: [number, number] + system: 'waste' | 'vent' + /** Nominal size in inches. */ + diameter: number + /** True for a (near-)vertical run — drawn solid/bold as a stack. */ + vertical: boolean + /** Source node, so the editor can link selection. */ + nodeId: AnyNodeId +} + +export type RiserMarker = { + point: [number, number] + kind: 'trap' | 'vent-termination' | 'fitting' + label: string + nodeId: AnyNodeId +} + +export type RiserDiagram = { + lines: RiserLine[] + markers: RiserMarker[] + /** Bounding box of all projected geometry, screen space. */ + bounds: { minX: number; minY: number; maxX: number; maxY: number } +} + +/** Elevation gain per horizontal meter under which a leg is "vertical". */ +const VERTICAL_EPS = 4 // dy/dxz ratio: steeper than this reads as a stack + +type Vec3 = readonly [number, number, number] + +function legIsVertical(a: Vec3, b: Vec3): boolean { + const horizontal = Math.hypot(b[0] - a[0], b[2] - a[2]) + const vertical = Math.abs(b[1] - a[1]) + if (horizontal < 1e-4) return true + return vertical / horizontal > VERTICAL_EPS +} + +/** + * Build the riser diagram for the whole scene. Returns null when there's + * no DWV geometry to draw. + */ +export function buildRiserDiagram( + nodes: Readonly>, +): RiserDiagram | null { + const lines: RiserLine[] = [] + const markers: RiserMarker[] = [] + + let minX = Infinity + let minY = Infinity + let maxX = -Infinity + let maxY = -Infinity + const grow = (p: [number, number]) => { + if (p[0] < minX) minX = p[0] + if (p[1] < minY) minY = p[1] + if (p[0] > maxX) maxX = p[0] + if (p[1] > maxY) maxY = p[1] + } + + for (const node of Object.values(nodes)) { + if (!node) continue + if (node.type === 'pipe-segment') { + const path = node.path as Vec3[] + for (let i = 0; i < path.length - 1; i++) { + const a = path[i]! + const b = path[i + 1]! + const from = projectIso(a[0], a[1], a[2]) + const to = projectIso(b[0], b[1], b[2]) + grow(from) + grow(to) + lines.push({ + from, + to, + system: node.system, + diameter: node.diameter, + vertical: legIsVertical(a, b), + nodeId: node.id, + }) + } + // Vent runs that end above everything are vent terminations + // (through-roof). Tag the highest endpoint of a vent run. + if (node.system === 'vent') { + const top = path.reduce((hi, p) => (p[1] > hi[1] ? p : hi), path[0]!) + const pt = projectIso(top[0], top[1], top[2]) + markers.push({ + point: pt, + kind: 'vent-termination', + label: `${node.diameter}" VTR`, + nodeId: node.id, + }) + } + } else if (node.type === 'pipe-trap') { + const pt = projectIso(node.position[0], node.position[1], node.position[2]) + grow(pt) + markers.push({ + point: pt, + kind: 'trap', + label: `${node.diameter}" P-trap`, + nodeId: node.id, + }) + } else if (node.type === 'pipe-fitting') { + const pt = projectIso(node.position[0], node.position[1], node.position[2]) + grow(pt) + markers.push({ + point: pt, + kind: 'fitting', + label: node.fittingType, + nodeId: node.id, + }) + } + } + + if (lines.length === 0 && markers.length === 0) return null + + return { lines, markers, bounds: { minX, minY, maxX, maxY } } +} diff --git a/packages/core/src/services/validate-dwv.test.ts b/packages/core/src/services/validate-dwv.test.ts new file mode 100644 index 000000000..8d62b30ad --- /dev/null +++ b/packages/core/src/services/validate-dwv.test.ts @@ -0,0 +1,125 @@ +import { describe, expect, test } from 'bun:test' +import type { AnyNodeDefinition, NodePort } from '../registry' +import { registerNode } from '../registry' +import type { AnyNode, AnyNodeId } from '../schema' +import { validateDwv } from './validate-dwv' + +type Point = [number, number, number] + +// The validator reads node fields directly + buildPortComponents (which +// consults def.ports), so register stub port-providers for the DWV kinds +// it groups by. Mirrors the system-graph test's approach. +function stubDef(kind: string, ports: (node: AnyNode) => NodePort[]): void { + registerNode({ + kind, + schemaVersion: 1, + schema: {}, + category: 'utility', + defaults: () => ({}), + capabilities: {}, + ports, + } as unknown as AnyNodeDefinition) +} + +stubDef('pipe-segment', (node) => { + const path = (node as unknown as { path: Point[] }).path + const diameter = (node as unknown as { diameter: number }).diameter + const system = (node as unknown as { system: string }).system + return [ + { id: 'start', position: path[0]!, direction: [-1, 0, 0], diameter, system }, + { + id: 'end', + position: path[path.length - 1]!, + direction: [1, 0, 0], + diameter, + system, + }, + ] +}) +stubDef('pipe-trap', (node) => { + const position = (node as unknown as { position: Point }).position + return [{ id: 'inlet', position, direction: [0, 1, 0], diameter: 1.5, system: 'waste' }] +}) + +let nextId = 0 +function makeNode(type: string, fields: Record): AnyNode { + nextId += 1 + return { id: `${type}_${nextId}`, type, object: 'node', parentId: null, ...fields } as AnyNode +} + +function sceneOf(...nodes: AnyNode[]): Record { + return Object.fromEntries(nodes.map((n) => [n.id, n])) as Record +} + +/** A waste run from a→b. Drop the end Y to slope it. */ +function waste(path: Point[], diameter = 2): AnyNode { + return makeNode('pipe-segment', { path, diameter, system: 'waste' }) +} + +const QUARTER_PER_FOOT = 1 / 48 + +describe('validateDwv — slope', () => { + test('flags a flat waste run', () => { + const run = waste([ + [0, 0, 0], + [3, 0, 0], // dead level + ]) + const findings = validateDwv(sceneOf(run)) + expect(findings.some((f) => f.code === 'slope-too-flat')).toBe(true) + }) + + test('passes a run sloped at quarter-inch per foot', () => { + const drop = 3 * QUARTER_PER_FOOT + const run = waste([ + [0, 0, 0], + [3, -drop, 0], + ]) + const findings = validateDwv(sceneOf(run)) + expect(findings.some((f) => f.code === 'slope-too-flat')).toBe(false) + }) + + test('flags an over-steep run (siphoning risk)', () => { + // 2" pipe, max slope = 2/12 ≈ 0.167; drop 2m over 1m horizontal. + const run = waste([ + [0, 0, 0], + [1, -2, 0], + ]) + const findings = validateDwv(sceneOf(run)) + expect(findings.some((f) => f.code === 'slope-too-steep')).toBe(true) + }) + + test('ignores vents (level is fine)', () => { + const vent = makeNode('pipe-segment', { + path: [ + [0, 0, 0], + [0, 3, 0], + ] as Point[], + diameter: 2, + system: 'vent', + }) + const findings = validateDwv(sceneOf(vent)) + expect(findings.length).toBe(0) + }) +}) + +describe('validateDwv — trap arm', () => { + test('flags an over-long trap arm', () => { + const trap = makeNode('pipe-trap', { + position: [0, 0, 0] as Point, + diameter: 1.5, // max arm 42in = 1.067m + armLengthM: 2, // way over + }) + const findings = validateDwv(sceneOf(trap)) + expect(findings.some((f) => f.code === 'trap-arm-too-long')).toBe(true) + }) + + test('passes a trap arm within the limit', () => { + const trap = makeNode('pipe-trap', { + position: [0, 0, 0] as Point, + diameter: 2, // max arm 60in = 1.524m + armLengthM: 1, + }) + const findings = validateDwv(sceneOf(trap)) + expect(findings.some((f) => f.code === 'trap-arm-too-long')).toBe(false) + }) +}) diff --git a/packages/core/src/services/validate-dwv.ts b/packages/core/src/services/validate-dwv.ts new file mode 100644 index 000000000..9d8c7ee1a --- /dev/null +++ b/packages/core/src/services/validate-dwv.ts @@ -0,0 +1,161 @@ +import type { AnyNode, AnyNodeId } from '../schema' +import { buildPortComponents } from './system-graph' + +/** + * IPC validators for the DWV (drain-waste-vent) system — the "CodeRule" + * primitive from the domain brief. The slope, minimum-size, and + * trap-arm rules are all geometric and read straight off the node + * fields, so they live here in core (pure logic) where the editor can + * surface them and analyses can reuse them. + * + * Scope is residential IPC, simplified: + * - 704.1 drainage slope by pipe size. + * - 909 trap-arm maximum developed length by trap size. + * + * These are intentionally conservative approximations, not a certified + * plan-check — enough to flag the mistakes a drawing tool invites. + */ + +/** Drainage findings, worst-first per consumer's sort. */ +export type DwvSeverity = 'error' | 'warning' + +export type DwvFinding = { + severity: DwvSeverity + /** Stable rule id, e.g. 'slope-too-flat'. */ + code: string + /** Human-readable, already-formatted message. */ + message: string + /** Nodes the finding implicates (usually one). */ + nodeIds: AnyNodeId[] +} + +/** IPC 704.1 minimum drainage slope (rise/run, dimensionless) by + * nominal pipe size: ¼"/ft (1:48) under 3", ⅛"/ft (1:96) for 3–6", + * 1/16"/ft (1:192) at 8"+. */ +function minSlopeFor(diameterIn: number): number { + if (diameterIn < 3) return 1 / 48 + if (diameterIn < 8) return 1 / 96 + return 1 / 192 +} + +/** IPC Table 909.1 maximum trap-arm developed length (meters) by trap + * size: 30" @ 1¼", 42" @ 1½", 60" @ 2", 72" @ 3", 120" @ 4". */ +const TRAP_ARM_MAX_M: ReadonlyArray = [ + [1.25, 30 * 0.0254], + [1.5, 42 * 0.0254], + [2, 60 * 0.0254], + [3, 72 * 0.0254], + [4, 120 * 0.0254], +] + +function trapArmMaxFor(diameterIn: number): number { + let max = Infinity + for (const [size, lengthM] of TRAP_ARM_MAX_M) { + if (diameterIn <= size) return lengthM + max = lengthM + } + return max +} + +/** Slopes shallower than this fraction of the minimum are flagged + * "too flat" — a small tolerance keeps round-off off the list. */ +const SLOPE_TOLERANCE = 0.9 +/** Horizontal legs shorter than this (meters) are treated as vertical + * stacks and skipped from the slope check. */ +const VERTICAL_LEG_EPS_M = 0.02 + +type Vec3 = readonly [number, number, number] + +function legSlope(a: Vec3, b: Vec3): { horizontalM: number; slope: number } { + const horizontalM = Math.hypot(b[0] - a[0], b[2] - a[2]) + if (horizontalM < VERTICAL_LEG_EPS_M) return { horizontalM, slope: Infinity } + return { horizontalM, slope: Math.abs(a[1] - b[1]) / horizontalM } +} + +function inchLabel(value: number): string { + return `${value}"` +} + +/** Per-foot slope as a readable fraction, e.g. 0.0208 → '¼"/ft'. */ +function slopePerFootLabel(slope: number): string { + const inchesPerFoot = slope * 12 + return `${inchesPerFoot.toFixed(2)}"/ft` +} + +/** + * Run every DWV rule over the scene and return the findings. Empty + * array = nothing to flag. Pure: no scene/store access, no rendering. + */ +export function validateDwv(nodes: Readonly>): DwvFinding[] { + const findings: DwvFinding[] = [] + + // ── Per-segment slope (waste only) ────────────────────────────── + for (const node of Object.values(nodes)) { + if (!node || node.type !== 'pipe-segment' || node.system !== 'waste') continue + const path = node.path as Vec3[] + const minSlope = minSlopeFor(node.diameter) + const maxSlope = node.diameter / 12 // 1 pipe-diameter per foot → siphoning + let flaggedFlat = false + let flaggedSteep = false + for (let i = 0; i < path.length - 1; i++) { + const { slope } = legSlope(path[i]!, path[i + 1]!) + if (slope === Infinity) continue // vertical stack leg + if (!flaggedFlat && slope < minSlope * SLOPE_TOLERANCE) { + findings.push({ + severity: 'error', + code: 'slope-too-flat', + message: `${inchLabel(node.diameter)} drain slopes ${slopePerFootLabel( + slope, + )} — IPC 704.1 requires at least ${slopePerFootLabel(minSlope)}.`, + nodeIds: [node.id], + }) + flaggedFlat = true + } + if (!flaggedSteep && slope > maxSlope) { + findings.push({ + severity: 'warning', + code: 'slope-too-steep', + message: `${inchLabel(node.diameter)} drain slopes ${slopePerFootLabel( + slope, + )} — over one pipe-diameter per foot risks siphoning the traps.`, + nodeIds: [node.id], + }) + flaggedSteep = true + } + } + } + + // ── Component-scoped trap rules ────────────────────────────────── + for (const component of buildPortComponents(nodes)) { + const traps: AnyNode[] = [] + + for (const id of component) { + const node = nodes[id] + if (!node) continue + if (node.type === 'pipe-trap') { + traps.push(node) + } + } + + // Trap-arm developed length: trap outlet → its vent, capped by size. + // Independent of waste segments — a trap on its own can already be + // over-armed. + for (const trap of traps) { + const t = trap as { id: AnyNodeId; diameter: number; armLengthM?: number } + const armLengthM = t.armLengthM ?? 0 + const maxArm = trapArmMaxFor(t.diameter) + if (armLengthM > maxArm + 1e-6) { + findings.push({ + severity: 'error', + code: 'trap-arm-too-long', + message: `${inchLabel(t.diameter)} trap arm runs ${(armLengthM / 0.0254).toFixed( + 0, + )}" to its vent — IPC 909.1 caps it at ${(maxArm / 0.0254).toFixed(0)}".`, + nodeIds: [t.id], + }) + } + } + } + + return findings +} diff --git a/packages/editor/src/components/editor/index.tsx b/packages/editor/src/components/editor/index.tsx index 88e96497c..f44a395f7 100644 --- a/packages/editor/src/components/editor/index.tsx +++ b/packages/editor/src/components/editor/index.tsx @@ -49,6 +49,7 @@ import { EditorLayoutV2 } from './editor-layout-v2' import { ExportManager } from './export-manager' import { FirstPersonControls, FirstPersonOverlay } from './first-person-controls' import { FloatingActionMenu } from './floating-action-menu' +import { RiserDiagramPanel } from './riser-diagram-panel' import { FloatingBuildingActionMenu } from './floating-building-action-menu' import { FloorplanPanel } from './floorplan-panel' import { Grid } from './grid' @@ -1263,6 +1264,7 @@ export default function Editor({
+ {isFirstPersonMode && ( useEditor.getState().setFirstPersonMode(false)} /> )} diff --git a/packages/editor/src/components/editor/riser-diagram-panel.tsx b/packages/editor/src/components/editor/riser-diagram-panel.tsx new file mode 100644 index 000000000..b612d35dc --- /dev/null +++ b/packages/editor/src/components/editor/riser-diagram-panel.tsx @@ -0,0 +1,131 @@ +'use client' + +import { type AnyNodeId, buildRiserDiagram, useScene } from '@pascal-app/core' +import { useViewer } from '@pascal-app/viewer' +import { X } from 'lucide-react' +import { useMemo } from 'react' +import useEditor from '../../store/use-editor' + +const WASTE_COLOR = '#0ea5e9' +const VENT_COLOR = '#a855f7' +const MARKER_COLOR = '#1e293b' +const PADDING = 32 +/** Meters → SVG units. The iso projection is in meters; scale up so a + * typical house drain (a few meters) fills the panel. */ +const SCALE = 90 + +/** + * DWV riser diagram — the plumbing isometric drawn from the scene's + * drain/waste/vent nodes. Read-only; toggled from the view controls. + * Vertical stacks read vertical, sloped drains lean at 30°, with size + + * vent-termination annotations, matching the permit-drawing convention. + * Clicking a line/marker selects its node in 3D. + */ +export function RiserDiagramPanel() { + const isOpen = useEditor((s) => s.isRiserOpen) + const setRiserOpen = useEditor((s) => s.setRiserOpen) + const nodes = useScene((s) => s.nodes) + const selectedIds = useViewer((s) => s.selection.selectedIds) + + const diagram = useMemo(() => (isOpen ? buildRiserDiagram(nodes) : null), [isOpen, nodes]) + + if (!isOpen) return null + + const select = (nodeId: AnyNodeId) => useViewer.getState().setSelection({ selectedIds: [nodeId] }) + + const width = diagram ? (diagram.bounds.maxX - diagram.bounds.minX) * SCALE + PADDING * 2 : 320 + const height = diagram ? (diagram.bounds.maxY - diagram.bounds.minY) * SCALE + PADDING * 2 : 200 + const tx = diagram ? -diagram.bounds.minX * SCALE + PADDING : 0 + const ty = diagram ? -diagram.bounds.minY * SCALE + PADDING : 0 + + return ( +
+
+
+ Riser Diagram + DWV plumbing isometric +
+ +
+ +
+ + Waste + + + {' '} + Vent + +
+ +
+ {diagram ? ( + + + {diagram.lines.map((line, i) => { + const isSel = selectedIds.includes(line.nodeId) + const color = line.system === 'waste' ? WASTE_COLOR : VENT_COLOR + return ( + + select(line.nodeId)} + stroke={color} + strokeDasharray={line.system === 'vent' ? '5 4' : undefined} + strokeLinecap="round" + strokeWidth={(line.vertical ? 3.5 : 2.5) + (isSel ? 2 : 0)} + x1={line.from[0] * SCALE} + x2={line.to[0] * SCALE} + y1={line.from[1] * SCALE} + y2={line.to[1] * SCALE} + /> + + {line.diameter}" + + + ) + })} + {diagram.markers.map((marker, i) => ( + select(marker.nodeId)} + transform={`translate(${marker.point[0] * SCALE}, ${marker.point[1] * SCALE})`} + > + {marker.kind === 'vent-termination' ? ( + + ) : ( + + )} + + {marker.label} + + + ))} + + + ) : ( +
+ No drain, waste, or vent pipes yet. Draw plumbing to see the riser diagram. +
+ )} +
+
+ ) +} diff --git a/packages/editor/src/components/ui/action-menu/view-toggles.tsx b/packages/editor/src/components/ui/action-menu/view-toggles.tsx index 1e461661e..2aee6adda 100644 --- a/packages/editor/src/components/ui/action-menu/view-toggles.tsx +++ b/packages/editor/src/components/ui/action-menu/view-toggles.tsx @@ -10,7 +10,7 @@ import { useScene, } from '@pascal-app/core' import { useViewer } from '@pascal-app/viewer' -import { Check, ChevronDown, Eye, EyeOff, Layers2, Plus, Trash2 } from 'lucide-react' +import { Check, ChevronDown, Eye, EyeOff, Layers2, Plus, Trash2, Waypoints } from 'lucide-react' import { useCallback, useRef, useState } from 'react' import { useShallow } from 'zustand/react/shallow' import { getLevelDisplayName } from '../../../lib/level-name' @@ -987,6 +987,29 @@ function ReferenceFloorControl() { ) } +// ── Riser diagram control ──────────────────────────────────────────────────── + +function RiserControl() { + const isRiserOpen = useEditor((state) => state.isRiserOpen) + const toggleRiserOpen = useEditor((state) => state.toggleRiserOpen) + + return ( + + + + ) +} + // ── Exports ───────────────────────────────────────────────────────────────── export { GridSnapControl } @@ -1006,6 +1029,7 @@ export function ViewToggles() { +
) } diff --git a/packages/editor/src/store/use-editor.tsx b/packages/editor/src/store/use-editor.tsx index 89bbb14e7..0a5d2aabb 100644 --- a/packages/editor/src/store/use-editor.tsx +++ b/packages/editor/src/store/use-editor.tsx @@ -362,6 +362,10 @@ type EditorState = { toggleFloorplanOpen: () => void isFloorplanHovered: boolean setFloorplanHovered: (hovered: boolean) => void + // Toggleable DWV riser-diagram (plumbing isometric) overlay. + isRiserOpen: boolean + setRiserOpen: (open: boolean) => void + toggleRiserOpen: () => void navigationSyncPose: NavigationSyncPose | null publishNavigationSyncPose: (pose: NavigationSyncPoseInput) => void floorplanSelectionTool: FloorplanSelectionTool @@ -950,6 +954,9 @@ const useEditor = create()( }), isFloorplanHovered: false, setFloorplanHovered: (hovered) => set({ isFloorplanHovered: hovered }), + isRiserOpen: false, + setRiserOpen: (open) => set({ isRiserOpen: open }), + toggleRiserOpen: () => set((state) => ({ isRiserOpen: !state.isRiserOpen })), navigationSyncPose: null, publishNavigationSyncPose: (pose) => set((state) => ({ From 857c9d44c097ec6f9c1124ea468960979ff10681 Mon Sep 17 00:00:00 2001 From: sudhir Date: Sat, 13 Jun 2026 00:34:33 +0530 Subject: [PATCH 43/59] fix(nodes): pipe-segment draws level by default, slope opt-in via S MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The automatic ¼"/ft drain fall made freshly drawn waste runs read as bent/crooked. Runs now draw level; S toggles slope mode while the tool is armed. Angle-locked ends also snap run LENGTH along the ray instead of per-axis, so off-grid starts (port/body snaps) stay on the 45° ray. Co-Authored-By: Claude Opus 4.7 --- packages/nodes/src/pipe-segment/tool.tsx | 51 ++++++++++++++++++------ 1 file changed, 39 insertions(+), 12 deletions(-) diff --git a/packages/nodes/src/pipe-segment/tool.tsx b/packages/nodes/src/pipe-segment/tool.tsx index 46a4ccf31..1202f2da8 100644 --- a/packages/nodes/src/pipe-segment/tool.tsx +++ b/packages/nodes/src/pipe-segment/tool.tsx @@ -25,12 +25,13 @@ import { pipeSegmentDefinition } from './definition' * existing pipe end — DWV ports only, duct/refrigerant collars are * invisible to it). The start inherits the snapped port's height. * - **Second click** commits a two-point pipe and re-arms. - * - **Slope**: waste runs FALL automatically at ¼" per foot (1:48) of - * horizontal distance, the IPC default for residential drains. A + * - **Slope**: runs draw LEVEL by default. **S** toggles slope mode, + * where waste runs fall at ¼" per foot (1:48) of horizontal + * distance, the IPC default for residential drains. When sloped, a * freely placed start is RAISED so the run falls onto the grid plane * (nothing clips below); a port/body-snapped start keeps its fixed - * height and the end drops instead. Vent runs stay level. The pill - * shows the live drop in the Y part. + * height and the end drops instead. Vent runs always stay level. + * The pill shows the live drop in the Y part. * - **Q** toggles waste ↔ vent. **[ / ]** steps the pipe size through * nominal DWV diameters. * - Hold **Alt** → vertical mode (stacks): XZ locks to the start, @@ -85,6 +86,7 @@ const PipeSegmentTool = () => { const activeLevelId = useViewer((s) => s.selection.levelId) const unit = useViewer((s) => s.unit) const [system, setSystem] = useState<'waste' | 'vent'>('waste') + const [sloped, setSloped] = useState(false) const [diameter, setDiameter] = useState( (pipeSegmentDefinition.defaults() as { diameter: number }).diameter, ) @@ -97,6 +99,8 @@ const PipeSegmentTool = () => { startRef.current = draftStart const systemRef = useRef(system) systemRef.current = system + const slopedRef = useRef(sloped) + slopedRef.current = sloped const diameterRef = useRef(diameter) diameterRef.current = diameter // Port / run-body the anchored start snapped onto — read at commit so @@ -146,6 +150,7 @@ const PipeSegmentTool = () => { // height-fixed (fixture drain, run end), so their end drops instead. let start = rawStart if ( + slopedRef.current && systemRef.current === 'waste' && !startPortRef.current && !startBodyRef.current && @@ -228,7 +233,7 @@ const PipeSegmentTool = () => { start: [number, number, number], end: [number, number, number], ): [number, number, number] => { - if (systemRef.current !== 'waste') return end + if (!slopedRef.current || systemRef.current !== 'waste') return end if (!startPortRef.current && !startBodyRef.current) return end const run = Math.hypot(end[0] - start[0], end[2] - start[2]) return [end[0], start[1] - run * DRAIN_SLOPE, end[2]] @@ -284,12 +289,24 @@ const PipeSegmentTool = () => { } } const step = useEditor.getState().gridSnapStep - const snapped: [number, number, number] = [ - snap(angled[0], step), - angled[1], - snap(angled[2], step), - ] - return { point: applySlope(start, snapped), snapped: null, port: null, body: null } + let end: [number, number, number] + if (shift) { + end = [snap(angled[0], step), angled[1], snap(angled[2], step)] + } else { + // Snap the run LENGTH along the locked ray, not each axis — an + // off-grid start (port / body snap) plus per-axis rounding pulls + // the end off the 45° ray, bending the run as the cursor moves. + const dx = angled[0] - start[0] + const dz = angled[2] - start[2] + const len = Math.hypot(dx, dz) + if (len < 1e-6) { + end = angled + } else { + const s = snap(len, step) / len + end = [start[0] + dx * s, angled[1], start[2] + dz * s] + } + } + return { point: applySlope(start, end), snapped: null, port: null, body: null } } const resolveAltVerticalPoint = (clientY: number): [number, number, number] | null => { @@ -384,6 +401,10 @@ const PipeSegmentTool = () => { e.preventDefault() setSystem((s) => (s === 'waste' ? 'vent' : 'waste')) triggerSFX('sfx:grid-snap') + } else if (e.key === 's' || e.key === 'S') { + e.preventDefault() + setSloped((s) => !s) + triggerSFX('sfx:grid-snap') } } @@ -427,6 +448,7 @@ const PipeSegmentTool = () => { const displayStart = draftStart && cursorPos && + sloped && system === 'waste' && !startPortRef.current && !startBodyRef.current && @@ -470,7 +492,12 @@ const PipeSegmentTool = () => {
- {system === 'waste' ? 'Waste · ¼″/ft fall' : 'Vent · level'} · Q to toggle + {system === 'waste' + ? sloped + ? 'Waste · ¼″/ft fall' + : 'Waste · level' + : 'Vent · level'}{' '} + · Q system{system === 'waste' ? ' · S slope' : ''}
From fe4fdd5c6b6f17b9e67fae34d037914bb9286091 Mon Sep 17 00:00:00 2001 From: sudhir Date: Sat, 13 Jun 2026 00:34:43 +0530 Subject: [PATCH 44/59] feat(nodes): pipe-fitting placement tool + Build tab Add Fitting panel Click-place tool for DWV fittings mirroring the duct-fitting pattern: ghost preview, DWV port mating, R/T rotation with Alt axis cycling, selection-time axis pill. Armed from an Add Fitting button under the DWV Pipe tile, same as the Duct panel. Co-Authored-By: Claude Opus 4.7 --- apps/editor/components/build-tab.tsx | 34 ++- .../editor/floating-action-menu.tsx | 2 +- packages/editor/src/store/use-editor.tsx | 1 + packages/nodes/src/pipe-fitting/definition.ts | 46 +++- packages/nodes/src/pipe-fitting/system.tsx | 41 +++ packages/nodes/src/pipe-fitting/tool.tsx | 243 ++++++++++++++++++ 6 files changed, 360 insertions(+), 7 deletions(-) create mode 100644 packages/nodes/src/pipe-fitting/system.tsx create mode 100644 packages/nodes/src/pipe-fitting/tool.tsx diff --git a/apps/editor/components/build-tab.tsx b/apps/editor/components/build-tab.tsx index a919d9630..46c5ceadc 100644 --- a/apps/editor/components/build-tab.tsx +++ b/apps/editor/components/build-tab.tsx @@ -35,6 +35,7 @@ type BuildToolKind = | 'hvac-equipment' | 'lineset' | 'pipe-segment' + | 'pipe-fitting' type BuildType = { /** Selection id — equals `kind` for tool types, `'painting'` for paint mode. */ @@ -104,16 +105,20 @@ export function BuildTab() { const activeTool = useEditor((s) => s.tool) const mode = useEditor((s) => s.mode) - // The fitting tool is armed from the Duct panel, not a grid tile — keep - // the Duct tile lit so the panel (and the way back) stays visible. + // The fitting tools are armed from their segment's panel, not a grid + // tile — keep the segment tile lit so the panel (and the way back) + // stays visible. const ductContext = mode === 'build' && (activeTool === 'duct-segment' || activeTool === 'duct-fitting') + const pipeContext = mode === 'build' && (activeTool === 'pipe-segment' || activeTool === 'pipe-fitting') const isTypeActive = (type: BuildType) => type.mode === 'material-paint' ? mode === 'material-paint' : type.kind === 'duct-segment' ? ductContext - : mode === 'build' && activeTool === type.kind + : type.kind === 'pipe-segment' + ? pipeContext + : mode === 'build' && activeTool === type.kind const handleTypeClick = useCallback((type: BuildType) => { if (type.mode === 'material-paint') { @@ -208,6 +213,29 @@ export function BuildTab() { ) : null} + {pipeContext ? ( +
+ DWV Pipe + +
+ ) : null} + {mode === 'material-paint' ? (
diff --git a/packages/editor/src/components/editor/floating-action-menu.tsx b/packages/editor/src/components/editor/floating-action-menu.tsx index e56f14f34..d1479d963 100644 --- a/packages/editor/src/components/editor/floating-action-menu.tsx +++ b/packages/editor/src/components/editor/floating-action-menu.tsx @@ -657,7 +657,7 @@ export function FloatingActionMenu() { )}
) : null} - {node.type === 'duct-fitting' ? ( + {node.type === 'duct-fitting' || node.type === 'pipe-fitting' ? (
Axis {rotationAxis.toUpperCase()} diff --git a/packages/editor/src/store/use-editor.tsx b/packages/editor/src/store/use-editor.tsx index 0a5d2aabb..92b66bfe1 100644 --- a/packages/editor/src/store/use-editor.tsx +++ b/packages/editor/src/store/use-editor.tsx @@ -112,6 +112,7 @@ export type StructureTool = | 'hvac-equipment' | 'lineset' | 'pipe-segment' + | 'pipe-fitting' // Furnish mode tools (items and decoration) export type FurnishTool = 'item' diff --git a/packages/nodes/src/pipe-fitting/definition.ts b/packages/nodes/src/pipe-fitting/definition.ts index 1536af0e1..ecf896919 100644 --- a/packages/nodes/src/pipe-fitting/definition.ts +++ b/packages/nodes/src/pipe-fitting/definition.ts @@ -1,4 +1,6 @@ import type { NodeDefinition } from '@pascal-app/core' +import { useScene } from '@pascal-app/core' +import { getRotationAxis, rotateEulerWorld } from '../duct-fitting/rotation' import { buildPipeFittingFloorplan } from './floorplan' import { buildPipeFittingGeometry } from './geometry' import { pipeFittingParametrics } from './parametrics' @@ -8,9 +10,8 @@ import { PipeFittingNode } from './schema' /** * DWV fittings — minted automatically by the pipe draw tool (corner * joints → elbows, body taps → wyes on horizontal drains / sanitary - * tees on stacks). No placement tool of its own: unlike duct fittings, - * a loose DWV fitting on the floor isn't a real workflow. Editable - * after the fact via the inspector. + * tees on stacks), or click-placed via the tool (armed from the Build + * tab's DWV Pipe panel). Editable after the fact via the inspector. */ export const pipeFittingDefinition: NodeDefinition = { kind: 'pipe-fitting', @@ -50,6 +51,45 @@ export const pipeFittingDefinition: NodeDefinition = { floorplan: buildPipeFittingFloorplan, + // R/T rotate a selected fitting ±45° around the shared active axis — + // same scheme as duct fittings (the default editor rotate only knows + // Y; DWV stacks need X/Z). Alt-cycling lives in `./system.tsx`. + keyboardActions: { + r: { + appliesTo: (node) => node.type === 'pipe-fitting', + run: (node) => + useScene.getState().updateNode(node.id, { + rotation: rotateEulerWorld( + (node as PipeFittingNode).rotation, + getRotationAxis(), + 1, + ), + }), + }, + t: { + appliesTo: (node) => node.type === 'pipe-fitting', + run: (node) => + useScene.getState().updateNode(node.id, { + rotation: rotateEulerWorld( + (node as PipeFittingNode).rotation, + getRotationAxis(), + -1, + ), + }), + }, + }, + + system: { module: () => import('./system') }, + + tool: () => import('./tool'), + toolHints: [ + { key: 'Click', label: 'Place fitting' }, + { key: 'Hover a pipe end', label: 'Snap onto the run' }, + { key: 'R / T', label: 'Rotate ±45°' }, + { key: 'Alt', label: 'Switch rotation axis (Y → X → Z)' }, + { key: 'Esc', label: 'Exit' }, + ], + presentation: { label: 'Pipe Fitting', description: 'DWV joint — elbow bend, 45° wye, or sanitary tee.', diff --git a/packages/nodes/src/pipe-fitting/system.tsx b/packages/nodes/src/pipe-fitting/system.tsx new file mode 100644 index 000000000..604353259 --- /dev/null +++ b/packages/nodes/src/pipe-fitting/system.tsx @@ -0,0 +1,41 @@ +'use client' + +import { type AnyNodeId, useScene } from '@pascal-app/core' +import { useViewer } from '@pascal-app/viewer' +import { useEffect } from 'react' +import { cycleRotationAxis } from '../duct-fitting/rotation' + +/** + * Selection-time rotation support for placed pipe fittings — mirrors + * the duct-fitting system. R/T rotation lives in `def.keyboardActions`; + * this contributes the piece that hook can't: **Alt cycles the active + * rotation axis** while a single fitting is selected. The axis lives on + * `useEditor.rotationAxis`, which the floating action menu reads to + * show the axis pill — so this component renders nothing. + */ +const PipeFittingSystem = () => { + const selectedIds = useViewer((s) => s.selection.selectedIds) + const hasSelectedFitting = useScene((s) => { + if (selectedIds.length !== 1) return false + return s.nodes[selectedIds[0] as AnyNodeId]?.type === 'pipe-fitting' + }) + + useEffect(() => { + if (!hasSelectedFitting) return + const onKeyDown = (e: KeyboardEvent) => { + if (e.key !== 'Alt' || e.repeat) return + const tag = (e.target as HTMLElement | null)?.tagName + if (tag === 'INPUT' || tag === 'TEXTAREA') return + e.preventDefault() + cycleRotationAxis() + } + // Bubble phase — when the placement tool is active its capture-phase + // handler stops propagation, so the two never double-cycle. + window.addEventListener('keydown', onKeyDown) + return () => window.removeEventListener('keydown', onKeyDown) + }, [hasSelectedFitting]) + + return null +} + +export default PipeFittingSystem diff --git a/packages/nodes/src/pipe-fitting/tool.tsx b/packages/nodes/src/pipe-fitting/tool.tsx new file mode 100644 index 000000000..be165552a --- /dev/null +++ b/packages/nodes/src/pipe-fitting/tool.tsx @@ -0,0 +1,243 @@ +'use client' + +import { emitter, type GridEvent, PipeFittingNode, useScene } from '@pascal-app/core' +import { triggerSFX, useEditor } from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { useEffect, useMemo, useRef, useState } from 'react' +import { Euler, Quaternion, Vector3 } from 'three' +import { + AXIS_VECTORS, + cycleRotationAxis, + getRotationAxis, + ROTATE_STEP_RAD, +} from '../duct-fitting/rotation' +import { + collectScenePorts, + DWV_PORT_SYSTEMS, + findNearestPortXZ, + type ScenePort, +} from '../shared/ports' +import { pipeFittingDefinition } from './definition' +import { buildPipeFittingGeometry } from './geometry' +import { localPipeFittingPorts } from './ports' + +/** Snap radius (meters, XZ) for mating onto an existing DWV port. */ +const PORT_SNAP_RADIUS_M = 0.5 +const PREVIEW_OPACITY = 0.55 + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +type Placement = { + position: [number, number, number] + rotation: [number, number, number] + snapPort: ScenePort | null +} + +/** + * Resolve where the fitting would land for a cursor at `raw`: + * - Near an existing DWV port → mate: orientation aligns the inlet + * onto the port (plus the user's manual R/T rotation, pivoting + * around the inlet collar so it stays on the port while the body + * sweeps). + * - Otherwise → grid-snapped free placement on the floor, manual + * rotation only. + */ +function resolvePlacement( + raw: [number, number, number], + previewNode: PipeFittingNode, + gridStep: number, + manualQuat: Quaternion, +): Placement { + const port = findNearestPortXZ( + raw, + collectScenePorts({ systems: DWV_PORT_SYSTEMS }), + PORT_SNAP_RADIUS_M, + ) + if (port) { + const direction = new Vector3(...port.direction).normalize() + // Local +X must map onto the port's outward direction so the inlet + // (local -X) faces back into the run it's joining. Manual rotation + // composes in the world frame on top of the mate orientation. + const mate = new Quaternion().setFromUnitVectors(new Vector3(1, 0, 0), direction) + const final = manualQuat.clone().multiply(mate) + const inlet = localPipeFittingPorts(previewNode)[0]! + const inletWorldOffset = inlet.position.clone().applyQuaternion(final) + const position = new Vector3(...port.position).sub(inletWorldOffset) + const euler = new Euler().setFromQuaternion(final) + return { + position: [position.x, position.y, position.z], + rotation: [euler.x, euler.y, euler.z], + snapPort: port, + } + } + const euler = new Euler().setFromQuaternion(manualQuat) + return { + position: [snap(raw[0], gridStep), 0, snap(raw[2], gridStep)], + rotation: [euler.x, euler.y, euler.z], + snapPort: null, + } +} + +/** + * Click-place tool for DWV pipe fittings (elbow / wye / sanitary tee) — + * the plumbing sibling of the duct-fitting tool. + * + * A translucent ghost of the fitting follows the cursor. Within snap + * range of any DWV port (pipe run ends, other fittings' collars) the + * ghost jumps onto the port — position AND orientation — so one click + * mates the fitting onto the run. + * + * Rotation while placing: **R / T** turn the ghost ±45° around the + * active world axis; **Alt** cycles the axis (Y → X → Z). The HUD badge + * above the ghost shows the current axis. When snapped to a port the + * rotation pivots around the inlet collar so the joint stays mated. + * Handlers run in the capture phase so R doesn't also spin whatever + * node happens to be selected. + */ +const PipeFittingTool = () => { + const activeLevelId = useViewer((s) => s.selection.levelId) + const [placement, setPlacement] = useState(null) + const axis = useEditor((s) => s.rotationAxis) + // Accumulated manual rotation from R/T presses. Ref (not state) so the + // emitter callbacks always read the latest without re-subscribing; a + // placement recompute is triggered explicitly after each change. + const manualQuatRef = useRef(new Quaternion()) + // Last raw cursor position so a key press can recompute the placement + // without waiting for the next mouse move. + const lastRawRef = useRef<[number, number, number] | null>(null) + + // Ghost matches exactly what a click creates (the kind's defaults). + const previewNode = useMemo( + () => PipeFittingNode.parse({ ...pipeFittingDefinition.defaults(), name: 'Pipe fitting' }), + [], + ) + const ghost = useMemo(() => { + const group = buildPipeFittingGeometry(previewNode) + group.traverse((child) => { + const mesh = child as { material?: { transparent: boolean; opacity: number } } + if (mesh.material) { + mesh.material.transparent = true + mesh.material.opacity = PREVIEW_OPACITY + } + }) + return group + }, [previewNode]) + + useEffect(() => { + if (!activeLevelId) return + + const recompute = () => { + const raw = lastRawRef.current + if (!raw) return + setPlacement( + resolvePlacement( + raw, + previewNode, + useEditor.getState().gridSnapStep, + manualQuatRef.current, + ), + ) + } + + const onMove = (event: GridEvent) => { + lastRawRef.current = [event.localPosition[0], 0, event.localPosition[2]] + recompute() + } + + const onClick = (event: GridEvent) => { + lastRawRef.current = [event.localPosition[0], 0, event.localPosition[2]] + const { position, rotation } = resolvePlacement( + lastRawRef.current, + previewNode, + useEditor.getState().gridSnapStep, + manualQuatRef.current, + ) + const fitting = PipeFittingNode.parse({ + ...pipeFittingDefinition.defaults(), + name: 'Pipe fitting', + position, + rotation, + }) + useScene.getState().createNode(fitting, activeLevelId) + useViewer.getState().setSelection({ selectedIds: [fitting.id] }) + triggerSFX('sfx:item-place') + } + + const onKeyDown = (e: KeyboardEvent) => { + const tag = (e.target as HTMLElement | null)?.tagName + if (tag === 'INPUT' || tag === 'TEXTAREA') return + const key = e.key + if (key === 'r' || key === 'R' || key === 't' || key === 'T') { + // Capture-phase + stopPropagation so the editor's selection-rotate + // R handler doesn't also fire while the placement tool owns R. + e.preventDefault() + e.stopPropagation() + const steps = key === 't' || key === 'T' || e.shiftKey ? -1 : 1 + const turn = new Quaternion().setFromAxisAngle( + AXIS_VECTORS[getRotationAxis()], + steps * ROTATE_STEP_RAD, + ) + manualQuatRef.current = turn.multiply(manualQuatRef.current) + triggerSFX('sfx:item-rotate') + recompute() + } else if (key === 'Alt' && !e.repeat) { + e.preventDefault() + e.stopPropagation() + cycleRotationAxis() + } + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', onClick) + window.addEventListener('keydown', onKeyDown, true) + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', onClick) + window.removeEventListener('keydown', onKeyDown, true) + } + }, [activeLevelId, previewNode]) + + if (!activeLevelId || !placement) return null + + return ( + + + + + {/* Rotation HUD — active axis + key hints, pinned above the ghost. */} + + {/* Same pill shell as DimensionPill so the placement HUD matches + the drawing / dragging readouts. */} +
+ Axis {axis.toUpperCase()} + + · + + R/T rotate + + · + + ⌥ axis +
+ + {/* Port-snap halo so the user sees the click will mate, not free-place. */} + {placement.snapPort && ( + + + + + )} +
+ ) +} + +export default PipeFittingTool From ac5be08f0c45900081ada721313f6dbe0c912313 Mon Sep 17 00:00:00 2001 From: sudhir Date: Sat, 13 Jun 2026 02:52:28 +0530 Subject: [PATCH 45/59] refactor(nodes): address architecture-review findings on DWV/HVAC branch Resolve the blockers, suggestions, and nits from the architecture review: - Mount fitting selection affordances via def.affordanceTools.selection instead of def.system; rename the per-kind system.tsx files to selection.tsx and add a SelectionAffordanceManager in the editor. - Add a distributionRole field to NodeDefinition (run/fitting/terminal/ equipment) and key system-graph summarization off it instead of branching on node.type. - Lift getLevelHeight/DEFAULT_LEVEL_HEIGHT into core's level-height service so viewer and nodes share one implementation. - Split riser-diagram and floating-action-menu panels so the full-node subscription lives in a child mounted only when needed. - Bundle inspector reconcile writes into a single updateNodes call. - Move shared fitting-rotation helpers to nodes/src/shared. Co-Authored-By: Claude Opus 4.7 --- packages/core/src/registry/index.ts | 1 + packages/core/src/registry/types.ts | 22 +++ packages/core/src/services/index.ts | 18 ++- packages/core/src/services/level-height.ts | 43 ++++++ .../core/src/services/system-graph.test.ts | 23 +-- packages/core/src/services/system-graph.ts | 24 ++-- .../editor/floating-action-menu.tsx | 135 +++++++++--------- .../editor/src/components/editor/index.tsx | 2 + .../components/editor/riser-diagram-panel.tsx | 12 +- .../systems/selection-affordance-manager.tsx | 38 +++++ .../ui/panels/parametric-inspector.tsx | 8 +- packages/nodes/src/duct-fitting/definition.ts | 13 +- .../{system.tsx => selection.tsx} | 17 +-- packages/nodes/src/duct-fitting/tool.tsx | 17 ++- packages/nodes/src/duct-segment/definition.ts | 8 +- .../{system.tsx => selection.tsx} | 7 +- packages/nodes/src/duct-segment/tool.tsx | 38 +++-- .../nodes/src/duct-terminal/definition.ts | 1 + .../nodes/src/hvac-equipment/definition.ts | 1 + packages/nodes/src/lineset/definition.ts | 8 +- .../src/lineset/{system.tsx => selection.tsx} | 7 +- packages/nodes/src/lineset/tool.tsx | 15 +- packages/nodes/src/pipe-fitting/definition.ts | 25 ++-- .../{system.tsx => selection.tsx} | 18 +-- packages/nodes/src/pipe-fitting/tool.tsx | 12 +- packages/nodes/src/pipe-segment/definition.ts | 8 +- .../{system.tsx => selection.tsx} | 9 +- packages/nodes/src/pipe-segment/tool.tsx | 15 +- packages/nodes/src/pipe-trap/definition.ts | 1 + .../fitting-rotation.ts} | 4 +- packages/viewer/src/index.ts | 2 +- .../viewer/src/systems/level/level-system.tsx | 3 +- .../viewer/src/systems/level/level-utils.ts | 51 +------ 33 files changed, 382 insertions(+), 224 deletions(-) create mode 100644 packages/core/src/services/level-height.ts create mode 100644 packages/editor/src/components/systems/selection-affordance-manager.tsx rename packages/nodes/src/duct-fitting/{system.tsx => selection.tsx} (66%) rename packages/nodes/src/duct-segment/{system.tsx => selection.tsx} (98%) rename packages/nodes/src/lineset/{system.tsx => selection.tsx} (98%) rename packages/nodes/src/pipe-fitting/{system.tsx => selection.tsx} (64%) rename packages/nodes/src/pipe-segment/{system.tsx => selection.tsx} (97%) rename packages/nodes/src/{duct-fitting/rotation.ts => shared/fitting-rotation.ts} (94%) diff --git a/packages/core/src/registry/index.ts b/packages/core/src/registry/index.ts index ebcb236c5..dabd8821b 100644 --- a/packages/core/src/registry/index.ts +++ b/packages/core/src/registry/index.ts @@ -55,6 +55,7 @@ export type { Capabilities, CapabilityCtx, CuttableConfig, + DistributionRole, DragAction, EditorCtx, FloorPlacedConfig, diff --git a/packages/core/src/registry/types.ts b/packages/core/src/registry/types.ts index 485abfb42..d19a43d4e 100644 --- a/packages/core/src/registry/types.ts +++ b/packages/core/src/registry/types.ts @@ -669,12 +669,26 @@ export type SurfaceRole = | 'glazing' | 'furnishing' +/** Role a kind plays in a duct / pipe / lineset distribution system. */ +export type DistributionRole = 'run' | 'fitting' | 'terminal' | 'equipment' + export type NodeDefinition> = { kind: string schemaVersion: number schema: S category: NodeCategory surfaceRole?: SurfaceRole + /** + * Role this kind plays in a distribution system (HVAC duct / DWV pipe / + * refrigerant lineset). Lets the system-graph summary classify a + * component without branching on `node.type`: + * - `'run'` — a duct / pipe / lineset segment (carries `path`). + * - `'fitting'` — an inline fitting (elbow / tee / reducer / trap). + * - `'terminal'` — a grille / register / diffuser endpoint. + * - `'equipment'` — a furnace / air handler / condenser source. + * Kinds outside any distribution system leave this unset. + */ + distributionRole?: DistributionRole defaults: () => Omit, 'id' | 'type'> migrate?: Record unknown> @@ -915,6 +929,14 @@ export type KeyboardActions = { r?: KeyboardAction /** T / Shift+T secondary action. */ t?: KeyboardAction + /** + * Set for kinds whose R/T rotation turns around a user-cyclable world + * axis (Alt cycles Y → X → Z) — duct / pipe fittings with full 3D + * orientation. The floating action menu reads this to surface the + * active-axis pill above the selected node; kinds with plain Y-only + * rotation omit it. + */ + axisCycling?: boolean } export type KeyboardAction = { diff --git a/packages/core/src/services/index.ts b/packages/core/src/services/index.ts index 17233110d..e22c72b55 100644 --- a/packages/core/src/services/index.ts +++ b/packages/core/src/services/index.ts @@ -41,6 +41,10 @@ export { pickHost, type Vec3, } from './hosting' +export { + DEFAULT_LEVEL_HEIGHT, + getLevelHeight, +} from './level-height' export { type AxisLock, applyAxisLock, @@ -55,6 +59,13 @@ export { type PortConnectivity, resolveConnectivityUpdates, } from './port-connectivity' +export { + buildRiserDiagram, + projectIso, + type RiserDiagram, + type RiserLine, + type RiserMarker, +} from './riser-diagram' export { DEFAULT_ANGLE_STEP, DEFAULT_GRID_STEP, @@ -77,10 +88,3 @@ export { type DwvSeverity, validateDwv, } from './validate-dwv' -export { - buildRiserDiagram, - projectIso, - type RiserDiagram, - type RiserLine, - type RiserMarker, -} from './riser-diagram' diff --git a/packages/core/src/services/level-height.ts b/packages/core/src/services/level-height.ts new file mode 100644 index 000000000..36769027a --- /dev/null +++ b/packages/core/src/services/level-height.ts @@ -0,0 +1,43 @@ +import { sceneRegistry } from '../hooks/scene-registry/scene-registry' +import type { CeilingNode, LevelNode, WallNode } from '../schema' +import type { AnyNode, AnyNodeId } from '../schema/types' + +export const DEFAULT_LEVEL_HEIGHT = 2.5 + +// Cache: levelId → computed height. Invalidated when the nodes reference changes. +// Zustand produces a new `nodes` object on every mutation, so reference equality +// is a zero-cost way to detect stale data without any subscription overhead. +const heightCache = new Map() +let lastNodesRef: object | null = null + +export function getLevelHeight(levelId: string, nodes: Record): number { + if (nodes !== lastNodesRef) { + heightCache.clear() + lastNodesRef = nodes + } + + if (heightCache.has(levelId)) return heightCache.get(levelId)! + + const level = nodes[levelId as LevelNode['id']] as LevelNode | undefined + if (!level) return DEFAULT_LEVEL_HEIGHT + + let maxTop = 0 + + for (const childId of level.children) { + const child = nodes[childId as keyof typeof nodes] + if (!child) continue + if (child.type === 'ceiling') { + const ch = (child as CeilingNode).height ?? DEFAULT_LEVEL_HEIGHT + if (ch > maxTop) maxTop = ch + } else if (child.type === 'wall') { + let meshY = sceneRegistry.nodes.get(childId as AnyNodeId)?.position.y ?? 0 + if (meshY < 0) meshY = 0 + const top = meshY + ((child as WallNode).height ?? DEFAULT_LEVEL_HEIGHT) + if (top > maxTop) maxTop = top + } + } + + const height = maxTop > 0 ? maxTop : DEFAULT_LEVEL_HEIGHT + heightCache.set(levelId, height) + return height +} diff --git a/packages/core/src/services/system-graph.test.ts b/packages/core/src/services/system-graph.test.ts index 91d1a781f..e7640d675 100644 --- a/packages/core/src/services/system-graph.test.ts +++ b/packages/core/src/services/system-graph.test.ts @@ -1,28 +1,33 @@ import { describe, expect, test } from 'bun:test' -import type { AnyNodeDefinition, NodePort } from '../registry' +import type { AnyNodeDefinition, DistributionRole, NodePort } from '../registry' import { registerNode } from '../registry' import type { AnyNode, AnyNodeId } from '../schema' import { buildPortComponents, summarizeSystemFor } from './system-graph' type Point = [number, number, number] -// Stub registrations: the graph only consults `def.ports`, so each test -// kind carries just that. Mirrors the real kinds' port conventions -// (duct runs expose start/end, equipment a supply collar, terminals one -// collar) without importing the nodes package — core can't. -function stubDef(kind: string, ports: (node: AnyNode) => NodePort[]): void { +// Stub registrations: the graph consults `def.ports` for the connectivity +// graph and `def.distributionRole` to classify each node. Mirrors the real +// kinds' port + role conventions (duct runs expose start/end, equipment a +// supply collar, terminals one collar) without importing the nodes package. +function stubDef( + kind: string, + distributionRole: DistributionRole, + ports: (node: AnyNode) => NodePort[], +): void { registerNode({ kind, schemaVersion: 1, schema: {}, category: 'utility', + distributionRole, defaults: () => ({}), capabilities: {}, ports, } as unknown as AnyNodeDefinition) } -stubDef('duct-segment', (node) => { +stubDef('duct-segment', 'run', (node) => { const path = (node as unknown as { path: Point[] }).path const system = (node as unknown as { system: string }).system return [ @@ -36,11 +41,11 @@ stubDef('duct-segment', (node) => { }, ] }) -stubDef('hvac-equipment', (node) => { +stubDef('hvac-equipment', 'equipment', (node) => { const position = (node as unknown as { position: Point }).position return [{ id: 'supply', position, direction: [0, 1, 0], diameter: 12, system: 'supply' }] }) -stubDef('duct-terminal', (node) => { +stubDef('duct-terminal', 'terminal', (node) => { const position = (node as unknown as { position: Point }).position return [{ id: 'collar', position, direction: [0, -1, 0], diameter: 6, system: 'supply' }] }) diff --git a/packages/core/src/services/system-graph.ts b/packages/core/src/services/system-graph.ts index fda79a2c1..9dc6d90d7 100644 --- a/packages/core/src/services/system-graph.ts +++ b/packages/core/src/services/system-graph.ts @@ -141,18 +141,24 @@ function summarize( for (const id of nodeIds) { const node = nodes[id] if (!node) continue - if (node.type === 'duct-segment' || node.type === 'lineset' || node.type === 'pipe-segment') { + const role = nodeRegistry.get(node.type)?.distributionRole + const fields = node as { + path?: ReadonlyArray + system?: string + terminalType?: string + } + if (role === 'run') { runCount += 1 - runLengthM += pathLength(node.path) - if (node.type === 'lineset') systems.add('refrigerant') - else systems.add(node.system) - } else if (node.type === 'duct-fitting' || node.type === 'pipe-fitting') { + if (fields.path) runLengthM += pathLength(fields.path) + // Linesets carry refrigerant; duct / pipe runs name their own loop. + systems.add(fields.system ?? 'refrigerant') + } else if (role === 'fitting') { fittingCount += 1 - systems.add(node.system) - } else if (node.type === 'duct-terminal') { + if (fields.system) systems.add(fields.system) + } else if (role === 'terminal') { terminalCount += 1 - systems.add(node.terminalType === 'return-grille' ? 'return' : 'supply') - } else if (node.type === 'hvac-equipment') { + systems.add(fields.terminalType === 'return-grille' ? 'return' : 'supply') + } else if (role === 'equipment') { equipmentCount += 1 } } diff --git a/packages/editor/src/components/editor/floating-action-menu.tsx b/packages/editor/src/components/editor/floating-action-menu.tsx index d1479d963..d4c7d110a 100644 --- a/packages/editor/src/components/editor/floating-action-menu.tsx +++ b/packages/editor/src/components/editor/floating-action-menu.tsx @@ -40,17 +40,20 @@ import useEditor from '../../store/use-editor' import { formatMeasurement, MeasurementPill } from './measurement-pill' import { NodeActionMenu } from './node-action-menu' -/** Distribution kinds that get the system pill above the action menu. */ -const HVAC_KINDS = new Set([ - 'duct-segment', - 'duct-fitting', - 'duct-terminal', - 'hvac-equipment', - 'lineset', - 'pipe-segment', - 'pipe-fitting', - 'pipe-trap', -]) +/** + * A kind shows the system pill when it exposes typed ports — `def.ports` + * is exactly what makes a node participate in the supply/return graph the + * pill summarizes. Keeps the menu off a hand-maintained kind list. + */ +const hasPorts = (type: string) => nodeRegistry.get(type)?.ports != null + +/** + * A kind shows the rotation-axis pill when its R/T keyboard rotation + * turns around a user-cyclable axis (`keyboardActions.axisCycling`) — + * duct / pipe fittings with full 3D orientation. + */ +const hasAxisCycling = (type: string) => + nodeRegistry.get(type)?.keyboardActions?.axisCycling === true const ALLOWED_TYPES = [ 'item', @@ -204,17 +207,6 @@ export function FloatingActionMenu() { ? ALLOWED_TYPES.includes(node.type) || isRegistrySelectable(node.type) : false - // System summary for distribution kinds (HVAC): which supply/return - // tree the selected node belongs to, its run length, and whether it - // actually reaches a piece of equipment. Subscribes to the full nodes - // map — connectivity changes when ANY joint moves — but computes only - // while an HVAC node is selected. - const allNodes = useScene((s) => s.nodes) - const systemSummary = useMemo( - () => (node && HVAC_KINDS.has(node.type) ? summarizeSystemFor(node.id, allNodes) : null), - [node, allNodes], - ) - // Height-drag pill: shown just above the menu only while the selected // wall/fence height arrow is being dragged. Length + thickness are fixed // during a height drag, so they're computed here; the live height value @@ -614,50 +606,10 @@ export function FloatingActionMenu() { pill. System pill (which tree, run length, equipment reach) for every distribution kind; the rotation-axis pill stacks under it for duct fittings. */} - {node && HVAC_KINDS.has(node.type) ? ( + {node && hasPorts(node.type) ? (
- {systemSummary ? ( -
- - {systemSummary.systems.length > 0 - ? systemSummary.systems - .map((sys) => sys[0]!.toUpperCase() + sys.slice(1)) - .join(' + ') - : 'System'} - - {systemSummary.runCount > 0 ? ( - <> - - · - - - {formatMeasurement(systemSummary.runLengthM, unit)} ·{' '} - {systemSummary.runCount} {systemSummary.runCount === 1 ? 'run' : 'runs'} - - - ) : null} - {systemSummary.terminalCount > 0 ? ( - <> - - · - - - {systemSummary.terminalCount}{' '} - {systemSummary.terminalCount === 1 ? 'register' : 'registers'} - - - ) : null} - {systemSummary.connectedToEquipment ? null : ( - <> - - · - - ⚠ no equipment - - )} -
- ) : null} - {node.type === 'duct-fitting' || node.type === 'pipe-fitting' ? ( + + {hasAxisCycling(node.type) ? (
Axis {rotationAxis.toUpperCase()} @@ -680,3 +632,56 @@ export function FloatingActionMenu() { ) } + +/** + * System summary pill for a selected distribution kind (HVAC duct / DWV + * pipe / refrigerant lineset): which supply/return tree it belongs to, its + * run length, and whether it actually reaches a piece of equipment. + * + * Mounted only while an HVAC node is selected, so the full-`nodes` + * subscription it needs (connectivity changes when ANY joint moves) doesn't + * re-render the always-mounted parent menu on every unrelated scene tick. + */ +function SystemSummaryPill({ nodeId, unit }: { nodeId: AnyNodeId; unit: 'metric' | 'imperial' }) { + const allNodes = useScene((s) => s.nodes) + const summary = useMemo(() => summarizeSystemFor(nodeId, allNodes), [nodeId, allNodes]) + if (!summary) return null + return ( +
+ + {summary.systems.length > 0 + ? summary.systems.map((sys) => sys[0]!.toUpperCase() + sys.slice(1)).join(' + ') + : 'System'} + + {summary.runCount > 0 ? ( + <> + + · + + + {formatMeasurement(summary.runLengthM, unit)} · {summary.runCount}{' '} + {summary.runCount === 1 ? 'run' : 'runs'} + + + ) : null} + {summary.terminalCount > 0 ? ( + <> + + · + + + {summary.terminalCount} {summary.terminalCount === 1 ? 'register' : 'registers'} + + + ) : null} + {summary.connectedToEquipment ? null : ( + <> + + · + + ⚠ no equipment + + )} +
+ ) +} diff --git a/packages/editor/src/components/editor/index.tsx b/packages/editor/src/components/editor/index.tsx index f44a395f7..d930588ac 100644 --- a/packages/editor/src/components/editor/index.tsx +++ b/packages/editor/src/components/editor/index.tsx @@ -27,6 +27,7 @@ import { RoofEditSystem } from '../systems/roof/roof-edit-system' import { StairEditSystem } from '../systems/stair/stair-edit-system' import { ZoneLabelEditorSystem } from '../systems/zone/zone-label-editor-system' import { ZoneSystem } from '../systems/zone/zone-system' +import { SelectionAffordanceManager } from '../systems/selection-affordance-manager' import { BoxSelectTool } from '../tools/select/box-select-tool' import { ToolManager } from '../tools/tool-manager' import { ActionMenu } from '../ui/action-menu' @@ -617,6 +618,7 @@ const ViewerSceneContent = memo(function ViewerSceneContent({ {isFirstPersonMode ? : } + {!noEditing && } {!(isLoading || isFirstPersonMode) && } diff --git a/packages/editor/src/components/editor/riser-diagram-panel.tsx b/packages/editor/src/components/editor/riser-diagram-panel.tsx index b612d35dc..e89122e19 100644 --- a/packages/editor/src/components/editor/riser-diagram-panel.tsx +++ b/packages/editor/src/components/editor/riser-diagram-panel.tsx @@ -23,13 +23,19 @@ const SCALE = 90 */ export function RiserDiagramPanel() { const isOpen = useEditor((s) => s.isRiserOpen) + // Only the open flag lives here. The whole-scene subscription that drives + // the diagram lives in the child, mounted only while the panel is open — + // so a closed panel doesn't re-render on every scene mutation. + if (!isOpen) return null + return +} + +function RiserDiagramContent() { const setRiserOpen = useEditor((s) => s.setRiserOpen) const nodes = useScene((s) => s.nodes) const selectedIds = useViewer((s) => s.selection.selectedIds) - const diagram = useMemo(() => (isOpen ? buildRiserDiagram(nodes) : null), [isOpen, nodes]) - - if (!isOpen) return null + const diagram = useMemo(() => buildRiserDiagram(nodes), [nodes]) const select = (nodeId: AnyNodeId) => useViewer.getState().setSelection({ selectedIds: [nodeId] }) diff --git a/packages/editor/src/components/systems/selection-affordance-manager.tsx b/packages/editor/src/components/systems/selection-affordance-manager.tsx new file mode 100644 index 000000000..61ad52241 --- /dev/null +++ b/packages/editor/src/components/systems/selection-affordance-manager.tsx @@ -0,0 +1,38 @@ +'use client' + +import { type AnyNodeId, useScene } from '@pascal-app/core' +import { useViewer } from '@pascal-app/viewer' +import { type ComponentType, Suspense, useMemo } from 'react' +import { getRegistryAffordanceTool } from '../tools/shared/affordance-dispatch' + +/** + * Editor-mounted dispatcher for a kind's selection-time editing UI. + * + * Some kinds expose drag-to-edit affordances that should appear only + * while a single node of that kind is selected — duct / pipe / lineset + * path-point handles, fitting Alt-axis-cycling listeners. These read + * `useEditor` (grid snap step, rotation axis) and render the editor's + * `DimensionPill`, so they must NOT ride in `def.system` (which the + * viewer package mounts for the read-only route). The kind declares the + * component under `def.affordanceTools.selection` and this manager — + * mounted inside the editor only — loads it for the selected kind. + */ +export function SelectionAffordanceManager() { + const selectedIds = useViewer((s) => s.selection.selectedIds) + const selectedKind = useScene((s) => { + if (selectedIds.length !== 1) return null + return s.nodes[selectedIds[0] as AnyNodeId]?.type ?? null + }) + + const Component = useMemo(() => { + if (!selectedKind) return null + return getRegistryAffordanceTool(selectedKind, 'selection') + }, [selectedKind]) + + if (!Component) return null + return ( + + + + ) +} diff --git a/packages/editor/src/components/ui/panels/parametric-inspector.tsx b/packages/editor/src/components/ui/panels/parametric-inspector.tsx index 57210c54b..a5076dd78 100644 --- a/packages/editor/src/components/ui/panels/parametric-inspector.tsx +++ b/packages/editor/src/components/ui/panels/parametric-inspector.tsx @@ -68,12 +68,14 @@ export function ParametricInspector({ const next = { ...node, ...patch } as AnyNode patch = { ...patch, ...parametrics.derive(next, patch) } } - scene.updateNode(selectedId, patch) + // Bundle the edited node + any reconcile follow-ups into ONE + // updateNodes call so a single inspector edit is a single undo step. + const updates: { id: AnyNodeId; data: Partial }[] = [{ id: selectedId, data: patch }] if (parametrics?.reconcile && node) { const next = { ...node, ...patch } as AnyNode - const updates = parametrics.reconcile(node as AnyNode, next) - if (updates.length > 0) scene.updateNodes(updates) + updates.push(...parametrics.reconcile(node as AnyNode, next)) } + scene.updateNodes(updates) }, [selectedId, parametrics], ) diff --git a/packages/nodes/src/duct-fitting/definition.ts b/packages/nodes/src/duct-fitting/definition.ts index 5f954be0c..b40968d00 100644 --- a/packages/nodes/src/duct-fitting/definition.ts +++ b/packages/nodes/src/duct-fitting/definition.ts @@ -1,9 +1,9 @@ import type { NodeDefinition } from '@pascal-app/core' +import { rotateFittingNode } from '../shared/fitting-rotation' import { buildDuctFittingFloorplan } from './floorplan' import { buildDuctFittingGeometry } from './geometry' import { ductFittingParametrics } from './parametrics' import { getDuctFittingPorts } from './ports' -import { rotateFittingNode } from './rotation' import { DuctFittingNode } from './schema' /** @@ -19,6 +19,7 @@ export const ductFittingDefinition: NodeDefinition = { schemaVersion: 1, schema: DuctFittingNode, category: 'utility', + distributionRole: 'fitting', defaults: () => ({ object: 'node', @@ -83,7 +84,7 @@ export const ductFittingDefinition: NodeDefinition = { // R/T rotate a selected fitting ±45° around the shared active axis. // The default editor rotate only knows Y; fittings need X/Z for // risers, so this overrides it. Alt-cycling of the axis + the axis - // badge live in `./system.tsx`. + // badge live in `./selection.tsx`. keyboardActions: { r: { appliesTo: (node) => node.type === 'duct-fitting', @@ -93,9 +94,15 @@ export const ductFittingDefinition: NodeDefinition = { appliesTo: (node) => node.type === 'duct-fitting', run: (node) => rotateFittingNode(node, -1), }, + axisCycling: true, }, - system: { module: () => import('./system') }, + // Alt-cycles the active rotation axis while a fitting is selected. + // Editor-only (drives `useEditor.rotationAxis`), so it mounts via the + // editor's SelectionAffordanceManager rather than `def.system`. + affordanceTools: { + selection: () => import('./selection'), + }, tool: () => import('./tool'), toolHints: [ diff --git a/packages/nodes/src/duct-fitting/system.tsx b/packages/nodes/src/duct-fitting/selection.tsx similarity index 66% rename from packages/nodes/src/duct-fitting/system.tsx rename to packages/nodes/src/duct-fitting/selection.tsx index 7748cc9bd..8b396b678 100644 --- a/packages/nodes/src/duct-fitting/system.tsx +++ b/packages/nodes/src/duct-fitting/selection.tsx @@ -3,18 +3,19 @@ import { type AnyNodeId, useScene } from '@pascal-app/core' import { useViewer } from '@pascal-app/viewer' import { useEffect } from 'react' -import { cycleRotationAxis } from './rotation' +import { cycleRotationAxis } from '../shared/fitting-rotation' /** - * Selection-time rotation support for placed fittings. The R/T rotation - * itself lives in `def.keyboardActions` (the editor's keyboard hook - * dispatches it); this system contributes the piece that hook can't: - * **Alt cycles the active rotation axis** while a single fitting is - * selected. The axis itself lives on `useEditor.rotationAxis`, which the + * Selection-time rotation support for placed fittings, mounted by the + * editor's SelectionAffordanceManager (`def.affordanceTools.selection`). + * The R/T rotation itself lives in `def.keyboardActions` (the editor's + * keyboard hook dispatches it); this contributes the piece that hook + * can't: **Alt cycles the active rotation axis** while a single fitting + * is selected. The axis lives on `useEditor.rotationAxis`, which the * floating action menu reads to show the axis pill above the selected * fitting — so this component renders nothing. */ -const DuctFittingSystem = () => { +const DuctFittingSelectionAffordance = () => { const selectedIds = useViewer((s) => s.selection.selectedIds) const hasSelectedFitting = useScene((s) => { if (selectedIds.length !== 1) return false @@ -39,4 +40,4 @@ const DuctFittingSystem = () => { return null } -export default DuctFittingSystem +export default DuctFittingSelectionAffordance diff --git a/packages/nodes/src/duct-fitting/tool.tsx b/packages/nodes/src/duct-fitting/tool.tsx index d9cb0e068..f5d071fd8 100644 --- a/packages/nodes/src/duct-fitting/tool.tsx +++ b/packages/nodes/src/duct-fitting/tool.tsx @@ -1,11 +1,17 @@ 'use client' import { DuctFittingNode, emitter, type GridEvent, useScene } from '@pascal-app/core' -import { triggerSFX, useEditor } from '@pascal-app/editor' +import { EDITOR_LAYER, triggerSFX, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useMemo, useRef, useState } from 'react' import { Euler, Quaternion, Vector3 } from 'three' +import { + AXIS_VECTORS, + cycleRotationAxis, + getRotationAxis, + ROTATE_STEP_RAD, +} from '../shared/fitting-rotation' import { collectScenePorts, DUCT_PORT_SYSTEMS, @@ -15,7 +21,6 @@ import { import { ductFittingDefinition } from './definition' import { buildDuctFittingGeometry } from './geometry' import { localFittingPorts } from './ports' -import { AXIS_VECTORS, cycleRotationAxis, getRotationAxis, ROTATE_STEP_RAD } from './rotation' /** Snap radius (meters, XZ) for mating onto an existing port. */ const PORT_SNAP_RADIUS_M = 0.5 @@ -111,6 +116,9 @@ const DuctFittingTool = () => { const ghost = useMemo(() => { const group = buildDuctFittingGeometry(previewNode) group.traverse((child) => { + // Overlay layer keeps the placement ghost out of the ink / SSGI + // buffers and the thumbnail export, like every other tool preview. + child.layers.set(EDITOR_LAYER) const mesh = child as { material?: { transparent: boolean; opacity: number } } if (mesh.material) { mesh.material.transparent = true @@ -224,7 +232,10 @@ const DuctFittingTool = () => { {/* Port-snap halo so the user sees the click will mate, not free-place. */} {placement.snapPort && ( - + diff --git a/packages/nodes/src/duct-segment/definition.ts b/packages/nodes/src/duct-segment/definition.ts index 1ab59e8be..4ec434fe6 100644 --- a/packages/nodes/src/duct-segment/definition.ts +++ b/packages/nodes/src/duct-segment/definition.ts @@ -28,6 +28,7 @@ export const ductSegmentDefinition: NodeDefinition = { schemaVersion: 1, schema: DuctSegmentNode, category: 'utility', + distributionRole: 'run', defaults: () => ({ object: 'node', @@ -112,7 +113,12 @@ export const ductSegmentDefinition: NodeDefinition = { floorplan: buildDuctSegmentFloorplan, // Selection-time path-point handles (drag to edit a committed run). - system: { module: () => import('./system') }, + // Editor-only UI (reads gridSnapStep, renders DimensionPill), so it + // mounts via the editor's SelectionAffordanceManager — not `def.system`, + // which the viewer package mounts for the read-only route. + affordanceTools: { + selection: () => import('./selection'), + }, tool: () => import('./tool'), toolHints: [ diff --git a/packages/nodes/src/duct-segment/system.tsx b/packages/nodes/src/duct-segment/selection.tsx similarity index 98% rename from packages/nodes/src/duct-segment/system.tsx rename to packages/nodes/src/duct-segment/selection.tsx index ab6ceba4c..15011eef7 100644 --- a/packages/nodes/src/duct-segment/system.tsx +++ b/packages/nodes/src/duct-segment/selection.tsx @@ -12,7 +12,7 @@ import { sceneRegistry, useScene, } from '@pascal-app/core' -import { DimensionPill, useEditor } from '@pascal-app/editor' +import { DimensionPill, EDITOR_LAYER, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { createPortal, type ThreeEvent, useThree } from '@react-three/fiber' @@ -58,7 +58,7 @@ type Point = [number, number, number] * reverted, history resumed, and the final path applied as one tracked * change. */ -const DuctSegmentSystem = () => { +const DuctSegmentSelectionAffordance = () => { const selectedIds = useViewer((s) => s.selection.selectedIds) const duct = useScene((s) => { if (selectedIds.length !== 1) return null @@ -309,6 +309,7 @@ const DuctPointHandles = ({ duct, target }: { duct: DuctSegmentNode; target: Obj return ( { e.stopPropagation() @@ -367,4 +368,4 @@ const DuctPointHandles = ({ duct, target }: { duct: DuctSegmentNode; target: Obj ) } -export default DuctSegmentSystem +export default DuctSegmentSelectionAffordance diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx index 6a2b9d6d6..1690db3d8 100644 --- a/packages/nodes/src/duct-segment/tool.tsx +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -1,14 +1,26 @@ 'use client' -import { type AnyNode, DuctSegmentNode, emitter, type GridEvent, useScene } from '@pascal-app/core' -import { DimensionPill, markToolCancelConsumed, triggerSFX, useEditor } from '@pascal-app/editor' -import { getLevelHeight, useViewer } from '@pascal-app/viewer' +import { + type AnyNode, + DuctSegmentNode, + emitter, + type GridEvent, + getLevelHeight, + useScene, +} from '@pascal-app/core' +import { + DimensionPill, + EDITOR_LAYER, + markToolCancelConsumed, + triggerSFX, + useEditor, +} from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' import { type Group, Matrix4, Vector3 } from 'three' import { getDuctFittingPorts } from '../duct-fitting/ports' import { planElbowAtPort, planElbowRealign, planTeeAtRunBody } from '../shared/auto-fitting' -import { rectSectionAxes, rollToContinueAcrossElbow } from './geometry' import { collectScenePorts, DUCT_PORT_SYSTEMS, @@ -18,6 +30,7 @@ import { type ScenePort, } from '../shared/ports' import { ductSegmentDefinition } from './definition' +import { rectSectionAxes, rollToContinueAcrossElbow } from './geometry' /** * One-segment-at-a-time placement tool for round duct segments. @@ -72,10 +85,7 @@ function snap(value: number, step: number): number { return Math.round(value / step) * step } -function dist2( - a: readonly [number, number, number], - b: readonly [number, number, number], -): number { +function dist2(a: readonly [number, number, number], b: readonly [number, number, number]): number { const dx = a[0] - b[0] const dy = a[1] - b[1] const dz = a[2] - b[2] @@ -107,9 +117,7 @@ function continuityRollFrom(port: ScenePort | null, newDir: Vector3): number | n owner.fittingType !== 'reducer' && owner.fittingType !== 'transition' ) { - const source = getDuctFittingPorts(owner).find( - (p) => p.id !== port.id && p.id !== 'branch', - ) + const source = getDuctFittingPorts(owner).find((p) => p.id !== port.id && p.id !== 'branch') if (source) { srcDir = new Vector3(...source.direction) const tol2 = 0.03 * 0.03 @@ -715,7 +723,7 @@ const DuctSegmentTool = () => { {/* Cursor pip */} - + @@ -741,14 +749,14 @@ const DuctSegmentTool = () => { while the cursor is within snap range, so the user sees that the next click will join an existing duct rather than freeform-place. */} {snapTarget && ( - + )} {/* Committed point pips */} {draftPoints.map((p, i) => ( - + @@ -792,6 +800,7 @@ function PreviewSegment({ const h = profile.height * 0.0254 return ( { if (!m) return @@ -816,6 +825,7 @@ function PreviewSegment({ const radius = (profile.diameter * 0.0254) / 2 return ( { if (!m) return diff --git a/packages/nodes/src/duct-terminal/definition.ts b/packages/nodes/src/duct-terminal/definition.ts index 96fbe62f0..dbb284284 100644 --- a/packages/nodes/src/duct-terminal/definition.ts +++ b/packages/nodes/src/duct-terminal/definition.ts @@ -19,6 +19,7 @@ export const ductTerminalDefinition: NodeDefinition = { schemaVersion: 1, schema: DuctTerminalNode, category: 'utility', + distributionRole: 'terminal', defaults: () => ({ object: 'node', diff --git a/packages/nodes/src/hvac-equipment/definition.ts b/packages/nodes/src/hvac-equipment/definition.ts index 6ec81f6cc..3fa615492 100644 --- a/packages/nodes/src/hvac-equipment/definition.ts +++ b/packages/nodes/src/hvac-equipment/definition.ts @@ -19,6 +19,7 @@ export const hvacEquipmentDefinition: NodeDefinition = schemaVersion: 1, schema: HvacEquipmentNode, category: 'utility', + distributionRole: 'equipment', defaults: () => ({ object: 'node', diff --git a/packages/nodes/src/lineset/definition.ts b/packages/nodes/src/lineset/definition.ts index 7767484f3..ab3f337d5 100644 --- a/packages/nodes/src/lineset/definition.ts +++ b/packages/nodes/src/lineset/definition.ts @@ -20,6 +20,7 @@ export const linesetDefinition: NodeDefinition = { schemaVersion: 1, schema: LinesetNode, category: 'utility', + distributionRole: 'run', defaults: () => ({ object: 'node', @@ -86,7 +87,12 @@ export const linesetDefinition: NodeDefinition = { floorplan: buildLinesetFloorplan, // Selection-time path-point handles (drag to edit a committed run). - system: { module: () => import('./system') }, + // Editor-only UI (reads gridSnapStep, renders DimensionPill), so it + // mounts via the editor's SelectionAffordanceManager — not `def.system`, + // which the viewer package mounts for the read-only route. + affordanceTools: { + selection: () => import('./selection'), + }, tool: () => import('./tool'), toolHints: [ diff --git a/packages/nodes/src/lineset/system.tsx b/packages/nodes/src/lineset/selection.tsx similarity index 98% rename from packages/nodes/src/lineset/system.tsx rename to packages/nodes/src/lineset/selection.tsx index 1448e7e98..ffa12033a 100644 --- a/packages/nodes/src/lineset/system.tsx +++ b/packages/nodes/src/lineset/selection.tsx @@ -8,7 +8,7 @@ import { sceneRegistry, useScene, } from '@pascal-app/core' -import { DimensionPill, useEditor } from '@pascal-app/editor' +import { DimensionPill, EDITOR_LAYER, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { createPortal, type ThreeEvent, useThree } from '@react-three/fiber' @@ -37,7 +37,7 @@ type Point = [number, number, number] * share its exact frame. Drag raycasts run in world space and convert hits * back into the group's local frame before writing the path. */ -const LinesetSystem = () => { +const LinesetSelectionAffordance = () => { const selectedIds = useViewer((s) => s.selection.selectedIds) const lineset = useScene((s) => { if (selectedIds.length !== 1) return null @@ -228,6 +228,7 @@ const LinesetPointHandles = ({ return ( { e.stopPropagation() @@ -284,4 +285,4 @@ const LinesetPointHandles = ({ ) } -export default LinesetSystem +export default LinesetSelectionAffordance diff --git a/packages/nodes/src/lineset/tool.tsx b/packages/nodes/src/lineset/tool.tsx index d978d23c5..c46dcfeff 100644 --- a/packages/nodes/src/lineset/tool.tsx +++ b/packages/nodes/src/lineset/tool.tsx @@ -1,7 +1,13 @@ 'use client' import { type AnyNodeId, LinesetNode, emitter, type GridEvent, useScene } from '@pascal-app/core' -import { DimensionPill, markToolCancelConsumed, triggerSFX, useEditor } from '@pascal-app/editor' +import { + DimensionPill, + EDITOR_LAYER, + markToolCancelConsumed, + triggerSFX, + useEditor, +} from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' @@ -280,7 +286,7 @@ const LinesetTool = () => { return ( - + @@ -296,13 +302,13 @@ const LinesetTool = () => { )} {snapTarget && ( - + )} {draftPoints.map((p, i) => ( - + @@ -326,6 +332,7 @@ function PreviewSegment({ a, b }: { a: [number, number, number]; b: [number, num const radius = (0.875 * 0.0254) / 2 return ( { if (!m) return diff --git a/packages/nodes/src/pipe-fitting/definition.ts b/packages/nodes/src/pipe-fitting/definition.ts index ecf896919..742c46fff 100644 --- a/packages/nodes/src/pipe-fitting/definition.ts +++ b/packages/nodes/src/pipe-fitting/definition.ts @@ -1,6 +1,6 @@ import type { NodeDefinition } from '@pascal-app/core' import { useScene } from '@pascal-app/core' -import { getRotationAxis, rotateEulerWorld } from '../duct-fitting/rotation' +import { getRotationAxis, rotateEulerWorld } from '../shared/fitting-rotation' import { buildPipeFittingFloorplan } from './floorplan' import { buildPipeFittingGeometry } from './geometry' import { pipeFittingParametrics } from './parametrics' @@ -18,6 +18,7 @@ export const pipeFittingDefinition: NodeDefinition = { schemaVersion: 1, schema: PipeFittingNode, category: 'utility', + distributionRole: 'fitting', defaults: () => ({ object: 'node', @@ -53,33 +54,31 @@ export const pipeFittingDefinition: NodeDefinition = { // R/T rotate a selected fitting ±45° around the shared active axis — // same scheme as duct fittings (the default editor rotate only knows - // Y; DWV stacks need X/Z). Alt-cycling lives in `./system.tsx`. + // Y; DWV stacks need X/Z). Alt-cycling lives in `./selection.tsx`. keyboardActions: { r: { appliesTo: (node) => node.type === 'pipe-fitting', run: (node) => useScene.getState().updateNode(node.id, { - rotation: rotateEulerWorld( - (node as PipeFittingNode).rotation, - getRotationAxis(), - 1, - ), + rotation: rotateEulerWorld((node as PipeFittingNode).rotation, getRotationAxis(), 1), }), }, t: { appliesTo: (node) => node.type === 'pipe-fitting', run: (node) => useScene.getState().updateNode(node.id, { - rotation: rotateEulerWorld( - (node as PipeFittingNode).rotation, - getRotationAxis(), - -1, - ), + rotation: rotateEulerWorld((node as PipeFittingNode).rotation, getRotationAxis(), -1), }), }, + axisCycling: true, }, - system: { module: () => import('./system') }, + // Alt-cycles the active rotation axis while a fitting is selected. + // Editor-only (drives `useEditor.rotationAxis`), so it mounts via the + // editor's SelectionAffordanceManager rather than `def.system`. + affordanceTools: { + selection: () => import('./selection'), + }, tool: () => import('./tool'), toolHints: [ diff --git a/packages/nodes/src/pipe-fitting/system.tsx b/packages/nodes/src/pipe-fitting/selection.tsx similarity index 64% rename from packages/nodes/src/pipe-fitting/system.tsx rename to packages/nodes/src/pipe-fitting/selection.tsx index 604353259..20e9a924d 100644 --- a/packages/nodes/src/pipe-fitting/system.tsx +++ b/packages/nodes/src/pipe-fitting/selection.tsx @@ -3,17 +3,19 @@ import { type AnyNodeId, useScene } from '@pascal-app/core' import { useViewer } from '@pascal-app/viewer' import { useEffect } from 'react' -import { cycleRotationAxis } from '../duct-fitting/rotation' +import { cycleRotationAxis } from '../shared/fitting-rotation' /** * Selection-time rotation support for placed pipe fittings — mirrors - * the duct-fitting system. R/T rotation lives in `def.keyboardActions`; - * this contributes the piece that hook can't: **Alt cycles the active - * rotation axis** while a single fitting is selected. The axis lives on - * `useEditor.rotationAxis`, which the floating action menu reads to - * show the axis pill — so this component renders nothing. + * the duct-fitting affordance, mounted by the editor's + * SelectionAffordanceManager (`def.affordanceTools.selection`). R/T + * rotation lives in `def.keyboardActions`; this contributes the piece + * that hook can't: **Alt cycles the active rotation axis** while a + * single fitting is selected. The axis lives on `useEditor.rotationAxis`, + * which the floating action menu reads to show the axis pill — so this + * component renders nothing. */ -const PipeFittingSystem = () => { +const PipeFittingSelectionAffordance = () => { const selectedIds = useViewer((s) => s.selection.selectedIds) const hasSelectedFitting = useScene((s) => { if (selectedIds.length !== 1) return false @@ -38,4 +40,4 @@ const PipeFittingSystem = () => { return null } -export default PipeFittingSystem +export default PipeFittingSelectionAffordance diff --git a/packages/nodes/src/pipe-fitting/tool.tsx b/packages/nodes/src/pipe-fitting/tool.tsx index be165552a..db32cdfc4 100644 --- a/packages/nodes/src/pipe-fitting/tool.tsx +++ b/packages/nodes/src/pipe-fitting/tool.tsx @@ -1,7 +1,7 @@ 'use client' import { emitter, type GridEvent, PipeFittingNode, useScene } from '@pascal-app/core' -import { triggerSFX, useEditor } from '@pascal-app/editor' +import { EDITOR_LAYER, triggerSFX, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useMemo, useRef, useState } from 'react' @@ -11,7 +11,7 @@ import { cycleRotationAxis, getRotationAxis, ROTATE_STEP_RAD, -} from '../duct-fitting/rotation' +} from '../shared/fitting-rotation' import { collectScenePorts, DWV_PORT_SYSTEMS, @@ -118,6 +118,9 @@ const PipeFittingTool = () => { const ghost = useMemo(() => { const group = buildPipeFittingGeometry(previewNode) group.traverse((child) => { + // Overlay layer keeps the placement ghost out of the ink / SSGI + // buffers and the thumbnail export, like every other tool preview. + child.layers.set(EDITOR_LAYER) const mesh = child as { material?: { transparent: boolean; opacity: number } } if (mesh.material) { mesh.material.transparent = true @@ -231,7 +234,10 @@ const PipeFittingTool = () => { {/* Port-snap halo so the user sees the click will mate, not free-place. */} {placement.snapPort && ( - + diff --git a/packages/nodes/src/pipe-segment/definition.ts b/packages/nodes/src/pipe-segment/definition.ts index baf3a16b1..58fa38da1 100644 --- a/packages/nodes/src/pipe-segment/definition.ts +++ b/packages/nodes/src/pipe-segment/definition.ts @@ -19,6 +19,7 @@ export const pipeSegmentDefinition: NodeDefinition = { schemaVersion: 1, schema: PipeSegmentNode, category: 'utility', + distributionRole: 'run', defaults: () => ({ object: 'node', @@ -82,7 +83,12 @@ export const pipeSegmentDefinition: NodeDefinition = { floorplan: buildPipeSegmentFloorplan, // Selection-time path-point handles (drag to edit a committed run). - system: { module: () => import('./system') }, + // Editor-only UI (reads gridSnapStep, renders DimensionPill), so it + // mounts via the editor's SelectionAffordanceManager — not `def.system`, + // which the viewer package mounts for the read-only route. + affordanceTools: { + selection: () => import('./selection'), + }, tool: () => import('./tool'), toolHints: [ diff --git a/packages/nodes/src/pipe-segment/system.tsx b/packages/nodes/src/pipe-segment/selection.tsx similarity index 97% rename from packages/nodes/src/pipe-segment/system.tsx rename to packages/nodes/src/pipe-segment/selection.tsx index f37dc28c0..81f9e1f00 100644 --- a/packages/nodes/src/pipe-segment/system.tsx +++ b/packages/nodes/src/pipe-segment/selection.tsx @@ -12,7 +12,7 @@ import { sceneRegistry, useScene, } from '@pascal-app/core' -import { DimensionPill, useEditor } from '@pascal-app/editor' +import { DimensionPill, EDITOR_LAYER, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { createPortal, type ThreeEvent, useThree } from '@react-three/fiber' @@ -37,7 +37,7 @@ type Point = [number, number, number] /** * Selection-time editing for committed DWV pipe runs: one draggable * handle per path point. The plumbing sibling of the duct-segment - * system — same portal / constrained-drag / single-undo model, snapping + * affordance — same portal / constrained-drag / single-undo model, snapping * to DWV ports instead of duct ports. * * Handles are PORTALED into the pipe's registered scene group so they @@ -49,7 +49,7 @@ type Point = [number, number, number] * horizontal-plane movement (endpoints port-snap onto nearby DWV ports). * Holding **Shift** bypasses grid snapping for a precision drag. */ -const PipeSegmentSystem = () => { +const PipeSegmentSelectionAffordance = () => { const selectedIds = useViewer((s) => s.selection.selectedIds) const pipe = useScene((s) => { if (selectedIds.length !== 1) return null @@ -300,6 +300,7 @@ const PipePointHandles = ({ pipe, target }: { pipe: PipeSegmentNode; target: Obj return ( { e.stopPropagation() @@ -358,4 +359,4 @@ const PipePointHandles = ({ pipe, target }: { pipe: PipeSegmentNode; target: Obj ) } -export default PipeSegmentSystem +export default PipeSegmentSelectionAffordance diff --git a/packages/nodes/src/pipe-segment/tool.tsx b/packages/nodes/src/pipe-segment/tool.tsx index 1202f2da8..aa584e33f 100644 --- a/packages/nodes/src/pipe-segment/tool.tsx +++ b/packages/nodes/src/pipe-segment/tool.tsx @@ -1,7 +1,13 @@ 'use client' import { type AnyNode, emitter, type GridEvent, PipeSegmentNode, useScene } from '@pascal-app/core' -import { DimensionPill, markToolCancelConsumed, triggerSFX, useEditor } from '@pascal-app/editor' +import { + DimensionPill, + EDITOR_LAYER, + markToolCancelConsumed, + triggerSFX, + useEditor, +} from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' @@ -478,7 +484,7 @@ const PipeSegmentTool = () => { return ( - + @@ -504,13 +510,13 @@ const PipeSegmentTool = () => { )} {snapTarget && ( - + )} {displayStart && ( - + @@ -541,6 +547,7 @@ function PreviewPipe({ const radius = (diameterIn * 0.0254) / 2 return ( { if (!m) return diff --git a/packages/nodes/src/pipe-trap/definition.ts b/packages/nodes/src/pipe-trap/definition.ts index a933b69be..331bf8e11 100644 --- a/packages/nodes/src/pipe-trap/definition.ts +++ b/packages/nodes/src/pipe-trap/definition.ts @@ -16,6 +16,7 @@ export const pipeTrapDefinition: NodeDefinition = { schemaVersion: 1, schema: PipeTrapNode, category: 'utility', + distributionRole: 'fitting', defaults: () => ({ object: 'node', diff --git a/packages/nodes/src/duct-fitting/rotation.ts b/packages/nodes/src/shared/fitting-rotation.ts similarity index 94% rename from packages/nodes/src/duct-fitting/rotation.ts rename to packages/nodes/src/shared/fitting-rotation.ts index 471d8dd9f..67a328ae7 100644 --- a/packages/nodes/src/duct-fitting/rotation.ts +++ b/packages/nodes/src/shared/fitting-rotation.ts @@ -1,7 +1,7 @@ import { type AnyNode, useScene } from '@pascal-app/core' import { useEditor } from '@pascal-app/editor' import { Euler, Quaternion, Vector3 } from 'three' -import type { DuctFittingNode } from './schema' +import type { DuctFittingNode } from '../duct-fitting/schema' /** R/T rotation step — 45°, matching the editor's default rotate. */ export const ROTATE_STEP_RAD = Math.PI / 4 @@ -40,7 +40,7 @@ export function rotateEulerWorld( /** * R / T keyboard action for a placed fitting — rotate ±45° around the - * shared active axis (Alt cycles it; see `system.tsx`). + * shared active axis (Alt cycles it; see `selection.tsx`). */ export function rotateFittingNode(node: AnyNode, steps: 1 | -1): void { const fitting = node as DuctFittingNode diff --git a/packages/viewer/src/index.ts b/packages/viewer/src/index.ts index d80fe0f0d..4624bcb8f 100644 --- a/packages/viewer/src/index.ts +++ b/packages/viewer/src/index.ts @@ -108,7 +108,7 @@ export { InteractiveSystem } from './systems/interactive/interactive-system' export { ItemSystem } from './systems/item/item-system' export { ItemLightSystem } from './systems/item-light/item-light-system' export { LevelSystem } from './systems/level/level-system' -export { getLevelHeight, snapLevelsToTruePositions } from './systems/level/level-utils' +export { snapLevelsToTruePositions } from './systems/level/level-utils' export { getRoofMaterialArray } from './systems/roof/roof-materials' // Generic roof-segment primitives. Kinds that compose CSG against // the roof shell (chimney's self-trim, dormer's virtual-segment cut) diff --git a/packages/viewer/src/systems/level/level-system.tsx b/packages/viewer/src/systems/level/level-system.tsx index 8867d27b4..67483c100 100644 --- a/packages/viewer/src/systems/level/level-system.tsx +++ b/packages/viewer/src/systems/level/level-system.tsx @@ -1,8 +1,7 @@ -import { type LevelNode, sceneRegistry, useScene } from '@pascal-app/core' +import { getLevelHeight, type LevelNode, sceneRegistry, useScene } from '@pascal-app/core' import { useFrame } from '@react-three/fiber' import { lerp } from 'three/src/math/MathUtils.js' import useViewer from '../../store/use-viewer' -import { getLevelHeight } from './level-utils' const EXPLODED_GAP = 5 diff --git a/packages/viewer/src/systems/level/level-utils.ts b/packages/viewer/src/systems/level/level-utils.ts index 1804e3747..aa9b2a201 100644 --- a/packages/viewer/src/systems/level/level-utils.ts +++ b/packages/viewer/src/systems/level/level-utils.ts @@ -1,53 +1,4 @@ -import { - type CeilingNode, - type LevelNode, - sceneRegistry, - useScene, - type WallNode, -} from '@pascal-app/core' - -export const DEFAULT_LEVEL_HEIGHT = 2.5 - -// Cache: levelId → computed height. Invalidated when the nodes reference changes. -// Zustand produces a new `nodes` object on every mutation, so reference equality -// is a zero-cost way to detect stale data without any subscription overhead. -const heightCache = new Map() -let lastNodesRef: object | null = null - -export function getLevelHeight( - levelId: string, - nodes: ReturnType['nodes'], -): number { - if (nodes !== lastNodesRef) { - heightCache.clear() - lastNodesRef = nodes - } - - if (heightCache.has(levelId)) return heightCache.get(levelId)! - - const level = nodes[levelId as LevelNode['id']] as LevelNode | undefined - if (!level) return DEFAULT_LEVEL_HEIGHT - - let maxTop = 0 - - for (const childId of level.children) { - const child = nodes[childId as keyof typeof nodes] - if (!child) continue - if (child.type === 'ceiling') { - const ch = (child as CeilingNode).height ?? DEFAULT_LEVEL_HEIGHT - if (ch > maxTop) maxTop = ch - } else if (child.type === 'wall') { - let meshY = sceneRegistry.nodes.get(childId as any)?.position.y ?? 0 - if (meshY < 0) meshY = 0 - const top = meshY + ((child as WallNode).height ?? DEFAULT_LEVEL_HEIGHT) - if (top > maxTop) maxTop = top - } - } - - const height = maxTop > 0 ? maxTop : DEFAULT_LEVEL_HEIGHT - heightCache.set(levelId, height) - return height -} +import { getLevelHeight, type LevelNode, sceneRegistry, useScene } from '@pascal-app/core' /** * Instantly snaps all level Objects3D to their true stacked Y positions From 279cb2e554cf00bdef30cbad01c935940464e329 Mon Sep 17 00:00:00 2001 From: sudhir Date: Sat, 13 Jun 2026 11:07:57 +0530 Subject: [PATCH 46/59] style(editor): fix import order in editor/index after merge Co-Authored-By: Claude Opus 4.8 (1M context) --- packages/editor/src/components/editor/index.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/editor/src/components/editor/index.tsx b/packages/editor/src/components/editor/index.tsx index 2dc7e9921..ca6dde067 100644 --- a/packages/editor/src/components/editor/index.tsx +++ b/packages/editor/src/components/editor/index.tsx @@ -24,10 +24,10 @@ import useEditor from '../../store/use-editor' import { CeilingSelectionAffordanceSystem } from '../systems/ceiling/ceiling-selection-affordance-system' import { CeilingSystem } from '../systems/ceiling/ceiling-system' import { RoofEditSystem } from '../systems/roof/roof-edit-system' +import { SelectionAffordanceManager } from '../systems/selection-affordance-manager' import { StairEditSystem } from '../systems/stair/stair-edit-system' import { ZoneLabelEditorSystem } from '../systems/zone/zone-label-editor-system' import { ZoneSystem } from '../systems/zone/zone-system' -import { SelectionAffordanceManager } from '../systems/selection-affordance-manager' import { BoxSelectTool } from '../tools/select/box-select-tool' import { ToolManager } from '../tools/tool-manager' import { ActionMenu } from '../ui/action-menu' @@ -50,13 +50,13 @@ import { EditorLayoutV2 } from './editor-layout-v2' import { ExportManager } from './export-manager' import { FirstPersonControls, FirstPersonOverlay } from './first-person-controls' import { FloatingActionMenu } from './floating-action-menu' -import { RiserDiagramPanel } from './riser-diagram-panel' import { FloatingBuildingActionMenu } from './floating-building-action-menu' import { FloorplanPanel } from './floorplan-panel' import { Grid } from './grid' import { GroupMoveHandle } from './group-move-handle' import { GroupRotateHandle } from './group-rotate-handle' import { NodeArrowHandles } from './node-arrow-handles' +import { RiserDiagramPanel } from './riser-diagram-panel' import { SelectionManager } from './selection-manager' import { SiteEdgeLabels } from './site-edge-labels' import { SlabHoleHighlights } from './slab-hole-highlights' From 11d51bf2a59b63aed9eaf89b26827e60e799e33a Mon Sep 17 00:00:00 2001 From: sudhir Date: Sat, 13 Jun 2026 11:12:17 +0530 Subject: [PATCH 47/59] style(nodes): biome format + import cleanup on HVAC/DWV files Apply safe biome fixes (formatting, import sort, unused-import removal) to the branch's own duct/lineset/pipe-trap files so `bun run check` passes. Unsafe useExhaustiveDependencies hints left untouched. Co-Authored-By: Claude Opus 4.8 (1M context) --- apps/editor/components/build-tab.tsx | 6 +- .../nodes/src/duct-fitting/parametrics.ts | 17 +--- packages/nodes/src/duct-segment/geometry.ts | 5 +- .../nodes/src/duct-segment/parametrics.ts | 11 +-- packages/nodes/src/duct-terminal/tool.tsx | 1 - packages/nodes/src/hvac-equipment/geometry.ts | 97 ++++++++++--------- packages/nodes/src/lineset/connect.test.ts | 91 ++++++++++++++--- packages/nodes/src/lineset/connect.ts | 7 +- packages/nodes/src/lineset/definition.ts | 3 +- packages/nodes/src/lineset/geometry.ts | 24 ++++- packages/nodes/src/lineset/selection.tsx | 8 +- packages/nodes/src/lineset/tool.tsx | 15 ++- packages/nodes/src/pipe-trap/geometry.ts | 5 +- packages/nodes/src/pipe-trap/ports.ts | 10 +- 14 files changed, 190 insertions(+), 110 deletions(-) diff --git a/apps/editor/components/build-tab.tsx b/apps/editor/components/build-tab.tsx index 4a1367caa..07332c08b 100644 --- a/apps/editor/components/build-tab.tsx +++ b/apps/editor/components/build-tab.tsx @@ -154,8 +154,10 @@ export function BuildTab() { // The fitting tools are armed from their segment's panel, not a grid // tile — keep the segment tile lit so the panel (and the way back) // stays visible. - const ductContext = mode === 'build' && (activeTool === 'duct-segment' || activeTool === 'duct-fitting') - const pipeContext = mode === 'build' && (activeTool === 'pipe-segment' || activeTool === 'pipe-fitting') + const ductContext = + mode === 'build' && (activeTool === 'duct-segment' || activeTool === 'duct-fitting') + const pipeContext = + mode === 'build' && (activeTool === 'pipe-segment' || activeTool === 'pipe-fitting') const isTypeActive = (type: BuildType) => type.mode === 'material-paint' diff --git a/packages/nodes/src/duct-fitting/parametrics.ts b/packages/nodes/src/duct-fitting/parametrics.ts index 298a289e3..7215ac4a0 100644 --- a/packages/nodes/src/duct-fitting/parametrics.ts +++ b/packages/nodes/src/duct-fitting/parametrics.ts @@ -91,9 +91,7 @@ export const ductFittingParametrics: ParametricDescriptor = { const runShape = next.fittingType === 'transition' ? 'rect' : next.shape if (runShape !== 'round' && next.fittingType !== 'reducer') { const equivalent = runShape === 'oval' ? ovalEquivalentDiameterIn : equivalentDiameterIn - out.diameter = clampDiameter( - equivalent(out.width ?? next.width, out.height ?? next.height), - ) + out.diameter = clampDiameter(equivalent(out.width ?? next.width, out.height ?? next.height)) } const shape2 = out.shape2 ?? next.shape2 if (next.fittingType === 'tee' && shape2 !== 'round') { @@ -135,9 +133,7 @@ export const ductFittingParametrics: ParametricDescriptor = { // possibly-stale riser roll would corrupt it. if (next.shape !== 'round' && mate.duct.shape !== 'round') { const away = mate.duct.path[mate.endIndex === 0 ? 1 : mate.duct.path.length - 2] - const source = getDuctFittingPorts(next).find( - (p) => p.id !== portId && p.id !== 'branch', - ) + const source = getDuctFittingPorts(next).find((p) => p.id !== portId && p.id !== 'branch') if (away && source) { const newDir = new Vector3(away[0] - end[0], away[1] - end[1], away[2] - end[2]) if (newDir.lengthSq() >= 1e-10) { @@ -214,8 +210,7 @@ export const ductFittingParametrics: ParametricDescriptor = { // Hidden when the run legs are rect / oval (transition's inlet // always is) — `diameter` is then derived as the area equivalent. visibleIf: (n) => - n.fittingType === 'reducer' || - (n.fittingType !== 'transition' && n.shape === 'round'), + n.fittingType === 'reducer' || (n.fittingType !== 'transition' && n.shape === 'round'), }, { key: 'width', @@ -225,8 +220,7 @@ export const ductFittingParametrics: ParametricDescriptor = { max: 60, step: 1, visibleIf: (n) => - n.fittingType === 'transition' || - (n.shape !== 'round' && n.fittingType !== 'reducer'), + n.fittingType === 'transition' || (n.shape !== 'round' && n.fittingType !== 'reducer'), }, { key: 'height', @@ -236,8 +230,7 @@ export const ductFittingParametrics: ParametricDescriptor = { max: 40, step: 1, visibleIf: (n) => - n.fittingType === 'transition' || - (n.shape !== 'round' && n.fittingType !== 'reducer'), + n.fittingType === 'transition' || (n.shape !== 'round' && n.fittingType !== 'reducer'), }, { key: 'shape2', diff --git a/packages/nodes/src/duct-segment/geometry.ts b/packages/nodes/src/duct-segment/geometry.ts index a15992a87..8a6d764fa 100644 --- a/packages/nodes/src/duct-segment/geometry.ts +++ b/packages/nodes/src/duct-segment/geometry.ts @@ -83,10 +83,7 @@ export function ductPortDiameterIn(node: { * pair in the plane perpendicular to `dir`, letting a riser carry the * orientation of the run it turned off instead of the bare fallback. */ -export function rectSectionAxes( - dir: Vector3, - roll = 0, -): { width: Vector3; height: Vector3 } { +export function rectSectionAxes(dir: Vector3, roll = 0): { width: Vector3; height: Vector3 } { const d = dir.clone().normalize() const xBase = new Vector3().crossVectors(UP, d) if (xBase.lengthSq() < 1e-8) xBase.set(1, 0, 0) diff --git a/packages/nodes/src/duct-segment/parametrics.ts b/packages/nodes/src/duct-segment/parametrics.ts index 8416b573a..76776b5eb 100644 --- a/packages/nodes/src/duct-segment/parametrics.ts +++ b/packages/nodes/src/duct-segment/parametrics.ts @@ -1,8 +1,4 @@ -import { - type DuctFittingNode, - type ParametricDescriptor, - useScene, -} from '@pascal-app/core' +import { type DuctFittingNode, type ParametricDescriptor, useScene } from '@pascal-app/core' import { Vector3 } from 'three' import { getDuctFittingPorts } from '../duct-fitting/ports' import { rollToContinueAcrossElbow } from './geometry' @@ -11,10 +7,7 @@ import type { DuctSegmentNode } from './schema' /** A run endpoint sitting this close to a collar counts as mated. */ const MATE_TOL_M = 0.03 -function dist2( - a: readonly [number, number, number], - b: readonly [number, number, number], -): number { +function dist2(a: readonly [number, number, number], b: readonly [number, number, number]): number { const dx = a[0] - b[0] const dy = a[1] - b[1] const dz = a[2] - b[2] diff --git a/packages/nodes/src/duct-terminal/tool.tsx b/packages/nodes/src/duct-terminal/tool.tsx index cf0988981..184a7c193 100644 --- a/packages/nodes/src/duct-terminal/tool.tsx +++ b/packages/nodes/src/duct-terminal/tool.tsx @@ -8,7 +8,6 @@ import { sceneRegistry, useScene, type WallEvent, - type WallNode, } from '@pascal-app/core' import { triggerSFX, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' diff --git a/packages/nodes/src/hvac-equipment/geometry.ts b/packages/nodes/src/hvac-equipment/geometry.ts index b806a0f0c..ddab72379 100644 --- a/packages/nodes/src/hvac-equipment/geometry.ts +++ b/packages/nodes/src/hvac-equipment/geometry.ts @@ -153,8 +153,26 @@ export function buildHvacEquipmentGeometry(node: HvacEquipmentNode): Group { }) addBox(frontW, openBottom - t, t, cabinet, 0, (t + openBottom) / 2, frontZ, 'equipment-sill') addBox(frontW, H - t - openTop, t, panelMat, 0, (openTop + H - t) / 2, frontZ, 'equipment-panel') - addBox(jamb, openTop - openBottom, t, cabinet, -frontHalf + jamb / 2, (openBottom + openTop) / 2, frontZ, 'equipment-jamb-l') - addBox(jamb, openTop - openBottom, t, cabinet, frontHalf - jamb / 2, (openBottom + openTop) / 2, frontZ, 'equipment-jamb-r') + addBox( + jamb, + openTop - openBottom, + t, + cabinet, + -frontHalf + jamb / 2, + (openBottom + openTop) / 2, + frontZ, + 'equipment-jamb-l', + ) + addBox( + jamb, + openTop - openBottom, + t, + cabinet, + frontHalf - jamb / 2, + (openBottom + openTop) / 2, + frontZ, + 'equipment-jamb-r', + ) // ── Control area on the upper front panel (fan-limit switch + cover). const ctrlMat = new MeshStandardMaterial({ @@ -162,8 +180,26 @@ export function buildHvacEquipmentGeometry(node: HvacEquipmentNode): Group { metalness: 0.4, roughness: 0.6, }) - addBox(W * 0.34, (H - openTop) * 0.5, 0.012, ctrlMat, W * 0.18, (openTop + H) / 2, frontZ + 0.008, 'equipment-control') - addBox(W * 0.1, (H - openTop) * 0.3, 0.02, ctrlMat, -W * 0.22, (openTop + H) / 2, frontZ + 0.012, 'equipment-switch') + addBox( + W * 0.34, + (H - openTop) * 0.5, + 0.012, + ctrlMat, + W * 0.18, + (openTop + H) / 2, + frontZ + 0.008, + 'equipment-control', + ) + addBox( + W * 0.1, + (H - openTop) * 0.3, + 0.02, + ctrlMat, + -W * 0.22, + (openTop + H) / 2, + frontZ + 0.012, + 'equipment-switch', + ) // ── Squirrel-cage circulating fan, seated in the open lower cavity. The // round scroll housing faces front (+Z) so it shows through the cut. @@ -181,18 +217,12 @@ export function buildHvacEquipmentGeometry(node: HvacEquipmentNode): Group { metalness: 0.2, roughness: 0.75, }) - const housing = new Mesh( - new CylinderGeometry(rB, rB, housingD, RADIAL_SEGMENTS), - blowerMat, - ) + const housing = new Mesh(new CylinderGeometry(rB, rB, housingD, RADIAL_SEGMENTS), blowerMat) housing.name = 'blower-housing' housing.rotation.x = Math.PI / 2 // axis Y → axis Z (round face toward front) housing.position.set(0, cy, zc) group.add(housing) - const intake = new Mesh( - new TorusGeometry(rB * 0.7, rB * 0.12, 10, RADIAL_SEGMENTS), - blowerMat, - ) + const intake = new Mesh(new TorusGeometry(rB * 0.7, rB * 0.12, 10, RADIAL_SEGMENTS), blowerMat) intake.name = 'blower-intake' intake.position.set(0, cy, hd - t - 0.005) group.add(intake) @@ -208,10 +238,7 @@ export function buildHvacEquipmentGeometry(node: HvacEquipmentNode): Group { const BLADES = 14 for (let i = 0; i < BLADES; i++) { const a = (i / BLADES) * Math.PI * 2 - const blade = new Mesh( - new BoxGeometry(0.006, rB * 0.62, housingD * 0.82), - bladeMat, - ) + const blade = new Mesh(new BoxGeometry(0.006, rB * 0.62, housingD * 0.82), bladeMat) blade.name = `blower-blade-${i}` blade.position.set(Math.cos(a) * rB * 0.5, cy + Math.sin(a) * rB * 0.5, zc) blade.rotation.z = a @@ -519,13 +546,7 @@ function buildCondenser(node: HvacEquipmentNode, group: Group): Group { // them read as the coil louvers. const finY = H / 2 const finH = H - 2 * frameH - const addFins = ( - count: number, - span: number, - fixed: number, - axis: 'x' | 'z', - sign: number, - ) => { + const addFins = (count: number, span: number, fixed: number, axis: 'x' | 'z', sign: number) => { for (let i = 0; i < count; i++) { const t = (i + 0.5) / count const c = -span / 2 + t * span @@ -568,10 +589,7 @@ function buildCondenserFanGuard(group: Group, W: number, H: number, D: number): // Recessed throat dropping below the top deck so the fan reads as an // opening, not a disc sitting on the lid. - const throat = new Mesh( - new CylinderGeometry(r, r, H * 0.12, RADIAL_SEGMENTS, 1, true), - fanMat, - ) + const throat = new Mesh(new CylinderGeometry(r, r, H * 0.12, RADIAL_SEGMENTS, 1, true), fanMat) throat.name = 'condenser-fan-throat' throat.position.set(0, deckY - H * 0.06, 0) group.add(throat) @@ -582,10 +600,7 @@ function buildCondenserFanGuard(group: Group, W: number, H: number, D: number): metalness: 0.3, roughness: 0.6, }) - const hub = new Mesh( - new CylinderGeometry(r * 0.16, r * 0.16, 0.04, SMALL_SEGMENTS), - bladeMat, - ) + const hub = new Mesh(new CylinderGeometry(r * 0.16, r * 0.16, 0.04, SMALL_SEGMENTS), bladeMat) hub.name = 'condenser-fan-hub' hub.position.set(0, deckY - 0.02, 0) group.add(hub) @@ -647,20 +662,14 @@ function buildAxialFan( }) // Recessed throat behind the blades so the fan reads as an opening. - const throat = new Mesh( - new CylinderGeometry(r, r, 0.04, RADIAL_SEGMENTS), - grilleMat, - ) + const throat = new Mesh(new CylinderGeometry(r, r, 0.04, RADIAL_SEGMENTS), grilleMat) throat.name = `fan-${index}-throat` throat.rotation.x = Math.PI / 2 throat.position.set(x, y, frontZ - 0.02) group.add(throat) // Hub + swept blades, sitting just proud of the throat. - const hub = new Mesh( - new CylinderGeometry(r * 0.18, r * 0.18, 0.03, SMALL_SEGMENTS), - bladeMat, - ) + const hub = new Mesh(new CylinderGeometry(r * 0.18, r * 0.18, 0.03, SMALL_SEGMENTS), bladeMat) hub.name = `fan-${index}-hub` hub.rotation.x = Math.PI / 2 hub.position.set(x, y, frontZ + 0.005) @@ -669,10 +678,7 @@ function buildAxialFan( const BLADES = 5 for (let i = 0; i < BLADES; i++) { const a = (i / BLADES) * Math.PI * 2 - const blade = new Mesh( - new BoxGeometry(r * 0.34, 0.006, r * 0.78), - bladeMat, - ) + const blade = new Mesh(new BoxGeometry(r * 0.34, 0.006, r * 0.78), bladeMat) blade.name = `fan-${index}-blade-${i}` // Position blade outward from hub, then tilt for an airfoil sweep. const br = r * 0.5 @@ -690,10 +696,7 @@ function buildAxialFan( }) for (let k = 1; k <= 3; k++) { const rr = (r * k) / 3 - const ring = new Mesh( - new TorusGeometry(rr, 0.004, 6, RADIAL_SEGMENTS), - ringMat, - ) + const ring = new Mesh(new TorusGeometry(rr, 0.004, 6, RADIAL_SEGMENTS), ringMat) ring.name = `fan-${index}-grille-${k}` ring.position.set(x, y, frontZ + 0.02) group.add(ring) diff --git a/packages/nodes/src/lineset/connect.test.ts b/packages/nodes/src/lineset/connect.test.ts index a50bc7d51..5fe7b9d4a 100644 --- a/packages/nodes/src/lineset/connect.test.ts +++ b/packages/nodes/src/lineset/connect.test.ts @@ -11,48 +11,113 @@ function line(id: string, path: Point[]): LinesetNode { describe('planLinesetConnect', () => { test('no shared endpoint → create', () => { - const plan = planLinesetConnect([line('a', [[0, 0, 0], [1, 0, 0]])], [5, 0, 0], [6, 0, 0]) - expect(plan).toEqual({ kind: 'create', path: [[5, 0, 0], [6, 0, 0]] }) + const plan = planLinesetConnect( + [ + line('a', [ + [0, 0, 0], + [1, 0, 0], + ]), + ], + [5, 0, 0], + [6, 0, 0], + ) + expect(plan).toEqual({ + kind: 'create', + path: [ + [5, 0, 0], + [6, 0, 0], + ], + }) }) test('new start meets run end → extend, old end becomes interior', () => { - const a = line('a', [[0, 0, 0], [1, 0, 0]]) + const a = line('a', [ + [0, 0, 0], + [1, 0, 0], + ]) const plan = planLinesetConnect([a], [1, 0, 0], [1, 0, 2]) - expect(plan).toEqual({ kind: 'extend', id: 'a', path: [[0, 0, 0], [1, 0, 0], [1, 0, 2]] }) + expect(plan).toEqual({ + kind: 'extend', + id: 'a', + path: [ + [0, 0, 0], + [1, 0, 0], + [1, 0, 2], + ], + }) }) test('new start meets run start → extend, run reversed so join is interior', () => { - const a = line('a', [[0, 0, 0], [1, 0, 0]]) + const a = line('a', [ + [0, 0, 0], + [1, 0, 0], + ]) const plan = planLinesetConnect([a], [0, 0, 0], [0, 0, 2]) - expect(plan).toEqual({ kind: 'extend', id: 'a', path: [[1, 0, 0], [0, 0, 0], [0, 0, 2]] }) + expect(plan).toEqual({ + kind: 'extend', + id: 'a', + path: [ + [1, 0, 0], + [0, 0, 0], + [0, 0, 2], + ], + }) }) test('new end meets a run → extend, new segment leads', () => { - const a = line('a', [[1, 0, 0], [2, 0, 0]]) + const a = line('a', [ + [1, 0, 0], + [2, 0, 0], + ]) const plan = planLinesetConnect([a], [1, 0, 3], [1, 0, 0]) - expect(plan).toEqual({ kind: 'extend', id: 'a', path: [[1, 0, 3], [1, 0, 0], [2, 0, 0]] }) + expect(plan).toEqual({ + kind: 'extend', + id: 'a', + path: [ + [1, 0, 3], + [1, 0, 0], + [2, 0, 0], + ], + }) }) test('both ends meet distinct runs → bridge, second run absorbed', () => { - const a = line('a', [[0, 0, 0], [1, 0, 0]]) - const b = line('b', [[1, 0, 5], [2, 0, 5]]) + const a = line('a', [ + [0, 0, 0], + [1, 0, 0], + ]) + const b = line('b', [ + [1, 0, 5], + [2, 0, 5], + ]) const plan = planLinesetConnect([a, b], [1, 0, 0], [1, 0, 5]) expect(plan).toEqual({ kind: 'bridge', id: 'a', deleteId: 'b', - path: [[0, 0, 0], [1, 0, 0], [1, 0, 5], [2, 0, 5]], + path: [ + [0, 0, 0], + [1, 0, 0], + [1, 0, 5], + [2, 0, 5], + ], }) }) test('both ends meet the SAME run → not a bridge (extends at start)', () => { - const a = line('a', [[0, 0, 0], [1, 0, 0]]) + const a = line('a', [ + [0, 0, 0], + [1, 0, 0], + ]) const plan = planLinesetConnect([a], [0, 0, 0], [1, 0, 0]) expect(plan.kind).toBe('extend') }) test('float drift within tolerance still coincides', () => { - const a = line('a', [[0, 0, 0], [1, 0, 0]]) + const a = line('a', [ + [0, 0, 0], + [1, 0, 0], + ]) const plan = planLinesetConnect([a], [1.0000001, 0, 0], [1, 0, 2]) expect(plan.kind).toBe('extend') }) diff --git a/packages/nodes/src/lineset/connect.ts b/packages/nodes/src/lineset/connect.ts index 5df49f360..5a88a06fd 100644 --- a/packages/nodes/src/lineset/connect.ts +++ b/packages/nodes/src/lineset/connect.ts @@ -79,7 +79,12 @@ export function planLinesetConnect( if (atStart && atEnd && atStart.line.id !== atEnd.line.id) { const left = endLast(atStart.line.path as Point[], atStart.side) // ...→ start const right = startFirst(atEnd.line.path as Point[], atEnd.side) // end →... - return { kind: 'bridge', id: atStart.line.id, path: [...left, ...right], deleteId: atEnd.line.id } + return { + kind: 'bridge', + id: atStart.line.id, + path: [...left, ...right], + deleteId: atEnd.line.id, + } } if (atStart) { const base = endLast(atStart.line.path as Point[], atStart.side) // ...→ start diff --git a/packages/nodes/src/lineset/definition.ts b/packages/nodes/src/lineset/definition.ts index ab3f337d5..f59b94041 100644 --- a/packages/nodes/src/lineset/definition.ts +++ b/packages/nodes/src/lineset/definition.ts @@ -45,8 +45,7 @@ export const linesetDefinition: NodeDefinition = { parametrics: linesetParametrics, geometry: buildLinesetGeometry, - geometryKey: (n) => - JSON.stringify([n.path, n.suctionDiameter, n.liquidDiameter, n.insulated]), + geometryKey: (n) => JSON.stringify([n.path, n.suctionDiameter, n.liquidDiameter, n.insulated]), // Open run ends as typed refrigerant ports — directions point outward // along the path tangent so they mate flush onto a service valve. Path diff --git a/packages/nodes/src/lineset/geometry.ts b/packages/nodes/src/lineset/geometry.ts index e53215241..35f411aa0 100644 --- a/packages/nodes/src/lineset/geometry.ts +++ b/packages/nodes/src/lineset/geometry.ts @@ -139,12 +139,30 @@ export function buildLinesetGeometry(node: LinesetNode): Group { const liquidPts = points.map((p, i) => p.clone().add(offsets[i]!)) for (let i = 0; i < points.length - 1; i++) { - const sCopper = buildRun(suctionPts[i]!, suctionPts[i + 1]!, suctionR, copperMat, `lineset-suction-${i}`) + const sCopper = buildRun( + suctionPts[i]!, + suctionPts[i + 1]!, + suctionR, + copperMat, + `lineset-suction-${i}`, + ) if (sCopper) group.add(sCopper) - const liquid = buildRun(liquidPts[i]!, liquidPts[i + 1]!, liquidR, copperMat, `lineset-liquid-${i}`) + const liquid = buildRun( + liquidPts[i]!, + liquidPts[i + 1]!, + liquidR, + copperMat, + `lineset-liquid-${i}`, + ) if (liquid) group.add(liquid) if (node.insulated) { - const jacket = buildRun(suctionPts[i]!, suctionPts[i + 1]!, jacketR, insulationMat, `lineset-jacket-${i}`) + const jacket = buildRun( + suctionPts[i]!, + suctionPts[i + 1]!, + jacketR, + insulationMat, + `lineset-jacket-${i}`, + ) if (jacket) group.add(jacket) } } diff --git a/packages/nodes/src/lineset/selection.tsx b/packages/nodes/src/lineset/selection.tsx index ffa12033a..36e594e4a 100644 --- a/packages/nodes/src/lineset/selection.tsx +++ b/packages/nodes/src/lineset/selection.tsx @@ -66,13 +66,7 @@ const LinesetSelectionAffordance = () => { return createPortal(, target, undefined) } -const LinesetPointHandles = ({ - lineset, - target, -}: { - lineset: LinesetNode - target: Object3D -}) => { +const LinesetPointHandles = ({ lineset, target }: { lineset: LinesetNode; target: Object3D }) => { const { camera, gl } = useThree() const unit = useViewer((s) => s.unit) const [draggingIndex, setDraggingIndex] = useState(null) diff --git a/packages/nodes/src/lineset/tool.tsx b/packages/nodes/src/lineset/tool.tsx index c46dcfeff..e1af50bfa 100644 --- a/packages/nodes/src/lineset/tool.tsx +++ b/packages/nodes/src/lineset/tool.tsx @@ -1,6 +1,6 @@ 'use client' -import { type AnyNodeId, LinesetNode, emitter, type GridEvent, useScene } from '@pascal-app/core' +import { type AnyNodeId, emitter, type GridEvent, LinesetNode, useScene } from '@pascal-app/core' import { DimensionPill, EDITOR_LAYER, @@ -144,7 +144,11 @@ const LinesetTool = () => { const step = useEditor.getState().gridSnapStep return { point: [snap(raw[0], step), 0, snap(raw[2], step)], snapped: null } } - const rawXZ: [number, number, number] = [event.localPosition[0], last[1], event.localPosition[2]] + const rawXZ: [number, number, number] = [ + event.localPosition[0], + last[1], + event.localPosition[2], + ] const shift = event.nativeEvent?.shiftKey === true const angled = shift ? rawXZ : projectToAngleLock(last, rawXZ) if (event.nativeEvent?.altKey !== true && !shift) { @@ -340,7 +344,12 @@ function PreviewSegment({ a, b }: { a: [number, number, number]; b: [number, num }} > - + ) } diff --git a/packages/nodes/src/pipe-trap/geometry.ts b/packages/nodes/src/pipe-trap/geometry.ts index a69e9169b..56f788210 100644 --- a/packages/nodes/src/pipe-trap/geometry.ts +++ b/packages/nodes/src/pipe-trap/geometry.ts @@ -24,10 +24,7 @@ export function buildPipeTrapGeometry(node: PipeTrapNode): Group { // U-bend: half torus in the XY plane, opening upward. Sits so its two // tops are at y = bendR (the inlet riser and the arm rise). - const bend = new Mesh( - new TorusGeometry(bendR, radius, 12, BEND_SEGMENTS, Math.PI), - material, - ) + const bend = new Mesh(new TorusGeometry(bendR, radius, 12, BEND_SEGMENTS, Math.PI), material) bend.rotation.z = Math.PI // open side up bend.position.set(bendR, bendR, 0) bend.name = 'pipe-trap-bend' diff --git a/packages/nodes/src/pipe-trap/ports.ts b/packages/nodes/src/pipe-trap/ports.ts index 0bd260f50..ce7a954e1 100644 --- a/packages/nodes/src/pipe-trap/ports.ts +++ b/packages/nodes/src/pipe-trap/ports.ts @@ -15,8 +15,14 @@ export function getPipeTrapPorts(node: PipeTrapNode): NodePort[] { const yaw = node.rotation const offset = new Vector3(node.position[0], node.position[1], node.position[2]) const place = (local: Vector3, dir: Vector3): NodePort => { - const position = local.clone().applyAxisAngle(new Vector3(0, 1, 0), yaw).add(offset) - const direction = dir.clone().applyAxisAngle(new Vector3(0, 1, 0), yaw).normalize() + const position = local + .clone() + .applyAxisAngle(new Vector3(0, 1, 0), yaw) + .add(offset) + const direction = dir + .clone() + .applyAxisAngle(new Vector3(0, 1, 0), yaw) + .normalize() return { id: local === inlet ? 'inlet' : 'outlet', position: [position.x, position.y, position.z] as const, From fdfa0e11d5f91a2b45dd93473879dce1a8e7735f Mon Sep 17 00:00:00 2001 From: sudhir Date: Mon, 15 Jun 2026 12:54:48 +0530 Subject: [PATCH 48/59] feat(nodes): ghost-preview duplicate/move for HVAC/DWV runs + universal alignment MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Duct, duct-fitting, pipe, and lineset now duplicate and move with a translucent ghost that rides the cursor and only lands on the commit click — nothing is inserted into the scene before that. Each kind ships its own ghost+box mover (affordanceTools.move) and routes through a pure-draft branch in the 3D floating action menu; the MoveTool dispatcher prefers affordanceTools.move over capabilities.movable so duct-fitting uses its ghost. The 2D floorplan overlay drives the same drag for any path kind generically. Dragged runs/fittings now show a footprint bounding box (DragBoundingBox in 3D, an SVG rect in 2D) with Figma-style alignment guides drawn relative to the box. Every kind now contributes alignment anchors: nodeAlignmentAnchors emits path vertices, typed-port positions, and the position centre, so dragging or placing any item snaps to ducts, fittings, pipes, and linesets across all collectAlignmentAnchors consumers (3D mover, ghost movers, fresh placement, surface snap). The 2D overlay no longer skips thin run lines as candidates. Move tools hide the real 3D mesh imperatively (not the store `visible` flag) so a node never vanishes from the 2D floorplan during a drag. Co-Authored-By: Claude Opus 4.8 (1M context) --- .../core/src/services/alignment-anchors.ts | 37 +- .../floorplan-registry-action-menu.tsx | 14 +- .../floorplan-registry-move-overlay.tsx | 86 ++++- .../editor/floating-action-menu.tsx | 27 +- .../src/components/tools/item/move-tool.tsx | 26 +- packages/nodes/src/duct-fitting/definition.ts | 6 + packages/nodes/src/duct-fitting/move-tool.tsx | 286 +++++++++++++++ packages/nodes/src/duct-segment/definition.ts | 4 + packages/nodes/src/duct-segment/move-tool.tsx | 330 ++++++++++++++++++ packages/nodes/src/duct-segment/tool.tsx | 4 +- packages/nodes/src/lineset/definition.ts | 6 + packages/nodes/src/lineset/move-tool.tsx | 304 ++++++++++++++++ packages/nodes/src/lineset/tool.tsx | 4 +- packages/nodes/src/pipe-segment/definition.ts | 5 + packages/nodes/src/pipe-segment/move-tool.tsx | 302 ++++++++++++++++ packages/nodes/src/pipe-segment/tool.tsx | 4 +- packages/nodes/src/shared/ghost-alignment.ts | 49 +++ 17 files changed, 1469 insertions(+), 25 deletions(-) create mode 100644 packages/nodes/src/duct-fitting/move-tool.tsx create mode 100644 packages/nodes/src/duct-segment/move-tool.tsx create mode 100644 packages/nodes/src/lineset/move-tool.tsx create mode 100644 packages/nodes/src/pipe-segment/move-tool.tsx create mode 100644 packages/nodes/src/shared/ghost-alignment.ts diff --git a/packages/core/src/services/alignment-anchors.ts b/packages/core/src/services/alignment-anchors.ts index cf8bc9743..5032b154a 100644 --- a/packages/core/src/services/alignment-anchors.ts +++ b/packages/core/src/services/alignment-anchors.ts @@ -295,8 +295,43 @@ export function nodeAlignmentAnchors( const poly = (node as { polygon?: [number, number][] }).polygon return poly ? polygonAnchors(node.id, poly) : [] } + + const anchors: AlignmentAnchor[] = [] + + // Box footprint (items, columns, shelves, stairs, …). const aabb = alignmentAABB(node, nodes) - return aabb ? bboxCornerAnchors(node.id, aabb.minX, aabb.minZ, aabb.maxX, aabb.maxZ) : [] + if (aabb) { + anchors.push(...bboxCornerAnchors(node.id, aabb.minX, aabb.minZ, aabb.maxX, aabb.maxZ)) + } + + // Polyline kinds (duct / pipe / lineset): every path vertex is an anchor, + // so anything dragged snaps to a run's ends and bends. + const path = (node as { path?: unknown }).path + if (Array.isArray(path)) { + for (const p of path as Array<[number, number, number]>) { + anchors.push({ nodeId: node.id, kind: 'corner', x: p[0], z: p[2] }) + } + } + + // Typed ports (fittings, equipment, terminals, run ends): connection points + // are natural alignment targets — line a new run up with an existing collar. + const ports = nodeRegistry.get(node.type)?.ports?.(node) + if (ports) { + for (const port of ports) { + anchors.push({ nodeId: node.id, kind: 'corner', x: port.position[0], z: port.position[2] }) + } + } + + // Position-based kinds with no footprint (e.g. duct fittings): the origin + // itself is a useful centre anchor. + if (!aabb) { + const position = (node as { position?: [number, number, number] }).position + if (Array.isArray(position)) { + anchors.push({ nodeId: node.id, kind: 'center', x: position[0], z: position[2] }) + } + } + + return anchors } /** diff --git a/packages/editor/src/components/editor-2d/floorplan-registry-action-menu.tsx b/packages/editor/src/components/editor-2d/floorplan-registry-action-menu.tsx index d6adf6ab7..ada0b4a82 100644 --- a/packages/editor/src/components/editor-2d/floorplan-registry-action-menu.tsx +++ b/packages/editor/src/components/editor-2d/floorplan-registry-action-menu.tsx @@ -48,6 +48,13 @@ export function FloorplanRegistryActionMenu() { const selectedId = useViewer((s) => s.selection.selectedIds[0]) as AnyNodeId | undefined const movingNode = useEditor((s) => s.movingNode) const setMovingNode = useEditor((s) => s.setMovingNode) + // Gate on floorplan hover so this 2D menu never coexists with the 3D + // FloatingActionMenu in split view — that menu hides while the floorplan + // is hovered, so this one must only show then. Mirrors the legacy + // FloorplanActionMenuLayer guard. Without it a registry kind (e.g. a + // duct) shows two Duplicate buttons whenever the pointer is outside the + // 2D panel. + const isFloorplanHovered = useEditor((s) => s.isFloorplanHovered) const [position, setPosition] = useState<{ left: number; top: number } | null>(null) @@ -56,7 +63,7 @@ export function FloorplanRegistryActionMenu() { const selectedKind = useScene((s) => (selectedId ? (s.nodes[selectedId]?.type ?? null) : null)) const def = selectedKind ? nodeRegistry.get(selectedKind) : null const isRegistryKind = !!def - const isVisible = isRegistryKind && !movingNode + const isVisible = isRegistryKind && !movingNode && isFloorplanHovered const isWall = selectedKind === 'wall' useEffect(() => { @@ -191,6 +198,11 @@ export function FloorplanRegistryActionMenu() { cloned.metadata && typeof cloned.metadata === 'object' && !Array.isArray(cloned.metadata) ? (cloned.metadata as Record) : {} + // Mark fresh + hand to the placement cursor so the copy follows the + // pointer and only lands on the next click — same gesture for every + // kind. Polyline runs (duct / pipe / lineset) ride the same path: + // `FloorplanRegistryMoveOverlay` translates their whole `path`, so they + // no longer need the old "offset + drop already-placed" special case. cloned.metadata = { ...prevMeta, isNew: true } const parsed = def.schema.parse(cloned) as AnyNode useScene.getState().createNode(parsed, node.parentId as AnyNodeId) diff --git a/packages/editor/src/components/editor-2d/floorplan-registry-move-overlay.tsx b/packages/editor/src/components/editor-2d/floorplan-registry-move-overlay.tsx index c87211c04..6d27dab29 100644 --- a/packages/editor/src/components/editor-2d/floorplan-registry-move-overlay.tsx +++ b/packages/editor/src/components/editor-2d/floorplan-registry-move-overlay.tsx @@ -389,11 +389,32 @@ export function FloorplanRegistryMoveOverlay() { const entry = scene.querySelector(`[data-node-id="${movingNode.id}"]`) as SVGGElement | null if (!entry) return - const originalPosition = (( - movingNode as unknown as { - position?: [number, number, number] - } - ).position ?? [0, 0, 0]) as [number, number, number] + // Polyline kinds (duct / pipe / lineset) carry a `path`, not a + // `position` — translating a `position` here would write a field their + // schema ignores and snap the run back. For those we move every path + // point by the cursor delta and commit the translated `path` instead. + // The reference origin is the path centre so the SVG `translate` delta + // matches the geometry's actual location (which isn't at [0,0,0]). + const originalPath = + 'path' in movingNode && Array.isArray((movingNode as { path?: unknown }).path) + ? (movingNode as { path: [number, number, number][] }).path.map( + (p) => [...p] as [number, number, number], + ) + : null + const originalPosition: [number, number, number] = originalPath + ? (() => { + let cx = 0 + let cz = 0 + for (const p of originalPath) { + cx += p[0] + cz += p[2] + } + const n = originalPath.length || 1 + return [cx / n, originalPath[0]?.[1] ?? 0, cz / n] + })() + : (((movingNode as unknown as { position?: [number, number, number] }).position ?? [ + 0, 0, 0, + ]) as [number, number, number]) const isFreshPlacement = isFreshPlacementMetadata( (movingNode as { metadata?: unknown }).metadata, ) @@ -410,13 +431,34 @@ export function FloorplanRegistryMoveOverlay() { const otherId = el.getAttribute('data-node-id') if (!otherId || otherId === movingNode.id) continue const b = (el as SVGGraphicsElement).getBBox() - if (b.width <= 0 || b.height <= 0) continue + // Skip only fully-degenerate (point) entries. A thin run (duct / pipe / + // lineset drawn as a line) has one zero dimension but is still a valid + // alignment target — its endpoints become line anchors. + if (b.width <= 0 && b.height <= 0) continue candidateAnchors.push(...bboxAnchors(otherId, b.x, b.y, b.x + b.width, b.y + b.height)) } let lastSnapped: [number, number] | null = null let dragAnchor: [number, number] | null = null + // Footprint bounding box drawn around the dragged entry — the 2D + // counterpart of the 3D `DragBoundingBox`, so a moved / duplicated node + // reads the same in both views. Green wireframe rect over the entry's + // own bbox, translated in lockstep with it. The entry stays visible the + // whole drag (no hide-until-move) so it never appears to vanish. + const SVG_NS = 'http://www.w3.org/2000/svg' + const boxEl = document.createElementNS(SVG_NS, 'rect') + boxEl.setAttribute('x', String(movingLocalBBox.x)) + boxEl.setAttribute('y', String(movingLocalBBox.y)) + boxEl.setAttribute('width', String(movingLocalBBox.width)) + boxEl.setAttribute('height', String(movingLocalBBox.height)) + boxEl.setAttribute('fill', 'none') + boxEl.setAttribute('stroke', '#22c55e') + boxEl.setAttribute('stroke-width', '1.5') + boxEl.setAttribute('vector-effect', 'non-scaling-stroke') + boxEl.setAttribute('pointer-events', 'none') + scene.appendChild(boxEl) + const onMove = (event: PointerEvent) => { // Same target guard as Path 1 — pointer must be over the floor // plan scene; otherwise we'd react to 3D-canvas moves with garbage @@ -487,6 +529,7 @@ export function FloorplanRegistryMoveOverlay() { const dx = finalX - originalPosition[0] const dz = finalZ - originalPosition[2] entry.setAttribute('transform', `translate(${dx} ${dz})`) + boxEl.setAttribute('transform', `translate(${dx} ${dz})`) lastSnapped = [finalX, finalZ] } @@ -500,6 +543,33 @@ export function FloorplanRegistryMoveOverlay() { const [, oldY] = originalPosition setMovingNodeOrigin('2d') let selectedId = movingNode.id as AnyNodeId + if (originalPath) { + // Polyline kinds: shift every point by the committed delta and + // write `path`. Strip the fresh-placement flags on first drop. + const dx = sx - originalPosition[0] + const dz = sz - originalPosition[2] + const nextPath = originalPath.map( + ([x, y, z]) => [x + dx, y, z + dz] as [number, number, number], + ) + useScene.getState().updateNode( + movingNode.id as AnyNodeId, + (isFreshPlacement + ? { + path: nextPath, + metadata: stripPlacementMetadataFlags( + (movingNode as { metadata?: unknown }).metadata, + ), + visible: true, + } + : { path: nextPath }) as Partial, + ) + useViewer.getState().setSelection({ selectedIds: [movingNode.id as AnyNodeId] }) + entry.removeAttribute('transform') + useAlignmentGuides.getState().clear() + setMovingNode(null) + swallowNextClick() + return + } if (isFreshPlacement) { selectedId = commitFreshPlacementSubtree( @@ -552,6 +622,10 @@ export function FloorplanRegistryMoveOverlay() { window.removeEventListener('pointerup', onPointerUp) window.removeEventListener('keydown', onKey) entry.removeAttribute('transform') + // Always un-hide on teardown so a committed copy shows and a + // never-revealed entry doesn't leak a hidden style onto a reused node. + entry.style.visibility = '' + boxEl.remove() useAlignmentGuides.getState().clear() } }, [isActive, movingNode, setMovingNode, setMovingNodeOrigin, hasMoveTarget, def]) diff --git a/packages/editor/src/components/editor/floating-action-menu.tsx b/packages/editor/src/components/editor/floating-action-menu.tsx index 60bc80f3f..b43c6c5ef 100644 --- a/packages/editor/src/components/editor/floating-action-menu.tsx +++ b/packages/editor/src/components/editor/floating-action-menu.tsx @@ -508,10 +508,25 @@ export function FloatingActionMenu() { // item without clicking" bug. (Item has its own // draft-committing move tool, so it must skip the generic // registry auto-create branch below.) + } else if ( + duplicate.type === 'duct-segment' || + duplicate.type === 'duct-fitting' || + duplicate.type === 'pipe-segment' || + duplicate.type === 'lineset' + ) { + // Duct runs & fittings, DWV pipe runs, and refrigerant linesets use + // pure drag-to-place: NO node is inserted into the scene until the + // commit click. `setMovingNode` below hands the clone (with + // `metadata.isNew`) to its ghost tool (`MoveDuctSegmentTool` / + // `MoveDuctFittingTool` / `MovePipeSegmentTool` / `MoveLinesetTool`), + // which previews a translucent copy inside a footprint bounding box + // on the cursor and calls `createNode` on the drop click. + // Pre-creating here would drop a copy before any click — the + // "auto-places it" bug. } else if (nodeRegistry.has(duplicate.type)) { - // Registry-driven kinds: offset the position slightly so the - // duplicate doesn't overlap exactly, then create + hand to the - // move tool. Mirrors the roof-segment / stair-segment behavior. + // Registry-driven kinds: offset slightly so the duplicate doesn't + // overlap exactly, then create + hand to the move tool. Mirrors the + // roof-segment / stair-segment behavior. if ('position' in duplicate && Array.isArray((duplicate as any).position)) { const pos = (duplicate as { position: [number, number, number] }).position ;(duplicate as { position: [number, number, number] }).position = [ @@ -519,6 +534,12 @@ export function FloatingActionMenu() { pos[1], pos[2] + 1, ] + } else if ('path' in duplicate && Array.isArray((duplicate as any).path)) { + // Other polyline kinds (pipe / lineset) carry a `path`, not a + // `position`. Create the copy HIDDEN so nothing is auto-placed: + // their shared path mover reveals it as a cursor-following + // preview on the first mouse move and commits on the next click. + ;(duplicate as { visible?: boolean }).visible = false } useScene.getState().createNode(duplicate, duplicate.parentId as AnyNodeId) } diff --git a/packages/editor/src/components/tools/item/move-tool.tsx b/packages/editor/src/components/tools/item/move-tool.tsx index 5ba49e38a..4dd39177d 100644 --- a/packages/editor/src/components/tools/item/move-tool.tsx +++ b/packages/editor/src/components/tools/item/move-tool.tsx @@ -9,14 +9,17 @@ import { getRegistryAffordanceTool } from '../shared/affordance-dispatch' /** * MoveTool dispatcher. Routes to (in order): * - * 1. `MoveRegistryNodeTool` — generic translate-on-XZ for kinds that - * declare `capabilities.movable` (shelf, spawn, item-with-floor-attach, - * …). - * 2. `def.affordanceTools.move` — kind-owned move component, lazy-loaded - * via `getRegistryAffordanceTool`. Covers both generic movers - * (slab / ceiling / wall / fence / column / item / door / window) and - * the bespoke roof / roof-segment / stair / stair-segment / building - * movers ported into `@pascal-app/nodes`. + * 1. `def.affordanceTools.move` — kind-owned move component, lazy-loaded + * via `getRegistryAffordanceTool`. Covers generic movers + * (slab / ceiling / wall / fence / column / item / door / window), the + * bespoke roof / roof-segment / stair / stair-segment / building + * movers, and the polyline / fitting ghost-placement movers + * (duct-segment / duct-fitting). A kind that ships its own mover wins + * even if it also declares `capabilities.movable` (duct-fitting keeps + * `movable` for the inspector / hint readers but places via its ghost). + * 2. `MoveRegistryNodeTool` — generic translate-on-XZ for kinds that only + * declare `capabilities.movable` (shelf, spawn, duct-terminal, + * hvac-equipment, …). * 3. `elevator` is the lone remaining legacy arm — its bespoke cab/shaft * mover hasn't been ported to a kind-owned affordance yet. */ @@ -29,9 +32,6 @@ export const MoveTool: React.FC<{ if (!movingNode) return null const def = nodeRegistry.get(movingNode.type) - if (def?.capabilities?.movable) { - return - } const RegistryMove = getRegistryAffordanceTool(movingNode.type, 'move') if (RegistryMove) { @@ -42,6 +42,10 @@ export const MoveTool: React.FC<{ ) } + if (def?.capabilities?.movable) { + return + } + if (movingNode.type === 'elevator') return return null diff --git a/packages/nodes/src/duct-fitting/definition.ts b/packages/nodes/src/duct-fitting/definition.ts index b40968d00..b65c847f0 100644 --- a/packages/nodes/src/duct-fitting/definition.ts +++ b/packages/nodes/src/duct-fitting/definition.ts @@ -102,6 +102,12 @@ export const ductFittingDefinition: NodeDefinition = { // editor's SelectionAffordanceManager rather than `def.system`. affordanceTools: { selection: () => import('./selection'), + // Ghost-preview duplicate / move. Duplicate is pure drag-to-place: a + // translucent copy of the fitting (built from its real geometry, at its + // own rotation, so an elbow / riser stays properly aligned) follows the + // cursor and only lands on the commit click. Takes priority over + // `capabilities.movable` in the MoveTool dispatcher. + move: () => import('./move-tool'), }, tool: () => import('./tool'), diff --git a/packages/nodes/src/duct-fitting/move-tool.tsx b/packages/nodes/src/duct-fitting/move-tool.tsx new file mode 100644 index 000000000..f378d6221 --- /dev/null +++ b/packages/nodes/src/duct-fitting/move-tool.tsx @@ -0,0 +1,286 @@ +'use client' + +import { + type AlignmentAnchor, + type AnyNode, + type AnyNodeId, + DuctFittingNode, + emitter, + type GridEvent, + sceneRegistry, + useScene, +} from '@pascal-app/core' +import { + DragBoundingBox, + EDITOR_LAYER, + markToolCancelConsumed, + stripPlacementMetadataFlags, + triggerSFX, + useAlignmentGuides, + useEditor, +} from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { useEffect, useMemo, useState } from 'react' +import { Box3, Euler, type Material, type Mesh, MeshBasicMaterial, Vector3 } from 'three' +import { + type Aabb2D, + collectGhostAlignmentCandidates, + resolveGhostAlignment, +} from '../shared/ghost-alignment' +import { buildDuctFittingGeometry } from './geometry' + +type Vec3 = [number, number, number] + +const GHOST_COLOR = '#818cf8' +const GHOST_OPACITY = 0.5 + +/** Snap a coordinate to the editor's live grid step. */ +function snapToGridStep(value: number): number { + const step = useEditor.getState().gridSnapStep + if (step <= 0) return value + return Math.round(value / step) * step +} + +/** World-space size + centre offset of `box` after the fitting's euler + * rotation — the footprint box that wraps the oriented geometry. */ +function rotatedBounds(box: Box3, rotation: Vec3): { size: Vec3; offset: Vec3 } { + const euler = new Euler(rotation[0], rotation[1], rotation[2]) + const min = box.min + const max = box.max + const corners: Vec3[] = [ + [min.x, min.y, min.z], + [max.x, min.y, min.z], + [min.x, max.y, min.z], + [min.x, min.y, max.z], + [max.x, max.y, min.z], + [max.x, min.y, max.z], + [min.x, max.y, max.z], + [max.x, max.y, max.z], + ] + const lo: Vec3 = [Number.POSITIVE_INFINITY, Number.POSITIVE_INFINITY, Number.POSITIVE_INFINITY] + const hi: Vec3 = [Number.NEGATIVE_INFINITY, Number.NEGATIVE_INFINITY, Number.NEGATIVE_INFINITY] + const v = new Vector3() + for (const c of corners) { + v.set(c[0], c[1], c[2]).applyEuler(euler) + lo[0] = Math.min(lo[0], v.x) + lo[1] = Math.min(lo[1], v.y) + lo[2] = Math.min(lo[2], v.z) + hi[0] = Math.max(hi[0], v.x) + hi[1] = Math.max(hi[1], v.y) + hi[2] = Math.max(hi[2], v.z) + } + return { + size: [hi[0] - lo[0], hi[1] - lo[1], hi[2] - lo[2]], + offset: [(lo[0] + hi[0]) / 2, (lo[1] + hi[1]) / 2, (lo[2] + hi[2]) / 2], + } +} + +/** + * Ghost-preview duplicate / move tool for duct fittings (elbow / tee / + * reducer / transition). + * + * **Duplicate** (`metadata.isNew`): pure drag-to-place — NOTHING is + * inserted into the scene until the commit click. A translucent copy of the + * fitting (built from its real geometry, at its own `rotation`, so an elbow + * / riser stays properly aligned) rides the cursor inside a footprint + * bounding box — the same affordance other items get — and Figma-style + * alignment guides snap the box edges to nearby geometry. The commit click + * calls `createNode`; Esc discards. + * + * **Move** (existing fitting): the real node is hidden while the ghost + box + * track the cursor; commit writes the new `position` and reveals it. + * + * Wired via `def.affordanceTools.move`. + */ +export const MoveDuctFittingTool: React.FC<{ node: AnyNode }> = ({ node }) => { + const fitting = node as DuctFittingNode + const originalPosition = (fitting.position ?? [0, 0, 0]) as Vec3 + const rotation = (fitting.rotation ?? [0, 0, 0]) as Vec3 + const isNew = + typeof node.metadata === 'object' && + node.metadata !== null && + !Array.isArray(node.metadata) && + (node.metadata as Record).isNew === true + + const [cursorPos, setCursorPos] = useState(originalPosition) + + // Translucent stand-in built from the fitting's real geometry. Rotation is + // a geometry input (it decides the elbow's profile roles), so the ghost + // matches what lands. Rebuilt only if the source changes. + const ghost = useMemo(() => { + const group = buildDuctFittingGeometry(fitting) + group.traverse((obj) => { + const mesh = obj as Mesh + if ((mesh as { isMesh?: boolean }).isMesh) { + mesh.material = new MeshBasicMaterial({ + color: GHOST_COLOR, + transparent: true, + opacity: GHOST_OPACITY, + depthTest: false, + }) + mesh.renderOrder = 999 + } + obj.layers.set(EDITOR_LAYER) + }) + return group + }, [fitting]) + + // Footprint box that wraps the oriented geometry (size + centre offset), + // measured once from the ghost. + const bounds = useMemo(() => { + const box = new Box3().setFromObject(ghost) + if (box.isEmpty()) return { size: [0.3, 0.3, 0.3] as Vec3, offset: [0, 0, 0] as Vec3 } + return rotatedBounds(box, rotation) + }, [ghost, rotation]) + + useEffect(() => { + return () => { + ghost.traverse((obj) => { + const mesh = obj as Mesh + if ((mesh as { isMesh?: boolean }).isMesh) { + mesh.geometry?.dispose?.() + const mat = mesh.material as Material | Material[] + if (Array.isArray(mat)) for (const m of mat) m.dispose?.() + else mat?.dispose?.() + } + }) + } + }, [ghost]) + + useEffect(() => { + const nodeId = node.id as AnyNodeId + const [hx, , hz] = [bounds.size[0] / 2, 0, bounds.size[2] / 2] + const [ox, , oz] = bounds.offset + + useScene.temporal.getState().pause() + let committed = false + let hasMoved = false + const activatedAt = Date.now() + + const candidates: AlignmentAnchor[] = collectGhostAlignmentCandidates( + useScene.getState().nodes, + nodeId, + useViewer.getState().selection.levelId ?? node.parentId, + ) + + // Moving an existing fitting: hide its 3D MESH imperatively (NOT the + // store `visible` flag — the 2D floor plan skips `visible:false` nodes, + // so a store hide makes it vanish in 2D / split view). The ghost stands + // in until commit; the real mesh is restored on cancel / unmount. + const existedAtStart = !isNew && !!useScene.getState().nodes[nodeId] + const setMeshHidden = (hidden: boolean) => { + const obj = sceneRegistry.nodes.get(nodeId) + if (obj) obj.visible = !hidden + } + if (existedAtStart) setMeshHidden(true) + + let lastPos: Vec3 = originalPosition + + const onMove = (event: GridEvent) => { + const bypass = event.nativeEvent?.shiftKey === true + const snap = bypass ? (v: number) => v : snapToGridStep + let x = snap(event.localPosition[0]) + let z = snap(event.localPosition[2]) + + // Alignment: snap the footprint box edges onto nearby geometry and + // publish guides (Alt / Shift bypass). + if (!bypass) { + const proposed: Aabb2D = { + minX: x + ox - hx, + maxX: x + ox + hx, + minZ: z + oz - hz, + maxZ: z + oz + hz, + } + const { dx, dz, guides } = resolveGhostAlignment(nodeId, proposed, candidates) + x += dx + z += dz + useAlignmentGuides.getState().set(guides) + } else { + useAlignmentGuides.getState().clear() + } + + const next: Vec3 = [x, originalPosition[1], z] + if (next[0] !== lastPos[0] || next[2] !== lastPos[2]) triggerSFX('sfx:grid-snap') + lastPos = next + hasMoved = true + setCursorPos(next) + } + + const commit = (event: GridEvent) => { + if (committed) return + if (Date.now() - activatedAt < 150) { + event.nativeEvent?.stopPropagation?.() + return + } + if (!hasMoved) { + event.nativeEvent?.stopPropagation?.() + return + } + committed = true + + useScene.temporal.getState().resume() + let selectId = nodeId + if (isNew && !useScene.getState().nodes[nodeId]) { + const created = DuctFittingNode.parse({ + ...(node as Record), + position: lastPos, + metadata: stripPlacementMetadataFlags(node.metadata), + visible: true, + }) + useScene.getState().createNode(created as AnyNode, node.parentId as AnyNodeId) + selectId = created.id as AnyNodeId + } else { + useScene.getState().updateNode(nodeId, { position: lastPos } as Partial) + useScene.getState().markDirty(nodeId) + } + useScene.temporal.getState().pause() + setMeshHidden(false) + + useAlignmentGuides.getState().clear() + triggerSFX('sfx:item-place') + useViewer.getState().setSelection({ selectedIds: [selectId] }) + useEditor.getState().setMovingNodeOrigin('3d') + useEditor.getState().setMovingNode(null) + event.nativeEvent?.stopPropagation?.() + } + + const onCancel = () => { + if (existedAtStart) { + setMeshHidden(false) + useViewer.getState().setSelection({ selectedIds: [nodeId] }) + } + useAlignmentGuides.getState().clear() + useScene.temporal.getState().resume() + markToolCancelConsumed() + useEditor.getState().setMovingNodeOrigin('3d') + useEditor.getState().setMovingNode(null) + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', commit) + emitter.on('tool:cancel', onCancel) + + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', commit) + emitter.off('tool:cancel', onCancel) + useAlignmentGuides.getState().clear() + if (existedAtStart) setMeshHidden(false) + useScene.temporal.getState().resume() + } + }, [bounds, isNew, node, originalPosition]) + + return ( + + + + + ) +} + +export default MoveDuctFittingTool diff --git a/packages/nodes/src/duct-segment/definition.ts b/packages/nodes/src/duct-segment/definition.ts index 4ec434fe6..b0c4f9840 100644 --- a/packages/nodes/src/duct-segment/definition.ts +++ b/packages/nodes/src/duct-segment/definition.ts @@ -118,6 +118,10 @@ export const ductSegmentDefinition: NodeDefinition = { // which the viewer package mounts for the read-only route. affordanceTools: { selection: () => import('./selection'), + // Ghost-preview duplicate / move. Duplicate is pure drag-to-place: a + // translucent copy of the run follows the cursor and only lands on the + // commit click — nothing is inserted into the scene before that. + move: () => import('./move-tool'), }, tool: () => import('./tool'), diff --git a/packages/nodes/src/duct-segment/move-tool.tsx b/packages/nodes/src/duct-segment/move-tool.tsx new file mode 100644 index 000000000..8b81a516d --- /dev/null +++ b/packages/nodes/src/duct-segment/move-tool.tsx @@ -0,0 +1,330 @@ +'use client' + +import { + type AlignmentAnchor, + type AnyNode, + type AnyNodeId, + DuctSegmentNode, + emitter, + type GridEvent, + sceneRegistry, + useScene, +} from '@pascal-app/core' +import { + DragBoundingBox, + EDITOR_LAYER, + markToolCancelConsumed, + stripPlacementMetadataFlags, + triggerSFX, + useAlignmentGuides, + useEditor, +} from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { useEffect, useRef, useState } from 'react' +import { Matrix4, Vector3 } from 'three' +import { + type Aabb2D, + collectGhostAlignmentCandidates, + resolveGhostAlignment, +} from '../shared/ghost-alignment' +import { rectSectionAxes } from './geometry' + +type Vec3 = [number, number, number] + +const GHOST_COLOR = '#818cf8' +const GHOST_OPACITY = 0.5 +const IN_TO_M = 0.0254 + +/** Snap a coordinate to the editor's live grid step. */ +function snapToGridStep(value: number): number { + const step = useEditor.getState().gridSnapStep + if (step <= 0) return value + return Math.round(value / step) * step +} + +function pathCenterXZ(path: readonly Vec3[]): [number, number] { + let x = 0 + let z = 0 + for (const p of path) { + x += p[0] + z += p[2] + } + const n = path.length || 1 + return [x / n, z / n] +} + +/** Half the run's cross-section (meters) — the box / footprint padding. */ +function runRadiusM(duct: DuctSegmentNode): number { + if (duct.shape === 'round') return (duct.diameter * IN_TO_M) / 2 + return (Math.max(duct.width, duct.height) * IN_TO_M) / 2 +} + +/** The run's vertical box extent (meters). */ +function runHeightM(duct: DuctSegmentNode): number { + return (duct.shape === 'round' ? duct.diameter : duct.height) * IN_TO_M +} + +/** XZ bounds of a path padded by the run's radius. */ +function pathAabb(path: readonly Vec3[], r: number): Aabb2D { + let minX = Number.POSITIVE_INFINITY + let maxX = Number.NEGATIVE_INFINITY + let minZ = Number.POSITIVE_INFINITY + let maxZ = Number.NEGATIVE_INFINITY + for (const p of path) { + if (p[0] < minX) minX = p[0] + if (p[0] > maxX) maxX = p[0] + if (p[2] < minZ) minZ = p[2] + if (p[2] > maxZ) maxZ = p[2] + } + return { minX: minX - r, maxX: maxX + r, minZ: minZ - r, maxZ: maxZ + r } +} + +/** + * Ghost-preview duplicate / move tool for duct runs. + * + * **Duplicate** (`metadata.isNew`): pure drag-to-place — NOTHING is + * inserted into the scene until the commit click. A translucent ghost of + * the run (cylinders / boxes matching its profile) rides the cursor inside + * a footprint bounding box — the same affordance other items get — and + * Figma-style alignment guides snap the box's edges to nearby geometry. The + * next grid click calls `createNode`; Esc discards. + * + * **Move** (existing run): the real node is hidden while the same ghost + + * box tracks the cursor; the commit click writes the translated `path` and + * reveals it, Esc reveals it unchanged. + * + * Wired via `def.affordanceTools.move`. + */ +export const MoveDuctSegmentTool: React.FC<{ node: AnyNode }> = ({ node }) => { + const duct = node as DuctSegmentNode + const originalPathRef = useRef(duct.path.map((p) => [...p] as Vec3)) + + const isNew = + typeof node.metadata === 'object' && + node.metadata !== null && + !Array.isArray(node.metadata) && + (node.metadata as Record).isNew === true + + const [previewPath, setPreviewPath] = useState(originalPathRef.current) + const previewPathRef = useRef(originalPathRef.current) + const hasMovedRef = useRef(false) + const activatedAtRef = useRef(Date.now()) + const prevSnapRef = useRef<[number, number] | null>(null) + + useEffect(() => { + const nodeId = node.id as AnyNodeId + const originalPath = originalPathRef.current + const [centerX, centerZ] = pathCenterXZ(originalPath) + const r = runRadiusM(duct) + const baseAabb = pathAabb(originalPath, r) + + useScene.temporal.getState().pause() + let committed = false + + const candidates: AlignmentAnchor[] = collectGhostAlignmentCandidates( + useScene.getState().nodes, + nodeId, + useViewer.getState().selection.levelId ?? node.parentId, + ) + + // Moving an existing run: hide its 3D MESH imperatively (NOT the store + // `visible` flag — the 2D floor plan skips `visible:false` nodes, so a + // store hide makes the run vanish in 2D / split view). The ghost stands + // in until commit; the real mesh is restored on cancel / unmount. + const existedAtStart = !isNew && !!useScene.getState().nodes[nodeId] + const setMeshHidden = (hidden: boolean) => { + const obj = sceneRegistry.nodes.get(nodeId) + if (obj) obj.visible = !hidden + } + if (existedAtStart) setMeshHidden(true) + + const setPreview = (path: Vec3[]) => { + previewPathRef.current = path + setPreviewPath(path) + } + + const onMove = (event: GridEvent) => { + const bypass = event.nativeEvent?.shiftKey === true + const snap = bypass ? (v: number) => v : snapToGridStep + let dx = snap(event.localPosition[0] - centerX) + let dz = snap(event.localPosition[2] - centerZ) + + // Figma-style alignment: snap the run's footprint box edges onto + // nearby geometry and publish the guides (Alt / Shift bypass). + if (!bypass) { + const proposed: Aabb2D = { + minX: baseAabb.minX + dx, + maxX: baseAabb.maxX + dx, + minZ: baseAabb.minZ + dz, + maxZ: baseAabb.maxZ + dz, + } + const { dx: sdx, dz: sdz, guides } = resolveGhostAlignment(nodeId, proposed, candidates) + dx += sdx + dz += sdz + useAlignmentGuides.getState().set(guides) + } else { + useAlignmentGuides.getState().clear() + } + + const cur: [number, number] = [centerX + dx, centerZ + dz] + if ( + !bypass && + (!prevSnapRef.current || + prevSnapRef.current[0] !== cur[0] || + prevSnapRef.current[1] !== cur[1]) + ) { + triggerSFX('sfx:grid-snap') + } + prevSnapRef.current = cur + hasMovedRef.current = true + setPreview(originalPath.map(([x, y, z]) => [x + dx, y, z + dz] as Vec3)) + } + + const commit = (event: GridEvent) => { + if (committed) return + if (Date.now() - activatedAtRef.current < 150) { + event.nativeEvent?.stopPropagation?.() + return + } + if (!hasMovedRef.current) { + event.nativeEvent?.stopPropagation?.() + return + } + committed = true + const finalPath = previewPathRef.current + + useScene.temporal.getState().resume() + let selectId = nodeId + if (isNew && !useScene.getState().nodes[nodeId]) { + const created = DuctSegmentNode.parse({ + ...(node as Record), + path: finalPath, + metadata: stripPlacementMetadataFlags(node.metadata), + visible: true, + }) + useScene.getState().createNode(created as AnyNode, node.parentId as AnyNodeId) + selectId = created.id as AnyNodeId + } else { + useScene.getState().updateNode(nodeId, { path: finalPath } as Partial) + useScene.getState().markDirty(nodeId) + } + useScene.temporal.getState().pause() + setMeshHidden(false) + + useAlignmentGuides.getState().clear() + triggerSFX('sfx:item-place') + useViewer.getState().setSelection({ selectedIds: [selectId] }) + useEditor.getState().setMovingNodeOrigin('3d') + useEditor.getState().setMovingNode(null) + event.nativeEvent?.stopPropagation?.() + } + + const onCancel = () => { + if (existedAtStart) { + setMeshHidden(false) + useViewer.getState().setSelection({ selectedIds: [nodeId] }) + } + useAlignmentGuides.getState().clear() + useScene.temporal.getState().resume() + markToolCancelConsumed() + useEditor.getState().setMovingNodeOrigin('3d') + useEditor.getState().setMovingNode(null) + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', commit) + emitter.on('tool:cancel', onCancel) + + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', commit) + emitter.off('tool:cancel', onCancel) + useAlignmentGuides.getState().clear() + if (existedAtStart) setMeshHidden(false) + useScene.temporal.getState().resume() + } + }, [duct, isNew, node]) + + const segments: Array<{ a: Vec3; b: Vec3 }> = [] + for (let i = 0; i < previewPath.length - 1; i++) { + segments.push({ a: previewPath[i]!, b: previewPath[i + 1]! }) + } + + // Footprint box spanning the whole run (axis-aligned), drawn around the + // ghost the same way items get one. Recomputed from the live preview path. + const r = runRadiusM(duct) + const box = pathAabb(previewPath, r) + const boxY = previewPath[0]?.[1] ?? 0 + + return ( + + {segments.map((seg, i) => ( + + ))} + + + ) +} + +/** Translucent stand-in for one duct section — mirrors the draw tool's + * `PreviewSegment` so the ghost matches what actually lands. */ +function GhostSegment({ a, b, duct }: { a: Vec3; b: Vec3; duct: DuctSegmentNode }) { + const start = new Vector3(...a) + const end = new Vector3(...b) + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-4) return null + dir.normalize() + const mid = new Vector3().addVectors(start, end).multiplyScalar(0.5) + + if (duct.shape !== 'round') { + const w = duct.width * IN_TO_M + const h = duct.height * IN_TO_M + return ( + { + if (!m) return + const { width: x, height: z } = rectSectionAxes(dir, duct.roll) + m.quaternion.setFromRotationMatrix(new Matrix4().makeBasis(x, dir, z)) + }} + > + + + + ) + } + + const radius = (duct.diameter * IN_TO_M) / 2 + return ( + { + if (!m) return + m.quaternion.setFromUnitVectors(new Vector3(0, 1, 0), dir) + }} + > + + + + ) +} + +export default MoveDuctSegmentTool diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx index 1690db3d8..2fe76395c 100644 --- a/packages/nodes/src/duct-segment/tool.tsx +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -530,9 +530,11 @@ const DuctSegmentTool = () => { const anchor = altAnchorRef.current const last = draftRef.current.at(-1) if (!anchor || !last) return null + const step = useEditor.getState().gridSnapStep // Screen +Y points down, so subtract to map "drag up = raise Y". const dy = (anchor.clientY - clientY) / ALT_PIXELS_PER_METER - const y = Math.min(ALT_Y_MAX_M, Math.max(ALT_Y_MIN_M, anchor.baseY + dy)) + const snappedDy = snap(dy, step) + const y = Math.min(ALT_Y_MAX_M, Math.max(ALT_Y_MIN_M, anchor.baseY + snappedDy)) return [last[0], y, last[2]] } diff --git a/packages/nodes/src/lineset/definition.ts b/packages/nodes/src/lineset/definition.ts index f59b94041..5dbeeba03 100644 --- a/packages/nodes/src/lineset/definition.ts +++ b/packages/nodes/src/lineset/definition.ts @@ -91,6 +91,12 @@ export const linesetDefinition: NodeDefinition = { // which the viewer package mounts for the read-only route. affordanceTools: { selection: () => import('./selection'), + // Ghost-preview duplicate / move (the refrigerant-loop sibling of + // duct-segment's mover). Duplicate is pure drag-to-place: a translucent + // copy of the run, wrapped in a footprint bounding box, follows the + // cursor and only lands on the commit click — nothing is inserted into + // the scene before that. + move: () => import('./move-tool'), }, tool: () => import('./tool'), diff --git a/packages/nodes/src/lineset/move-tool.tsx b/packages/nodes/src/lineset/move-tool.tsx new file mode 100644 index 000000000..a025b5348 --- /dev/null +++ b/packages/nodes/src/lineset/move-tool.tsx @@ -0,0 +1,304 @@ +'use client' + +import { + type AlignmentAnchor, + type AnyNode, + type AnyNodeId, + emitter, + type GridEvent, + LinesetNode, + sceneRegistry, + useScene, +} from '@pascal-app/core' +import { + DragBoundingBox, + EDITOR_LAYER, + markToolCancelConsumed, + stripPlacementMetadataFlags, + triggerSFX, + useAlignmentGuides, + useEditor, +} from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { useEffect, useRef, useState } from 'react' +import { Vector3 } from 'three' +import { + type Aabb2D, + collectGhostAlignmentCandidates, + resolveGhostAlignment, +} from '../shared/ghost-alignment' + +type Vec3 = [number, number, number] + +const GHOST_COLOR = '#818cf8' +const GHOST_OPACITY = 0.5 +const IN_TO_M = 0.0254 + +/** Snap a coordinate to the editor's live grid step. */ +function snapToGridStep(value: number): number { + const step = useEditor.getState().gridSnapStep + if (step <= 0) return value + return Math.round(value / step) * step +} + +function pathCenterXZ(path: readonly Vec3[]): [number, number] { + let x = 0 + let z = 0 + for (const p of path) { + x += p[0] + z += p[2] + } + const n = path.length || 1 + return [x / n, z / n] +} + +/** The lineset's footprint radius (meters) — half the suction OD (the + * bigger of the pair), used as box / footprint padding and ghost radius. */ +function linesetRadiusM(lineset: LinesetNode): number { + return (lineset.suctionDiameter * IN_TO_M) / 2 +} + +/** XZ bounds of a path padded by the lineset's radius. */ +function pathAabb(path: readonly Vec3[], r: number): Aabb2D { + let minX = Number.POSITIVE_INFINITY + let maxX = Number.NEGATIVE_INFINITY + let minZ = Number.POSITIVE_INFINITY + let maxZ = Number.NEGATIVE_INFINITY + for (const p of path) { + if (p[0] < minX) minX = p[0] + if (p[0] > maxX) maxX = p[0] + if (p[2] < minZ) minZ = p[2] + if (p[2] > maxZ) maxZ = p[2] + } + return { minX: minX - r, maxX: maxX + r, minZ: minZ - r, maxZ: maxZ + r } +} + +/** + * Ghost-preview duplicate / move tool for refrigerant linesets — the + * refrigerant-loop sibling of `MovePipeSegmentTool`. A lineset is a + * suction + liquid copper pair; the ghost stands in with a single + * translucent cylinder at the suction OD per section (mirrors the draw + * tool's `PreviewSegment`). + * + * **Duplicate** (`metadata.isNew`): pure drag-to-place — NOTHING is + * inserted into the scene until the commit click. A translucent ghost of + * the run rides the cursor inside a footprint bounding box — the same + * affordance other items get — and Figma-style alignment guides snap the + * box's edges to nearby geometry. The next grid click calls `createNode`; + * Esc discards. The run's Y coords ride along untouched: the move only + * shifts XZ. + * + * **Move** (existing run): the real node's mesh is hidden while the same + * ghost + box tracks the cursor; the commit click writes the translated + * `path` and reveals it, Esc reveals it unchanged. + * + * Wired via `def.affordanceTools.move`. + */ +export const MoveLinesetTool: React.FC<{ node: AnyNode }> = ({ node }) => { + const lineset = node as LinesetNode + const originalPathRef = useRef(lineset.path.map((p) => [...p] as Vec3)) + + const isNew = + typeof node.metadata === 'object' && + node.metadata !== null && + !Array.isArray(node.metadata) && + (node.metadata as Record).isNew === true + + const [previewPath, setPreviewPath] = useState(originalPathRef.current) + const previewPathRef = useRef(originalPathRef.current) + const hasMovedRef = useRef(false) + const activatedAtRef = useRef(Date.now()) + const prevSnapRef = useRef<[number, number] | null>(null) + + useEffect(() => { + const nodeId = node.id as AnyNodeId + const originalPath = originalPathRef.current + const [centerX, centerZ] = pathCenterXZ(originalPath) + const r = linesetRadiusM(lineset) + const baseAabb = pathAabb(originalPath, r) + + useScene.temporal.getState().pause() + let committed = false + + const candidates: AlignmentAnchor[] = collectGhostAlignmentCandidates( + useScene.getState().nodes, + nodeId, + useViewer.getState().selection.levelId ?? node.parentId, + ) + + // Moving an existing run: hide its 3D MESH imperatively (NOT the store + // `visible` flag — the 2D floor plan skips `visible:false` nodes, so a + // store hide makes the run vanish in 2D / split view). The ghost stands + // in until commit; the real mesh is restored on cancel / unmount. + const existedAtStart = !isNew && !!useScene.getState().nodes[nodeId] + const setMeshHidden = (hidden: boolean) => { + const obj = sceneRegistry.nodes.get(nodeId) + if (obj) obj.visible = !hidden + } + if (existedAtStart) setMeshHidden(true) + + const setPreview = (path: Vec3[]) => { + previewPathRef.current = path + setPreviewPath(path) + } + + const onMove = (event: GridEvent) => { + const bypass = event.nativeEvent?.shiftKey === true + const snap = bypass ? (v: number) => v : snapToGridStep + let dx = snap(event.localPosition[0] - centerX) + let dz = snap(event.localPosition[2] - centerZ) + + // Figma-style alignment: snap the run's footprint box edges onto + // nearby geometry and publish the guides (Shift bypass). + if (!bypass) { + const proposed: Aabb2D = { + minX: baseAabb.minX + dx, + maxX: baseAabb.maxX + dx, + minZ: baseAabb.minZ + dz, + maxZ: baseAabb.maxZ + dz, + } + const { dx: sdx, dz: sdz, guides } = resolveGhostAlignment(nodeId, proposed, candidates) + dx += sdx + dz += sdz + useAlignmentGuides.getState().set(guides) + } else { + useAlignmentGuides.getState().clear() + } + + const cur: [number, number] = [centerX + dx, centerZ + dz] + if ( + !bypass && + (!prevSnapRef.current || + prevSnapRef.current[0] !== cur[0] || + prevSnapRef.current[1] !== cur[1]) + ) { + triggerSFX('sfx:grid-snap') + } + prevSnapRef.current = cur + hasMovedRef.current = true + setPreview(originalPath.map(([x, y, z]) => [x + dx, y, z + dz] as Vec3)) + } + + const commit = (event: GridEvent) => { + if (committed) return + if (Date.now() - activatedAtRef.current < 150) { + event.nativeEvent?.stopPropagation?.() + return + } + if (!hasMovedRef.current) { + event.nativeEvent?.stopPropagation?.() + return + } + committed = true + const finalPath = previewPathRef.current + + useScene.temporal.getState().resume() + let selectId = nodeId + if (isNew && !useScene.getState().nodes[nodeId]) { + const created = LinesetNode.parse({ + ...(node as Record), + path: finalPath, + metadata: stripPlacementMetadataFlags(node.metadata), + visible: true, + }) + useScene.getState().createNode(created as AnyNode, node.parentId as AnyNodeId) + selectId = created.id as AnyNodeId + } else { + useScene.getState().updateNode(nodeId, { path: finalPath } as Partial) + useScene.getState().markDirty(nodeId) + } + useScene.temporal.getState().pause() + setMeshHidden(false) + + useAlignmentGuides.getState().clear() + triggerSFX('sfx:item-place') + useViewer.getState().setSelection({ selectedIds: [selectId] }) + useEditor.getState().setMovingNodeOrigin('3d') + useEditor.getState().setMovingNode(null) + event.nativeEvent?.stopPropagation?.() + } + + const onCancel = () => { + if (existedAtStart) { + setMeshHidden(false) + useViewer.getState().setSelection({ selectedIds: [nodeId] }) + } + useAlignmentGuides.getState().clear() + useScene.temporal.getState().resume() + markToolCancelConsumed() + useEditor.getState().setMovingNodeOrigin('3d') + useEditor.getState().setMovingNode(null) + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', commit) + emitter.on('tool:cancel', onCancel) + + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', commit) + emitter.off('tool:cancel', onCancel) + useAlignmentGuides.getState().clear() + if (existedAtStart) setMeshHidden(false) + useScene.temporal.getState().resume() + } + }, [lineset, isNew, node]) + + const segments: Array<{ a: Vec3; b: Vec3 }> = [] + for (let i = 0; i < previewPath.length - 1; i++) { + segments.push({ a: previewPath[i]!, b: previewPath[i + 1]! }) + } + + // Footprint box spanning the whole run (axis-aligned), drawn around the + // ghost the same way items get one. Recomputed from the live preview path. + const r = linesetRadiusM(lineset) + const box = pathAabb(previewPath, r) + const boxY = previewPath[0]?.[1] ?? 0 + + return ( + + {segments.map((seg, i) => ( + + ))} + + + ) +} + +/** Translucent stand-in for one lineset section — mirrors the draw tool's + * `PreviewSegment` so the ghost matches what actually lands. */ +function GhostSegment({ a, b, radius }: { a: Vec3; b: Vec3; radius: number }) { + const start = new Vector3(...a) + const end = new Vector3(...b) + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-4) return null + dir.normalize() + const mid = new Vector3().addVectors(start, end).multiplyScalar(0.5) + + return ( + { + if (!m) return + m.quaternion.setFromUnitVectors(new Vector3(0, 1, 0), dir) + }} + > + + + + ) +} + +export default MoveLinesetTool diff --git a/packages/nodes/src/lineset/tool.tsx b/packages/nodes/src/lineset/tool.tsx index e1af50bfa..9afa8749c 100644 --- a/packages/nodes/src/lineset/tool.tsx +++ b/packages/nodes/src/lineset/tool.tsx @@ -163,8 +163,10 @@ const LinesetTool = () => { const anchor = altAnchorRef.current const last = draftRef.current.at(-1) if (!anchor || !last) return null + const step = useEditor.getState().gridSnapStep const dy = (anchor.clientY - clientY) / ALT_PIXELS_PER_METER - const y = Math.min(ALT_Y_MAX_M, Math.max(ALT_Y_MIN_M, anchor.baseY + dy)) + const snappedDy = snap(dy, step) + const y = Math.min(ALT_Y_MAX_M, Math.max(ALT_Y_MIN_M, anchor.baseY + snappedDy)) return [last[0], y, last[2]] } diff --git a/packages/nodes/src/pipe-segment/definition.ts b/packages/nodes/src/pipe-segment/definition.ts index 58fa38da1..ac505bf86 100644 --- a/packages/nodes/src/pipe-segment/definition.ts +++ b/packages/nodes/src/pipe-segment/definition.ts @@ -88,6 +88,11 @@ export const pipeSegmentDefinition: NodeDefinition = { // which the viewer package mounts for the read-only route. affordanceTools: { selection: () => import('./selection'), + // Ghost-preview duplicate / move (the plumbing sibling of duct-segment's + // mover). Duplicate is pure drag-to-place: a translucent copy of the run, + // wrapped in a footprint bounding box, follows the cursor and only lands + // on the commit click — nothing is inserted into the scene before that. + move: () => import('./move-tool'), }, tool: () => import('./tool'), diff --git a/packages/nodes/src/pipe-segment/move-tool.tsx b/packages/nodes/src/pipe-segment/move-tool.tsx new file mode 100644 index 000000000..cfa93e392 --- /dev/null +++ b/packages/nodes/src/pipe-segment/move-tool.tsx @@ -0,0 +1,302 @@ +'use client' + +import { + type AlignmentAnchor, + type AnyNode, + type AnyNodeId, + emitter, + type GridEvent, + PipeSegmentNode, + sceneRegistry, + useScene, +} from '@pascal-app/core' +import { + DragBoundingBox, + EDITOR_LAYER, + markToolCancelConsumed, + stripPlacementMetadataFlags, + triggerSFX, + useAlignmentGuides, + useEditor, +} from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { useEffect, useRef, useState } from 'react' +import { Vector3 } from 'three' +import { + type Aabb2D, + collectGhostAlignmentCandidates, + resolveGhostAlignment, +} from '../shared/ghost-alignment' + +type Vec3 = [number, number, number] + +const GHOST_COLOR = '#818cf8' +const GHOST_OPACITY = 0.5 +const IN_TO_M = 0.0254 + +/** Snap a coordinate to the editor's live grid step. */ +function snapToGridStep(value: number): number { + const step = useEditor.getState().gridSnapStep + if (step <= 0) return value + return Math.round(value / step) * step +} + +function pathCenterXZ(path: readonly Vec3[]): [number, number] { + let x = 0 + let z = 0 + for (const p of path) { + x += p[0] + z += p[2] + } + const n = path.length || 1 + return [x / n, z / n] +} + +/** The pipe's radius (meters) — half the nominal diameter, used as the + * box / footprint padding and the ghost cylinder radius. */ +function pipeRadiusM(pipe: PipeSegmentNode): number { + return (pipe.diameter * IN_TO_M) / 2 +} + +/** XZ bounds of a path padded by the pipe's radius. */ +function pathAabb(path: readonly Vec3[], r: number): Aabb2D { + let minX = Number.POSITIVE_INFINITY + let maxX = Number.NEGATIVE_INFINITY + let minZ = Number.POSITIVE_INFINITY + let maxZ = Number.NEGATIVE_INFINITY + for (const p of path) { + if (p[0] < minX) minX = p[0] + if (p[0] > maxX) maxX = p[0] + if (p[2] < minZ) minZ = p[2] + if (p[2] > maxZ) maxZ = p[2] + } + return { minX: minX - r, maxX: maxX + r, minZ: minZ - r, maxZ: maxZ + r } +} + +/** + * Ghost-preview duplicate / move tool for DWV pipe runs — the plumbing + * sibling of `MoveDuctSegmentTool`. Pipes are always round, so the ghost + * is a translucent cylinder per section (no rect branch). + * + * **Duplicate** (`metadata.isNew`): pure drag-to-place — NOTHING is + * inserted into the scene until the commit click. A translucent ghost of + * the run rides the cursor inside a footprint bounding box — the same + * affordance other items get — and Figma-style alignment guides snap the + * box's edges to nearby geometry. The next grid click calls `createNode`; + * Esc discards. The run's Y coords (slope) ride along untouched: the move + * only shifts XZ. + * + * **Move** (existing run): the real node's mesh is hidden while the same + * ghost + box tracks the cursor; the commit click writes the translated + * `path` and reveals it, Esc reveals it unchanged. + * + * Wired via `def.affordanceTools.move`. + */ +export const MovePipeSegmentTool: React.FC<{ node: AnyNode }> = ({ node }) => { + const pipe = node as PipeSegmentNode + const originalPathRef = useRef(pipe.path.map((p) => [...p] as Vec3)) + + const isNew = + typeof node.metadata === 'object' && + node.metadata !== null && + !Array.isArray(node.metadata) && + (node.metadata as Record).isNew === true + + const [previewPath, setPreviewPath] = useState(originalPathRef.current) + const previewPathRef = useRef(originalPathRef.current) + const hasMovedRef = useRef(false) + const activatedAtRef = useRef(Date.now()) + const prevSnapRef = useRef<[number, number] | null>(null) + + useEffect(() => { + const nodeId = node.id as AnyNodeId + const originalPath = originalPathRef.current + const [centerX, centerZ] = pathCenterXZ(originalPath) + const r = pipeRadiusM(pipe) + const baseAabb = pathAabb(originalPath, r) + + useScene.temporal.getState().pause() + let committed = false + + const candidates: AlignmentAnchor[] = collectGhostAlignmentCandidates( + useScene.getState().nodes, + nodeId, + useViewer.getState().selection.levelId ?? node.parentId, + ) + + // Moving an existing run: hide its 3D MESH imperatively (NOT the store + // `visible` flag — the 2D floor plan skips `visible:false` nodes, so a + // store hide makes the run vanish in 2D / split view). The ghost stands + // in until commit; the real mesh is restored on cancel / unmount. + const existedAtStart = !isNew && !!useScene.getState().nodes[nodeId] + const setMeshHidden = (hidden: boolean) => { + const obj = sceneRegistry.nodes.get(nodeId) + if (obj) obj.visible = !hidden + } + if (existedAtStart) setMeshHidden(true) + + const setPreview = (path: Vec3[]) => { + previewPathRef.current = path + setPreviewPath(path) + } + + const onMove = (event: GridEvent) => { + const bypass = event.nativeEvent?.shiftKey === true + const snap = bypass ? (v: number) => v : snapToGridStep + let dx = snap(event.localPosition[0] - centerX) + let dz = snap(event.localPosition[2] - centerZ) + + // Figma-style alignment: snap the run's footprint box edges onto + // nearby geometry and publish the guides (Shift bypass). + if (!bypass) { + const proposed: Aabb2D = { + minX: baseAabb.minX + dx, + maxX: baseAabb.maxX + dx, + minZ: baseAabb.minZ + dz, + maxZ: baseAabb.maxZ + dz, + } + const { dx: sdx, dz: sdz, guides } = resolveGhostAlignment(nodeId, proposed, candidates) + dx += sdx + dz += sdz + useAlignmentGuides.getState().set(guides) + } else { + useAlignmentGuides.getState().clear() + } + + const cur: [number, number] = [centerX + dx, centerZ + dz] + if ( + !bypass && + (!prevSnapRef.current || + prevSnapRef.current[0] !== cur[0] || + prevSnapRef.current[1] !== cur[1]) + ) { + triggerSFX('sfx:grid-snap') + } + prevSnapRef.current = cur + hasMovedRef.current = true + setPreview(originalPath.map(([x, y, z]) => [x + dx, y, z + dz] as Vec3)) + } + + const commit = (event: GridEvent) => { + if (committed) return + if (Date.now() - activatedAtRef.current < 150) { + event.nativeEvent?.stopPropagation?.() + return + } + if (!hasMovedRef.current) { + event.nativeEvent?.stopPropagation?.() + return + } + committed = true + const finalPath = previewPathRef.current + + useScene.temporal.getState().resume() + let selectId = nodeId + if (isNew && !useScene.getState().nodes[nodeId]) { + const created = PipeSegmentNode.parse({ + ...(node as Record), + path: finalPath, + metadata: stripPlacementMetadataFlags(node.metadata), + visible: true, + }) + useScene.getState().createNode(created as AnyNode, node.parentId as AnyNodeId) + selectId = created.id as AnyNodeId + } else { + useScene.getState().updateNode(nodeId, { path: finalPath } as Partial) + useScene.getState().markDirty(nodeId) + } + useScene.temporal.getState().pause() + setMeshHidden(false) + + useAlignmentGuides.getState().clear() + triggerSFX('sfx:item-place') + useViewer.getState().setSelection({ selectedIds: [selectId] }) + useEditor.getState().setMovingNodeOrigin('3d') + useEditor.getState().setMovingNode(null) + event.nativeEvent?.stopPropagation?.() + } + + const onCancel = () => { + if (existedAtStart) { + setMeshHidden(false) + useViewer.getState().setSelection({ selectedIds: [nodeId] }) + } + useAlignmentGuides.getState().clear() + useScene.temporal.getState().resume() + markToolCancelConsumed() + useEditor.getState().setMovingNodeOrigin('3d') + useEditor.getState().setMovingNode(null) + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', commit) + emitter.on('tool:cancel', onCancel) + + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', commit) + emitter.off('tool:cancel', onCancel) + useAlignmentGuides.getState().clear() + if (existedAtStart) setMeshHidden(false) + useScene.temporal.getState().resume() + } + }, [pipe, isNew, node]) + + const segments: Array<{ a: Vec3; b: Vec3 }> = [] + for (let i = 0; i < previewPath.length - 1; i++) { + segments.push({ a: previewPath[i]!, b: previewPath[i + 1]! }) + } + + // Footprint box spanning the whole run (axis-aligned), drawn around the + // ghost the same way items get one. Recomputed from the live preview path. + const r = pipeRadiusM(pipe) + const box = pathAabb(previewPath, r) + const boxY = previewPath[0]?.[1] ?? 0 + + return ( + + {segments.map((seg, i) => ( + + ))} + + + ) +} + +/** Translucent stand-in for one pipe section — mirrors the draw tool's + * `PreviewPipe` so the ghost matches what actually lands. */ +function GhostSegment({ a, b, radius }: { a: Vec3; b: Vec3; radius: number }) { + const start = new Vector3(...a) + const end = new Vector3(...b) + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-4) return null + dir.normalize() + const mid = new Vector3().addVectors(start, end).multiplyScalar(0.5) + + return ( + { + if (!m) return + m.quaternion.setFromUnitVectors(new Vector3(0, 1, 0), dir) + }} + > + + + + ) +} + +export default MovePipeSegmentTool diff --git a/packages/nodes/src/pipe-segment/tool.tsx b/packages/nodes/src/pipe-segment/tool.tsx index aa584e33f..251420e8c 100644 --- a/packages/nodes/src/pipe-segment/tool.tsx +++ b/packages/nodes/src/pipe-segment/tool.tsx @@ -319,8 +319,10 @@ const PipeSegmentTool = () => { const anchor = altAnchorRef.current const start = startRef.current if (!anchor || !start) return null + const step = useEditor.getState().gridSnapStep const dy = (anchor.clientY - clientY) / ALT_PIXELS_PER_METER - const y = Math.min(ALT_Y_MAX_M, Math.max(ALT_Y_MIN_M, anchor.baseY + dy)) + const snappedDy = snap(dy, step) + const y = Math.min(ALT_Y_MAX_M, Math.max(ALT_Y_MIN_M, anchor.baseY + snappedDy)) return [start[0], y, start[2]] } diff --git a/packages/nodes/src/shared/ghost-alignment.ts b/packages/nodes/src/shared/ghost-alignment.ts new file mode 100644 index 000000000..db1d549f5 --- /dev/null +++ b/packages/nodes/src/shared/ghost-alignment.ts @@ -0,0 +1,49 @@ +import { + type AlignmentAnchor, + type AnyNode, + bboxCornerAnchors, + collectAlignmentAnchors, + resolveAlignment, +} from '@pascal-app/core' + +/** XZ axis-aligned bounds (level-local meters). */ +export type Aabb2D = { minX: number; minZ: number; maxX: number; maxZ: number } + +/** + * Figma-style alignment-snap threshold (meters), matching the generic + * `MoveRegistryNodeTool` and the 2D overlay — 8 cm gives a magnetic pull + * without fighting grid snap. + */ +export const GHOST_ALIGNMENT_THRESHOLD_M = 0.08 + +/** + * Alignment anchors of every OTHER node on the level — gathered once at + * drag-start (the scene graph is stable during an imperative ghost drag). + */ +export function collectGhostAlignmentCandidates( + nodes: Readonly>, + excludeId: string, + levelId: string | null | undefined, +): AlignmentAnchor[] { + return collectAlignmentAnchors(nodes, excludeId, levelId) +} + +/** + * Resolve the alignment snap for a moving ghost whose footprint is the + * axis-aligned box `aabb`. Returns the XZ delta that snaps the box's edges + * onto a candidate plus the guide lines to publish (relative to the box's + * corners — "placement guideline shown relative to the bounding box"). + */ +export function resolveGhostAlignment( + nodeId: string, + aabb: Aabb2D, + candidates: AlignmentAnchor[], +): { dx: number; dz: number; guides: ReturnType['guides'] } { + const moving = bboxCornerAnchors(nodeId, aabb.minX, aabb.minZ, aabb.maxX, aabb.maxZ) + const result = resolveAlignment({ + moving, + candidates, + threshold: GHOST_ALIGNMENT_THRESHOLD_M, + }) + return { dx: result.snap?.dx ?? 0, dz: result.snap?.dz ?? 0, guides: result.guides } +} From 31ee5ea8ba3a295bf2ec4abe39e3a65e27f62746 Mon Sep 17 00:00:00 2001 From: sudhir Date: Mon, 15 Jun 2026 20:55:55 +0530 Subject: [PATCH 49/59] feat(nodes): raster tool icons + 3D draw-cursor parity for HVAC/DWV Icons - Add raster icons (HVAC, duct, duct-fitting, registers, dwv-pipes, lineset) and wire them through each node's presentation.icon as `kind: 'url'`, the Build tab, and the action-menu structure tools. Lineset drops the `lucide:cable` placeholder for its own PNG. 3D draw cursor - Register, lineset, DWV pipe, and the duct/pipe fittings now render the shared CursorSphere (ground ring + vertical line + tool-icon badge) in the 3D view, matching the duct tool and the 2D floorplan overlay. The icon resolves from the active structure-tools entry. Previously only the 2D floorplan drew this, so the indicator was absent in 3D. Alignment & path editing - Add shared draw-alignment helper: Figma-style guides layered onto the HVAC/DWV draw cursors so runs line up with other nodes while being drawn (published to both the 2D plan and the 3D view). - Add shared path-point-affordance: 2D floor-plan drag handles for polyline path vertices (duct/pipe/lineset), the plan counterpart of their 3D selection handles. Co-Authored-By: Claude Opus 4.8 (1M context) --- apps/editor/components/build-tab.tsx | 33 +++++-- apps/editor/public/icons/HVAC.png | Bin 0 -> 738726 bytes apps/editor/public/icons/duct-fitting.png | Bin 0 -> 544969 bytes apps/editor/public/icons/duct.png | Bin 0 -> 373962 bytes apps/editor/public/icons/dwv-pipes.png | Bin 0 -> 1449903 bytes apps/editor/public/icons/lineset.png | Bin 0 -> 754989 bytes apps/editor/public/icons/registers.png | Bin 0 -> 468207 bytes .../ui/action-menu/structure-tools.tsx | 7 ++ packages/nodes/src/duct-fitting/definition.ts | 2 +- packages/nodes/src/duct-fitting/tool.tsx | 7 +- packages/nodes/src/duct-segment/definition.ts | 10 ++- packages/nodes/src/duct-segment/floorplan.ts | 23 ++++- packages/nodes/src/duct-segment/geometry.ts | 30 +++---- packages/nodes/src/duct-segment/tool.tsx | 77 ++++++++++------ .../nodes/src/duct-terminal/definition.ts | 2 +- packages/nodes/src/duct-terminal/tool.tsx | 22 +++-- .../nodes/src/hvac-equipment/definition.ts | 2 +- packages/nodes/src/hvac-equipment/tool.tsx | 15 +++- packages/nodes/src/lineset/definition.ts | 10 ++- packages/nodes/src/lineset/floorplan.ts | 68 ++++++++------ packages/nodes/src/lineset/geometry.ts | 6 +- packages/nodes/src/lineset/selection.tsx | 2 +- packages/nodes/src/lineset/tool.tsx | 64 +++++++++---- packages/nodes/src/pipe-fitting/definition.ts | 3 +- packages/nodes/src/pipe-fitting/tool.tsx | 7 +- packages/nodes/src/pipe-segment/definition.ts | 10 ++- packages/nodes/src/pipe-segment/floorplan.ts | 21 ++++- packages/nodes/src/pipe-segment/geometry.ts | 2 +- packages/nodes/src/pipe-segment/tool.tsx | 84 ++++++++++++------ packages/nodes/src/shared/draw-alignment.ts | 35 ++++++++ .../nodes/src/shared/path-point-affordance.ts | 68 ++++++++++++++ 31 files changed, 464 insertions(+), 146 deletions(-) create mode 100644 apps/editor/public/icons/HVAC.png create mode 100644 apps/editor/public/icons/duct-fitting.png create mode 100644 apps/editor/public/icons/duct.png create mode 100644 apps/editor/public/icons/dwv-pipes.png create mode 100644 apps/editor/public/icons/lineset.png create mode 100644 apps/editor/public/icons/registers.png create mode 100644 packages/nodes/src/shared/draw-alignment.ts create mode 100644 packages/nodes/src/shared/path-point-affordance.ts diff --git a/apps/editor/components/build-tab.tsx b/apps/editor/components/build-tab.tsx index 07332c08b..7e445ffab 100644 --- a/apps/editor/components/build-tab.tsx +++ b/apps/editor/components/build-tab.tsx @@ -66,11 +66,16 @@ const BUILD_TYPES: BuildType[] = [ { id: 'column', label: 'Column', iconSrc: '/icons/column.png', kind: 'column' }, { id: 'shelf', label: 'Shelf', iconSrc: '/icons/shelf.png', kind: 'shelf' }, { id: 'spawn', label: 'Spawn Point', iconSrc: '/icons/spawn-point.png', kind: 'spawn' }, - { id: 'duct-segment', label: 'Duct', iconify: 'lucide:wind', kind: 'duct-segment' }, - { id: 'duct-terminal', label: 'Register', iconify: 'lucide:air-vent', kind: 'duct-terminal' }, - { id: 'hvac-equipment', label: 'HVAC Unit', iconify: 'lucide:heater', kind: 'hvac-equipment' }, - { id: 'lineset', label: 'Lineset', iconify: 'lucide:cable', kind: 'lineset' }, - { id: 'pipe-segment', label: 'DWV Pipe', iconify: 'lucide:droplets', kind: 'pipe-segment' }, + { id: 'duct-segment', label: 'Duct', iconSrc: '/icons/duct.png', kind: 'duct-segment' }, + { + id: 'duct-terminal', + label: 'Register', + iconSrc: '/icons/registers.png', + kind: 'duct-terminal', + }, + { id: 'hvac-equipment', label: 'HVAC Unit', iconSrc: '/icons/HVAC.png', kind: 'hvac-equipment' }, + { id: 'lineset', label: 'Lineset', iconSrc: '/icons/lineset.png', kind: 'lineset' }, + { id: 'pipe-segment', label: 'DWV Pipe', iconSrc: '/icons/dwv-pipes.png', kind: 'pipe-segment' }, { id: 'painting', label: 'Painting', iconSrc: '/icons/paint.png', mode: 'material-paint' }, ] @@ -256,7 +261,14 @@ export function BuildTab() { onMouseEnter={() => triggerSFX('sfx:menu-hover')} type="button" > - + Add Fitting
@@ -279,7 +291,14 @@ export function BuildTab() { onMouseEnter={() => triggerSFX('sfx:menu-hover')} type="button" > - + Add Fitting
diff --git a/apps/editor/public/icons/HVAC.png b/apps/editor/public/icons/HVAC.png new file mode 100644 index 0000000000000000000000000000000000000000..c846c3eea4253a7665a865f7e1b7297ca43f033e GIT binary patch literal 738726 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%0AZMf9}Ow0#qTy=8A%Zzc*$C% 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≤h2^H81AuLn(cXmLuUj|G~;d)1& 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∓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 literal 0 HcmV?d00001 diff --git a/apps/editor/public/icons/duct-fitting.png b/apps/editor/public/icons/duct-fitting.png new file mode 100644 index 0000000000000000000000000000000000000000..846809d578ff34dc6e9a76f9b1c39109167d75cc GIT binary patch literal 544969 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

UGkKM6PFHhXopWI*My? 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 T-Q_d3-VzDA#K{b#eyYPKxn*lE^ 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

)qFj*UYi9#46)B@!jLUYNMk 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

GM@UUj7iLyMR~Y^#Gp9{n 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

{8R+BAdRTxu4IBwkMZlpc_8GP9yp^Y>LxaJJ z6&+F8`=!MCq_z-a5f2@+OOD%bjTUs;Z!S~5(^pmV1?!Wgd4a0R55oGvoRL%t|F8k| z9a+zCheR8hN&K7o)Iac5s;#!hBE)4~!{&t*y8_5#APw8fH_hu1yPTb0RJ!Uk1+t(&S?DeoucVReP5r zB7#!OSj(K+U>=BuEiT8-yc+tI8Q*bU9=PNTEmmw>IAa7q=8peTk=tZa`hzO6Ewt)H zQ>eGgPG}v&_qwfk#GlU1Jw9B(m{Tb{!Xhbl88*0t1Hn-yn$59SMlyVtrjVwIC;Z=` z>QDGjr9l}ki&k9YGgj&TO`BInp7FRVpr1eIlha-sTU#t#18_ymu&Yd#hoE;g?884U zD|~0~c1WM!;HCkO_=8FgPCSsT|CsyrA_X@F>vBST|0l%<>07NHk8GM)%~9n^JF%f2Wj;eu;Y?ohJ)vZS!yC0fb}6&VND( zP|0Z=?mT&T(%NeEoi8bAkSHdg*rmN|2oslaR@bIBlKKhBzw#TtD|MoYicu?ImZ=>Y z5u@a&QE0K-s?6Z1SqMM{)%zZ0Z5t4G-Z6p>a~`+fB*1$G^Vbl)?Tg`TFYy>%umiyb zm;Q@C&dJs>@#1YzSG)VEb3n z*7n-3AO0d6pT}d!E$|@4`|_nk;O_0N1-!M5{-LD+VcL)3-X5iD+7xh}o{V=R9E-va zR&@XN5Cnv&rU{ToB&&gjH@HNUCL&p}_-Os%Gv(W5#fo^$?Ui7qm6@gLrBXi_ceeLl zGylyNhI*j4H?F_>dD2AV`KtM02~qNqPQ4A8E*gyz3!R0PEmpl73L?l!_!_&(0CoGc zC|133D)mRNrHop5cgP{L%fpYx{e69Z?D($&e^`q|i5X1k3uq=b#d1FRV%=yH=vvHE zy(ga_aRwp@G5P(_P8DkngEykWErmnQg;j2C)s!_7yxR?$6S-cmuRiR#M}?^Hc|BSJ z4*FA^FK_-dJn}L&(K%1)NN?y`9mza94N*YhLz^T_nPDcB^T6da@keUbR6h4OKdsuH z?4JNq6@?( zj4;IWA&heEY#K7{Z_ zax~6M!l1jQPJ9eFwKDOjh|EK?o4+>>l@ykEBGbIw4{!!|rz!=WPWQ$Aks2gH=(;0H z*w@3N$#zlYbEdW}I$v#a#fMsp(b3&n(X$ItH|ZZBCf5o(w(C>%@-H4ksTJ#9Iag1% zcJUd>F5lJyp`;2?^XEi`6onMaOY>D^=&8cUv9X(T$&2z6jRO>ahW`Ba&*j@(!Uiix zo1C4Uo!8ar^XjCwb@Vd`Y?8I0p$4V{yo8NCSFk;&J4fF}xA+XD-gjT8QVM2JFqjT6 z4GfWf7A+WSi=B^0CbmI$LiXXWh#{f`?F6mozQB$ z31HA<%eE82LlyiBC4&U{qbjL=VTmLaJ$A9HRXa72irwgtdyX?!b2e7mKrV@+56u-D zM9M~RF4WZ%D*A=uRTtkwa{J4?-;^z5@oqO{s{`T&IpydwAP7!be`*mkjQ9tMKwIf_ z0~-)P*dOSjbzs2|D8IUduox$oG2 zp1jQysMq+stb%yBl33!^r|0OiyMYrud}&!&ySLbA%)N$o;C zGMzO7P`^wIi=;Onb`q8A_Q}4c*X9!Wgb(l1?p=BGtEq>F>!Q8S^Eqf|-+p@gH4U(4 z578i=CVoc-{9L~8@4SwSNg1`Hb>jyGckVZ5xXe#dy3Ri?zaHUN-$yN9A4ZwWr{LG{ zsLAJWDOK}youAiaygrn*DdcFK9F&#GXKu`oVnl4DT_^H|gSrL_FC22N>8NJhOu9L6 z;JS}|GNb->b#Zy~w6&}(db1ZOrlNrtM5@f(y1!*0@~=Y7;qHTQ?z1wd&C?l+&6sxe zOSC5_wld_5nQ}b%(=3?Fv?ofk<$~K&<=HY&*6>a~{`;!Z9bn+<8i0m|qDyZR$? zp33j00lW6gjIZt6DqFy4)Z-GLDN6&l&AuRkf9jP5?7z#oSm>3Pl`rza&X}|oMOp7m z(k)NXRQhpLvMMyOXU<7zR_c4g(SG$KHnwy$bHD1c-MtNnyX>PP(OWw3ae85vz4LjA?7q@Z$36EIRv1*nlaeN7) zNG?$gmu?CqDsu`cX_;?)(`xO907hJ~6`8_qUD{(x3|m5-3oyc}#U=uFU*O;A_DB;h07rd2zQ!?bVUxS#w*hMZ~IJfvkmFOat z%J<^X_;jrZQW-5|WbO8TCT?wS2t7T7r4W0N+ zt9i*6oftYja}((3eX7CPZe2b$G3igw2YclGSC0VdWGr|0^J8lP(?E#l9$lu@H{fqk z*!>lSqsFLHJ8sgsn`a&l_aKHB#SZbW*8@)5J|VtW4GJ?EM+G=jmd^uyr0wo*DK-V) zk-l?ld{aNaY1KAc?uur+j#PxR4ut#H_nl-`q$iOfF5Dr#$lpkqA**n0!-PcwK+d!I zHdu-03|CMdf0~E+ppl||QV2DMMpZ;Duc;|5M^`-{*7Et0Eey9#9B)ipEJ62F&iC@L<|=j?cCB0e?2n6vPFLhJV|H9!(Pr# zTVyu%Yf42vrWid7VKUFx;>Q?hsM_~zWspu{&- zjxF7LAbv^rX)%d?t7G|jb;jv{rMrT>)AhlCmzRjs*+E#?9|d_=W4G*%<;hMrD|AZv zDWAIqI)!ZQ6WEN;m_U8HVy1$T9Qxqg%R%F8WOkH4e{e7%4Z0J*>sGWZ%-I##ksCW! zCRe?$25qiJZNxwEjjtLPXPs{NU>KWsyU0JVc|;*>7f&!HL^q{CC>FZiL+gTjL6yrmY}Myrhqei6*F&%ryBZc&hK} z;l#~-(3xbdnVjgWE2QAxoJolK-yplweGpwhAq`i}?X%9@d3P~xd2M?K7_n1pD$KAF zF_?|-8{}?In7BjYa2m2QzIT*0|2l5(5pm=-Sg}|iIct0%^W@nz)=Wh0Lb`muj}oE% ze_Ftdq!DkmPBS)KJFp=T;YEi{3lnfbTJVIb(&5Evv`UyZ6}uB|GEmzq6!2F#{|80` zH3nrTU!fcT8c>#hlaOhwsw9j5+-uM@k}g@4)7DGC_AMf{WFkxkRpSquE_#G)m#uq} zQwUu2=f4-}^Y22_G)(2Coz50%zBJ*#Z^6%mz`-1Vc1yNr+!hf3I&#%?PuvgxToTHN zFxpsvY+d3Biy(`PM%w^YE6r!~gWJ9=4ehwXKL_F6JYD`QJOq>zyV;MDPySmlnll{ki6H}AilXcNB*!wU zz(e+G+H2VL{Qo~~sB&8E?R8+AKiif$KyTtg5W8uML3h7VOlgLV>a#UflhuEAKvQ0mC@@hp!a6Ckbe z#F&EW^8$0r2zWIZ0L5(Sbf0H{^S5qf1WKpfSF=1IFdD9|T}xkEvcvK1`Oz9)6@#^T zzmNy}fA#&TMM)QRKC*bbcD`6z(9e`Iu7n^ldA>hEAQH6Dgudae! zcWLRo={dfGZ%5#LG?BZhB64*hyAp_NZ0=@=VHi*O1fRpnwOp2ay{iXz<12ULXVp<^_we8 z&Y5|F?E~&isAE<=Ddht4@{)7*re+9fnR zY)doJcN%?SM+7QG?mw)^SqKZyWj*7s%@vLbm3Jd!v%)`fXvN9uYNurhNXEUD=C$CK z7nOl#Kq-%L2+_{Ug|Gg|rn0V+x3Kt73Rww%bztBqL|RFbgc#J@og_pFnr$j(nz;2M zbzn(!7n=O)ca6G6-^o#!s4})<*KTruI9Bca$t9+rA$Loc3sBko)3!9E%D$$D!Y%5G zN7;yi6Nk}by2QJW2>1nWyaSupP*fiyLj(6hCSIiIG;NKVdB*yFi=e%9m8svf7~GM=C3WD(&2*o!|7>_ZZ zsyUbFHX5`NhYFL0Yq$_ETuTBtH>@K+FZI2;qCCj~6M-|Hb0o}PNlH`&=A@JV?gov-v%sp|7>aX{_A*a=SrxkwE$j8O`{;OcmCW&Z z;9N2RdUfAtJPsVbxd)>j0n7dSp5E(K#w#rvFAU8e*9hncVu&{SUf zgMIhZFfHO>W4lHpLd~*T^S^9-NdjN&m_f|Jn>DQQY+BF33HT)J5%4J!x##)52}*`U zIBo{aDp4U}9dI+HjmUg9=A6vw-17dW|E{s63B4cB(6H+6<_+GVvv|CjgYbSZ*?`QA z_o@j_2yFFN&pSrO8bQ-3XeAKP3FHX~w@$ zjGhS3E zDgrt^9|hl1o_!n~atjW*x9^r(PO6AsIDqxrw?)3o>j2*FeT8mbqW6_LVo$@Id{#0s z0wPv}R+j_kCKo5klW@49y&+R?%0wo0(V$8~=drnOp>x~(-amTwO|VQ$u~X;H^9 zZ_K|uWt^Xtr8R~9V1D1tB)BWx5-v0MAh zE>LjV7kEF0eEnYe?neyz=p_g2+k!7raz?v3oE_S*Xsu)=y%%HhlMB10gS;SXo6MsQ zVSQE84Z@beWlWQvlEt4(<+5M_BX#l_zqw~pzEkT{0Zo`0Jzw%Hr}@h}ozP5@?$>}ceczCW1~o5jO}t_+-C1*@EKX1m$ z3D{OZkZ=&;>J=&5G?lFi%48NSGzo_1s6DqcmcfmTt+U%NYs)7%TVQN6*d|bWqgrW| zPP5~sT*h%Ty-syrj7=gv*PG8~dYn>LQhjQQ_lb#2oqaK4>%P^U#aObVxa-e%Oos8M z@MG0V*tQwB?>uRL9B{B4rIB|`9NB@7 z6DpoajAq9;bYR(nRe;*+pO_9WRPn?ZVvS;IA1}LN9COxXW81U%)o5rWN<9iiPePks zdLeF0J8M4gyiGu@SHO}oOwUMM-u2!fFlw#0U^Qq*QGGW-G6zc1V%M4>rkAm1M!5N{ z6>W0Lo(dnT>AIpv)`lCyl)r{nGpec?oc%!Wb@J@bD9=&`0z}94$0kkcky>lcuCvYd zt&W6tx5CU%n0%WoEoM#qt2SW)x=h3D)@ldOgpz*?=T2YL#rJjw*TFCxWldRsXHnj@?-vJ57?*HncqTfp z3tL}393e_AbKM&2CjTKy^w1C-*fB^^m#rPzf2h<>3n8>?KI7(k+W8&0oy&=nAEkx; zH|t&HlH|Q))5u(Y6MB?O>Ep+dUMzc?YOLBS8H9Zlqf9Bz_I4P{NC|TU?o4qLIov8q zyH!ys@l4tJG=zqltgW#2yuaTktH(h~fe-xA<8fz`%>$^`bwBHz&gxN|%Ib>6nbI?L z&OP0^(d`CLLI}vmdLTVuS5QB{VA(IMv^YJLH#}$RsRX$x~J?kd`?I? zZF(_LVGgT_;Kfbb)}i5Zr#d-LS>kc`AnHYlaCs>=r~#^9NjtbQ-op!e_hz!_PW2Ry z>tV_A>=o~I;a~Kh{CjHiU8Ng5jjb|yGELFIoHgO}A?+|_SutldDj#QGU!Dw1jn;op z@dXp+?BQ&K&4Az@h#t5^z)|7teY&kT0%NJSx1K8v{zxP7OL4)3gF<5wotUl)b+Z+w zGHrd6R5Ho$a3|^?63GOlFvgfFrSYD_RQ0CMqCC*$DhXBscXc55)XButKI84aO>szk zhj#H>4{WQqe0dNrAT~TH8J(y@vS@4w535bxQvEi@fbx;TNss+)trA1)TZb&#Wp&M% zxcPO5fpThVaSML?((KVnB+gKWlO~Wp7I75RSU5McTsV6p<>G+d>JH!De$_c^S?W(8 zWb$zmjYw{)(iX^~HpGNnw`!JD@x_2YmZ;18<{7ecoU-|f2w7X-(kLeC>6{7tS6F);;oPY+S=?ns_&)hShQ0;t+hk8C~U}9(86?YBMs7J2oLh~BR&yP zUVdi=KtouAJaC{@=7%xd$+7xpZ*m-fi6u!4Gq@r>Z9;M1_g5$G&}qXgWxde`EW&?L z+WLtd`&|*J2@|85YAca;|JUaPG@N~D_Ub?FuI4cv0*Jzz@S+v# zUH=SFt?oC`>8P1;gk_{L(sv!@QNZxm@|zuuDByul{R{^d3)QS$1NAdP8_BwlI*D^t zMG?~>eObcoh+O#G$hLMOI~CQFhGKxP(rEE3S2GpLDr~oVH5W=Q5g}qQj{2x5&_lE# z(ZvOIVJP1fzP6<8WjCg2m&E{RGZfCK$M5h+=4>O5$_ZC3hF6yo^7eGp%9m>Ngo zIiyO>K#jwzxYxxMG-@1zr-FxcPN7!O@GZiOU}VZX(^O0FGevez7%XYDEUhE`=OA{U z3$5=eMEx&RO;l-G^-`ghIcj%saMxv$vkEwTXs|0MfhpWjGCfl}c+jf(! z$=Xv*HF0N~lig%%$H}&B*Y4|l?|aVm`x~C?x}STkd%@!{JF_CPaaym91+)Rtn}&g9 z^ZRG_@BuQimu99*m_k3{56U`j)Af;W5KsCMi%hOeb5~N++&8k8=D~UgUEn>?z0l+P z%XXAV`x}L;h0a*O>+1hc+K2+!9M%5I-+W>z>O_zZwMlJ_Au>7cA5de?Z`gwP0b#^?ho`(;j(Q67MIbITRJdxbjp z+oKGH=FaiD8;?`z+|?WtDL;`9nDKVA2fT0o|rcfbRBr?pCgJN-)#ef-`f{ zj5{2_&oXNZ0dN{>XVQXn9SUy3c)6FfsTz*z_~-->z^TPoxR22lx~p z)ye!CG%2nnCs{OQ=ov#uhJj>N0`R_bFG*8kx}#PgPYo}l5n(1eSC~&P9>M3W(B$1NB-_px5_46n|219) zhVg|OBA)XRN~@#4lV_~S`nP%X$J>N*NWg^Ta+=x^plHrqlwTfWFu>Z;@#)vxX0Nj8ts;_PSH$m8Z;_3s=< zHDKT-?xXO{g?|zex-eJ+I@U+9nQ&3z{=UT+h*u#kGLUM?GE9B7z~8qno6c+fb$_|R zKHJaGvW>w5P7`aeQC-iqO~sJ`2@RvJB82@euy+uO$P8a3DtfbwSQatZhW_ghvk>P} zxg_0!e%6eQJMEZs|DHy>&e>%f*Fbfs_d>vz-Nd%IZ~tj1 zM`E7)jRqanHa#&2Mezf`&* zg?=$YnFG#Bn`S;_jEE(!#|>qSWlUqDlRD18ix*O~6Mnd^@Ll0J$gyXc$`v^UIqYDy zO~Yz%oU|w)16t+jc2gF@8SaCKsUO%Ku#i}fHkz}DE>YSLd?kK;s}4{QCq6SP1D2l0 zu=^{l?J7l|$d)JviHSo81y0xpJb8;)Y*{DHOoODxLoMCQe;?0c98Q%zlui-QhG>y< zmmofBo~#7nXm^|9VSt!$e`H)wE~p@xQcf={RTt8b>ey(yAE>RTLOan43NVrBf*?cM zs@U{%gk7bp&QO8bep@&uk8O)Eur7Y5lvDa*FHF& znKrN1Ul;)UnYW zy_$deBm9BK@-OP*#ptE0`*s4HbNOEEJzwDzT`FR(6D||picjY^;*;DXUD<+1Pih9m zssxJhgCnC5T}sE)2C-T7Y@~|WQR={vL@BuUu*WN2%P3)#FO9^Jyp0qKK1wpo64|oH zpQ^4+5UIb3JloiL90_ZQ)-d;{)AtPHF{0`bYDsZep3{61-{mRPb3lR|vB3Z~#kN2X zysV^17n5Mw{vhM~1!~PrdT6HP%CmBlqB8Zr68<&v6;Pa>-M75lhPnOS zfsn(rHqYbBhRDK!>f>IDEBMh1#`cWnl90&ra@XMfLP5cvX%zK8&c7|3pj^0R%qmP( zgCjZC_1+*L;p5#66w;E$*>>=l25psNs#0vK;Pr2Wnb3M9-P3k6p3>5l#211%JteT+ zEmNvz)bOWr2USzBojC21r;J+gJr4XAl)PR)!+5OD`#1lEQZnMDi^_?_;bPb&DqQo+ z)KJu!T_5G~ux2Cfunfi4WEW!|EW`ze|MZl#vKkP=lL$o@6|WtMaw=jX&g<~I#9%?Gaq8t*6P&5vnuE6km0(CBXZXvb}=z|EJ(Zl;>{ zi)Dc3|A8TFsCT1l=lJIJ|8OyH52B>P;2@k0my^3Y7ryFea&6xeDSYjOvk|ceIbtfO zc#6N2ayx`ZDgNIn6RCX?f+-pOtoGxYo?FA}k>Y9PSId*pHo`(XYX4w-ql&2rnWeYL zr_N7OJr_q@oNXRxmaFg^;OOP^ALtzMZ20w}20rQT z*yo(KMGtR#5+Wvy4tNR27PQP$E^9WJB|bTYg>E=$2(@!dGg#Bny@g{Tta1C8kV&20 z?ObSyBPcA1S|gOQV>uSHX$N0)gy|3yG2Nc*_xtZ$2YmWzQtvOkh>pRiGS#sh%9~pq z@3vejSqZArY8x*78LB_e&c(YY+rS4qnND~&VFuK~0dD2bW+fp1fA0L(4&16wDxDmm zlc^ui{wYyLL(eCF^CH7|tfN8?1+s_qa59t*H`1p%(wKS#@9$Pc)>-@>>{mD6mp>*q zUxopdfipDOa|$Nz?Wr<_I=phfV`)cK^Q(dj$)8h_k})uo_0s+w!P7odc=x0FQNu?T z&_IcwCI!Nt-JxCfOY1b^27JgcAMHGsJR?|JqJ*J5X!=|y+?L5~J7u}Fj}We>R$?n4 z7AM%NeRijQ-&TJ*GC=$yMfbu*73q`uEpjgif~ZTm>T!oL=6gPP?5yyV@_u$u7TMw z5J}0(W4*8oj)7w365@54&6eJwUsp_Leq&K)jwdGI3ta2x+tG}^c0;H@$6V)Z8w>JPRsrfq5b21vqo_JOg}$%Bn9BBixAk z@D${MnpMA6ub}ah>@`g@YcU8_8SdOCVgs=fbJLQdwzgqPRADibEPl0HLl^2-?q8Qz zqVA^#jM5BiyaJoq%Q~8o2>jD+2;*V;FCNc9dV-) z;LoWf&s?TU@j65?2kwwoQx}a8YeDdGSM7D9^}fMoVxb))@sZby*@M3F72GPUO?U%- z@6GXs*;(#?Ka7weUi7!tk$2@ir$;^_7hk@Me9i5nQd5Ud=dL;v4ivPQw)x&( zt2SHzotu|n3N|p>ma7lgBL=0gBE^2$8~kQx_%fbOU_-nw0TjHd>wZn#bQk-7CP)W2 zm}#`R{lAxJYWT|fK=1_5WG5gl5yblA)Z@k`@kNydrU@+_YdO1tMqKE-a-Bvk9qU4s zluDI1sMi8SMc;}MfK{({7*{~T4oar%D!d;+QPzTG2kp(sIU%%Lz)~aP_sag>t1UHV z^JPqwQ%nD~aYNuds`Y7(0}qMNbw4&uP5EsE2-m1`qDU0*-*_)KI+zpxVAe4oT4G;d z*wHHllH0B)nJ0Ms#jp5%7COqy4`1}%|Y&D0+f8#6I^x3-m=G}L~{zFkXTPZ@P z`-D66Il(`Pw7z+%kSyWM)fElnY-oIX@>6T6Zi7+CDP11XU>RpVd)n%yZ%*IK#g6%O zq3U_=nWFyHHC*^6f6NY(HA<+Tii!HBa`bQtbT}#RSbXNkSeZ_!bJ7-C&m8Mk{PJD4 zu{`Z3W}v6Do-vGGN%*sBz3dlmCvxV`B&U;9O#jS@FZrlcT=}yoN9$z{=uN+H*RL?r zS?NjyUlCrzki{RGd4IwOdXawqvTt-LiUpim+T?WGQ9Ny5+8~`BLZo~7^|^4rEPHjo z>P~&krGNC;8>c&WKF0X?H!?P9GwH1c1XSy{#gx<{6M3yH2@;2Ezkf(Tyzjf3Ymok6 z=j~BL-Q1*~H=Trq{6=&Axv9EXYO<>gHF|5R{|j;bsS!M17KLC{7t54WLZ5SC}4I6i@oaHQ{-{7~KQ zR_DJqCHdZF=I0Ta^O}#6DH{!?`+vj2#s>`;`WmXu2P1W#ov^$dv3e<|$wRpFLtzNc z2is-0I*k@4YW10kmSS;FRxk97NN4b-@FN7I($`Lk{=n!I5X*2eAw-xG-d}^**t%gE zTu1`Z@mn7WPqf5z$JmAx9cJ^ljjtU@J`Q<;Z`RL#oB2O{O?r zyABm>So*G16K`N}#F+LQg?V(WND@ze51OdAULGPT^q~NEI&GyTlC81OBpJGwFKn)m)AIkqXQBa_L z1FtVho#p;}Z)O4Z_@C$~mixKkU`1M_5|L$0WlSijMFkXvH(i zTya&zRQrR3_=P6{?+PNBW4pzHCzl^W0UHdtC7(eD1uRD7`3v8IFwDPFWrPSawS!`I zO56uU!j^K5JY|N0rK4yEar?d8gz2uxm@1-VFJjJgif4p=s+Pj6#M3CaOD2#%1i}-& zLy`F6f9Lvj1&Uucq=a>#HwpuyW{^BD?cX&2{alASZe?|t<#;xYcl4$h+Q4C&kl{!g zY5J6Te7h7&$B9%<9hO&0e;IFH2(VWKxae*NlllND0=II?)`_}|2RSSUtql!VW?i%m z$C3@pf>u#JcOL?f4cVdC4Xp_Y*IQGp364@LJc(i?jy}pjzm~z5TgjnJGgqSi6hD2?@a5ZHoMS6IW>#?u zdo5|!X9JIzuglV1*Q4=hbBdSeNC#d)bw2#>4j1iK0G|GDy_9EG*^-*QAMPJG{nC!3 zCv8Q>L4k-NBQ`%47zy-ARLVA6W+IakOI|{M9$CZwN=jc*YNvV+8&s7v zoCTT>Wd#j@c-b%X^UD@VkwcKIpb0^dUS@yXv2|VZzUE^?U6Ccb^H zvEQFb0zBS}2y!kLKTZg^kf;iA{#K|t3LRt=RK!eF%+n9M&Si)LSH89L;)ATj08aXR zuJtE7gO+}8-+j0>a&f*>&YvSzDt0sm(d9Yrz{1}Bsey`kB4EC;pb^IL+L-L=+zp}o zF+^Rd+E|MLRh{C#!X!!1xt3Wy=pS={t3cw_d{m3bZc4!M+4OlPO5xb;R9 zrA#c9{m(X*;v4(Z{^CQn6t_jm`@;dy6kt_M3L;y)O$xq><1l=)%t4&pvfe@OAC>(Pz184lrcRMswzsBj!&fbzQ z>xev;=h-uE9?PhKXF@pO-Vd;mNa163$aW<+QbG7a(&Vzl4e?_ZV9Z# z)6+FS7z;;%(v0mbz#oxNV(M`bx;R7gN)TelUPEi|^hn`YWV7w`=G$!%#?$Lw)6f$O_RY-%^(bg>{z%SPOoo;G*om^n2T6BN5L zXa>K$q7oeOi&~22AjhyPC_OcH8dl%O0|`%*oZGT4{Z`uujq03QJNITUQan}ko=D@@ zJ-xql&f3PDIy-bdFO*exyT;R~XpB$M3J_97a>`Aje>Yhon;o-56ETz(Gu9`q2WhRHw9l}#Q~yJv zMYSP{suIv_K&&1~v0LEIuQ;i(uk~S@ZLR z=!H?X5ezzgByT;ISl+&5IF+gV4Ya2BbA^%p5_pBR3KCL6Ef#3VlJs_p1}#fP%Ghvi zkx}D#Wa-_C6~L%3H1kHR{=u<}nLdr`W?Z~_1LCaeNMnCe)G@!ExTY%3*MTa3=KaGN zi-&YCXfH_VzH(ZIc1A*2MY1S)X+OIurZ6%hKH9rLnWkw7ateIXuxLh$ubNjg zs^??vH?592#HW~Z{2LqaclgacY$Up5px3FwY#v)ymv`!UF@LJ`nQ)_Y8 zWfu=BjmqZp{R;7a_X~jN&(xuh{*jc9{|u9lVEDH^l|a+_zwIquq4hBn)P9k*9J2Cq zzLHe47{uuLiZg}dImB2z_%8Rc(umO^A-jSFX(bczc$jj97zpa!=t5Y89B@ZWtu5Y# zwfS{%fe1omQ4Wg7q}Rbri>JxqAkFY_mFL{|H$ZmDb@5D%4%U1cppPMphR=#YO(C{o7WfTcE zI%?oEe>eFuKI$$!HRvxh`&=-7*pM|z?Q^q-@=>Lq(qAD1UT66z^xbCa<^dn&zLN(m z=Dxse-bed%-DxvwBv$4konkjRRfyLEEX&uX$MXZ6<^mpxeAJ8e6)FvU`4Ot>ye=y1aXj~K5ft-+A?0jo zx3U}A%=Mr=TDM~6KL*rb85prN;n?NiB25z<=BRvw{TyUR?Y;VfQrtM7cnfDU$GyYF zU}*mc%P*D%a?<6|VO@C==%F`9BY#!(U=~G8#)chsS9^qv?ZH~9k5fer!XGA(cepzy za(38nWyyYJ01T%dAzymi$NEzvXMK-3;Eip?FWf8nQyf>4X2kJNpW!qf0spHBn}+$1 ziwo^@6TVRzVlAl1cD5@FW&Q{;GAOl(Uz)hZa1r+^XTd`*8h$pH3x;%*8>r-DlANtf()%dFB%1d1 zXFG)TFR9LR3ktN|P_bTHOwwM75IiUuKL3*+@pL(5QLkfbd}S?xhl*L9-rQDSG~gbd zLU@*>L#BUyv=n~S5SVLV{|>^4Y$@SMvh^mf%ax~QgDBn3)VKMil)kkjhQ8mt(1pC@-P^qOGvE?^CAOT_L9L-%UX)aU+Rg&?{}?U{oAXn!JvnCU^brq zSCF)*II6})@M?!L?y)gE)6(InK8O<|6?yR|Jz?KB?$FZp>mF@0vKh4&3mZkObc#fs zI2rJ2y?_YWpjy`@*hJt182A8uv#)dp{CBK)k*k8U=a^joZzEaa!)d4Sw2FEUkRm9& zN;i<(Nc4xMr*?ExV~R{TIGW7JVw8)hFLjWkwwUR2*d5gYq6Bz*oabC6Ht_Mo$&uUU zQw5SGn#JpJaTQy-@gy9bVN=XUfvDN5ZHyDuQ2RAgS%{BFKJI|~w-;c{_fKC;cMgC1 z=-=-1Ec$9+*+)%|GI(=CKL`7JbGGc~ab)YaXzPsvoUSXU&L^KKyH5p}k?#u8-;+Dg zX(z`rnn}X#+x{0J*M}ZpmdGYbY>J+>MjdGDGnuCP36>)d0-JoBT=r4uOpPH$dcCpzDGHDjAi;w??2%Y?v~!kNud zI>;Ee!dww({juY&Sc>-wclfq**gep_JGiM8xT6C;^`FoIDEQpfRqQ9Tw9{E(oL-rN zs3m`K_>xY;x67+0k_iQIMh^yDp5Ib1nY0ftNiECaI-dIJ_#A%QnFb*RI zoRt%MyJWZf(PKQ-W1>=xfs5~!!;4*+yx=sS8qg)_N3|+d)lAwE7o3}Fry}eLm_dCF ztR6u{=%dWm7Er`AlWaK==1Oww31aOEt~i3r{S6i++!DIx5CN5P5!Cdb;OPh-Y4L?h zuQWP5NO`nT|Bi;XJvW_qgYC?^7uQK{-3|M?L7%^FId#Fo_;xK3Zl&AiV+wH2wbWMW zcL|Vf_)c4~OSSaNz`$3^a`aZxwf!KvUf-GC)jIYfsBT(2Om5oYuxX&)&pQruyzo$9gi3E=SFiNNEDj#px*R`>w&j@VFWwdo>M~dK@R@kYnAihl z`KFXw-DcibC^a2(-ef_Hb)2xI1o>w6x$+7J2vOR<>)w7oCo>w@U)%Ww>2*(*?D9#& z{{4oVSmI zu7H+6pvbf>#mH^l(%p>_VCzlE;IjCReS*r=bv!VcH%#nTPFgVNUf{|XTp-oME1_DT zmz^0HKcordq6ikEjJAT%;HOkZ5}o=*JFsk_z8i~?eg!SK#?b?5#Lkjcgr>LBmMq}h z4Z3{mA)w*ee9BrR?Rt0o&k^_o4RV9<18BbbDS7*!f%JwWK^oR_KJMYyKmSgd97Q_*m2%#$UAXuPSv4l0L-6 zQzh3Rr_n6HAKddTtNZK67YfH`RV_!WQ03Dhcq8(e;xew{J9+qG^4>?X=-lB~=GFDi z9-42_C5fX|=BJr~Bk;q>YyH0MxQ(FkhZ_xQHDRO4M-ysO_k+ZT?B;#jB_rSp*v$?2 z@amxd=pp$~eDA#s6!X75HLm=4nCkR?KL>16y;NWN#dmM}dP~XhEpL0<6E<9%68mC&Ay3f3X1x#+GSbpOOzUrM1T=ebQ z=~WwV&^+uCg52dK9NoMxK>65Pl5O(FWr2uDN#Dn8T{z~ueLIhTs}uH9?(2OXEyADe zoq0?DcKhg!c-^K5^p#H0D$tcvwrhB+l0ArI&94aPxept0Ik%fvYm^@7Uugl-RE$bz z`Eyk|{M>SG2gRcX`=XW^4;yTmtu$0hLJkrmtfC^UJ^o!>80(E6y1IDtRj+m`o4n9{ zR81MbH$5bO%v+zz0Nz3Z=MUH8{%-ixGp*(?j8PvnTEI%B58Tno)62C>C;}O8tdo16 z3|kj9>*SgA3=JKh&e@Ufm=!`|%NZH<#F# z5SI+Ks9|?5_#x1V%UFU*Jod4Byf5hOwI!OU37MF)K4I22QoA~RwpZg{n z@buZ8*B|So)Njc#GMLMmjg9vcfsxJinJBJX?6`L>5Mt@ykXu=--jbsfb&q<6n`-G6 z{2w)H-N9!HJxTwTgN51tnhNeS%l#RkM5B6xtYYAaoCz+z`&vl!*wt7t)dB%I4ow^r zfmDhqO-q{Z*Z+G_i&{IkoiU)F$G;k7$JMCIMQfISYd0-u#-p*%fTrEr-jl^(m~mks z{iuGyvG_eCew%*5Gq|&$N%4Tf1&t`SEA=Pgi36grt_`%Lxu^L;;DkFmiOaDVl-xgDmY>!lsC zfD=9WxbN9KiyjCCB3Q_$`ylE{1W`XizIn(mC#W&3^M+EEx2`Nq5`Q{B4AFsICq?p9 zQBrr&QI7x|&L!-HkZgDwXHzn|SVnV9vHfTi9xuEo+$}_QI=q-NB?0abZ!!#>yz(EP zXr|+04%xA_>*VuySq%_*;P{wWZ4~++o6r*Z)uq@^osn*9cY((L0xNO&=rWF|=Qx>R zdvx}j9M*{Vge)ZsNlMuix$=Tdhq9$2n@j*o#8`E)F8L3I2n&$E?Hw5W-MG_tZ@=7! zi2RZq%~?&(`|ER#-(*g` z_w|GM`eP77>tC8%NWFg6Ka+OK*b5fid(WlSN9)e7Kf%i?AHjilG9O~#5fN}ESjYM0 zx~=;y#(y%(=}O1{9_MAX>)haTGQA7GU!lJL`Pklkx8A1-Ji`eCygULnMBaG7O&>QV z;Pjir?njcBRq&BXmC5}+V20(bDD{<>c;s)umGgnh`zX(e%KM-SgUJn?$^lLH0d@CD zlSy*TYd)X=Zc^kJ2QV{n9%X#b7%*uKNO0=hFVU@@!C|>Py?Xjnq+eEC6vY=zSZ^M0 zS{`@@o#7_ZPhA4W*le~BH4s;v<&d%g z^4cw?%5Kv|<7l!SZqwzq=xRQfr5!_w_Np|o%#XZtDc#Q6E2H7raCTXdgBz-3Hl6xR zP!XHs@xg(6s&hR%L4W_EZ1v7E_j&z3_S6`6^RYko()qobWbtcGS0>B*o&X*Rhu@Bh zJ7;BAWCCy5Xs`u7)ai(%w64T_(Mo@jRaJ;#m7Ptqg*IFOng~%~O1NyhJgLWKXR1HA zz^qH-C$$z$v?4i6)>y|4=2^(dW^1W0xQ3G8kb+VUSr)AsIk(Zw4gj|!HCOD+AJ<=Agi zPbhicwBWdPgsYw|im&KWx|85vRJTMw85wbh2A1;3fYq|7n+ySmk6q&J4H&+Qe!@k| z{ssGXN=Us8O_OziGOKvit?Otm*D2Rd^f9Y`j%o^O4qJ95k-M$5VVN7&)QI>I7cwe` zhnegAOUe7Y<9`e6MkHvb{+B>UyrWd?zt3R_+1qe z_~Q$Z;*oJtu{$9fEKeU*IbZn0WD)=LBEG1&cEF-BSzZlrNaWT*BYX= zmQeW;=)NlBD*mjc;>- zNS$9X6SCag6@xL!=RvZoI~B=tP<~y?k;ylrvWPRxPs!>Zj2chB zyKm-0D%$*yS%E-clYXomIW{?+BW{tt7D1*#bh^1p+X4zZNXy{RjgP)yKNE1T<9{$f z^dbPbRY?YRIO9F8H`F99F8ldKWua&g5i#B`eNj0Ixb)B6cnkac(n;d)Wn2v${2{Wd z__pEv(s+Xd9_4u=dD|5!>%M>Nq5;2NKG)ncZN72&p4)e8n%souX0ilaEBHSec^yvh ztZf@ObqVD>-x<7va_^$O_Yb=$O+G8t6E~l;0Y8z07WYM-WkjlTpJcjK!P}dG4dA}q z=i|2!liS1lENei?% zby%**A>fupXBnl!sYS`>B|1T$A6sJDf4fq`#t^59*XudM@3bnh<95+>2WOY;tU4GCJm$lmR1duF4PL+)w|KjXYJ0?l=PhwDH-6uTMwKe9PRJ$(`2A zUHga2+jvdjCw}mH&;OpQlrt5uPjnnjDXIs(FpiA=w=Y6PuR@ES`=t|e&1!RB#k~YT zNz{lh_?M5YL&$1G`2#HQ+Bn#g@Jo!_vrBk=Fk*M`)*2T8Y)VXTifC+doChBDf@H%m z&=%ZAyTe9P;1=NNzDE~rXfkBp3^c7feDO=TC?LxqepgVqjaq>Hw*p>qDYOE`66Oxdp+WuWF6Kp#;U9s zDkI2I6-Z;e$1Q8@$Gvsl_MOx$iF(K{G%Pp5-;@(s#7k72sl?x%G7&inLQ||g#`9nL zMCA`4N&9$F&CAZz6siz7&=Pt`4C9iW;KDjqvpaGe&A*XYC|K|BnYz1o?ExOHmL8`p zy({I++B2HVawA45B_S&!3|RTdWB~*$DF7O(7eR)@>C}m)Va)9VI@@IfG-+szVGZ2X`ZZj z`&=GRI~=y0Xtlsd+&ksU6NotFG0$2Hx?j@E&d8SEQdOgzEyzIhgcfkt?yGAE-(zgIhyJ54_mx}dc|a0%-K#09)k!AtyN)#p-;B(~t9RgDm!C)7 z`l&(A{7$lorv^C4`PBk2_P1-zO^YC9pC;bxaX2ZcMM1fBp-wV2q?ZE{mS9dxnpLvQZ z;9?T6S-{3+Yj5tWmPvjtIP~%0tFga^|Gdsxm5NUyixzp_lL;tR=*kL|DEP(WRc%q7eIfZTPmNjWAj z2I;0A<`m8hD;uvuVno1A+lhfw&d|k1BV$P-cnaK83$c8)9)>`=1thvId>ut(9 z`nJrGA8$!FZO@%M+!>$du=Iz1RO~02cY197nmqOXaI-hfvX27>tIWe~x@&e_DO}vK znP{M*rt%HxpV|~Xnqy+o!K#F(pQv(Fqt~&B5{vF5 z`@ybc)LK6m@@Ntt#hHoY^uWqwOaeO0Nm{m7PnYw@yo?AGp}JL&;;JfgMEIMK1LaGt zx-A*HCbH9Pfz8@REG5Q>h)W%s0cSa$IxwSTVME(6GKbum89*r0?qtRjf)0_F%-rDU zAbRF6P7#7j4n8*b%OjQgjT5~=*|o?fUrBUXD%w?^EYKxsNBy8)@J0SMG5 zVhA_3Adj?6jS(_LrE3RfnLCHE`_^{eBILjVafg*;zNtN?H#8=Ef1Hh&X@vNLIB?|3 zkSm_wl39-vHU$5m^aB+FCDilS{9BeQPU_sT%sF$`!Kz=f!pQ7dd#gL8w zuUkZvWtNlR7mO4jKN8n3jwwv{gMwDx zJrVKw)zCy}5HN{G9^kU39M4x|I$0ecsv+!RioKb=AVPC zoQaWmzpzB_e>K>REuwMkA!-)^gs48$SFknH*zi3W7f>$W$@z32kaUlCq!|i(%)TW; zhz3l;90bTk=z3y*#o~sT%<+@=i^8xwZ9<1auX`3@jG{&!EUu5GpOTBO48+v0g|h!U z1jX@%4Ci|Y!76+xEqzD28^1#FRK}+)LewB!PMerT*7f%I6u9vo&r_8XxJuKl|G(m# zZUpETg(IHcX3ORO1knJDp+|f!sIPIJ%`IfB(g}Rj&zCc>#Egr6ss;;|(vLob?;v|#@tyQ76<2>p!E#99@2UQ!cOhtW?y<0bAp?mDHK;W2N>-hb2IUy0z z{&ufxfD&7t&JDec@M*z}%dUH-+Z_z-i+B4ola%$+ZkPlDPfu z7hu!gc^;?xWO9Vj72H>c0vt|&kTIjffzXjv!{;C=ns$diQf{?84zK*IN)q6j2F*$c z`godjKQ&n2b~+oCDqJi5J=Wh=AvdU?MPR%!SNpQ(K)&wp$E4Ejmq4RDq4gb?8e_^D zOYkM&gXv%;U73@F`ct2rF;SA!AlCyMWEZb|zVU~}2b9}Ce0rZ; z(=H_PFai^Btn*n@e%HS{r-k7e3=2V6BIThz&Gu)B-h;H{^5-d1W^CHN>!D^?i_!!v167o#bTO%w!ZqkvUH8q9{Re*o zvyov`uwKCXpKqJ`>qb&)Kj5Q+f0B^#IB8Bp(Qt1hnMRi)vc`Y)okuNQmlBV34`s6P zto$w6VUz?j0eUkBLSPug{zSOOhIu|iI+3EFoXZ=Kw)f0VSEkC7`ls`|G#VGr{~qodc?B`@vVzOZU`$pskV3t%$#x_WXZ*yi%ssNs)fI zeFc2%5kDK?+tas^=r}T6nYeFPg)sEzmDr>+uaEfgr-Ml!3Q-NeR_2K!HHEW zKhCB-3h!Oo3!6%KK7GMB&B{RznKUvSR^quxjwo?;xtGV@_2Rex!$W})9sImH?qIdp zH>3KS!fjV+j1kJW&5fH3ot1ZnIJt!e?&Dh3?OPUiexAI`O$g2)t2uI2$*zMfw1!Qs z3vB}&?OBiUoFc0{s8LTbDmx<9r#iRgO)`fs0Lm{~tM}_qy`Mr_K|ZQF!1|OE{Z}b; zdsr1ROIU!B4{Zez%-5$ZB5P><5{KH}GAnm1b4m|E;&}n*z?4hBCn1_ilfbjpj{}vi zhw|p({~)?R4EUr?=&2OT|023)H27?kghF^eIbu)%yIe^EVMJzL0%klso!l2t@kn`| zl*%$J?g(AO%{;Vp@{Z&Nv&8SlN^NFD7?>e9pRc;DLp~vHz=qaE3hMV(lu+2rb+sOdT`Pvnl$ZjIbD^*R};rY~B6jkzb zqKe^U_(k{Dut=bC_-lB1v5oRJ|7!YygSJuW;4HZYZwja=1=N_ave-YDF`0e)nXoN< z{p*!AyGJHB(we`bGtNvR&$kVia~!TKLFe*JStu8^Jkf(uC-r6&Jp5e$;mu5kZhV!1 zbF$j~Zg49T_=K~o@)1EYduwuK>wEh8q3L)2S7>7DIhf_q@6vC)=KaKA^mE|Ywx&() z-0Z*e8WJbQStX=@u~h-U6hMoy3`$w#C!`UV6sg2rSG>Gr;!I#1GdcT=c0Wy_x*vDA zzh}=xWCpYBt5?Y!@w=Who;-<_`RW)Q#@ z^J%UMA7r$?Ei0KVJGc$SzV%V25y%O0%&uN-RJ<$B1v9PS8E1X=iGRdRDk}I5jyW-W zT9r^5n(Uis792M2H6goUxuKr^gnchVD&seA(j05jEv{8hJGDTQk5Aae=U-NH(fx92 zpQa<^y@{1A#IrLSCg%}HE%CCWcf7+_7mJl9&K3#9NI54L>Zg4r3v){J9sV5-wJFAr zCRuiVw^TZu*nryvs^-5S zWC_b!hslCp5$cq#Azclt`vbOtwHAxc)I3k@z(4#PT}voL8hav7Ioe(ODjl>=CTo9q zx?b1uslV`Y$7p&|giiW8ENh#?3gA0B=+6++xo6@FPP%xDdWAfKXrya2aujPL14=|| zldWFpo~Y(5qUG(F!>XqjqYLX<1Fnj&ym8<~X_0})ZXsC_mqxT-@D2>pulmW~mf*!p zODudWNJ7>#InV=~2BvCsnPn+8;Dn%ZOg(LWSO!LxG$a6p12w%n?k#g42Lrc2s8LnG z@jnOGO&r%`ic7>1__Pf$@jEt{;dQPqk``6Px&w|FD(e1l%@PHho!ivT#Fo*+Y3`KF zo$iuHnI0!M7};t?rt~YQVzu7#CQySpDx3_jX*eW;tRc^*}{H&+op zDD8F`#|bc=$jp6Cs%~eHB(4~HHE(qfJl_`vwa|{1U0GY)CoXf2%`wB!)H*7n$dzJi zy%bxa6h8#ZdYGYF{$tfprlu-wvSa5uKRGTsV5Q56(?sdt@~O&ED#<7S@E1?O_V`e$jF<+Pf> zecc12E6ikW>TPN8?P`_WOGS5abEAWoEKUtuA;8$YQCnfZtaGG2SL5#PP`Sg)EMaCV z2nyikRX*t6cK}kwi3+v4ZKZqS%AAPs)3$Pe9=Fn%!cI(6vEoZVCtcL!xM|3_*Rtdj zj_clK_;7nqQrQ?2xa3cyAih+zc4RYXT(+3`IE2P82`%UtX)3>>$@=k__krrGWs|Qc z2YFCigibwawm`wDW+fRcjb~RV?rEB1weUo`EIB(>W3Vnr=@VQH(3 ze5C;U_>uJ;WkO$j1XH9>nbTWl5|@pHRaW`sx2KL8i}RgcHuH*E1;eykOsjb5ejgE^ zgI+?rOAs@N4C5;&AFOl?q<>GbFg)#?lAtMjAKgo&lg8RV_*JeT_mFN)I>$famCp4~ zA&=E=*)ynbDx1~eIlkSKx!r^f$CL}F#rRTFxG^!2C0t@P%V|;AmJY|RMY<=X(I{9x z>=PZ{PF3#;OL(k_YgB_=lytH4Lc<+dkO4&`navEY)97NdacD{_LyE`u%^cgm7fR8Q zVmdf9EE~-FFZw_XAX(s(`W&5d+1*Jr3JZR(+RJ+IQe1c@-H>U%_=Td6(l>$(U4G+O z-y69>9l$=r4e#WBFW5Cx5pJBuZQHP6Xk}?>&c)syW=m2BNt$`#1VS)Y$kt&v5@dw86r|&~G+PEMkGRrp} zjx%NP?-Y;O-g3~_8El+}szMOqI@@sYzH~^7sk+%2}|_Fw)33o%M@vAX)-h@(R!2nLeT|3xPmmJhJ$s1_#1tRK0NEtX0E(y7$9 zkaMX`d0H89S_5RoKzc+Zdc&ort!SFlHOxv32aVI^$~fpc)gxy{9c_MF?wz|mZy=5i zHhKdtjjsDxpE~_#vl5?28LQ>aV?j)YOomfOYzd93{qIu0T>bE5zgwxuNUP9pYdDtX zBURvp^lH+X?PMaTxhfYR&i6H%9;W>WEY1QjTYz;=!n>P>%y5A76R~*Y3T$U8M4AIn zum^-c0oReoxy#e<178ofzck!5!nB-G^zZ@q|e|&N?Z%vhB%aJz`664H}=S>?Q^9EyYz^fQ8 zQP8c?;5~ede&oFZfA0Gn3-r3DnLO&RK5=0uh@%5ieaNe%77;1iMq;U@NdprrQjomS zNJ%bL!bZ;^rHzhTYFc|Eti$>SW5tu1vl8q5IvzqVS{uV-j~y7qPx`raL+E*_s$#;r zsVkH$$^2sS3n`Dz`wPJ&Ui6d?DJ|TwiB3=@0CB%0{{jZZe)q-YU*L!BW_^$2_meP z+?ldDM(VVs?S93*oVm60mGAm$CpvGAYt_tFDZSO;#OmL+*yvX)N3VBl(mDUgI-J2S z$G(_C$PhQ-{kV>+WiL~X0NCv;3`TUhO$z6Xxo zAalqaqvM+2XPfuJ;l@e0d}1u$%{6zi@vVREAc$4@$(~&rt6Hos#ueW{ zZ+Sk1VTn?(pW1HS`7N$GtvQ@=bx?$=Z}5jNbL4nEANd%c$cO>vNq{O5dgjizP*Y@0 zT^J{k0Umc(O_?JfUHRZX;;sa$qhQZkY)$=O9{iY7DD>Tx+0hO&akIXdsaT&_H za2Sg+Mx>+o)}{5K$z*ilpE7;$dx2O3!Tt_YN27XmHYzK4MVNj8XLL8ziZa>hOU z{`sp3|L(#S(;-{5+KyL9)T#zL>~FG>d_;jGYYp74k>>5>!(kdk%y)5h8CP+^^Kt8% zO5MgOzNU??#V=hdE67pD>CjI}uwI-KyI9D_I|(H1#U)c~<)H+ApI5`ruYOxYAN%gQ ztHJ+1Jq>w3r#6~E|Gl;IfW7nG`<2-I{%>kI_ZQsr21N+VQ^vd7CUC~j#xdOQk#qFx z%V-C8ghQx+3Po{>m8DvKmh)l4v!%1Qs^d`I(?&qZA(N^S=covL-H>z2WFs%1qhpUs zKIdyn=@?$S-!Hpo{7y@{g}!<>?)|%%_!AV_-lRy?`of=-^ucW!eTp+8NSyc`Mt}lin<};|*^YJ%J^>{s_qyR(fVt<*TsW_*SA0Y8;_ItI|3IJfN1}$e z^vCe#6Z)ry-<`b||F7fjX99ztfb36Rzq`6Iuk*`}f;F#G*ZrM+P)zIs^7J)H1qGlf zV#c%}Q?Be|KEe@2Yh|x?w)JLkm2%Xbc=OsCa0~eO=wisC<96IVLZv|Wu1%qqj-Xu~ zGucnyIcUR`;k^`7+4L9_Et2J}0uWQPWcw?vMXDl1#2wAf}0c z(CddDphbHW7JbhRldXg5+i=K>OC*>91^oC>$mSb{=JzTc5T-_L9o35XLeTzGIqX-) z0H@MZemw|gt_B;3cNcO(D0e{9aJew?O)vgyx+_s2LuM8ek`xTux&%L%32Ohcy?$J2? zw3r|v44A^R1~GW%<6AtWwxztsfRCr3VE{G8-%%$^u0p9U9?y2gAld?85CQR}e~tSw z6S-6o+jZoG=#rs*SccLSH-zY^BxfJ`|I()LS8J@R0iBzvKtp!LfP6(`2_R&<_ufI7}h{HYw;r5#HH-yD^g4b%3Xm)$KlW8Dvdn^ph2O7$rS;gR(Q zEp4;>-&~S|6|mSz@5xalHO4wfp)3SMy|*G4i;xrFS1lvQOYS3;1sSO9h@|DFJ2G?n zvX4rh+Kx!eo88q&(PO9Cs?q^7<;nToAO84W8+>@RyX-4&zP=k|3p_8_k2Actt=`QA zm$*#*zI+UhOd;DlWn>6eRl-pf{!{pe?=6qM7K`*+=EqO?tdo503OHOy5Jrl2znHVe zyb#Wj0_B0&f-crCsNbbYb|bKmpFs~c%1&5`;6YvA8R^7S?&LztM@;|y4f*>QQIest zH1O1$-9o6SJ6CXHdG*@ZUH?IT(&gnYU*ElNWP32fo*E#}FbqKQadqYA|B_cu_}$ig z+I&4gJ&F`1mb^XtJ#qU?G{2epu0*=+ju|*hFbV0ldTE{31(b!c*O$~Bn2Q)A7P7Wu zQrZ5~s1hrwF?cG@fa1HGj(lbjaMO=nGw5_Cza}%`ADa*z(^J;3P8zDX+bA0cbQ=E4 zQaJ20q{ElKH@3fkg#5JOw&LY23IO_myqSl_7?8P71)2`&}RIw0k_L@pB=Gp2CP3Yyen zeemW(n`U*AS^C|ck3jG~{Yrnj6Fi(1{3jwGAuzI%_cPIZzaxq}4{0J*5?$9Z7mE$j zcX}b$S_0rSz{n^>6;NE5r;3wxq*fwEfaJAUYCI0ff04ykOQF>?fSO;4{!9-(yHzb~ z+?WW*L=sLlkLdyO)Kq=ir8>=oZB_)QU0$x$tX1N1VxLwV?3+m{?2~f~t9gIU<_PZE zqOrTD5V$4V-|X1mv`C%u$Odv*;!r)9{OXLUYcv}p;}Je}O@05?z|lYF4~J2rlH$lU z2vm?xMM=gR1lY<`*!uS7{rFy=z{xybcn{b-nFU~H;+{>0`AaA&a%pBTkGB=`pmvE8 zByTax!QIkIK1iu5KapS$h--^wC@c6A1)0Xc**`)nc|$Hh9VO!uUB67v2Nu%|&0Ibw zXe7%>#3mK&?w;MmpZ;<75NLbFn#Rc>g3O#70uF?GvLD5;(UZs=A2pP-U=51MI4O0L zO$NbF7UNDr4_H(fjU(OqGm|Q(#4r?KV_3%hB~-vcO^Rc&B0MT*%RU{$C{9Ed}8*@2WI3=5nF< z)jE|vSpu>p9w_QslXIm*trV%x6F+uE&I5%8k7@LN#Hw0o=5I|2D^*}cSYg)_Yf4*b zpXX_#Qg=&>vE%)eun$lV*^#Ov^2CCBkw#S61%K?hgO)Q)MGWM?1+&4DeKzh&y|e)6 z8@scQtgnY-MB>dpT#Q&|wqBq?zT9u{w3aZ%nuwKsQTFbRKY9q>JbflG{c?P_@oJ)V z4BSlK&I$Z9yuYqE2~(aARouM1lwfCr|#;|mls#ESzzKh>QG*rpr(9DutJ?2mvkb*|UFx@4IF#w07r_>&m( z?z>44RZ)tim=I~^H#u-V3nLh*AZ{ixbcxl`WS2tYvb?Hq9zp{0TC##OM&FD439;OB zY+2h*;cb3EVVQ?I<}va3UkSRps3@Tw&4obL9#c$hm>`AvJ*IRo@*zO8t$TMiLgd+8pGmt;?m+wB2u_%@m~An^&I$juHu*-@pHiKCx-)0{ zF47UEjW}zQLk);JYC=BGfG7@712GbpDqYPqscNSxdl0sRP)qQxBvX67fl-aDUlgyi z!K(dJ&HoP1=K6vddL=VPL8eSZ0(p&h%6^w#P3L3b$@TU4$4f3MA!5To|#&SNeA-DzZDDq|M7R@2yS58GAiTpxq&vbA_=it>IncUqr{Qq#AtF@rO0d%A?y*?#o+28CMtS$IADgHw5<8U z`(@kKp< z!UH3`(2S|^e4aR7VF1Hz5^>fF-*G!;khwRvntUl33ZBYsgayh*TlS;UGv7+jkq zXQ<`Gh_D$m16LNhDfIM$3v;P_c_mROEdM`zDYbwV1 znVd7zIBQ0ULUx>dR%)UO+9FVDZ+f3b`PUJA*V+8J-^)f04TrAZ?bV_070VdFdwTI{ zkmdGG&*1KEJa7&&;+b0(l>;7Z8X(LE&aQr)psn!N+UE4Mz-N&@McT!8exW_4}54k(ttu*ls${2hO4n6pv3*SxzuGreH5sxk1v;QTHnZ$TZ5I2a= z*ja^H6ae@1sqT9_>-3q2t91@i)p14M(0sfH65xBhQ&6p&3%d|t7+cds#Zr;dG6pzcb zn~o*M`sYX5jO(s|wH7_?1e|GB*_M)qnK9isYzD6I&rj|gQgfry`4WXhx2ezzwKmTl z8Q1xR>S&{FxnsbD6drFtvw;87Y46F2BOV*$L(II-acZQ4@>8A*`^A8dP9DgJyHI(z zii6)|t@};#^&?YD~%C+j2F^1s>~hbc^Gd6d=3ek`Q>Qnh^PcNr0Zs-3!>F%^=5`)dv$H( zCAwA`#o82F5p1&mz-yLa9WRmCP7LR{VOF{BUjGW>IdP+%O?_#((rN!E!|Zf7)^~FU z)HU#oJ#WxH%F};YT4uSO4@hCnW_#x0T`x`V4PM~|ifcYsx)Wn{-%74Wx}6oepAIPA zS86)t6n={{A znNonk=GX`Ysbp?s_+OJ)C~zWq(QqDrC9nF{CBPM!cHGnlw@3 zT=TLx{7GUpC%-oe(hPW~zW<&~_#+(|(L9ziDZ&@X5-d#rV66YvZ=!McPh@QE_;aR5 z4J274uHQn6r>l;v)deL4$!D|%mmv;v6tViUsH4b_m`7>33gp4`!BwmdrYS^mU`J=E ziAPW=C*eGHxtO-lKEbS4fSbAkcAETL|Y7!a83lN428bb_km%eez=R= zVDQK#Im~EERbuE;I+n=tR}@o6R97NZjm$tAc&5UNh8yD~)mIUXa%!QxZ?i{*3M2zq zZEz2Buj+N4NH8oWl^%<-H{((%?p=o*E`5{twSTq$227~Q!U!V*FJS7BeRDGU`NL*y zxI#RLwXsPU<7FixVPqJEwk|HzMliDH!ZVeM%`_IX(gvnFw8j{H2g-WVfeGfuWj%^HecMqv*ua7+o0tUhsKp(0W}|iVh+~oka8d zE-)Z6xRhSs#GaAT;r&s*@iG|tKHQhGlVR{!`4stiX14FiupIf=x!Zx?_Gl$fKDpkR zFH9GwHyKPCzxOj*-L}x2oJ+MVCc{6cmaX6gE#BYQ6GRH2;Y{knv|Si|oE z@cP>QcsQDNEO(Cd5x#nR+I22*v!CO;!r=XJ-__`s8Bf!?7Y8>aX_h)JEE73*udQs2 z;<*eJ)zkLTrls%KC*SdW54c~*F{qeSd$5yS6jF**l_@vjt*&I7)h)kyD8XER@9;$I zhhJ*dL`a_`PnS1OpD=H%07QOma05+Izj+a4{B{R$$dU%n-;M(O0B>tL-5h=wDcN(8 z0?(p4w*y=pAy*Y`49o};qB6lPwK0EOCArWd7{>x)tB)<>On#JZTvJQOL< zXQc*voX&ZD$ynMP$}GD=wOtU=O}BkdnD(tk-g@*R-~hwD*!N&;#}x%j++=yU&x$2^ zuQ=*gftd89bS$R2}!5lbj(=suXy zJ88Ik1NZDYrUgSeNx<{=#0lAcEpvqmRy(*Y=<}p+%^-jE57V+lD~{WKdTYNs0M2cp zh^76L_VOK?&1EZ=QGTX+8tO_(jHVM)N9=IEwv1K?d;+Q1Sdv4b=PLA?B&IWcEMr=j zi80sbNh2DgTF`c_vQFcq@v0`3Tf#AHt_+#MnSD)T>1<}3qRYpJH|im2D7GJqj3_Ro zjsIqBRehw0xh)#J%qRRZyGLz9)FuHH5$z>oGc251-a(tcT5!|Rmg z`YE$Nsd$ein+%LtYWPLc=6`k0$g@dnI!8#bN5Fnuiq$##>lzE2dclYDIOFw4* zyBOyprK1Uj!cd}-!$Lx5+)>d^tRDrlYDJCOQiqbvDwE2({bVw(*n6d7^i3^eB2*v@ z;HM`ehk~qrsjyN^V)+(sgjH27!h!jcnpL!XAT?$@A&+%Wg4p#bGa9rD`eT!-lpVI1 zf`XwQxf`z4y{Ut|v|3LccbPC(37f1{@^P+Il^Hws9Q^S*5cTqW(#6UC0F|P6Wqo~q zr=M40(}Q~|lRxQ@o^KMWhq&vL;a&7OU&AlZ@8y0ov)OMY(!|R+-QenE_4esxsaoH5 zg4zf)Q;{MoRwJWa*h+Ok)R~8F3+3ic!SA!sUg`h8y#U~SMYp%S{oCPCUbyQ^(?3RF zJ(uB_@}47IbioW7X|q7V)5YO9$CD|rWHy|_1_Gf0Hu#gZ_-k+IKxKk_Hgz(D+dx){ z=lWtppFXAHCaOKVAOnz7EpSuf=l%XO9c~k96#}Z(p$UOzJa#^n$Yblr-Lf-;uYE)D8kX|a55h`vB`>4 z9zICdyEY#3+Q|bqll1%e-Myfo>q9z~-N}mpGLPvgz$%J1oJ@#tOtJ+j7j#A(xb6lJ zkXR>v@a`|Edv4n-sqtoJq_SL5P2*A7B<~p)rIThlux}Zb+O&-(&g4=_*TG46RJw^S z*D~ponhRM1r~>dYNZ^jS`hs$PNP>YRDGL~tEC1}Xl2TL%4U)|7_)5?VYAhj-L8WsQ z3O#PRXLj$-yYI=u`@EekXUd0K(4nBOheQpAjLB8`3B^RkNqCRu@7G(}1jwkVn>WwV z%{nqDp`w`2fC^{C*wLtL$}TS)j7EE@7eCk?lh1(CvRivckNvJY{_Pc|#w)sb7f$nV z=$ZWliK%g_MQd*@WcYxPrEgcpC6ehUPe%^Fbfq8j+vnbise=n-woFsp;6na@d5~f; zrc){^nQ2GZns?A>I9~tz%r7l%yII2^`vr-2aP~`9JXv|4`a2A2K!<~T+Slqlvx<4p z=ijAC=K7C|mSgVj&p?93r2V3n=MWvI@j4xU9VqC!7&+Dh0d#qN!%6bqCdH(uP3?aY zbV0}i(Z|*%x7v_iILQ~(FAMtBF*nQZ0veZ{kC>PM2L6Zl&$Ii@+ev(ujBj`y8*ADB z1*AyghOc1HNFg>f|IhF0M-9OYER@i`#HSl+m5p616>lW{UQ?J@Xi23+U@lHcwSo(1 ztYc+vvXJ}kvz|=1BJHXUY~&^I*o5qSHt^PT=eOVKe!0!5vVYkCe67qI{A=HMDUFS# zoN=qtmYVfK%pmtvRR{V!aF9Nf*3GvkNG+F3UZ_UP{M1wCqjEzwZKp`2Rwj!LjH?#I zkC0Kq!qz4}jFMt9?c!QUFe64saS+)p@TH=pLv2?Sj+2Y9qPNDAc0}hbnj;FevK`dr zGYid|%ZKY8Q?yE9P^bE1F4v-P?aho(4bolx<-mK1$sDWv z8Es>G>fkYur)&E~rBxTN|0C)4qtoEs;8fwWuDih1dx_z_cXpTIeWve&&%oJwJ!8?y zVZXLXy>^T~bVi7b@QaDS!Vzx{3R~c0+jow0`IDO6%q2a4bpPw}l zz9!J7*>#0(aB9XgY5#2hQE%{;a58X_SmSAJrZ9S)I#2|vmCotqYuG0jTg0-;T<%>H zLi2(ci?K{PlcbRQb>Vy9A2EF4=#`4#`MjfyB;Z1-d(AjZoXNEO%|qF_(mWv* z&?Q73`7SkI(G9#Kvz^Bp?wTIE41hiSb|ycvO&Haq=!TTELBk6aHr@4da>59RJEuMZEC+pm*uHq1)R=0 zXGJ>S+uBEm@Y@X_^)gaYaZUoNNO-n%E2UvGdb0^$Jaa%;U)I9hzZ zE2;KL^F8zE?4^fWyZ1K9{rTl<(&O6=kKa}MeR$vx|0hxB-~Yc?=&v6mSV#3opjp%Z zBfWeXS{45I%h?4T;M(gd2eKvPf8;Sp&dZk1u_my`-vtYks!I9o?eUBEM+8}|d-GOH z#!idke?EbyjOqA3=o@r;srl_(cCZ>ey7Q~?G`M!W%Eg|nnG|5~1fC*@CooZYbH#()%V-n$be zC#J}b*E74jdhYxhe%n)@QI{RhqVEMY?KEBYtDnL8w`PmS3ne*|wTG%kSyCm$sVr|_}I$pz47}T>RKV_ zzRK%xIhLGNUg2KY;;ToVjVwCwuc*?F$vnLuF8+4;2WuUaavTQ@U6AcnZ~5ml*oRB@ zc%`pWIf~1deU7$wl@_uYTXN)Wq-v>HB`eiT>Y3NoAZ!}5qS+LV?3dr&c^MP3_h}SDS5^)mzo`2 z_ed*wE_~yzLbYJl_UpXLYbYPSuwx;uP<_He4ZsPeDl3E;KGDsyQo9p51wV1;GMXR0 z9gI7e4NhMPS;#}mjo&EU!I0hMpYJ*`J(s6vGs*mk=3bg1Dms^~8ReoxYFug1dR2-0|FRONo0% zsabl2>(u*N;x=Gm3|sfJH)x0x@h>JVgE<3?=`C*%yW0R>VEDv%kR?d}ID~~Gmcksz z_axfS@AI7C?UmvG zWg+UHC5}f8C;yVRyyZUQVuNBg&ov?n!i?|Ct%VDL2C6?GB#hUQ`o`lg(4wsdM<~?m zQoWuNlF3aTLB16++A!M@TvV zYrzZAlk$LHIb;@YDJp;|{OmSKF~Y2$juAYxCm?NRtDq!9;kmH%}aSiCooQU2|6wiBiDhcNcay{TqA6n23a7 z94mEJV5{Swd*47XEjNy!nk}|}stAka>4AcRk$oCpGYjEyzJn^TlC6?z|1&OfqQ-tuvl0iO6j4x zAI>HuF)rk^^dc84)S#@LxT|n9%8pD9;=u56iztEYnvlgsve=)QM9KP6P-^~4nc-6> z5-XPIPeBkAK4`XYYheJ!3sI?vx_G&t3$`|A(J|_@g0?7bNFOTZpyeS)~58#xY*ck5wgU>m_T5T)xf^jkWup!}?67tml62 z-{(|p-iKa}4iU7RJbqCr)yJ;FXB&ijGw8tP3$wz7Xga5t;2y!qlHv!*nFt0Y|2GRL zQ^A;)mIo-6#Otef5%bOMD9@NN_Bbsh zP^0M)D0Gcy}iiodNtTdg4a- zzY;0rb76-7=v;=esBF4uY}suV{|C0d61%r%jbwy-d6opkpwAf`Ho%7p>+M)lU+M_uhzrfd0DAYWE0BLQG(Z z(+FCys){eBE)D2tLkYoimt=Krz(12ThLQ@#`*77>RBPeAZ70KS{vo9f`B8J*JaN)%CJ-SGRdypT_cTN}F!_K=+BO((yhF}S{a zpUx<3nQAHZC(8Gw*R*b(IoN6kwzWn`i%gl=Ww&-VW` zfzbUKA(e||mR&Z5!2%I6%)R47+BZL!m^Cnb$aF&(x9?w; z`XB1;&)Dv|2Ag*kmu9hBlr;j*1?m-M>EYE&6+q*~9wKhH?sB&8i6|zGNShhJP}d~8;xit%U=wuH-=Bh`|G8bbN(miQDhe0T9BcOf~S zn(fEcc<=Lm563SH0=HmYd7=Do*+brDpZ|C$vijun$iK=<&2rl033D#VzHNYH(|FLP znG+X|R>bgexfMv7Zae%X%eT1fM5f4~QhKn)7%uLQAe#gYOr#wVeV?Qi4KNab?L}Uy zT=`K^6vxSZE%NS?l;pNQ#=hKCdrGf9!fZJ#0;r{1YQqJcQla@$rNqH0C;tFrh5sRP zOOA#95!QX!qe^|`Ql=&@LB_dw;hY8>@%T$|!A7P5?2Szr7lOzG1RP#=j^SM@b+2WIZ z)Ywyki29>}2otC^c|v;tR5r)qMN5IbRqQe4&+_zi`I&Qnrt#eN%<|q^^PK7ArQmf8 z*bpZ29M3=M&Yxcy;dT@yh4nTReMh)!biqNW(`u0cCInV23G}F|m4W|>bAqWUbwfT`GP4ge~THA!S!6+ynwRkAN4hz3e9A-sc}X6>is0_LoMf zGl&P7oeZEf{@@NV4c#Bjb9&k6fdiE2HRKL+G$U3Ju`T-z))ckHt8DBNeIW#Y9XBOp zJ|%6}UkHkda+3rG9P#Q>D{F;_2cdAom1mZ%fPPCRx-;ggYpMB+ijGnCQ?>Mt6vzlj zTUtQyrk-J>?NWk@NBi;;1sBt&4!zFmif5aV+FnC=Za*aO=^K{ENzkoD31x)VT6Nk6 zQpec6qLEC7$a*VwK`YcK^uOq6OB5Y#0nx&s71B~dYo+1ZxE)VM_&b^uP1 z^Ekv?otPBjuw)E&%Svr(fHx8QTQjPT$>ae`mM*8?$KpoZ;#9VdG+ow2kv2%)m|M2~ zrV>fT{o`k3{#@x95~s|BFo_VBFNUg=B&|cVAP)|1(`u#sDh1!A=X1s5oAuPg-TCL+ zkIi>q+t~j&v=}6czLEE~^Z#*b1#kiuyB1OIJ3o}LFm4snIZc6j1;4yo)kARP1F}$>yWIBO#n|N7hg)%o1DX zsk7Y3JCvG4{oU%fPqpbfM0Y>cby0HF*rf2elI3wrqVO`-^(M}w;pu`kD*aGp z+F`ovUnMM0DGpOxM}(M)?MBk)*z@jRb&DrNbYh(%;CF$3-@23(LyLZ_HL z1@Qa*i{`lK{|xQ?^lu_-pS=C|nNwkP={zZi_YXT-91%hY<>y}n#zR9PgnCIUN$&)U zwBqcuJc{MSV~Wvyx|L+A5fm|HwC7YorSUZL$)AE?5a6kCxE8s$o$DM~&JWdWhp!7= zwV|_E$#g0RORjG7+Sb+BpP=$D7@T;YD7ymP;lf%m4BUkUDz4c)W#b|L6ph?zYq8}` zNA}A6EXCcZhIf2Zmo~w5nqOYF@9){!i*_*$dHD(cyj01i5QhfF?0{RrB)E|+Ronb5 zau)^dcGl}AxIilvi+L0C>Yv*&b zLc$~QONPN)@JnZ?ZOaH^>TM)8tfc8T-8f1mzA z%t*H~XRKiRto$rotewjPO%ng_R_gb;ALq=roAE6=QEyE-#TkyRn)dUih8P+2sPu;N2vkd zL!czonc0~elc+tU!Ea*}%{ZQVsLIAgVXdDcWn`$5^gKe~mY1qz0dAxgqIqrWB;$?804JoSXb>oreX!OX=XfMHN@?$v2zO?E5p!xv8!L zgTcVq?qdd@O9k&^fyIv{l3EGF*uMndz^b;HtR<*yeZ`D`rW(}XfnKq-M$C7^C?|=%$l%8RCW}IOtdX8+VR|zTP#IPc}WXGy1cXXb^r!CEF>kdDAgb;JOp( z)wWyjtNOgS{Tx-ROly>3p{&imaL~`~EbluAPoBfqjKAasvh%jgu?A(kIy9D(Y+y{V zP)@S6$ZAgj4=nXoMJGtp}lRq-@`U_86f4{C^;rMT7v^H2@q{VPBm2pHSF;$N>^YBR_SQA(} zHGKA9C>m&qbJ_y#ZNqgAiiqa!qT|TVLFik0V-Nj+o9#AlH=0@)S3J=H_J{e<_-ZuqWK}Sa_yIB&C3-))2x zjp$K5R9J*XD1_MV3)JvEJ^o-G1H)QcPBd=`aO6o2JPA;Ls8Qdw$aJw+q+7P^B7LUe zQGjaLlyag*vgFAA&~(8$(%622qcahQvNxp+HfZgr-!Y}HmtcGLR7?6F8 z5e~{%g6H&}k|A9N__vETno<`Mg3^xVFMz}y|CR;AzLm~)~Z7AuM8QCjv=pJVR| zVXxfl0w>mbC&IrcKA_vEs%gq|(D}97x9<_u%zxGHcMULjRNE|lult{~0zW{25Ml>O z@>2i&f6j{E5Fh71OF#b2JR2L=-`kcC?c4`g{nmZ~8ThW%_`UP&76|OS`RpoqoBF;S zu4kv@@XoJp-k9=qc6nH-3fsyMuUqSw`p5&Ov{Crdw3;N!+421g{YPLBwa6Wd7^9WB zei4Tgc)N+@!~K!i5a6K7y;2bgm%7+4traHSpF^}$3E`!(Nh85|uIytxv*=*>S6v$x z5~B>WU7TKL|I5_k|6}SMAL@?(|KYaPaxG(F*|wLK-O09XZq>O+nNz@ur;Tt?aC93k`fO*0hGxclj;MPxCh~?S~ZJhLTUZU&^wt zC47#~I~u+*F*MnAz{Md-=%W2I1Z!}~saV*_-Prtt;^1(vPFIh222s|&*|9YK`l(XC zEHO(EjlE)-nzr#;W$oG#yVGNr)DeCU*#)RGjm;H=YI5!eF}M{F1QwU#pQA9bRj%oGxC29*F zven}g`1@E1r)b=PHIDr$5bdF!YK}%nk_)^xcIolswc~J>U~ZS}^sDe8+T&W$F26 z5ib)fK;~|vHTi4bK6L*1=lH!^hkgwP+)wocemj$s^as->G-6lure*GV5;@$^E=QBX zQ-vRiHtJ{gDcSQznz*93dzVpnEj zAlyjeegh&MNDD;hM*0Ow=XTj#9~l6+GBaOag|5lEp8MFW4-AcJ&-nEZEYRjAAGcEw z-|JcyJ;wk3Xi!BT>s#AdNm4ash9~;u`3ez>GT(8|cFfj)4JOv=++FX!;i-N+uYNPj zSbe{TJ40I{1H%SGp-u}iuX_)AL;vR!q&wqC`AZ_4S`k{T(j9D|n$p zafwF-zZZ(TKHPG;!!E^5T31(Kuu z${iNbKkdkK4*vF;m@MpB!Lg~y#z`KpcjQwgDu~5PQB{rv0|s<3(o8HTTF)iXy+nX< zzXzD-nR5*b=^c>s|2;|s19R40GxG-1lfGrC1+31L~ zG(oBL&Y1%Kd-aEt_vvcGx}Qv^tc4yC?IU759tm4~c;u_> zRe0L1NJf)t*!q%14nVT8+$#8q_=8WG4@4IAomxT=IULtV$I~;0eGnx3naU`MFjcd3 zZqCVW+L_r#2tf?d^$g;2&DpJy+WgYKGc#cHn+m+oc&*E$GbgBkMP&6{jpQqZwD1 zX|cyH9`>NCL#JAeaGnBpM}SrOA3kna1#3I$ox8Gvt`7;efl7Zcq=eu_1oGqI+mF&X zHG+czZH*OB7UMFhk2F%C66k2efEJS1vUVgXEF>+aI+oBcq9g4RT|dVtDhP0ZKcpf_ z(4Eng`mOFtrj12l$yqa9yY?8;?d8Arc!*ZwVP z>Y9@2bd*j34##?#Q9isqYgMDpyM3Q%Qm^$^D~W;O;*Pw570{mLW28bgJUS)?NZI||E5ScS zSNP4Wo9aU-s>tGB?1?i^8;a7tfEtTHZ&BsJ{i;@oRwevT>PokBAcie56Tn#W2_^`%u}I)CG`~`#e&)red5fAN5-LP!VA88}+lgRL*&ff#*NWA<-=5Vjy>7YQ z*UJ5$v;9zu9=iW?B;3Qj{2~43pR@8X_VC{ig+Iopaw4ZydGpE4nZ%H$rzmwHX;aq> z|HIYn{O-3+0Xd0NmG1L@sLdfn9r$xr1=Hc@l5Mp0@lB@s2_WrFGqUHh3H*?et6$gx zTB+=8G=!4lY>1>1IvTU4VQRkI%vCk6RrpstqN6MZ zaeU|F@1&p_8Dh<%5``6le&)KQ*%z&n8F-!wguC_hqn8J$5)fv6P_$%N z6n*LWt$`HlYn&pjX^n@m4(s0|e?jCgw^fAcVo|DJ_s~CA^e9g9_s?#bvIMgv2kYvr zD=GDz4~&Nyk-CwU9xYurasN6FL~cnyMaI^8Z}X7d&+l3uN2No=$$wBY^nz3k5yDi9<5Tm5eQx96K6nXzNHRwU zuJkMj#~rTFDUVEIz%BPTmI09>9&|l6TrI6AU6LxFUKI>~X`g)y0;hJ|GARrz^?vZk z5z&>_OKSmh{ElR9@?H5z1@(PN3Q>1iuSQ?Q2%ox4p!(_$%z53WkH1j12VS_nV_qG7=*SKmYMfb^&_p#_HOuv#dX`5e1csm{3lTn{DwC z5!Ug3B6mu^<=eQ^`eGIJd$0e)7h6}=NAvex@7pZ*yBA1I*OYpe4x~e{dFZm9tN8PT8yz|aLc-cTc=T@8tIBH6q8C|7vjNj_dvT6p&D zVRQ8oXiWPqyD+hMVhQ5^r&4)<`;2-P;49{j@YG`V*9l{sWg(y3+NtInr*3K=Y?}I< zYUbyC-ODcCBO+WrjSFhsHVypuYN#T&5=u+6M!e~}X(b|zj8BB5zf=hY9SkSu36)vR zKD&Ma;Eb3_8nPGQuBR0LW<25RP9{c$4y2Z~tdzdZnX-b*RS4i5NER{QhLQ!e2%2@& z3zX1Sof&^erT!aYWH-2lB0kB-aAGO0UQu@8Ki4>s^@RGqV?L-&Wh2;{P%NfkTD!S2Y`mnwYh1_FRzK9UTpE@<FK0_^8tF8cg2-jj8v@&m0VVIqc-MfVu(f_9nL4X_A%PTf<07!c&b_|lGje76UuQl7wF5Rt0(Kz zaXz44v8cW5hN(KO0ZE!sYV9c4+(6m$p$zkR&+CzQ>Z81(n$b&yw!G4V9Q+7LY10F3 zr>p4&q(SW0JgO6Zobdc*T>O{*2IIV0hwa8Kz%LAuvW3XSU+dr!WIq;W$|(G1Y%uC! zNv_G2-cM1Sw$yS2$+)X-6Ey$nh8~n0ByVOUbm!bryhQ2%|1dnHruDUG_8;dba3yoCGZO3Z%$jzql@$(_a*MW zcemVaFK?Ceu|cXGV&D%)j*_E%o$@@!DwU?*e+Q;PtYRRL>`xF2Es#&mtd)Rwn%Q14 zK1+ofUCtIo55Ku~V{P-x4AT>7Cgb7>lkcedfb(U#>$u9K8smO{zvy1E##NuGz?4-z z7Cj1N=^wU)SjivP$Qf>xqh!#pFjC%(3BIK=r7SfS0Y}IDVPbtFJ7u8Twa-@7Fp<=s zu*fLMS{U-C+C*9lTFWEjsUM;^nF0Q?qh>2BglnX<<0Ht}7x0NSY?QqrGvz-b>equL?#We-rFc#eEp5CinUtM<9l?L%3aewpF%!z zvNF5g3mP`TIUzTybqMz?Iwoa;fx7-O0IW~Z@nTq|$bLP0J^@wxiRvutfijyn@s?vE zaDMYMEnp47Alhn{#i2{^Rcc|6knh#Pm$5n@YdMu`Pi^W-gsAwvE4&-qAD(7I*t(wp z)o&S7kCR3JzgHk~__&))<^SFRF3~N%?i;?<-Q_nkJ9DWG_{^VW7#k)EDh*JYH#*u;oZ>V|rr8V)2`AArCxf{=>? z?CM0|5O0KQ{>8b7f2tL729^|4!jFxX)dV~3M8a=%jrHX&A{8g?Siot<4WW4|3i>`dlYzvABB}U&;gGWMe8aJ}g)k;R}-QQk!xUm6n1I6{u>M z`{lgc?F&9Fv*9?OB+L)m&YQGXk_tS%ZOfS6>n_W4=piNDHP=@d$1#u7#Z58_+|RSx zOz|P{(=j00+-#V-hO{EVMgvc?b;se8|yPnswdM;p@`W=O~8G4M5G<7i* zHt|p2htA5Zy9~B%L5Zcb1vZ%bGtPfn)eBnH>RBE%%;Gmzz$upDfzLM05q7-1yUA-0 z>bKRKw+g4;T@QCpCCQu0H_N4J5}b%7Z&}Wl%ZAP zC$d8u>#&F$@(pUlC_t~%?bQ)0P*uV2$Of!Tf+uZ0Qi5>X<#7*qF61fvMqJmlwd~XU z2@#)s7m$D2E7FTg8oMixLDUUgiy6#EDS!;vH*eySU5@i3f!m;jmc^2dOHh%ZS z^&W?RPt)J=FUo2;?Nzyx$tPBqTDkqHB7+`S zfh|oJ;VU{kT~K>7$bzj}C=$d$e^>h(EX_!vUL;m*Afi4>NkE#I2~8JPUY>xtwgG?l z$x>+zk>6komOBx%vNQb$zYht0TdB@$rU$X#gQfpP#D$Ye#Bf#%Z-pXraejUpmAcfMEQ_kfXTnHq0s^%&|K2=Cup{St*wKVs8%uweLpQwQ2-F(QY zrf6|GODIz8FI-p=#D2~Tw)^0+!1irItHHrULht->sU>tjX?{4`%(H!JaF9fwgiE0f z$M2eTh?7vQAb!)?UTtaZ$-#Xvw(cNeNxuie`@~~b_Dfh>O;?U{h`FhE+UlNbgoW)s zr<|R00-=-Pz|!nr#@|b~X+xR19dI_US=w2ST5UzyuZfquzQ-~`2Tj>8i|=@*U+I z(nt2P^_@hCh#X#x-gia>xLD5TyiE=}fvIT^P$we++!N5GAd{FVvjD_H*VG*>!W|}L zHLS4l%F0JhwBkn)Fw#aBFi8mupyAQmzm<`tilQ0=DX#hVW+z5XN=zCVC~p&|0sjgu zNG8sg)+<=t3es%Z;ia2KSWAsn12?|SIy93&XLiLi8JfwXkJhpfBuQwact{2O=|?#a zWo)*f)T1=utWx&-EAT}uiTlT3RsL9J?59+gOhTtVr2|DQ<)!2nW+5r71hF}fToO}j zCAP=s?Xtn`-nPk%)RUvL+{MEf$t?A@$0RnbB$aFdu0j8MuI@rDYWJ-E#}pNw zkS9;My{IZI5S|@7%Rnfq7vU<9+W2y^eM)ST@orA&r6i`BhH-6Wj|g3fG7EoknTWSD zJcho%K8x@8zI_4YjbWXIdBMw_V$H#&a(iQxYdPrg%RT)tW1(K{^oy>LK&ko0>siaq z1l_HB*L_4n#O(_Xp(z7k?=?VI1=oY(Pd7_+dyAEXnQ01&`9^5yI`CucdkI)9+OU`P zw+>vH<+Ia3KGh1k~}G^$1+B2MPU5oEfYir<#dV@?;v`9OF)WH6yZ zHEZ#5dR#$aRj7p9n>Ox79gFbQXu!FI`uJ#E{+lRbZPcS+L!f;r9ZN=JGCi64k$AWB zz?`EQ7}eYN$SBf!YCU6beZ43u6 z%HRMQSl2s?xs7?&uj!Yp+UWtfM+r7&_SpE@K1RF96aYk{x`J>2(K z;WqSraG%q>+p%6!xGX2~o5?*bxU>$PsppfX(N9E1mCS=46;8jiAJXN#)^mXQ2hCF2 zj_-l!;p1VHM?@;dqMwoYnQ4X%aTJ6;A1uWFz-js?C9K!^kYYaURMzJ78pf|f*b|^m zqe+O!{!5(nFJOie0H!v`GITVcTgN%b+!uzzaux|AutW9C5H+drf_Kf>Db*O8kzwl0 z;O~}B!STJ1mYEEK$;qgAKkoV!`u?ZZFL~x~rE7Ma2=}V#YAALKc%260L?^KZ z=^YT<2N>zItaap{wR0Q~ z5wJ%ccT{bI1CE=tVhh-Xn(aJ9qsT#GzQzpe|xGIb#q0k^s5@CYm zH9sF-QJcph9vBZjL#mGX#U&*m56FLD0t34rN6Q~79!qVx6kTM=49Dw?{D^Dpy_A5D zUN1=%7;z=M>kzn@fqY)J8o(H~!RQ_slqlxuIu)hP;fFWctUp9w|mrP?3$aXJCYJ+bn7?o;yt znF8$#Gt2q>&i6GaC_}TlRoZqum)&oRU7Fz-@1^P+@l(F*7}wg!+|Q*@X`N?}<~H z0&(+Y|CCtdRwynSP6L;n`M?cYhx`gNaBgYpq$t_*MgCieg7FD&wofPi_p5%B0_ObH zAJtE?u8OLkGSev2@0fA5A(vk>XrOj)xye#@=N+nB&di)42jSg-&!`GW+6TtFZw?}a8wdt&Qo8Uq3ZOyT>l;^#6irH z$7)x+x@HwQ`N@-5r7KW+?us>Hgk_&5ew7L&9$MKcphWdK|H?d19wqKN<~)!nGf+2Z z9&WS211R21-g#6J96U2?--r3)ZQJg#8oypg$Uin0)illtrJNY%+X_kioihvB#l)1N zmxK>Gs})oFyWQ;3ATC=yGkCv^dl>r;i0ImBKv?3`BgHFX=OjY3c{1 z`VCh$+xeY7ybXh_{cfH={@^yRsi8lIGBC#xH+E{Wv7ZGXZ-v81F31kJGTZrB{e`fG#ovyX! zYgD7SI(d~|bi7tU#7n4dQLoeMk;=^wk^o1Jb^he+7KgrS%QpWHSK$w2A009-e3dZ>!74nb=T zS!S(rpp}BKD`D%bVw&Q+aGcKzA3soerV#(7Isd-%HL>5J`7yeFVYch0CxyQ6d5)No zp%}Obf8ZKQj@#miG?fBC zoy96N*wUGYzpA5sXuU=+UJ{kC_<%>$qdz0Z#Psy)*fv?{dtuW-M_vdXcuHu+{LK&(W3F644WJ>rVNx~PDa)7H{LrGo9QuZyHhw(y=w@uBHasB4~8b+bm; z*}+kLO=Djoq)Cb1w2y*Xq-90vAYZ!vvYsiz^WnpOTGB23y||sz!31tUjn;Mn;!F#@ ztq_Bs*B|0=tp&;2t(b$g4JJZ=+nU-vLs4!knAS0mS;8Yf z*{mqHSA5`vBDoL9X11$zC}V`ynK2BhYJ^e-y94Qb$C>^M&#x-WtNlu9TFKE$Bv_sw zqs9n<;X{f18-WNCBRaJ#WmOG|l&pgy*6bL6Wk%wswSX!ly_ll})tG%zu{=P%r;%~P zIJGKvGu1-1N|=@MADFTn>@uV#$iSbt(_ed=$YaF1ar;@T!qJawpxv=wt(3!!OG@y= z?xO{%$Hv4oJhTBQ^a$b(nuc*Z2(%46A{a}R!|$R!GkZ!E)e8;gsDn=@;H@7?=lgGG zhy2xoyL0cmpv%p7&}uiBVpD_Zy~Oz(oCCTtEh`cHU7sXx0np4x$K}R~*k(U*ovU=t z;%UF0dfoHBo!0iw?4I-KO$Jq(eo`NZ%RAaDhdlmG@^-+Fa!SrS*wx4*c)-*UNbI%CP0-O1;)4kCPa?ja3< zV5b1`5G2=1@atu!J=CU9m;8~Y2SgzqmKnK-fFCdW=4fw(c_uofhL~3r3P!&4V zZ*8CXj0_2rms2Hy?S-d~>UhCs_p%^HY!Wgy7cBW5Z#NCFF?a=~z14skPSzSiI=xhj zr1iD^qej;2gwQ@#@DfoFH>>i(AFQN+yi7r6O=nes``~}MdLrZGrs6Mt=@A!3$ZmE# zR;XfHjUb_f>3zJu$W>_EHLJf#f6ys%SG&)-x?-2iyn{?ik zk2&njdAhBRK$6~d9;(=)codG&r!neIFBrJ(@?$ z5?-x_qyY`07vNgGKVpo<5Hb_!*upw@!N?835FE?X4_B=@NCh++z|tY=*tnLAU4aDX z5>jV1^h=fzJFywR$L|QvU)>cxbX0lr&VK$fPA*bR!vXu3e5_mx7?LIEGa#90-Jvw5 zOr@HdUh4JP5uVABg~g1*Xvb6e+n|yQ{`rpxxQ~vY!os+u5$Xaq@1%N8-%^}zaOxdX z_j5?>QQP5UyH!2U6+iJ7vI0K`g~8p%m8Tg=~S99tzl9|sKBML`WO~n=n z@*(Uz1aNXA))^(KEa%@c)YS5A!xz})Xl=Z~oI#{IC8(**XfEO>yf#(@M~XqglcBQB zcxvevDL{s`Fx>s<5~tufj_V~BduIyqko*ctWDz>l%HMZ}Cl26>H*zrMm-OW|F|dnVd{;9;Es4tM-tb#ssB=l zpNQ`WY)8i{nCT7n12ye&y*Lv4Vg&3nh~xYMk-C}HY_Uotm;}&Ms9YtiPC_6ar`gX} zRE+{n_H9weW(ydoGHMzyhb;P&#jXo%`po;O&hZHg6W=pEJD;B}E#&6Pl!7KeYJp98 zn+<7HV}VijosaUFwwLPfXCDhkX>C3?=cgL-&7F;4Fd2rnTPf-$x+1NH!_V4!nqRRw z=qYyfGAG7t?ug;PbO@DnOpnrPx|i*4j{=ML%^E%HY+NJxuWPJdlFuD+bb)9z3@(yu z=q{?7%HfSX+K6YRGW>Q? zaPW{C17}E_gS8lmW4GxK3&Y_Z-aIpfJOWnZkIXGEJ_@pmw1=_A&uW!&QPAc48^`){ z#^|N{CG2tY=6$;zhT`=vGI31bc;6SMMQ?oWb?@P9z0vSmsaj&Jt%tqFxfZ|As8@`| zv%xrY<7VY5U2ixFxC1_I3B39b&Dv=C)wwWtdQIz6j_DA&KlYUHb%=R?`}YS_VEnn| zbI9i5T<4h$4KN-GzLJpkB6Ge#6^RrEGS?xgW@bTufofMSTBXg;n9Ca`mh0Stc_3{C zfyx)z8>LcVa7c;dXaPevvSQ!2C=u)FOCu|pgXz9vV}Y8C*7h`kp$5*MeDli2CR~^K z{BfnOqme)2Hhop>Ni^OG2yui&nY5|K5))RzN0~&3>N9q&QmjcsSkEC6@r?R{wz})) zQ&rXwyd9=8E9d~*i1mW&7A8bIv6sd*phAuT`dI7}#hq#0P$~ zrSt+U;A<^NkWN~rwr)m8!|dDd+yb;;%7`Cv?)toikj~o1$5I?-uS`lrOx+&# z#L<~hDvr1^g_7<4j~Y+)-|p*e(lnZkVg#-pN2goBu=x2fNzA`oqQ&>g#tqit)XvLtgx=#r@&lY#oidwsft`oa#kKuUAEN(r$<^($M}AZOdClU1W~L~bXiAvXTQHPEP=mCc1tRo-!g zF;huprLk%J`wc^XE+g)XFWG>y`B08EZvO?~7`uvuNHh^Jkt>O7g%;k!I&W!}MhWUj z8$Q14rA0+m6D-&g^uGUTK1JX;vG25=eO>yo`MrLN^t!13E_~Ex(w9{?d0rz1;(aTPCc_ysic$}nqZOiV`JFQ=sk;7yL+v6bQRY+&#f3ydj zs;s#<4|GoPLT#p|5R`isjbz_#?C9r@SlBvQJ2wHG!OeP&Xofx`h=SEsrw_Zy`re&F zm#O9ay3{;P*mt?m_`bM(|HiiS=IMGFdmB}cb+3L@^nJDZ^t)6^EF3u|Vx=#zy`(Iy zXf#H@y0@#%iRZLdLi!ilxJ6$D2^|W1H2mU`b&X_2!q6v2aMT=O@D_nH z#Nx!%QPdKe$0H)_)ANtL&-t2P@X>Y+Dxx)!PsIZA^0uk4KB-1Gxn-vaG_Wk#t@rf1 zrF0^?Q%o1-4|!0VpY|%C-q6&re}nAwcVeF`GQGSg+>tGARL#XBJDvT8AxZ%%g#D9O z6e!1rZq9(QHJr4;>{>d3NDs%YV~`bXEGWinVP9Bc=UU0)C|7)!1zgu@wos|q*VL^D_SHr|qZLa`C^3Ep9bLNgC)dHMQ268H^QkC}5@cesDyPsu+|qve z9K?yDV&dujMt_ye=F>S|zw{(H$-DDP6qw`KQ{uWsoQWIQkg&(N2MCBua2c6k{|RDB ziLI4~rJ#tw8(*^9+4`DF8i~@PnbNB|8z7MhGj6h9mtqz~+yON!(XrQhM<@hQ;RSJQ zIzOy8?q>^>2R5b!ir3XDrta#qtdu&p3i+^8D_68aF9ryFD<;#0YU1#3^NC?CvKeyjIh+lj4Jzl2# z--`WKVY_c(y8P}|jssBz^@^#Ad8*YfWESgg$GU8NmrGO{89Kd>i(~T@M6v|vA~K>e zt0d2kF5@PZF^LOCB2tl@xY32H@@Qz)#vM|Ig305gB4nZm>H;Kw2=%h_NK-T}Y!w7V z6=B!r;|F8+x*pYh4_ZibL)f-p0QIHSO(cA;M!=QEyy0v$T4Ir6Aa~ld2oE0>*$1PL zJlR5MP==>bWrAnzbUw3A!W_bN$2r0ea`J}9vi~y9ikDvN%n8@RBPCKDtm1Ump#U{Dn*%!} z148Cn?NTIT@cHvGoK~gYbuAv5zTx`L=L}M-rH?2NyonoS6Hff0uPg8geXZ2HRSq2w zzyMgRBINU?^{`cywo)s{7(pR>LC@%6;V078YApz4?W8MrfOB@D9AoDFAs0sDmFa2# zg%Jc;5IP>g_LwZn2p!qo9>(`|x7C9F zV-Z2O{ctsw^0s>3vQG{#-!ITn%DIDug7nKMu82MJvvO-H&y1^#3}%LP`m$xW3FT#s z>G@!?|C)<~vBE9D0)K{NSqIZDMd;3VqWg^D%Fr+IM1u0hz9URz%m}bp!YV}N9H|TV zU9qy2YgG@6Ew9BSVqrUu(cGZ zaifZ!$~y6OHJhxuO)=hDEZZ{5W*;30nt;R}*m#PxyxEjT7|h28IW>ndX&{_JB?pZMXmB)VVu+xKaqaH#}qS_xHW65_22wf zIZSycgj~Nmhe9qX5KzACizGc z`Q{OzWJaZ>9q1%&ma$#LV%L<$9cjc%^!BqpDs=s`5f6MHLD{e0NrWn~{lC6RA!&&r zCt}4RDYVo+POBh`DJF8c_Lj%LtXx*cSnhuTfP1?DILXQ*zv^w z^#;e<*+yW0LD72qU#TkeLZJpktD7fQ9TuSA`&7}-CL!CzYav%YYAaC9KE?9p4P{zg zt|VNcUam9Tws0nMC%5i)Fn5bl{cfeJ09tp?zPqENQt}ZmGO)>yR^);}ty*Y)X{sz& zzdQS>`GwI`t?qNI2F*{i2q}=9dQTD&K~jmc&*PY@t^Ci`Ob=DM0(p65^{fO$&yD!f zZzi3pzcK_Fg2^$ZBIDyBy1S$(aP4(esTXBBzYtY=|LGLkLqwG3BVferpbJ;7rpXPB zkRI2&-R0OljCZIh(6*q!)FA}4fnx}4CDc5Q?TY#im~Iiaskm}aak@uXzALiUcFUU( z>*Q0K2cX{DTlSWE_v@Xb1Kj-j`T_xg)vpr_jgB z4yVXBYKBOn@koqed}Xq=VOz?0Tw@c3b@@XXFJ(UvuA_;OQ|W~s)TLPs6YLzQzhT#! zrP6)Mol&lv*maX*p$>5$qqtzE%-u<`4fE~{|N7JX;z4U^#Jn)Szuo6}OteoP8+Aag z2xDj^E6=L@Ojl;psgF1u!|u22EjK`OEYFlFs!$V`FQUC3UfsTh=ZtkAwd~V;i)yWi zu7D%sA9L8R2%Z8RJ%t8K<^Cu+E^w6Fen+WdKUN4qf&#UqA? zEROSi!G{71BWzQ*A<%#NsU^J% zO*SN{d9c``hEHWBMR!oD_cUt`$@bZOS2%@R_dJ!etKS=S^lBTO+i#J74&y?6FF5gy zU)??L-S*<))j58X@Eh!Q{O}X)6~DLgO} zJu4HV))rnK-8i!aZdG#Eg7^js2@m(s@V`FF4yJzxV@bx)k7<#F7fpiHG|5C8zE4bO zFBqtcIfzhr1EI1#C7}LoAH-_K5#|xt@~9h&gmU8H=f{nReM#H4o~h8aDGU9kve&my zJy~Kue7IH-f%`6&Ip`O*g4nvnMm8nPyabR)7 zMI5AQ6Rzkuwa5eUH);_E#Y|SZxYR6sg1^l|IqCw-^uDje+T6cZZpY48IHYOw(F}K@zRByy` z4JZkGf-vvWP zz~#)`8K#)7tB>zhq0Ax&j9oB$6A?!Uqh6c`OA$T9E~xZMKlSuBw-yepHO82)WgM2X zD8d5J#zF298KTdU(E;a{5L)-z=1Uk;B^Dkn)jII4TbelH7;3UIfy?^n#TgWl(ue+3 z8*O52hn97GiyYEq^e*n&qQN6IH$$dMq2r~EQ5uV11<@T_D@f~uABnZo_iOjZK-Tv* zw&g1qslvS)qW+g-rs@3B8LP8(syR(xU8ty5@!ypOo1Qlpa63~h1_Bxpd;*lP7k6^Z ztwS`+VAg}IBq-$P9wuEgBGC=enQuhX-FGohsZ(^1SP;Ka8&A-8v(uK(0)Wa;=+iZ+ zG8M^X1NyC(Uyp@b+|t_H9$Vdo0Lj(5^jv(EZlXVWvltC;a}!<5S)q&~?#zcr&49rx z+X`3&kdX#HH(4QFt1uT{cGqtYOX*Cm+P2;umx-8?;;FEu777~8pPyPcum7?WDQ|5}}EiR*W?!oI#Q`qLn=vj6s_K!KUE+IEmWwl>s&YT-R3Kdz4u&u7KAPPjwRc1SjE2bBSy5ec~=E% zT}mI%TeJ`C`^a-wQp~OXGm3j87p@_{uzOS-xDE zXA^Pj><+)ooS2`}XrX4PrCI>K5*0>VOo8VZJtiSzL>p4WxIqYy3RXNbBO4Jnlx=nV zrC}Iz4Ci7X<0RZvyQpJzfN>YZel43=*^vIrkVkSq_*pI(M_AP`4PNv&Pg>==z8Dri zqj6t&ZUsNeV2W{uY$0^IT-#WTvK$Z<^$jm0IIb>+TTrO5)F&Uc`CnX_wdIWW2<>Wb;;bm)Q z^0_OTPlo6{oD845HA^+G5iHe?-Z7X%JJPQnoLeT8uwQt#oxJ>m1@L%kag>Tz9q=41 zbKJDrr-|5xr|tBxRClg33c8O!?#p@~Ung#Y-*weUGWndNMKWkNl!xP0d6Q`!T+PZ# zBwG-EuGzb&c5;6l?9wy=@_->(~@D#uo=hbOf=jK9l17Bga?t`m!#m2Msh-z zie_unAI|MVaV2zJ2@qx@%4N&f}+q#`4{y6TPohEs4v{$GWLd(^sMT`kaDYlXPE< zoXhHV<*+YtYP39-(%_f4OA&HP=#9|lXMaxD0rLTrX=T#IA<$zw_;aRwsZ4HNa=6og z!UBb!aBO@>clFs^I)gu-I>BpO2U;1_d*%T4Fjt|jE|%@b<*8QnV%JP6-Q0lsdGACD zRg}ia@;0x9X;f3_xE8cC4;=YLgNsR1x&P$?4oM5b2XlK-R2m)h=jGW4Df@n(%YN^M zLCwuk9QnCXI&U!im+(_RIAE*n8^Z_%x%-nPL(5=5KFX!^4L_pfNhYd5PXC>p?B%>! zt}S=?)lYbSwRC*OT_~M4wDNx@wHk3X0tZh=%-ZHD^r3i8<%8M*@nS3q;?y%k=*$2XFam|}<#k{PNCeB}CoWj~E(u~6S*)lWzA3x|L zukkP4Px;w*z)SaSD*yd%U&68f0D%9>6UIvXcpLFoKs_au` z=nH3Plf0(hhSx3>ptZ z<1#kjQtA`cBw0+E$W-JgA<>}wo}C=ps7!DhtB6Ucn%gD)OM5$yF2neD#u$fc@n>lg zgfGWdNm`%C7sSkTQVZs5yqJ^AXiZJnm&AP&;FV6=gI0_U$$L|db>UT%Mntau(ne8y zf3h`a0gPt%g9e0Ux$#(<(+-P{bB+x<4`g0HuJjPsgR>PDQyqb>mA5e*KcLYhBthsI zY5o84^bU-bMp@TwDz=Ka!O z$IC?klL5cfnPZ)D%)r!uR(6!)jfOEz(3b1sG}MrnTl!(ho0p_4rCW8Q zWaP`_&x~%}mG^7$<9xE)qP6{eX~o~J$aJeRDbmapN_ImF!kg055{0j})4S%?W}=S@ znb-U@f}`78@qo_wS}zuAfJ06Q-j66_HbHiS^h` z(*G(>UmvRpdtFc$*9&Zc(g;iP1P5}BG62#ZQJ0A)Sa8RGBeAfQ1I1h`9Mrm< z2ZZE;?QTo(`Q6%qMyMKtQ(=nP1m%^P)q?z21!>g-YBzI1)?7gaaPah_b2=(N84zI^ z(|~Y&IQOx*f5UJ>SLOofN#MQ5;A}`_vVAC4cz3qXrx+RqK1-OQc6?W_mjTsXi?a0K zs_SXeH~+LFVteQ{hkHD@gO-i&^Y9(`f+3^h(~(jx_snk}ejr)g(p_olpm53QfRH^_ zB?hHwM*kqVj_d@_gx03OLFW@j)dOEkjKrf<&QGGQWl4uj;qp*ECf9~<7nYxM#%;o6)}Rw^s&U7TjSNIU~}uW zwb={h@;>_g-b(+TD?zx@UUZ*gLUL;*h)r9F})pdHUSH0hNoV$rU@U0G`(n>F5tI*j(b*j?y`rSdbRL>)2|CA7tK!3NadV~Zb$rtuYTH7Qc&;Gsq z-V4`*z@u1Y9A!5ZX_eBrlrm?Nt4T}@(;Zj;xrr{^|4rgF%~v|&qzIbiHb|5Z2Q-QI z1L~A5cZbUHOp*!`5eGRcA><_`*<_gmm#c?SlerNkM(-8ld8618H9+N#0MH2RnX((o z)3JLM1B$w=nFB^BMSQps^nXK-0zy&!Z)dm*(E}k0cBLjD>J89=fy5`$bJYLpQ~;=2e2Z5_c-(y@J2o_7yA#Tfv7=^tpl7!bxB=yk zw|@Xyjg-|Z)v+r{h)C+Lk}2*_rHy}c^~?NsXZ`=Btx91^k*&WV1eLy z&7IG+vt4j+HLOH&w?wR~94poed&K*=Z;myf ze32;)I?L)Oqfey~-9+f5$Wlu%p>)N>ZzT2H-|>wjKBTfPij^eU9wY}nBW^Tf>Q=|~ zb3A?~eUJwM%-Od@mimMbgyVs*LROeHfw`r+c_EfsNmiesoSX~ozRrt zuv1Zk9;Zo3)gwF_O?uq6P$LNmTT6jPTH`rd#v{XHXJes&m@MvkwHkON#t6kl!0zo) zfd!OHeKPw}an*$xCU-hVq6o1t&5&&sJd|!9uZs{4t6I1-()t642F9>LT3-26RoTud zXr;}n!XaeG2xL7P(<(_qf=N&j7mI$z#MA(l<1o=t2;>a;m@uKUxdJNH1MOrs_@820 zIPT6xO+EQ+M9`oT@-`K4m2&53xPTNVa5lEdl<+={y3{`&@!_GZu58 zvY4_h5SH)2;%q=^aiV9?ay{EUAXpybEF?d}ROAzD1%9s_vBABWxF9evh*&82nU)ewE9^gc&X`&`dbY@$Ljf!rj{{4Y}+2t7n3l=sAV`5y<# zC`iEd`-}!r&zX+jiH`m)3X|vE&(8;mZd2{qEQuXwE6a>^YWhD`vgY0RKl*k*?M6Y%yi&82o6wjZyFe3C=FEMZ+MhAA?j zK#N`ileTHIuq+vJ*8BUw}<;-5b@ zy*Ys5>+RZnJ&xXi8Qc~4&3ET1?mR6T#0%WZ#0`!5KG=1*J!0E5kYRx9SFjRnGkI#_ z_cTN2bk`k~44^uAJeG6;!(Fb_D`=84#NdIH_ly8>N4{$1=WTE7<5~P&UsaohE?6I% z%)gs>=O!x-xL+L&IxQ8Zzd!QJJ~Li(+6~*7Tq3OQWXZ&eO z+-4TBB+zQ5hILjiJhL45aFkfibpY5+m|%8VvQ)wzS)m`g8jN;ZlqeBfH#U1EgC=p5 zCgXDwwzjbP_|$-?W@9Ca5{fH2#yO7k-9hR{4kU>+kQw_bqz6f7jLhDQqRj}aQQh(nhdM5NOLw&eI*6e?F_E9 zg(~tznU$TU6`P(Ua}dFV2f?aCHV^9Hz*LjEm6_85sl8liX_6Uu;zBU>aTgI8YOUqH z7fV!MNf}7Wn#c*ZC2AbV!(rr9v z2O%&n7unYineUMrAKakK#I|}v)u@@4 zx=n?@HhA4fDzEilc0W0MnD^TLsb5~HK{PsIHGSXJeOc;F=Y#72{2$OBQHo9;gUKO{rezjItbv51 zoe)eVic9jHHo7!Np)twt7q>b5T@rl(T+JAiJ1i}+R30M%np(j-0M+N=w{$Ns50E?L z&hWFR;SWnuQN}1{24v@8GhxA~spB#*aiqdrmQ(CY{|F;=g{TORr<3#~I)^24jU`K2 z*+i#6@QCricd?Q?IZc(28s$4;xTze~vTj=8AS|CLCrhjOs6|KAM77 zDk0O$ya3x=J_8?@-VkA6W^xP?7Og2y^KfmTdpx$ZA<6EQi7QtZuYDOI4sgDzYk{>c z$J6_jy8$&s?i!`*Uu>+EyZTXmCCEzqJJ@P0m#Eo)Z=dK9%>&d*eqf;ewWc2{TvKy; z8kSjYWHLePULRym(8aCc~F2^fXl!uH_d)je<-SBRxm#n zHvb2Tag8=X>fHh~r<0~MN{&PnPRhAFTdg0$doD;v1j9(7z(}e3Mo3tlUQNU%0s~&& zxzE5@Jf%My+36CVQlotE)8oheRjb|I`^(XD@Acq$>(09lORG8@UM=e~mUJh*rV5`p z?WoKj**H$t0@T*TR}LHJg<+-Gq2ev)^k~>{xK&nr3VWXL9WE1!-v|OFhNO{?G@I5S zM*X9ds>UL_AgxRH;;qFH-Q`WzW2|eZZbsb&8no_i2+ui7i74neLOPVWwD*nBf@Px> zMQ~yE);tw*54P$S6fiVO)EK)5nJ{uCQ-s~lX~qoc$yICwOKFPPI!2BE>k;_INu8{x zu#yHfEKm=Wwi@snA6!O{yxXn{XYx{WDTJd6m#UGC+= z{DA#byC=WgJr3>cCJ)pkg@h51$J)56DNn$j1P$t@JJ5;_=7UTi=mLr|w-ZlAx$%OC zZjtI4H!sdM23WP>XmGwp%&?>W+AF*VTKtl@Zu`=Ejm>*0dnqjQPj1;*s%z8F+u3&U zF!Fl?tF2sppK<5&+n9Fmd9OzLtc-j4J_Sr-%}+Vx3paiv0RK$^#NmMQy?v#7cDcL% z_bPx5T>lY3deNguN^!KDt5gd2r_^{6NbG%rDgkxv^>zf4aL2OR(Jy9smd(>Xw;Ib{LQ}8 z-hvxAkEsbWCTM8bQMB{eY?%R7xwHweLfQju*a**mmC9gat-Mkbhvrfv&}#>Sy$(@5 zdJB=?cb~Qrt?KM-x&}|I^dVyXK(8w{O~>o#pA4~R>iRvYZ8=nr$+8~9 zKHRI?mZ_JkJRX-93P3C9}%w_IwAfOX5+J!GT7nw zv9_v^W$-di^iO6K$w~#z`nF@u=#O}PrUiQ3ir7F~qE^3NZw%fjAH9VDsP6Lv$m zEhd^4L?~#16qp(eQP{yM6=zMDJt@*w5YRCB(zYe~A<(M0D;)6mbJVTj@a6Bsunee4 zxbp)6RgsQ(wM1j7Q=nk&n?h;6h_ZFPIy5h&dVjcF_UDKu?__B72X}1<<1T-$Tyl@RJKw28dxq!>7=^a{P)ek+!5NE9-b% z={&P~-putsCi2a=>N@@K{rm$ZZf~8r;^}&y`-0%`5s`Gz^$_wb@bt6wW7FZCv$yzb zxu4_3Am%yf|G)pc75qbWNrWWvtpA@h(9IVgC>hDCf%V5u>{nSk(QAQ*z?X#IAy(~Y zhX3_}-=~Ve>AzzI`P!GQYY&eezmHezNN7}Brj2Tj$(C5oDET)^1Ooq7KRl-cWrLBn-xgYvpS#w+Q#_hTOTEV40@3(Acn^TaJV z(Ur}T5UTRLhBQ{nt!7ZGTClJr5|X?mO76(fhb&vRG@*+z>iFbUlq1PSN3^43xoR=Q zgTv9Xs503c6#_xUcS;4>zopzrFcG2*b%R1hj7j2mq%Izc0;EwOFn?qg+|cyVS32R` zp_5Cis#5M}4bfnsk61Cno%-RrXOL1aC^LAYxWw|i4|p;nax2SibE63H1@W$#Fx)~J@$ z-`c#c5=AS1z>{Jq<6HJE7C%L=squPis4TGDoY#))LyM zivmeA?)I0B8nV@zLP1$G6hb}ABABu*OfO_4Zjl&wu#LZJ{OkhBnu$YS&5kZj>HWu{ zxz<@gtA*d$@h<^|v&5Z`U5cFU-{Rfw?{s8G`dS$>44stCa06n{v9dPSzdn($nA0}S^4?X_9YmPe{9d! z#h!{Eu+r1PcFt zJBvZekakWw8tJ$K%7j_eezG^T6J3E34;8 zCt>sdyrWc*0YEgg@n7-(J^wS2873BdmCSv)y@LtdWb*m}-~6wR4W9OoKd;LC?j#6l zl9Bjb>J7SkDm)1eUW`zyb-iYLE}JiljdLCx#>=<2ys?s+5~k|gf~Cnfg}p9urt z#M##iGb`#N(W}Q^AX(6>oq#y-IyB5S^E?;k^W?vXRd5f4#nw?-mC9{mNCd<*War8V zxig9LnzM@0k8bjtDY5+LqL~;E2lSQ=9X*|<7je zg~bz*xW4mZnC|u`GD0J`@FMISfsr88%bGh8&fVIczRc&l7X|82-~6{P->>r&f1GDZ z-=n;*6Q84>n|Ys8_dQ-+5tis+{L8m;_$O{A2eL_KRkHWR_ZF*N#T`{Uz6TZR&P!de za@x3onA-JkKm9of zJKptPN53vsAC-tab*{5)nkxvqX(8kz95#9$ZyX2B_CD8ao8L4VTM53LH;I@v>Xjjw zZJPp&GJp7C!tFRlgijHA?vJC{$#))6UdNj2wYMxcQ&EIPVlb_V8&IrB7(GQfieT>! z<@Z}~ax$K9+8NhiTp_A&?1HHchtkQ$Af8of_Iqy1bbhVNn*AL3XB5b;(H^3yF2Z!h z#Xe#(5UVt1b&-|aSg?tYL8?dsE#wx>n6^n0Zj7cZz3KC9OMLEqS)2765!!UT$$p(~ z?dq>wmi9f}cB7ch#I=|u53gasYi@D6j?zMcPnMTIWzs|Zb}6pYi5wi&lnj|`Od!5T zVHbQa4RWA(XFwn)#nT})$92_HFvfi>v1DDdaZFMXVA3!#)$pZU*x86RM3|A)EgS*m zE=lET{~E$#g0~ueE`n4X9F+W(?)djU?fM9mVu1DJgYdf345;?1kPZZ3lA?x|Oeq%_ zN1x*P!!C~pnG9`tSvV3K!jAl1Co)tWSEj0~n!4R&n`OV8!;YS4u%1doaGnnjQ!*;Y zTS&y!FTn~9ZW-Vxmd@kVK5iKITHM%1b=PeRdLvmj5|U7@WM)*8noiP!TdhmxUNUhj zkDA9-5#;J)^g$lz%2X6if&wC@8Z!n%@e!_V=1JueaEUj)!WF&IeM@t2 zdyG74vyuF;PJ4#g->5b8iY-;Tk=w9gnLeA^N7cQF_D}>>g;~%MUfS;AiBvpB2tcyV@-37rgcQe zvb@s;5w%W>*8d*8?%MCec((Z}mghrW7xUgZmA!1$L{lS6L-CS$F}= z&jb4m7_{PWNhy=c-IKD`63C2)-(F0K$3n@h9da=hZKW<8Wt$oXvE6@E^0#Ehy_2`^Y1IkjY4A+9-Whap=zqzN1+tYH`vB7+aEWr2| zg@;2cE{w24yP4YH1tzcjyKE#XwZ{~f(>Vgd7jCbvE@fB8vJzJTugF+b1LjG)MGdSf z$5=;oHgW-&rdXJjMV?%ux_qJm!{mHC8H*V}P>#4HUC3a6F%a4Yek;Dthf#hy50YFB zZ698|OdBPVj-M&RTaJ8`PzulGo+jOHbrX9-?#^(5hc=SKx%2P5Y*lgYc5aIEhfrT} z&R=>unkmOo!Ve=PlZ@|2sq)ud<^OR3q`$?yqE*CO(;3a3PltaE%=SZvHyjGeuw5PF zIVx8mJwrmpy-OoW1*cfSQ;IAb(`(?g&Gq-iE0yZYtjKZhED?GGhvIbobQQYa7<269 z(d2XcA-NP4GcJdHp`kN}qGZs9ZxYdTbgC@&7D#W{?k9@Fgt`=;5G0sTV1mY6eLvUCcH8TnRHVx}zX!~nz7DgmU@Ed63 z7SeHvd{70O{3>n8qNrqC5Xt3Xt}y!h2;@>F{?z(J$BG7?&p3H)c(rbo;DQdrkqUXK z#Y$)xsubq1^W0+xj)j&UyC>>1A*)JO0xW zt7xm7k5v|%`;`j1?n6trL&UTuB^S~0R3NrP>xILw#P35T-}VN)+T|tTMcZrSQ^;`I zU!n~TYVGCry(TsHoJ57D3w(`=)fLld5YN&6No3}JbA?vjJOCT2)%`&OVEg)c{p*JR z@%h6(R-UV@jYEyY=6qT^#u}i@R9N%77j){3KR~JT=VT;!4vKJiwU(`3DvdR4yAn%S zmQGTLj0Tgz^C{)qO(-)v=gUNrj$SY2EO==Czy$Posy6kO>cgcu#(U~6O?_yU9*ng* z#|A|`_9h3$?>V&tu^~2YonU?~mj3xdg#>mH+Tel|WJ6v6j%z?6$JIbGi8k&(EL3wm zn5_^;U^Lq_u)myj7akFkh8gXXS&KLXN8|eTMC_&U^C1lE{GZp|ohv)07Y(5}_mW$T z>%}hITOHr7xEy=T_Cr#X(sBJ1lR+b+l#Dn;KPP0e8zY&U{%BMzAh&~X`R8Kpt9IdfhO^OY+HpXFI$7X86wT(n3(6OjTBtf~~+wjmREG?(?`te&CE*1T&6 zpL<@9U^~~nDY<4nOu3;hO{1I06(?&H`)LY3rtBH?N?D}AeU}MioOxwlf8~i1*xkl> z&<$iL`eqJVz$0XuIR{zsz*y)XV>65nREysrU^78$JCWwJOu zfQ^QHskoRfZI6$A6N%A5rMVrAb;GlCVqJ)6U8=lwOEmhF)IR$HcO09N*cp`<3JUilcv0=t5lE zvhui$+>(kmO^SO;>13jEREXxGh+gEQ6_P>XBsTKQ=p(ZBdC&>tZt~Clmlr?c3ZpO2 z4hFc3liWl}Jlsg4nsl{HV&Ohrlv1Cglkt2}tyRsXL34#aQApk`v=R#VFJ) z0Y29hz$7%K&N_(Vp^PDrDir=o#zOulw=t+ z8qY2r+7H8s7>TkOJm~=?a-$mAqYC#4zgEs8JFm5D*p*IsmTn|aGLJ0nEX^%sL+)83 z-ug*syv`_QU+-UUS3msUbsXAI{m+8z;77mY~qr91QLCss$ z3!}E3)@%hkevj#pP+m2#%&PKGXaV!MW9iWYR$|Lu90&(e$Q)6 z9;ekjb9P>yYZ#|ls=>Z`WD+0fZ zv@iw)d2W0Rqa;E;0QHwp322s+n?I=0au}~N@M=1vk(pJ+qOl8aWK+tC4Q;^@Qg_k# zJtkQ26&Wlan4##UpJV}YB}Vit0&Q?&%x^TU+XFd}r6GiHS+;$&KkQXwJBj6p!%^E4 z08>T~1JHERBkj0d(p{5*x^C0l>g0gc-&_ECWbnbmy5c|>EwdYJrIfkgPorP+7F|_B zs8EC;sjxnBUUWPgZnRE+2bu@$Bp+cr+X5ffmrV+Y!`m)my>MfIUR47z;Ur zLQ6-MR5PW!S-ci;H=ngg*U?`beZlhchs>LuXkP@Dwo1*13>Mc_o!4FyPkA4ey+qd@ z4+ziSukgq4@yCr#?}LN?;_T&@n*aYZ0d89$W6y3rXBa*Q{P&KpS7KMK_VrfakxT#> zrSSfi_i<`)Kc5Fg)$8=?^1R`XJA1v|@1fXhG+uxBYm4d7Dibq6nMOe;wx_CZ*?0`J z6zh-zNDi2pd#8}Mb|iepp)1EyvS9`h+Z9{kz?jhSDtC(Nk!gvvglK;w%&@%Q&10Fn z&X5(h8KY?oKW{|o$`Vl8^K8a~=P$N=oHNi<53}jl*Duf)r*UJrs4dv4Do{YFTtqOn z&46?1zRVGT>Jq&HKbf{kF-p1O5MxJVNy9iAI0sri@bqdgn72ff`qAW@!1}q--=-@f zT1T;BGUGsaZ;*;QP#4^G?vuaR$U~-#zkk_Kl@0iHu*J@&vc|+4#?v>PC_9#e7k7gc zEp6qPE|ITWMXu!1h#_{*MGXus83SozYgpwdD;p6f=SsD(^ z7KUNLv-PQq1jcG`47XIkTX*YY_%<(JZ0gSQyYC!hb?=ldIrMzwt=j1ObN_mvP?(NN ztBIH%6qZoik5+^A6LGg0FKn;3J90gMd#Tud&{0TrbSFdw;ts81Wntfp4X@PbI5gUK zc;-m24o!mjC`HkfwJh+pM&4RA;4Ep^tQJg;roB(`>KAJ%On$BIe8O+J+AI>dZ{kx? zmDzTS5g<7-;@8Z8$fBQ^`#70`G8r5dGSnDdP=mthY<>w6-O56hEC=uru~j1tESY4M z?NUT{Sy!~EXZ0g@p0*cLr_xO--;xRj7~ElJghD{mp>geDC&LOMbHV>GluL)BC-=HR zDN}}xz@Qlgs$f`aEr@NEgu9@gG$sD0Dv8Ix^eia%W#4NNtoPsGBgrgLWItk8l?7&( zZ^gd+?lFX1q2N#`TGoc$YMuIszsx*yB{|?%4;k42Td%P;;;n9k^`?zkQ9D3+R}((_ zhS=(<{-?-LO2FZS)1}y^^)6|(fNT|o8ZDCmaA4UY&9{INZO|QL^|9gEY=`9Q7TVr8@Kse zRy0JU*qWrK=u%Ekh;ohg(A?9Kv^om9Gl5iQ3d!jwyRw)Gy^+NOU>CKjfn^=nP9(@| z$+04n7=r9!PKAvU-axcTyt%+U1iV6fa6ALw8Ge9af{e^e*}A1rI2B#I2A^fKZXiY> zBUDGqEt1LwMNF8yG=9ja-|{=NnZm3#VBrEvK1YFmd6Zp*;Qma4PjSI$5(&d6h!~1) znkphMvjq^XPaom{+Y~Ei!qAGaP^OxnjZbvl@~tx|ohU#-%zZTFRtoeffDD*Aqy9$# z3Q-+77byi>4Uo1lE=8m4BL~BtXcMa(Aob2y4f(PS8uEx}hEW-eEx$CE`(FLq)gEb8 zdKPNxH7`!1O-lFyk2RYYEWS#xjvKEWbIMTpw(9OPgNZ!wJkZS4t!$a(o5deHV4Jzm zKizd>!w7ZncImCVerl*m87bq|m?O=u^?c-}Xh1Pk-DG0ql!oV1J1ib@us?7<>8+^_ z?U}thG<@7We-(CkT)KX~89bVN3=?@|?Y8ptrA}~xLf+8fgKSidsLs`_^)0fkMsH)J z%(HRef6k)s*=75La581{N!bZw`QhhLGO;y~s^_nwpFfPBwlMP7fEb_PwoFN~$oyPt z$H8O2K+R&WJ#4Q)q=ZXhpXn11rp?56!S&NLZm&Bp#9LllB+Cae56EFw8%p074indc z#RSzzH>*{JazNnkSF_El_g^dea|MxjO13cwzvlR$q$l#&7n35)wcK}pmXg%rb^%OQ zc(*j*^Yb2vsfYBAGfGEL=pEX2dDLfEEI)8*;P!QDp!Qy;wt&;nmd+kFi@=`#9R0%2 z;y{z~8wo)58Iz|gW4aKwY1fi}A zc{YP4WYW)36*Jn>3_N+P))aD8*VVosVY`&pwy1DySPe#*!rE%*!~ygFcNf6-bSug_ z0y7?5%<-_CFFDx&Y}s&_pvvvSy!HVybiA!>c$|&|mGzJR4U`I(!#*JVLq0GeiLfa3 z5<49n+)6>AAdEk)mla)~7a}3nM6nr35-vihbmLR$9Hwxp;Qe>;z1Hvj{O`v0$5HQH z*0cWsmX-g1dc(exJHF@vTP9DwY)`&x-r(C*C>~qiZm-@m9se5verJ#8@ngT4vR_{` z?wdYNr~C>>!=t%XRx8=;avO5uJ5RXBZduLr8@P|33s@G9q#2c)@#*Fo38$EB2^R@( zVwtux6c{hrR-)UQPGn@xX3oJm(I{aV!3?U1TnsWXIGuCzs7Bs=#bYQjJbuw&5D%bI zQB!Ty5)4Fv9!qV!()PO+`Wot^R!))y!-g=68N9PoodD4WI0-kv6&{6bY zp@I1PpQQBI801wA{A@x_>1-*5qrYtqkBw?d5)GM<90uV*ssQ1joD@lC+L$Zu_J*0s zYo_fbpssX_+bsnnKr887+?(&3bp?zr9gkoi3Ro0T0f_PVEv?Ck0h~%x6_|)|?Qe2a z7_lA^rGXsvEzzm0EjwI2rIN>pm4R};^*5{3DR?zB-vWP>)Ce$p3eF2b;1-Es;bs0UDsh_3Ph?7S>E& zg0K^~#pK9jc)0irXQvo6)K+=s;5pB>{`ftVLIf|PPh!uf#Fw@A1%FiD%R}eA>3uPN zFs%j~n#3ah`!wA&6qKu^&%O16wf?ebfdJb1R8-uf*ArWq`l6}|oSZY=HbTD1T_zUf z)pu`74!AYN)94bPI%TepPvx{akYap6v|74ouf`FlCsHzG&oM=#GfQ%6D<8sG$=*&f zsAN|qfL*St!N)C#n@;Dq z^&A)5K#U8O?ouIQr%VKl)zGi2XQ6uY(q3Vx`XOk4r%hT?_W*4&mKmt@jGv)_#Ndu} z9n$!+CCvLju5ThJ46RSnyoE!0o%7ai)WmnKP-<001^ft^he3grMa>q=ek6l#2)Ec_QV z{069eC3Snf76^MiPIpb$Wo3q4e7b<9&OAA}_WM9nywPuE$E97T68$>fqrYA2e!CL6 z?z{L|idYMFu~rG`DP5vM)?vH~S$kCV_`ef5_68y4pBUg+FQv2+J(8r8W3ZJc@uJpj z!&Ky=KrwXJh!9LJWMMcOcG!OjO09oghlLc-vL|SDsS%5eBnNC_;I{YZWA9y4Y*jjq zDQ#8QN+{d4$i|#*!ZHJS-Oyi4?-+6>!g$4&`M4b zD>Px=UUwwGkLNe?NyDX6l(0_4(RWF9Zgqs0jhIp-p(4C0OJ^jpJkdokLlF%6Ojn9x zL9E?q=y+gVVk_+}nG1@s=FT-xOUs_oTT_gTnL%)KB|yE(lyBT7>0&`WhH}v;0M#OV z2+lw;(cuQ^uRPYM9H7DqvnK4H>6gpN^Nol9m1;IeV>)Hw8*(W$8r#n!mQ=11ErV>OR3yM4GK9Edc}9fTF8LJmTTwJiVE^C@NZq3Zo+;AYAJ27{-bG ze6(Ka_o`m*y7SVv%A~4QZ$vB$=cqLvn7&$zIfQ*HG7h zN<9YZV-o*C&S7fix--HX>(i8MhToL4C%=MPFA46e

A+m}CCXo0C*Zn+g}cR?KxW*VYh)1(CcB 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

VmCFvPG_(9uudU$woeO$;TPr zqoFtz=@zI&4N;{!{U)Zt@rag7iWFR#E7-%bM`yAn6Oozqj|t$xtp?TNw1T2>!vuvD zZTB#waER*{gnfe$Vw=;GfTgBP7`bOj$#-&cez%{~B3;#6txPQly9@ao*3n<2Hk5~+ z{K)^4*-YB-h}bZ0elSd83lod-Re~^w@-`hmtuz;I!ZhJZQyt7Dsc5b^ot(feb?_pE*IzqpC*hPt zsII&8MWqaVYlEt?;kUh9qU7V^5F!!jO7S9rma;3dBsn)KkKdG{_uY2?~+Oo1!_yI!!rtziA&+D@JD)4=f1?w?5Jna}i=`&=F#V?T|Jyrf4YU zjDa49v)vYxA)82MzopY+L}R)`q711Ic=j@LIn}BAVF99MgveGM@}tl#v?8hzV7P*m zghGrEFBaWEVD>YbxN{^J*$BH0M9rSVPA~e&1Qt4Kgtg3`g1pB`nVY$?`m+nL92v)b zE`heypUO_8yLPV97H2+))uV*`xllHr6D&F=fz)Qmw)~X6_Al4Pej4+26zn?K{&UKx zwIc{~*+n==yv2MC`)mEKDoT#z)!wm)58R98CmKxUa~Z=PU{p{TEHW}N5=Nhz;|Dm& zRw@<+TRss^?M<{2VonPd^8*?+TB`SdK6SMDJaB~AI*bS(%Sn7%Y9}EsKN$@noaMM# z4)1_5ICoR4^^aX&#B7s2Q)vruECWomR6Q>>AYJ}X$M@lXc~IrI z&wMN0`I3}qyc>SnbbEu@_Zk2btV~QqQk~Nwi|n*HE?CR7m~V=TT`U4)=x7*|-D-7n z83pVQ=PuDXEcg}L6%FDOyTZ8#sDM#X$Cr4EaS?PFWP?%hUFCr^)V%P_`Pq|9g#8~- zg1gXj4zRchxQsKn2Ft)$_`NXDAVN)S7+8`FZ)vYr3fgnCGAAk52 z8%_*|RfpQ~Cl2Fr6Odw<;u1(Pk)WTYM7OVXD;B_6V@;!|n#V}bV%77!DaxLYR(&d! zHv5UM;j09F#)E9;XEWs`?KS<0biRj`qn5jgCeQ9K6SV(#33G%^gZkTYD4!0!^I?ig zhSLeJ3%+ki1XtZi$0d-TTZrL76I07QYdvmL^RYGHANN~xIxfMDZ!g41S{0AQZ<_vZ zMtC8i6?b*^wzl55%fYlFshs)r_4H%ta`9KA#q?tdKd6G?jo%Y3xj`JWu?2&~qJk+L z3Am4Qll{P#AnDt9uSJUZ&G^Ys0@MU%+nj9B@(`|F^+84&_=n?F0_7N5E+Z=Sh|4}t z2rc1`zHkbM5xY5E&|;bvq1Xs+NU3$=PvlURc7RKqDpkG}aSoxeuI=#@w&OlSH&z^byMj)l(fu z;)<`G5#~y1iZ15kJ8l~kB*e_?cw(3}9MxFJ)&wDjKt3$appQ5mBK`=!L82k3*hYUu z!FdEVIjjaa1CpT4;V8+~k5U-GCX^cxBNKd~`NewQK&p0{R6$p_u9;{>08hhH^?c!c z1ykh!^AR+9CFJI)taHUIW7B;bs3PXEsKK8jOZf!tVx?ViZrONZ*;S>S2KQeeav=JH54j`9d3+ znDlhg8Onp@ZWXBV+NPh2BBFw3GjBIZ8@Uj==AI_~p2A)wc$`Q6c`K0b!)Oaf*8Pz% zGEJ0;B5Xrf+%Gg-bTg$G{wA%VAI4giWR~&p0l7^;y2V{7DbWvNsmTe~P8Si~qQN-y zR8lx#&OUVUd3JlfeOmUBpM5YmJuqn;1nd;g*Zq#8r;K-7xu3rEtobS|d5Ou;k6|E~ zsc3`Ds=227fNEi|BWSu%r)Dj@6r_MK1qzih&f}CV};VG6sqTJUY$%@xCDF z&x*V#6Jn2i&XFL=V3EHCqxjP&S5?(sWF2u@w%S9gUoObo?>Fun4Q^Jh4|0*3I@hY; z;KVgQNH0rEz0gYUC@rQr#s*Ttvjw;2Gt9*RpsR8geMQw)}Sc`{P}4l@Fk< zDW&WiT*~}!F2FZm8u}^Za$wzf#A^bG&z=HbuE79UNCyZYxj(8(Vc}z4*Jb~NAD{{V z5S-xWk)mtw%`!;i!hQghvlD!vgJbq6Ri{xC+~TRJq2;tCl*M(*q&WCh{kKUB%A1!A zpA;^MgILgp&M0Zp|24=%8GT)yY7C(}i?^^ZiU+FIV40xSlV(J0XdB^ZZYyD`eYE;z z;TKu`0_DY{02_MJ+U<>3>l{QUY5hK+D&2K@g(&%9=Knxce;f~dz);=h%(wqMTx8_u ztWRxw6XX0xZ5LMYMd#Q5I4PEiaQ-5a-&JVh#tD0~eXHS#ik5y@+weq2M?>>Dub&xT z39l<%4sxgP(k@^2!|?k-D(-EBl%5HL zE`)-msY0LIUZ8wuvxWeUVTBmvVPlwt`dNiUF1X zJnXY)D5-n4LzZK>&+!ZWOm2VP_4bQ_b?b3Upwue3G9E?Nh!(*ZpFw4HYfnVSRVhXA z*WUO_3NqJO^BI1}UZMPbO#!C5SGK|apA}ULg^VbHS+m$M)usqwfE+YGUIe1s)x4V@ z6CB&s33le73YJk^Rxk8K6E}q*Y!w`+M+|e7U>hcfBO3pKtmvA_R@5q^U{NRU=86;@ zUf$mW+y@3(dK|i-CK)&0cRpYK{cZG(Jk@cnz>|#gar+T)+TM$GJ0iZ3?{~l4sZh31 zDR&Ye#Ei6zc43E*G>cKN3G0$DyG`}B<3%GW@*05Pl1Qmi24sqaj8Iq^W^Vw#+00iK z)}S{qNN{C~NiZj(HODybQPKp_ihgWY6nD()F$RrLA>>td$>6(`!~#+8!;v{eIX}{v zI-f(D#k;W9<7&EzVD&`lIqYZEd;e6JfaB&ywg<^VO{Un&ZUcoNgJ8gx)y{fa@HK-chDBSg%xnCL}NlgLGo{N&k1u`V*!>EwMwoGSaDM7@6vLY~*k}iofRdR^i?MU3k0I z?}xzm784$;5w27|lW2uh!HmEJU`{O6DbNN#LW8={6c#NU&4t2TECygO=1ERs|jm$O0O2=}+Y1RGo>-!;->ygvpw!I$*6=<@wLH^%#TBk+Qx*PWA z--q_gR;T*^@Q|LtiL*#^@v5CY4iSr!8;*HN`5y>^j0U#V-cR_PQd84h;pIqedn?*F1j zg*}d`0yG&hprI)agU2y0q_D+CNyo}b!UA-w@WuQcgX@J3$vD>{y3wVwI;E)GhbiU@ zR_&dLT8|uL=QA1&>WD|Q<6{9U!_{&TC(BC|DNo~>G$X*OjJe9{y%E{emFf}YpsZY{ zj5yl*6egQ9NdT+~5Z@bwk7)tPAgxfJtA9EE=Gmr?({cXij-`0|rBnWYZb>+>m+52M z@&8d`p@6nCABXnW!n7)3v!&X(+WkxcWQlaJ4&>uzt|o3Dc4Cz_VG^r>vO1#NV`wAE zH{W~lK{h|Bczek}!Z?N^laQ5tpj1VzA#E`UASIz7JO})y&;M?At<_cyKnyYbj$lSh7o;y!x%$B>!t429w2qyKwv0`RGqZ{A&#NQG+DC=%uu1laPt!B3s=nP8S&7$~{u>GX8zS&=f90%cnauOrS6(qU zWyWIi_}`V~<0hB&O+!kt$To8BXWfVf?i$fWV4k_o0F^T>%}o}Y*}K_AM^d;TXg6vI zn7Jn~-JtbdI;|8oNeTtb3bDjt_Oe~_7C0NJS}AZ(w@t);tLj~s^Scl@i_gP&*x>S- z{|MjlZrDPmnKMsj*8J3n z?SyR zDfTO?CN_J1Q2Sc<#1LJ4A$|zc}nwP@PQ46eRlCw5bUyV#zd=G*4yu z1l-L4*2iTBTt1uI$_-QXrHOHH=vz~%f`_1~fX?uozcNECZ+Y&5W_usVFD~Icv*)DW zE?#FITn4>E=`qLWzL4BHrwW*)DnNNiC@&Y`1OFFOXW`d$+xCANM#x5&#K_SNg4F14 zq$Ea%got#F(cLWq1Er)xq)S>rN*Y8!S{fvNyPn^3-_P|gY{%<7zvn03N5r3q&-}De zp=1DO(5GyCJe|7f5#Vb`C`*hd{xilYC6I^Q_p-6~E6q#u+nQ@8B8tJbQyqbQhgnk> zEtaZD+@0Up_MT|&6>4}njQ{lWYH7(4+CFV8*MCOIh_e`EqN8txty5pm(aMcMj$RXp zD@{g*QvZS7@t4gRb_|q?g+Q>{ZZ&6VhKtdNcgstNOzW+0=k}4i-ll-xO3HCrOZ!H6 z^ZXI6;1;B2r8QA<94o3G$jziplRZ4`X4Xs7Xj)2^-Lhr0$A#GhgYOUU zHa&|7Gdmia&&b?rwR;y62Hxshh+lAIqbY%hbh5$8=JCA5?WmILjAL1vicdlTZ2}uK z-`PsDAM2zKifsMbUyp>>S=M9rM+T8SQ?eQ81RK!}>#3#li>Byq+vZ|6<}-laI*yR9$(-+5_fqLbkVLI|MVeOj4t}k-GBNE-GJv&SSKH@yu|ag zf1xz|@8HmHv)9I&!otG8J`(V?%Wi8Hs?s43jHd8;g*Wv5xf%(@?zTQ$Jy$S%@q04- zEkRAtIG5#l5%JT<%MT*Ijf8gr!J3NwuM;)pQ!&14SGx5>No1GVHBM$+f9k96#cEJstj4KB%>?R|MuOwK%+;Bqqf)dsi^7HlT`r$A?`!>Cx?DO`K(}Hr@n=|j z^R+baW_)LA+{b+QO3EXtYNggZZEn%6$!TxW_MNnMq*kHCe3?c8Kx*~tVezY1WW2X= z(nk!tsBE(8jY=414Xp`NTow=VFTKL*6!$tG2`X1sm(0R7vr zc8hkupVukJC$Y;xa~!W1K?z3IucT50W+|GD0zcMtt#K<>J&hJRg)#FonuT+ebm76U z6N~W3fZ7kQVlMVYN%X^-SSdg}YTHIVrj7WVe@zV<&CHwCFv;_>cPIN*vMSq(7dQrx z%SZ&&U{KMoCL0!)qr`l`EHo&uQX68tP)k1;#!+jfb@cQs7B3FAf)`G0WDEkMgo_1B zg$06&*0{neBHHa&sWU4$0yC`*Ysn(Rdd_38;>%jFIw$+KIB`-Iu=U_sKBNO&>QsD8PTMnm&usQ~4hV=4_KeQ|)KS3bodo&;Vde3{h)NV| zo*ZFcMQ1}4~Lhk`cd{%i$wc}4~hi4xl4R$aW!}EEIe*n4wYX7D)V*jNxr!m zmuaMR|6+WcAHuWJw2rcwyAR(Shqrt$xLQ>aTlS23>35d2dzu&QD7NDLY{mOA;e4|A zuj@rcsiuj-#wl8}SRp~+hP;4vgd z?3Of}q2GrHUDTZ&zsab^*RJ7F%#hyU(;DWNJXMx=!avN-URWpYJ8(cxgV{G0kvmc6 z<-T@k*VoLGu34JrH2a!=I(PA9LfUqo*6kXK`}_7^FaJcqI&;6*^AhbH)H$5SW@Udj zI>_*N{rKf~#eR*9-+gY%rlK-k)lWlQhOcMJo`DZhj6AW^MxV^%zEpBCou)q?9VeD4 zGX(FJq0a5v`_azk%YDmj+;W*3BJ^3|Cb?@GhhMPVUk0J;VGDxG+5<_7!bQZKql}KS zfHp1yy0UkSY*qMk*sHbD@IN?;Y-EIR(@ETr6YG)WG$d8pYsSIa$dF}0!@-F9_tZ3~ zf(pIe!X|HpVs8~8%Jp&3HOv=^tlO3@J;*7l!f2!_0_7%^>nqZ)h&u~8Xg9sMUrkvy zVYrbB37{*uYhsxCv~=uJ6Z|7Z_|-Jfhpml{ktt5cLtRY}$pq$fv}4+4WC5nO{vd`p zEf`e6o1vx#WODpZA~0CG!UtL*52X%dHC|w75Bh1`>^dS%zCczrEjgfpb90hIz@?X(AO2FA-R&!Xzg0ywp=@* zq$H-}j4IxRi@Gdcw$JlM{Rj)7SHwO11ODOCLOGeZboffrJtVZ_B)R0x>DI8IbeonE zyAp@#W>^u^Z-(70qaS>SbD_Goml?iLsC9ifG=$41uJ?#A>}B??3e*xrO`4(_V^MaPMI^KxjcpXUvTFH#p#3vFkHSJ&T{3OzWTua`W@_F1_vq#oe-Z>SI@2wNtt>^#naPg zqj@bF9Yj5&Hyr~c z|Ks9>qugoacre~8yi*lH+d3&RWxyX@MI(2`Q5!m&G&3mmyIB4iEJ;!J@LhdQsnyi|+%a%fk{ zqT~R~R#)YaGq!XI{qRIcuw`eXacSc3?{*W(-&IZxZ$@T*ONjHUpd_ugOLj8vL|i0Z7p@ntG-3g0_JeKM}FTiUxS7 zN~W6T%kOO>`=J_wkSD=JXrL<4R%-YZl`lV0&t z;G+o}+7vcde!cKLu>;Rd%PPuMb+JRW z`{#gxJpe6omjWLjm^xq{=c}rT*J>Hk+jdl04FL~hQ?E)7QIw@F^M!P}*IogRP718; zZ3!8W7(l!}U`OsIZJDz~7OyKEmT zEM$6t6=r+_ljwDw9Go2kb5T>juF)_z#bK5O0Lu7X2RAzZ^8eHZ`r9wwka2g+)ZNUDfI_C7 z0ZnE+TuZO)0qMoMKE*{9ZmmZ%=1vJvS>!^$MWJchsS&@35qEnzP&XJtJ;7o1Q=l20 z7XjkVgmVLhNIwl*nf65#4^6U0`-rPg9^(Y)mm+EohN*&v^v|Bhzr1MZROo<{zZTm> zxD$;s*E#T)lF+;EGOIfd@(x@or^i58sbFI4*D;!XE1c7pLYL``<>G(xeY}Z-hjklj z+Fy%HMv?ye*rY@cH1O>#yY&0#;N(PE{AbF43zK};{;oEAj&!esEG2)rt~w+=b)8;E zdqIA5l3TkzH9xO>vCvv=B37Iv)x0?JAcvv`KU(kR($-iYlJ@Srw9T%5kbeGTIy<&x z9aV5!nXVTPsE?nC#u@>5qk+RiH>*4d9d1~PDJe{ZpDQuV;XoCX<8 zSkLR)kW}J=^*#3PGUFD1Dkv8g79Ed+mnd(Lq~B6d*)ou2@O7Ni$a-jkHxoLk9uf@{ zCyVj(oy^r+6_{M0{Uq{4tsgi(gyW$YKQ;YwqE^lQsWlQ;m=A7(605n+VN!`H`TXDd)oF|D@*Ic>I?;KV^p55Bv?Oam8O2agBe!<UP$l#o# zb^;*NqW+zzpxS~0gmWUB+WJDm;731-xjV}^o=3;^p+CLYX;z_p|Kl|97KIyUHjx&i z(-1*Lw__EEh~a=w9y(zASk<#m=5#!~PE}7a1~yk@x(Cd*U%Z!6RJRz1wpI5R)|WOj z6GL{CE)zggIX?|>=z4X(cK^K+=bKE3FZ^!fe@O-?CEyrq%P*-L6V=UHR|QegNAljW zj{0=&xVx{_y3H0^ocyf(6?%U)1&>H$1(Q#PBP7%k5V0$D^!-N!nT-Dw>O$~H+Yw6` zgJ@IdoVr`vwASS)MoNZrGaG6OiwZ_&u=-D>@YNOU9DV#6vdw+F5GAASGM_NL5kPPK zWjyEUo*NHHO|xEtI0FBQJ~}G`=>JVboy6SKC>8xax

Lx;+KP!rXic2<>(59-Ix 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 z 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

i5Heut3Tf-89s%7()#Nw`jjD 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

H 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

nx^Rcm(Y_`~3Mt(KU^_5r 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

i@5~bfLPf}_RZ{mRs?3fk>t4? z%M~CvQKBo$s<>Hi_cg8QtL?{XfqS?(%9jBu;~aCKCjrH?xG1 zM`x(OkxC02NHLDO1pq1oE+F z>S45ZR0WH&TXS7#&pS55hY+FC&nR)EYzVZF-T{4VkYiZip`6)vglMotx-Zsuv2jva zMyJKb);U=ws{?_t1ii!o^zCc#ojwU}04d{pi=wOyTK6ZbbY`)nkpKr4iKBYL9hPs9 zSknNo`#eNo_2m05b~VwVfawEiQ(+Gdd{O0 zlO_^O14XK=FOD+oZgJ>*VgML!J&Gi1Os%!8x61DmC|4EG6%zrIocbP}O=qbAM^aXf z$l*ZF!HUnt-s|p?<0e65E86Dhj&v}z$^&iBg0ui7E_7iWyg>qALIxMV4YrYy;1|=^B6k7k>8J-}}DLyzl?|=l`u| zwqU;avAYc!d2`yPlra-zs30?v*!t9kbpsiip)QF|W>{>$BDb)eRL?u0;)Kv#=+zn` z;{4dKPRtzDZlH?wHe&_l@2aHKAF$k#uX2YB z5td_VlWm?AK+GjRW4H(hB+BFAbVA(R177|#@X3!&o~{N?SNihK5u*y+9hXhYgUE5k zobK6?AP{vHISa0~3J+#vR-{(T+%=u_8%jpxnvSp&+>*F|yWyo5AK~LKKE}=M6*HpF z6AV_xY^n3gV{AGn3Q^oW?yy4Q;}KKY;u0A`l1eLVoXAP12(V_(f8Ji;N z-nLqO%mTy8?38_G8eF8Aa{;qSUStRh?3M4c>F=bCngRj`N{R*@#E4xg(k#6hvH)r* z%Q|s@2*TZGFmefXmv&l(ckTVcR46a znR?pzRzNELfn{t7m7Df@M)#o8=cM56U5@>oAAf?oFh9YPx@b&*q|J#@4W7^ zKz6rK>intFplukOJ??o<^fRtDlSQ_2IbfLe*Zp)x3ray5Vgb&;$_|MbU2P!r_jY-1 z<_bax6Fpw@zRwO>V6!Y{e+lX|T_*?|hu_woq|Re@d_s$_^{XXfcr0SrqNdTk+ zBn7*K#6}T-rjUy~);QOYI8(&hhYV%x!LF36h4h(i4}l(ei4;}u+%CYwn?(@D;D--s zf9?t*Zpz%o(6f^;_u^4-fC(Q5yea=q`@u*c$5=H{K@;n~H)UJc*&7Vot@MrzjpT#T zj<}BDlvN^F7@h3sa}`o)vvtFWZc~dDgaQVV>6Vm)vPwRa3l?VU3&^`S`Ox=>A)+#t zUDTP0wu{-q{IPtG>`G|48vpcUq+wti5b2r<_%nu{JFGYp;dUzf=ZF2bnR71IP+ysOdd*Q$^Td9aU!EBAfrtZLH2SU4X*f zPLhbXe$j~Ad#ERmftsZ*iDH?|Z25=IiA4aIc5f6W=-RSomb;Q#?(N{uU>=N{J8Eq& z+wuoXy2JObflt2#e(K}I>2}0+MNZYv2hZdriWMw(6qZ0s7@JWA5uo&QgnlMCqGq(X zC&4PtEN1RSw>Ly*>;d?(Xg) zhSGyEiTzBBafRoec~kw%fBDZ&KlAf{^FROEKlBa%t9LyA0-ij6i0M($tyeVAiACMZ ziL$_*6EAsz4M?!2e1QE(P_3tpA-Mjv57wd%mfn^Pq zni*3}y8av!OiCo)CI2%V^;)R6O|HaAYY_$Mgph!Nab(ADDmcL2wj>)jI*CKr*B7kh zjMi@Jj6VTa#ihxF2G@GFVEJO~=qhvS+ym5mslw8&=&tH(EwDw%0AQA>N3D^4b1fh_ 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�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� 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 Z)1r6JRx{ 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

1ef$lK@OQAV;YO2CkL+_#WkW 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 Ta$@-hAPa|?A*`f_< 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%0A$j`-R%wbt7o3+ReF;cx! zHeKi~>rkgn5~6`2kv;7;J-|teID;!`1xJ6R)NV*e>^!Tx7yU8*L(bOMIF)bkT?z#!pBB^$YC5WL0`=8(!29-%Z3I=wN05}d-7{$Dcm0Rmc9wy3Awn{!dPqc_RqQs9Lhkr?22FtG0K_l z<%C#0v#c4REF^#%C-$_J69}oSj?jK20LW45Z>^BCWb1x&3`sqImo0G+WA?_{}_!_7b z1B+(Mz2PN0%K}7#78~|+2j#?A9T+T}7DknVnvW3=3mryxF?LGz1;1;o;k(BQZZWte zN>kFjy7$}Jum8TR$Aj^EHa)*Z=J#;h-~$R@^ttPg3J*I22U6Z*VK7zLChj|6tey)3RUt+9vMZ*Q+x8dZx2Y5g z;o$IHB!Bb`8XCQnqIUmDTJ`(#=SBHxDceBiX?4At32;J@i}nY_VU70TJp)Mk^R5Ys zZ$JYQT-b=<@RhCyyB_@Ck1bWDtk$KZr34n%_mt&j^=v`{PZVa@D)zouRn^Vl!!Gj3 z__?hkVm5Nou=u-V3nfuiSJRG*w4|!w51Su9&(4Ot9^n@B)sNJ&X zK|%hO?EaQ?q{j3|7K1N7xd1HLUi{CxsDPoOqrlFnw@&9XSG1A|8maa{zLBpdfc57x zV`sxa>86uhrtIPK&E&>DldbV2%$o?G(&t6OvuR|}Ym1z5iPFzmvDdb{qess?db%mo zb@oSP-|pKgRq)pz8pgTJ_^Nv+)Xkq}Y zS}CPHur7b6#MuzZn1pd9jL$E#D569_)-9F(G|RM?e(~iQoT$^UbW2>n`O1|6_<6Th zex!whi|WtYKbm{HI1c=k>LV+gs$N~NRppjdG}}JMPoK4&Zc|~C&r9-RKeDe$I6T-r zB`86@vBD%RqVFU`s+mEQRvl51xyVy%=g+M;=>D=-Ja#(_9=4^s>mWY($|h?+0P&ag|Ex~%CXRNUm{rv)RC_c zi|Jtx?sXNhs1ibJDt2D-tO-}cIJqtT&XP$>fC-JhB=B4D6T-*VRk9kN=s)-?38iP- zc2#wR^Hpk~=RJ>HAy(%@xN%}?@JX=elbzRx(cr-zb-7Z&|Gl(HQw5{( zJRzL-Bq>*EdXiKO@GCCdgBG|_JXhhs{D4gcU_G(%ufB|Xt+daV@qM^d>H57Mr!~l^ zen#B^D2rQG8ol0s9nhYVskWl^In5Z*=dx+Lul_v1^< zxByD9M!hjAFoD=dW^AbUh4~L4WfN^hfD>sv2AMd2m*OKD8%6S&WRj*=JxwZI4Nx{_ z>+4&6_v>-VS{|L__5HoGl#{VrUQ3`Zi4scK8w~N_%uBrW~YY%7KCbk^JMjU&p@B!&G~J+#43HgTIMdm&@NdEO2D7O zuoX!zT zTVhZ2P-<)|F#txezvYUIxmTafG5a>u1LUJW`+$R;>AxT2V?ig2I*?008TcyZV!)`X z2L`uXQue^chy1KXMh81L=XeLuaRcAh&#?L_i`p>Y{TX(-+$%%uL`kK#7(1oQrfrN( zr7wfPV@tvb?+iA~RVhfGp9xZ8Xr#Q!(~`k%+Xye&yi*0eI8$urhRo9GiuF7jSFi!8 zblDFumB?&_#hCX<)Y`o@B4{8@*Sm&O_Sa@o6$L<^qiQ$J|bE8UIRx>Xr!KLrw0UX%(tnEwh2e=hr zLWwd5y}}PeCI#0U#8QXDeJ6M+z~Tl}$!#771UbX^5&iv`h&AD|uma911$bF0Lo$YH zzxA8Lb5=_~ZD?tOIe7-7Xq(U&$aZD%t8MZ>rO$U30Y1dmQaz#roUe8XJbLvuO(m$5 zMWzX^J{hinwi^6(5+x?X98WBA0)WS_hd45Z7$wBswZD5e?~$^5ztglSn`9Ut$XnqT z+$bCyYF}NO>=yP)A#AU}ndczd2ehwB@AQ9uZty9pkdnqv2|E}0TkR2YS^Jfi;;L+K zDqa37>wuRUw#D>=y$t3RVZGm*O9Jra$jYSTrIK3<3C1%Z>n>xLRPW7>x~0ru3CkdX zq82Q`FvnT+!niH-9yZTR`F@dbkXBjoT$Eg!40&{O9)cCHogc9fj42atl*n{__Qk*Q zovt7&za&Iay@qTsZZq>rQk4`O)cEMMb=vkJmz4ygt0CTXHrsw(>Zhm_K8IraSR_3* zHi_S>RoV%5?Bh0-kiA!RS64Ms5eJCffhdvGd)0(Wf}&ZoN>(@eTNs&&t>4lOkOZGE zq(;)>FM6sX0mdC<4#ncL7Fqq|SRcMo&}eD@eF)V7&uISgCoV5?-Z$qI{o1?M%+fLj z4bIy8-C$=YHL%s2_K(Fq6M3~Fv0CgsgT1VJ*3vNN%l(ZjO16Q`vyqwdQd^xsWu;|g$+4JYvF#9 zSx)m`yJV_mgU~ndh=7O}-j=e1@{)x0XzBH83~INX_HS>!dy^t`HYWe{O+miWuSrG* z1sV1&yP3=HI_d2`_oOdm#JKT!9D_k37nMFCrhqBgYTFa{&fbuo>qGhH{!~uGtkUyi zi~~SpEK-K+v+GU9&hL7F7?ic0ffCr_!E+6OtZ<2*45y0Wl(SSlp3z`~fWclfQ~wZz ztL%6SFDmT>z{kQ+Vzz;%%zzN3&uc@uE2=#h3N^NiGkO1FfY#%|Zh7Aq=6`(t*$Gk7 zSNi_=y*<~hFQ9a3U4~voTjkFH3~A^=-+=ehzkQ{mM|DH z0E6d}VSwaoCpp_V?^l{v&m_CGe20|z3y!N-dcB%N>?(iGS@9chVLuoX+t7UkHCyZZ z2heE8nVc29WXWtGYn}NSlJwL2m}&v+MCO)MfIEHk6{mwyj||3hcFrh{yddKyKn}b4 zuKTWDe`lj7wuf`9elj#GN&7&S$8am%2vU9RM$Qf|_5iTC0UAs8)*iW}Bg^v9Q{^F; z`dE0c<8-k06lMJjNpnP7ouA&+?oD4nxS7s{Qke`K6Gk1jJ!eRkanqB&=!x&v$=b_x z0gU^4`(hjGrJV1;mgS<+rB)s2UNMWLu^+WcNn;1dlRq(*qDQEkr6He{r6Aoiw$%y=AT&eqH}rIbOaO^Zr;T;7rg zK>~a_K~*a=+Wj7xfzy9-Dea1UIa!fCQ1$ZJe_H#3HA0^AJSKH5ll_rn8@sg1zVh92 zs}{Q1vR(Xxpr|)AB=!Izs_30wsx~BS{`nw+5>{<_U{YpQ*jIYX4Oyry`pOA52}&Oo z#Aar+P^LPmKGc8k)abo?tGx8<&-+J4O6+k@P_pRM?mztQ2XD2yUGR#|20tK1N_n;z zHWzzH%ii)FTcu{cMt7+^%wnGeVID3DI@-4T{YuAcgUFF zmBrq|=q2l@mNEeHFvzsem0Pu)*`G5uxz#%=TB9DIl&~hMb3(P6=;$UrJeT_ z!?Bm&&Fh*M{A=UvA;jw^xnCMp?XS3 z)CwFWp0jD0^0SD*{+sKNO5EVy#*X#W`H}b9TR(f`?N)uhpaePid^R&?&Iz~jAYu9^ zjMe9oXv`kA*1jJGp2@Yj>cYfs9S$4X$uf6JGRfV})bKNP*vJID?SJnc3G==>zdPFe zqyII=YabLD_t!D%i9%U@FbvJM%;S?~(8ImC2C?pU(c0Yd#?x zCE}9kIZ3S>7C6Qrt6%c4^fELV%fm`z+s)3O?%d~m?d>E>wfFV+UtJ!M%YCM(DRY`u zWgyU*e)Ar(7zAnP3u+`oqh8-@vLSzb? zq{wK!nq`Vh0-{+$uSnXDxmYth4PXiZ zbZlvtG=$`@^v>8gk>x5Ht5zcYB+^&9nApT>xK04{k)qu!DyBZ@?Xn9jlLL-r@@ct2}9uZ*7e?B)@1j} zdwX(kMzY&O`I>jWPKn^&XFSQKKv*=6@m*i$wSVYy76lupWMpdW;3nZ`YgqTS7>EmH zw<&3-fRGYyEQ(pal)?~y|Rz27QXMnS3OBDq~ zc2q7a#H!RcBVo3#nj#GG>LW$i(5G()aV8KjglJ2*HK1e18jvtI-1OM`e3zDf?GRi6 zu33@yQoSN)ysn+VzPpjLIY3VJQVe=Zv39(RdC(VZ&M#|DEXGq(JrN>k#Hc-n$B*of@)kUwi{O8cRL699Bh_o=lIE-eF-~1=$l|d_5sey=FR2%-DUeq zSZk92U9KW183?~mo$bw}m`n}V&L>>WCoh4U3~)&MVX`Dq4e3c z=g)utP68?d;`p02@Qx=7G2!C1WOBKHCC8HiiP zkO9pOf`d5)LiRz1G}^p3=bzzi#Ph0V5Zrd2kr1?kqC$b2eB;!jsUfpal`DE4(}<4PI3@6R~p&-fs- zX!xRo0q)Vp~53^Ur62eY+`C=msk###_uq#3=iJ~?daq-a)$Em z`6BzrR3kbGljKU|pz!1RexJ358B}YWLlv%8nl~Szo6Uhc$HEtXJC_-lkur6CL^if! z=>G33MQ96L%5)+u#m9=w<`b|(*$_6)0dPfG0a?rU|54KZq&(HnXW_=U3geLc{TARM zCBl2}l=3wHuT1idkw$3iW5v46a!Uc0%o5n5d&8QexG?Kdsrn%Z zP5+Dm@(OUgQOtH9a8ZVgGFcoMoU~+H%fMqM8+IwxE0?YTAd#K* zm-*f^(Ela_wBjJY{;4o*(rW%j)jUZhocOY(Ll7s8t06kzTbI2sPlYk>WcK||xAGA~ zzdvV?^IlP&U9Jx4@_@I(^Ee}p@ooMrdy4bU7_$r`)0F0Mrhfy%IH#q=$GXOh2Ed7l zFUT|fv(mT!+!Zj+-psm=!7*)_W$n53dpALrfK@ofrkpeesR8s3poV~v01zW%z-1#? z7#vp_VC0@s>yh3U60h`K}BaoV#ikbwz$>z0~#9Y?P4r$iP{0~(!oNKbEKCkGwE;cBH z;SX7a!@KO<0&>vHM%N6o{pZ^*7fLOW5z5GGyWdd~ko#ZOtREi;cqj*65cSrp z6cyLvFDtpf;=BnonBy_>qBBfZIvEo^W2VjzUR&FcUVFp~+a?wyL0#Zr`#xt6pC6LWH*2{7jTm1A zw@ypLdMN$>;uVhyQ`FS=YkAoRLQ|I67F^ki_-mGRSNSdWsGAI>M_ z_kwY4XDyGhNa3}UG_02)fg76!<}U6B|1RuEr)`fmyDu~Ewupx8bFX>)!KnY?i$m=c zIu`5zLGo2EwI2214S@r0X31Tjv%)*|;~(k>xy(6FqEA15dch{C;9LB$ZH1rR#fYn! z*8{kN?IrHR59FL;o&E)DG%G2KKl>_rNH#t{CT1KDX+!5{SFfyaoRBou*i%I-zRuoPM4rUJ=Chi{G|>qIjvR6XinyI(Rc-Pm5_yByR3-JZ1 zzS_w;f6w0o7zKg&nSwZi!cNx#H8=cE| z@xsrS4YZT3@B8xaacPhHyGyQZwOJ~$^Adwu9G3v$exlb|E8ZJy>ylWkpV`4NI}b3h zJu)lHP1v|j>0R>slrPr)d_PTFoqnhI1fr^u)cbs_to;R!E=p{GgunPQ`LI}f4rh)v zv=b;5pFMjiYQEopKmWvZOMu?im2R<3n1FMX(&y~VHVMPL05T$H6$1>dP6Up}iR(6B zpdOjT>xu+t^L!V{)&Umx|14)E_xQl-n+@G-4RWS^f+uaz2+~q=skP&!6B44yGPxL) zQnA-w0GX7I%UKQxDQ!vr`#{2o3W>0->weLFU-X+GSJsaV;ggsqOgZ;Hwx~7M&)xKk zHhPT{Zk}IKrqfGQClrvba0Rm}=6kGk;PfFYAsp3I0@2pq&bL?Zw08a}VZRj7%DD=n z$r`u({o=v*U%q25IPC$|?zlP);Nn>Tt*o<*Lui0OXpYF=^?U0l7!GK&U|8pnSv&7? z_PCxK%CnsHHiN$A@&melbUDBqSvD%Ckr%!@EdpB0(X-zFo(dc{82%AJ_>TO$(#r4d zfsn}QEIy;WTbm49BhLp6uiB=5GRRa7g&>H%MN>7{uP(A1*n{|kO18kKEHV+|cdv{& zj?kXkHnanHZL4%aV(YRY+*1|RSQRq7Pd|cAio38~(CMUuEa-#zKC>Url~Qe!;|2%z zMY^gNKR)M&4@uQQQac{{q?2)#jM8`$Kii{}PJUCP_w3d6nX8zSGw%5ozR@q~VED3` zzU3Pfm*=S5n;*uRo&GBRVh_GXVsAbV7;YpIKM-Qce%BeiX7_tvrAsN*BND+lzGXT8 z0QV~Qv-@lz|D=zccs%sg*=|WGkKe-n0qg-?Hw1A?`&xdVT*SsKGnXeMSThT$2&j2- z^OBJxWF0(^QsVQ;vmfr#YB~|QJfEQPrEf@VTc7S^2s1OuHr#qE&g(s&?bZyi(7bNV z>d~YnEB3K%ANnjh{(Qgh7Qx1DEFslQBifN-Q+0vfKWtf&Gnq4VWao}nkDrmvCvW{z z^~YOH1jN z{jcS!?`L}nPQZRy>}eOes$s@Km*R0#ar^JE6+X(Ec|6m~h%a9(7p!RUppZ;>& zXI3On{d|6Lt_G&AK75Yc@M_;zb@G*8OaLhoiltT;oYDB-pmqFH&*yIx zOS$~-(GgO!#r%ihFH3?&#phet_*n?f?bDAck*wE8h@e0o8V+OFl?B8I+X_ z>nD_wSJ~L#3>kr#1RPCXZykiWz4lT1BGV22Zw(}pja`82vu5&B^VS4;?nM`?KnfgD z_i}dJezp$ctdjZv$7Z$lWg-AF$Fl1e6d`ckN7f4cO^}-s+ADuAQT}J)e$`iwSLy@p zb_hWxUw_@VJ_e&)KELW1*C=5ipa0zZeII<|A{{osDQ8jZM85;>S89fDRR(`lOMe?5 ze&ERy^#z#0{Fi$On+)1gXWJMw_w4hWeFy3QQ|QV=U~%ju8M(^PyP_AZj#>TI?yZ$R z&*@h_&?v1k6zZ9h%Wj?vBJ`HTYMKI^C5s$q=z)oRR|9;@2Bl?rl*p`XxjdE9=Eaz- zie6FwS)M7(rJucJ5?~0{4BlKWN{Kmk<}DAUb34uQJ!|K|*_S9aLtsk;IaK(ZqXleU zY;$zFP6kwUnb?ZC=+}l3gZS(RSe{}!{AK<0A6YQSKihcEYxzb28ql_-Zuk9r{s$~) ziK+1V2o?E^E$bd|)wLfX)yVJT0D80pDCPMnGg5m{l37wHgl7QN|FsQ0F8*($8?sY2 z{8j&MO4x$a_OC<7R!G-+UK)Gbx7pRoaA8GbA-eb+{C~*-Wdo-CUw8<}-wzB#PMxXK$$uQz zV#@DrkQ-#QLg;;hyF1zk-QDx=zNhC)o?1rvj=$Ak&3ERLs-n5GR-QQ|FQy*!w9Hw<$M0Ocb9A5!SIsa8?H`Vhf%< z(&OX`->jFgcx~@%)ZD#vo6V_%Vp z`HLajO|_@LF?Mf_hRLR;P0ZVohW^?^nA~|CQ3&Bt`6q(t>#@bm^JoPrX)T9m>*di1DXX4T+e>eucKvdhZFn?*&oa7Y|vX!D<1sVeGPy?QSBlZuGW zeGj@?tJErGh+7B0^z-R{E!8nE8*_ex^0AKh0}fA8ggZt-4b}Rqveg`x{iaeNBaq@# zPM-NZzt2szrJh_X+bU>jH3{DO6I)F%U%~tu>&%miD`g8n?lMfKbbH#Tbj4zk%`U}r zO$Waevsb7LMgATG0i{%bPu{;41V3XRF(}#hInRZ?s^^H&?gvr`qD`$--)<-KI_FO^ z@GlKDQ;(i9GKh`^pV*gBw!aO`M294K`$9{QtxnMSOx)F3N~J&*1FRS9YSq)D*A+v< zYITC*8yvoty%%C>X>l|}_Zd78mJcg{K)eWwiI8HJLAlR8nPf6{!YrDL5nCuQRtA@qa``emtvn1H_W zF7fn_2~x>}WgTFh!RC1~Y-6@>J!MM3(`xFV&4M;$R1LgbZfb~OxlI2~GBHcT&F)H1 z`ivbUx}Awk-(OjNIg`x8v>9=^xGHlg0_1E6N%8vKhK&{g?JjYa{#g%_^mEm~_E9z- zudqbyJvJ_noXt=9(e_ZjB?CeM(wG5J7`59sEdegL6a5(Y!Xb%_%P)~MUZLq#dGtoE ze|rD{0UiSIqNGaM>-D0t+R683kW?v^*pVxdR$KoLtl42?$d#n`|Bf^qK;`vJB_CA= z73E$SGyhwkeDi!o)rg{h>!8^@oj>#2*1%UhQqQn)+n~qRO*u$-M$`i%3oC_4 zi};ktIyEs&tQ$)?!Y@1L_*1+eg5{x3BHg;wr9N_@Hw%Y9R#?_>espqh|Zz@ zmdQ)fLxAL4E*vD)36(ozzxs&+;B;2cyq+gA?!Qi);!3BGYPghnun!Ai=wAq^v-;cS zd3YJUu>qYeJ>v=+y)=U{7&e)KejUJfQ!=ZTd+D&-yyFw3LIuu@{pGVF13sJ&Iy8M{ z#feBZ=PiJD*bKFudIwlQ>X8AwrD0^&-QMK)to@_nI&E!$>=3N+&vGWu4*MT|jO>K! zbPY<*=MOpTGojjK0_*{vm1IFkgHg}xw!$cFw`w1sd%%KH9Yin@9ZuH&Sv`eaT!JG> zf42PUeojwczT4!fGx;v?aOTJasBOdF;2R9puSYpRS!LNw0IPp@7?MUeoQe$1VjWtm zyigP9G!--c`QNiOF&(R=D)j>qucaTf2s~n!k)5)Q_<$aMW+lDP7jP+r(+?O`U6ohE z4QH5h3SuHJ#m_Wl_+rp-VUMruv~!l|&rgFvR>@TJnn6*sTwoI4V#NU}uV zQX!Elg(@mew>AIdn2YUe83cG!{p+7O!?Mio1p>BBy`D4C6+bqYr0W2BXGHApsE%_0 z`eJ9fw>Or|0+3|w*)Ec(sgO;LilieV)qI^GaEvgAnc3mlL{89bL|511 z!2cFEGcq|JS?nzv;m3|zVLqP# ztIz(l{uDaFcEYk^=RcAjN^O?+f0W45Oe_Q1PHsg@$)ikXO%`G$XQZUdTRq5(OS^tR z&&tkCp$L)<^l$%@^iOtr(FP&XOWD`J{M#m)fSA@fJ3EB0kH4@Hk5)T>c6^Xnt+0(g zA8i07ca)Z#WR@`Is)Epw4R?a}4!C^$A7#q7f9EZ!_fa#DM)e%fXFQ>RIvD0Ua9d)q z*egkYyl){VzvtCwUpj3)$G!(VyLIB(pFwUdZ#GC~11Iku@Ric*zbnamntRFan2?+$m#--{M{k{*6jaOqQ#BA(c8k(3`s3%{!)I*T!32j`_Hnp6x*&0+!i%x z>xBuHzq4O18ilm|w}9I3US8$-q*QtM4xQ=IIxAN704xf9LR>p`Taq5;^R&pppUsVZ zGf_lq8OJ{Kgb%HMH_xU#d@0o%A?iAR4&X`e?e6GNp}&-%;=6o@`T0Iy|H{D(UqN90 z2RTZgaDTQm{-6lJRL^D6L?U9Efs^!DzoJZjW53%!yZEM)nvxN%#ZJ)4}dx<9b_c!(? z_qL;dBh5bOO|lz0U+UW&+d(;lm({#=_E;tkup0p_rQjdQTV-sYypGoEkX_;SXc+(s zLxq1I$e4d;JE|p(lOUaJ95Nz!b7Rg=7n9*WHk(|T5A<~$@{u;q?PyjCB%W-Mi5W?nnnowUk;DKHMs{llK^TO8O01(t_2>l&fbyVosYB!)WCBCz)xN`01AFIX!?s`TXsK=T%r>4ruYH^z5dw!`tzYbaX@6quAi`d zAU&Qse3^kx2A06Pv65s%{d?RdVjV{$96=8Qny5EkncWfw-KBk)pwhJzoTDrpMc8aW zrw6c*@l#115QQR-hk8jvpOIPfg{fVf1W#&q7^5^jWSzf%892QPL2=-pBb|N3c4ub^ z$++4e`TafgN-&&Xm~A{179ZvPPC%n?ns0z&)+zZ1J_EKnJ~Ckc`Xv)m-!qZX4@mS~ zS&H9G)u|X={&%K+fZC5iJEyyMj&b12Jy-Le8fShk4F>92Rm;_zC1 za*2UaO5V6oSPRAvidS!$x@k!G(e|4U>J522f))UayA4Ys#X1!%1t`NeRDE(SrsHc zZ6+4G5F}DocHR&*tx}%nc^-BelCj3Xyc^yL{d@>Ak;>88BQ@l}LjVvxxS-4f0yBdp zLlk#ud7%pB(pnHoAu?~6hX5!R6|MFg*25aZ0F%sa$@{z8#ii5xyAlxjdu!b$^CP>i z5HXOi56K&NlHsa8k8wlLJZS9q9BE-Is(V^gr|ivh*`bAqAxtSN7a8M1Zmj>S-Se-b>Lz4T4De^mA8U-_)x%*xsM`r|7@$gtnV zxvb?U@%Bm;!Ae&S8MzljkRpevT2d!8{d#YUmI$A#+fr`+LIO?f!`9Eka{-yw9hr>O zjt@&yCLIFIO;RjbJeS_SU6iNN7Sm*d6MW(;L7|qns^k7s6*W6wOVq|bl=U3jk}5a{ zCqCC~4pNAt{RGe0=F_e2;1fvW;=RE@m6TDe(OJ*i%e43o$R zP){3Ng~XP`yc*FCdht*6KNvcs6@PACx@5H8z9-(h&*q{vB?2G&nd-(K`S<+xpRvo} z;oEahz!(DgiqNQJpyWYMfAbn7eZIDT>|2Smw=R7cma&eIAg-!|1l>MHwz`zQ_ma=m zBFLLQ%4{TQ+{q%DSuQG&PyW-nTd-hXW)kqOQ%_rR2v ztn+$E+LTgy?!S{k{~#FY)#unBrdVc*?3F;3l+y8H0NbV_=Z3B%YzCwf;AO(*E^PAv z7GJWNKhE4N@>);%IpY;F7R!<%fL85lo=;Irl3vzTL0;&f=0~y6tSXoOWAKKy7r{Wr zvKGXRGF6o9aV5Zo`CiFzu{8a=g|{{uX{ z1hO?`Wms<$26#k<0E0YxsB!MR0269uDs2$i+lxIw_-A2*@s%nvKCNuYxU5}*|FU5- zKr>^$!)iyeo)19Wq(I$}*)#kpf2;c1c_bWFM^jWY`h)C?`CQF84sR#_KG1k0Tdt)Je$cCT56q&X1CfS*-0gD$TZdk=V} zXY=_#yhulK+Valt#fDw>v*dosZ9q|2aPZ{CHZvpX9d0{mqA$P-XUZ@c>{@uh)q00f#+ia$SFxC$I=h^FJ>6CgG93XrUYOoZ@UeRD=abN}b_ z?>py$Kdt=@-9Ok%>qjaJwXC1hS6;b0l$8J37ysB(=r27~5Uomj@jaQbQD6w}dQV48 zreqbJ0`}BDGD}D3d?ZxXEFU?v$e)n=jc6>NM9DdNFEEbh1(jRdByBa*zY*KsBePNx zu77!c$#vQeo*zoAcZzlueI)jRpH_Nb2y|rg-E_QuZA%)Tjx(Qrq3%$;@yFPlkQ<2@ z_5m~Kz_{&MZF3|Kar%Df3WZ$roNx`#8MFww_?M5nr z(dIDuRnmo=jPD}LuMlMuLI4{e7@U*LU=8eJm}iue`$%lw#>H-FzivPlV)RY z(c2;#*>V*u)hQwCD`fH6L9pxFdSBw6=vHF~-2-w?p(M@w-aDsldu8@voo17L^*|1T)Hdsa6MI+AZX+}=Poo&frfOj9wA_YH z&=0%j;L(Qg-<$pMXmrWUZ}$~?SfB!|oD~v^rrGP6n}9ji^^{=A)IS2(s{O}Bnl<*j zV?jCByKUJZp1upE-M;?B3|{hmhz#e~tK=RYz)O9Ow$<+Er^@183s+6ilU)`zL3(H@ z$xSBK&?@~wB0#oLZ;W(+fP>n!m3R*;3@6I=mM9(l9E*o<{KM3>Oa4}0;Qmiijc!sc z&e&N6%U^HUT4A&>Hj(6Hf66(Y+R?Dz^-Wf zq`XO6-XH*dkDR9{N6g%eWW!(HD>Cy9o8jLnQ(H6i`;J!`3d56h)w`mmF0s1H)GbtF9$L6Ov)|X64>*Ie)TSeAN^4vyz&ji)C2y7Ex^M&6SH4n7dxcDzm;e zXGJh-G-P>OK=4Y_^hWEd2%Lqs8}|DfX@bK!*Vff{5kw$y*sj(KAtbGOAp&W+v7BL- zC*#mCSMm!iK)v)TL#5sTkIM59@eJEM;(*%rY-l6c65CV?;@#&kEB)U~R%ZSw{nhvA zReGpW%2!E=yU^5oM65Xl_B2XN4{)AT-C0tfX05}#md)=X6G7k(qrwd8qCEW?DW+6 z=OWt|yZmAw?>*x;$39Dm-64x!t@@oGSj)Q>XFiaM8=vh!vHCJGck zJnL1CW52W23TdZZ{hL*Gs2e{DV)OlcBetaqoHg^|PO{_0b7BguKf8L*!1zDwOY%FS z{3|CN{I~zUcD(h;-`Y}ux8C;xqLJq*olb6%6R7iZX_rJPFJm3-HOP&2AlXN$i%%6n z2#ZD2B^^-*0FmTMvG|!5RjO?n8?d8o@T+>_^912#Wt?p=UVM!I?mim4UF|9(C01zb zMf#R60mgf{3l;mD89wDZ+(rji7qbjxGAzI5O?wLdGsJInbU6>&0t%bCZ=Ejs42;ck zl2xnsU)~=ZkYEjK;pb}4xLLt!`dK)4pOe{nCcT9hYtDixsvFc=^4BFq)Iw zDcfv~6iZ(kuQQaK-~#J8PW@?9IBddgE_yb@`RxVY#q;Et&i^u4mfEh<`NTiL38c-e zujBfHZ*6;Q1H_>qvZxG7D&tW0PD-l6W|N z>#b71FA1x}PQl!(eHl&Z?6`rR>pc9WH>}~=GmZhX?mclo?&8FC;LFB3Su5?w?p#JF z24(MdaJtQ4-1>kStX#?v58T)Ns**E!I+w^eVh^vJ$^RvJ{%t<-*08O^~j_m?lWw z06K!b6~qOOtEdv-Qo$!t*fn@2LlGyDedW%O9sa_&mQ<~O2w{R72T639mV0Y<*u6=n zH5scaST5!6xLvYUHqOyj`>&M)0FvC!xHxR zS*!7#<8^b;Tp1ANuUc2;h)g+7CfSf8Q{X+@AAwgzONtnJw8iEDi&tsXRB<%r@C_g^ zY2oKoi|j$FTtshNT@{8Z?_%KC^*!q*M%~X&j4dQ*>fqsjd13mx^NV4=vsFQ(p8y;y zQ|`&k>aVRL+4X_b>@_u5Sk*q#AE8W{H^4iBC^GFpt6)WqoGs#8bt@ ze+RJ#7?k!DzhBNh*|!21Rmz7U!CK+jt;=3bY5AX$np(Jm=_)dk#phT54AsGXCU6)k zFJgb}6aV2qbf4FD=zPW zoc>?FhiB@f1=D}n=@2gaN0ih4Mj9sD1q?fBotClvD#}KejV$hH(KMtU|6Z4ok2Yq= zSgI;!(=!R_7#-Ut3z;gXZ_t*jSu7)Yb^RG1No*|kCa9TnkjQ{ZGy7VI0Bn+{fYaW% z#W2i}kdI3LmSiWd2~xgnT?*uv^nJ#L|K96@5Jm~TR~ zWSHIRv%SX7EvX)=TJd=v-Ysn>$$`9ZZ+_2Yqy;wdT|d0jvt|DhB8m9udc~FCl8HGG z#0}x)K&6$ndi&1BH#2!(+r@$Had1bL7b~B&&|1h6+PwzcZNF=bXf+|%p4fo%7T@(p z9I=^Cgs*YAJf-NHDm{`qPy8_zoRs9h%$<0(tlYHzr;QTJsALW^P}7w_!66GrZ@kla z)G8AcMYt2ZGEU+o#p@XO@Pe5*K?B=P?4m2-jrUyX?Y$nyy5Q73f)5~E za^J;kI*h;n{%&U!9J4d(Klj9UGOG21!X)}^V_d?PA}kmKJ3wA{=X!^hULx&4lsHH< zgJq-t^g~R6@&iP^f6qDB0E_?ptCxT(KzVZ9y~rdShg_FOV$^$_^RVsw;b(p``!W%VK5Sna@B{f6rr*#6wa_AdyJ_u+G0Ndm#%wKu4Af-$;6EL^m|KTp{ zEzQ3AW^G9SCVXB0kUuf`+-yF3aE2&lZKhU#y5(x3@BL!v3ou>#9z)m1okoZk(n5@ z&4H}KpG2E1t`LuklV8=l%metq(d??p_|+ZqR|S;5xX!u7o{8YeDgtmSjsA`#-IWO@ zfMs25(Tb}s**LpYFO^6ixmP;`QkI#weFx608KBx8?zJZ@8IR1YNQF#-mnvyr2IU+9 zx8Ia|E2atG7a%hU{F@Kp4rTDV$U)k^yexPD<=TmL+N!Z6_-IrGP-CjS$){-9WFhmlY=749fFTDuFm2=+che1GqRP0v;{E!f` zxZy`$sVlx`egcnn1)8L;KkVJ-PBoMm9wm1^kP`pCV<~{g$|SXRj!JtmArQmMH?p|yz;Cl$iiN4WbNPC`)|E1 zc6)PC_@^qDn@^4R@efLW_;PL7QCXlu`S~M} zznW`N%8U@(o!~oy8YRJlrs3jCa`5z)E-U{U!>6^VWP4v4WTL#mXZ);9z!i+9NF3xz zuvJS8{7XeoVPn2zqg@X-u(yj@nF5aoJUncOu=HgUNRq)`aF&`v19@*?_P}yNL~oN<1O(x_#fU2vNLwoRz=8Ah!q-y1_EPzuf>dw4mJdb zmFg!;j}Ge7n|@aNwi6g>?FgY7+_jPppMa3l;)2aC4A-;EAam?$+CR918w%^JjS_D) zIuV_*xEhhDGJsly10WTiGqvQwff;z0$~%=SF@wE|(|^`>J*IL=aD}SHG5cJ>f4l~< zW-HVDi;}rdMuW*jtaujI*sUV-JkS5?aKW`LDA-I_^=(9i>W6t6TB627Ed$GAuci8# z386-?WTR&Nq#~_DK>HQeI8!Q52t@65VXa5qo zM~H-xNAM23lJ#ma9Ag0luX;ZQXz!gJAkKaEV(#YahZN`EX4$&!IJ-F?xRM-9XI4B85=xU&nuT4`9jl+>Yx!;4QCn<=CUThvV8x^Xm%<| zz7tV;z88a9yw6}bOvpsN2{J3J=AQE;oIV4qH6uCzF>ybaj=`{%>iV{&=n6m9-|r=G zu@L@%vHHMjh?f`H>DveI&n4dATk0}b9(pqjPVrqgk7`o1E{ogPkS_P%jihh&WoSUN z;Hf%j-uGj)>jtZxSD7#KkXapS&ja{FcK30vGnVvsa&vllJ)M@!5ZU3=gJ41QFe2w( zxe4S7Ijq|qJ-&mcJTH8yiuo3jvMwpp!4VlL;G2^6^l6p?NQOIZ7-ieS=TCBF*L*=K zx-+v!sH)e)%gB~5=Q;h@zFZG9a|2|1@kFI@vNy{@Ec7W$L^V%F=2E$<+m}>U3~g|EJjzEOuLS z_bP*dsUah__dIjyIo*9`P_8N~rvMIQQxd#RnV5Q{%OI-KQWrzBs`8>N4`|x+al2z; zs2`IoCG~#er)nDFMCkV(UvFQ!*aL$i+xw_lvQf9lN(paQMdsQSJ0GBxbU)3ruAler zrTemTCT&gbG}(5HlPcG&pC0eP=!#W(beY99AgjhlQ06+bdf1-hz~6G)oxmpYK{;@J z6(eqYpo#*f!h@*1p`r;$KEUW_tW#(yljvJnjV2F!A|6#06@y|^1NJ*WH-tU*G1Zek zhio>ty%uDT14yBB^3XL|zg+E??0DV%s7k~^%33>NGvf1IsnmMN79Gjg*x$zQLV!Qm zs|J6#Z@SNy!77-$!FQ-_JDj8rBHpX2wA~ajq%lzi>|XoXMLkF%=Ld#J&v)#5g)9p( zxKh=hE1|Z*AAa0#5S`!i)~B{@uq&)qnQ8W30zy;{gpjDyCdw*^TuD5W z?qAj3JP?1KN)D5zQ6~?cjgN37;RKI^+y=LD7WuX&U`a4j#(OPMoyvK3W@W5e56OtS z0Os~V%6Q3n2s?toUq0tc!M`?IK9c~RdiAv+7r~zIBIIMpy=2S_d%u0%-O830iP|5aCXUu0gyLFTQ<-N9YnSP)Jxn@WO@Q)Maa ze}U;s_N85YMSxpPMJhIk#ODn`U19>>ErVtsc`f(m{SqT+&w!NH2~+G_#Rldcvj$nx z)`L$->#3Y91>;o-JRZDqpi^T)neNK{GOChKD62M->6g}90Fe2j1Zl!Dkg2~3uLnl_ z3!BI^5Pp*Rv||zs%up`wiOmLB$xud4voxqF=d!^ynX7;m0zwD>uXa|i+*4UXK*BWU zaB#@U+CP-o_u7CCdn{dE6yoDS0i+C=3fPuBa7iQ9FNq$&Z?ZM5+B`GtD+X*sR)|a| zV0zz?Hw=hfta9*Gx^*SHF`luu4n*G48Ic%MM-hGpGvgLoPxRi{gadOe>8(E)@cGUM zV^}Js%sDJ#dV!x9=3~}yDw{%kV&WkvS9u;^IUBWIdR|afIeSseuE?8Kh^W^YvM7@} zVCmDjS9`4iSbzTuig9acalt`xN7khUMgZVh0h9i^l9kgA8%JI8o=!11>xcQ13^2_U z8$gD|_HYk>PyaZY>KLPF^rzy~$hGhL&9T-uzM5P)&7^lf_Sq0Na7nNu95 z^vyOQs!CaD@!6pRZ`j`yZmocvh7q8LlN0+Y}=hpAs+%0Exaqy0Tk-U&0i^pzG3 zYy}zd&bo9xgp3va&Mt<2Lby^ch+-RT#D-%@7fCl?#z(1-rk+y1A6wQym zcVt+XF)jAw-ZqjsEg|E?Mh$@8o~-Jp4AOdD^Y1{ygrQw$NUdLAiCyiugl9^@8GcZB9jRqq9|wI*B=*ngU8 zyWJzI#**c2{Hy=BWOBAycN<`B9reo6CL8-rULReX-+pqV*YCHGONFf-GD99hs*4AW zu1p|IIpF8e>{puX*PQh}d+K3lA#|kri$1$=+%^xwYFD+R_pKw#LdF)AU^9?GwVHat zgYC+Qfe3mM1c+XEf|RbGHFVh0`RV89$rodvV1Fg`Kal(~o4`0<4?!yz3AvblWQY?o zy2V+)lZq;7|Gzz3TY29#vAP<`F|xD)%s%JPC;^(u$RC9%Q>Z52hi08SXQuu9 zKHur`W1T#0web)3BR%?k-{&Vwdq^rXuf0&VH5+^;UCW}5lr`owWJ&hY@~@U>=M34w zW){Q-8e5+_tqcBbrCPv2mG5FU^H3~f=LGPbGew5lXPz1im(?c#8rwoP-zfNW?1NOR zd6FT91VJtqoQ~DHmPpuQsw2OpWhPz#;mE#Z`p9F z+-E8u>d5zOopQhyzfL9}y&+ut5+!dP*?3B#HBpHq2;7*BQup~2cMh?=!+aE(bi0Ze z&UFO-2p$60)k^DF;Z}t2Lxmwk#3Z%qSZJ%Vr5ke5K2b_SidrXLZV!9pF3(((n1j%p z)jrIoku>uW!8IZ=7R*}qHF9ryp@Z2@(CahzBa~7Jp!nMbE9ZQ=AZCI6gOANmtniV| z{m$u>Lr2?~Z7<$S3x`gwbhg@u5K`E3;p17Qa#Qa|eriR#ie=>1j_zaZ8eJITv=;&*Hba2#-xY4oug zOOF`nl)G+#klM`iBd_+_Dk+%+Txb}vlr?$iAmu7$VPxBhjT6-i4{4An4@?S-7g;v$ z-RFiJQPP;r5CIzVFd-jMzT((d|0$EIG*4EsU7(R^%WPQtE;IM}*Th&PAVY>r1}Sg# z57X-Rd1r5^UIy6+owCCnovlIlRP+o1E+d1sQL8OV)dCv$-NB6Z^{Ltsx~Gkj(Q_ut zug;fQTL->3x8mNh-9wZhqCR5HUjEhJ8ieSvtA6MQ-THTDlxz`x?AXrmzZ(FTJ;C%e z#gK^--)H>if2!Nf?4z~5b^#Y#x;BazH_jPXmHw(O5bBg?wq?{d=lSHZ3+hZC&b6_U5RxE6py5RKQHh z!^(U<|tHksSiJTwUe9NrZ|? z-43|sY+xr74)MC(diJs3E4jMj?+cnk3dG+~58(5W&Qp5ULMxR5`u8XU)iQ{okws`l z`}s#lNX2zmg8f>0Ym8+~7`yu7!SF65gl9OROt}AT%69qR^?dDjbbek%V}in!kd>U# z(mQR1F3!7N-TJIfOQA}ohpkAt55J!SPm@+@N!dx#gsdR`!2U2He1ct`J^j&gd(f0v z1J%6$b9Q-EkTk^_PN^SfubXWSfGDZbE*ZVtv+E(lbvl-*K+=WH`?#vH{&!@AS01tk zl>kO1R$1Gw7FBr;;t44IIFPg^$%a1a%$tah-Xf_bS6tr`JOJ1s5{hdhh3)%renKP~4ZD_et#8 zg#?-sXS{rlf(QI8?_(KrTZQyId;T$Cz3QvPYUFH{(M0hXsT(S6xBqlA#AoH?n(T{H zv79x@N)i#B8OR%y`eHr%47LJU$wg9I?gvgezY2!V3b-Yg zn5#clGy=w8lG{1C{lhi|6PoRLCDD8DH{M{u(E1G_mV%xm0qTl zN<*|WAnrk643GYvfqm-h%}~#m1Ze0V(gJc=l$4! zSzaDnd71=+sN3Tlz?3Kql&~~u&0&r-H^@ae>rINMUmgc=d zLjE2m0AuW=R4dsoeB{E&legE^IvT0T7|Mb?OLjz&iLm!l))?Au?6t^vjDsc9--YAX z(hEzEc9m+si0M6ay`P~@$>v5zzwSVZ86%bX1sHgs&ORmvvfp-=h1>QaP~&OT<}JGc1>r#1}12Sa3ljjIZliy3g zQ2Z3GF5l9)RanrX#lbi6^`R|^KJ_J6Z>0K1Z>X9XWt?B z{&X3uFOc>=d{ z#ZPt)Kw8Q>fRT>rr}qOJ;YtO+Q(`Jtmtikpn9g4Z@Tv~iWK)Fgpz+PRd{z$DEeC-i zsg_ve^7g(*S7WcRvjKCJD#`kYSjWN(#I+3U4{35(C9WD$z=06S2r`yZL#ifZeNAv( zMR07pw4$PocU{QsZ?;(UQ0U5O0&-ExN=T8l7MM5v`@)v`+;cushRg2xRMGM%CtRp7 z@tRz}-*fn4I2SVAQ&-t(LL+`adL~s3#-D>Ds62GA%;8?qdYr+fAMtJMZafgu<;w9} ziL!CEs~U)mfXVoTJ~MRKH#Zv_?G`5Vw_>{zdGUtKo67OK66^Wy^~Y~dFY~Dg6tH)H zFlPIcH8-*gNmj}Rl@J`0R*njRvq$n}z6pxtH(HWIyD@P`>`ybu6Pc5OUt?E5cb(I* zef?l-UIu$rJVzx~mTo@)tlvWX25W*ueg93B*^keR=V^mg-Qn#1TwcfAL5!y)C>Dv5 z4(+&HpNv`7<9)PTjt zsLv_EYBckFz=v|zT4yVF#k&L$IHTB6>NgIK41DIt?AQA%97T><30MHEm^Pn{Q71=T z{(O|EC=+wpCnap>*oLg8S4>&=eJ^1VYrj773+2a(KBHTTwVczw4yc_K@R@`Wi;8B@ zm}5qO!nD>qPJH)UlvLTMjs96k*Jn1cvY-zpp`+|f3mwj1Yq_gs7A1G}5B8yh3VDAI zdHT+3OE+Nd;VyFr`PZDG-;jtf_r-JXf&K%GYv=5%1?Wu95|%Lma78N8mt~=~J=^ZwjpxF)v($V8Q2(+)y#X2cIE1Vj-G7Dm>3}Bk@74l@}#?yRak2Rm2sdQ(ClX~ zDjNN}nZ)WKY0m&{2aNe^=dCN9Zgj~m{!z*su02j8y-fet*9Y7oEcoBQ6V_>H0%ZT+ z0p!}Yql}(d`H;!Ib6A;ZSz&k+%wks)P^%e`S7h1l@0a6kgXJ3447$)bXUl6-(y5<- z>CzDO8!U!g{Q+nIu|*yb)6jj+YB^PHaJ96i zSfuQx-T#ieTUHv;+Lfe4+8n)}i3$`R*wO;|r#oc7Og}y!07J^4J*S}vDg*DNZ?&K+ z(9%laAfUdWKHwVpR*gKsC#zv?r9D4zur<1ND4y;DAFE4Bxm!2=FM2zrtlB-96dBmD zKGy^R{D6ZZi?*#B6h?I1fUu#wdH&h9>ak7r@B7rM+%A#Uq$_7cH+D_@+7<(-Gn*iN z*;SfX_VZh+dM($PC4#ScGjz0dBs1#ie}+I(y_`YE2m@vj%oZ{tKx$;nI_n@5JBmJ( z(CyaAm zYDu@IO$j?!*(~8XP|Y57Df3H$C0%i1qn$xkk`oEX(!Qyd3tc&`oSMBDIlg(8xfL|A z3b}r;9ZMh@^4!lwfPQzwp(r@Xa`LGm!5gcORZ`;%?J`LK%z6te?Kzr3)~i@ob4gYt_%?P<|em^eQp9(`l0 z8v7i*wB4B(8G!B(Ekcqw*XLxsWcjuV?8k9JJXL?%RO9Nu{nfd}zVM5)xUR{Nzt(H^ z9Yy{>tv=hQN7%J|KkuIys-?Zkm3C5M*6pminwdP|XWPK7)h$(GnPXL#aEk~ec93Khu!=TTa|>wL#I^QwFw=#LYA_U}G+TZv~wNd{-IrK%w`c;8iG z2HhPPCWKfL#FLP@KFp_cMPDV+C5J-LZ@w#(k(1m`a?ozX_pD0o^5Mbgmv#~^uWDfU zYrjjJrrmvU24O3sIQtozpa6X+aAhae?-!72Tm3dp5Fuvb>jLnm3>=z6uOFioL^j7< zq=$EM-CB7y-}nckCHyMRtWc6V_XcwpHj2{Om7Tn#ee0CYz5Y#qFJNz1$&%fQ4yMSb zHzrJ5k-5lvu|Y+sSJRuU*=vJ82{ipUr#LbGTW0Gns4Q47(qsPz2y{=Iw9SANShl(2 zsSn@fvvwdG>q^45e6J-c5QpcPk{{Y<^z4_Vt(6|Cx>L5|w=LB?U_oc@TCJgq!~r3} z5g&iq71+(m!EjfO`%nl_<0fhG!k}&GNssheA1YaSJ?dHa-JbG0(|Q3ahN5pmx~`0O zm7vW3obs|mrmkLOC6 zU9Dal$@-vZh=;lgjiq0FC0Re>VBR>(1SsWu6JRjwjJyizz5Z45z=j;j25+1US;a*U zWUnv)mF&N^{s4CgOzhyHaY)8*+qO&wExmD~G1#1vQ$X~;0zz>T#d_)NqIUXYKKYOi zrCphr{28ubFwEXAHMM{Bl5N_R=Fts2B_pBL4FO6PBm9Q8_3GvM0C+gW+JH{)=JuL7 z-JN}v3}H1G1qm~rHlJT->OhQA+MTa;MZra@eMH-URQ&+->}Zd8<}{wN(>%XZCV?{L z*MQoD*}9oUz0#1 z?Rs$6Ow-0hS^B#lcB0*+Cc(8o%+()3Ppu5LP34B-6=}PO#n&(hn5r4ejcm=&Mi|x6 z6roxA=>5NJ^Z5wxacA}n$2gKYD}1%ejEMl9JW+H0S3y-J`VEaJ3Fea=8SK^|qw^+- z1=$J44kEA)tO>`Kzj6GXwjaizk&cq|5Ab>wVeio9y1#01WMnEz{Lr9f?B`#ldQ#H+ z9!VE_W;5uR;7isZr-O}E0yrlq227dZp&=McB539e#yZ>am6^#>{`pjd6mp+g>nm^A zIKm6!xkCSf9X_P;UYWh!66--{zURaCbTiYdN-y$Ih`S)Xnlzox8*^1JhZ*bz_)dOv_E?Z zE)!Qx8P`UCp+oW6ZvWif!_A&g74lz)Yiz4p^F1)@gGu&~?U@<$)9r=5tFPKzR9+U= zVzu+?Eola98H}@zTPt#VvW>q-)-2l$#ob6Z*spWM_WPIAF4^~S{?WA3=uLwI_Q&z& zkMAt|rzZ(*V$*C$iv8N3n929>k-YX*qh>x)Y?>elvSBGQKb%vBW146up+_tXEotxU z%tVomcG=n+z_g&M%7YZ_cz6aN#Kb_l7cs+h7KhvGQuVhS0{s=v5H{{pV+T57JxOWx zuU79d<^?#}EA#LkO8uuKC!D~eN>bs3-iiacfFD{WzWVP=^%^wwt}?~d3QY+}4V4e2 zddh7I*F%?}(3kRrKzQFHS5)*#Z%g|kz!8$Y63E(Nhr11xi#H%a5(V(CG00YYO6xaZ zJfHVXqc!Ne5YLkF#@UEKnblhT1y>7;b_^r;{O%sBR&tBYnyj=Z|a1r!axad=$ZV z%Tw7u*)C*j2r@eXh`#EUfZ$Q9r!@btHjlqQL9HY`{bOFzTX-_M$2teW^!-hqIZlIi z&05v4EqDI(R0d!=pl(FB>jC`u%yTbG|DcH^?A_R5JUB;%QN~uq*th8Qqzsd;Fan9! zdM!JP-d5HXhJ-1A!YTw$`pp2f1kW$le99|yRJOAvO4NTygugfjWGar#n?(K~A<=0F zR0k`rUicH){w?N>=xk}#Lmnyre~)M|Sa+HE8~dS`UcDtN-)EBYpN4?+2}3S#B){w{ zsxo4a$4Alm(ktnNypWyI-*#prKwr*_!W-&VFVmH1+>zM_naMZR=r;=R!U< zp4Nb>ZnmDPZ@x$v-jadS#&6Q*Q#%)gJZFd2!F5T28JR5+Qg$}G)zjNb1xUvq3bwoe z;7!J#YLlNC8nu}RArlj`myIiledE|(e5}pV(idz0)umMIY9~FTkea&;egfQ8u>z8x z!3D-V%y{1mb?4Ua1SswE0aEz=*=n|ww+<76lTX*a?a7(sd?&;qAg1ix^kV&7Z%d0upDm}e=$&5}>ahA^o47@m@ zYGyiBxnh9+~mLD33%)nf62Cop2$phMYjXVEE9EY9NSz_j(qChfu#L&M$@j!4TP4J=j+uSjO(@Ci41GAhdX!wN_xqJK}KY+yp66iqqFM(VK@%~CdPVD=gCuk z&oi5)QhMws&ZJk*j$$7}7P;Te@?ZefO8M*6|CBSM?xCV2whk`FCf=P^{6PM58Jb}L z(%$f{BS>mxLQ7OIl*GFV9S(raF5#53XVUX3j;csJmDe=+mSob;4*iCvxMtY_hxRuf zgni%p{E%UnsoOFz#Zhf@7Tm?VtABv{fZ8ErmfS;DX$}Dxf}I&Ht2}kXl^z~vx$}@QpFSt(b@d4? z5K9mvlWb4!6X-Rg`#CP-(@)v)Ru|8U(lI|{w+SE<(3y-YIop^)IMPomlw3)W+(U6z z(Jd2Fy7@4Erd5KQYXRF&F2kVBD|sVAoH^Qig!6Z=-T|&JSjp2g@~l?+fnR(qh7uc; zytVI8wLiCE8?J!UpF3)N%59+FzO?Px0)Y45UVVga&BJ`H~WFPdor|&z*J(kKkTt9}}`T7QYq2~ob&i5Ry zz{glLK_WenM$3k%FL=qe58UnHK+E>47HuF)VhF#Qs?^x$Ob~tv{>hgarwxI00unT4 zHs4cD7U}&mbVH(Gc8)FWb3Ny(Y20reqnX%l~t+>tYag~G6Zl; zm5735rnHoXWAZF-=x;3(zHsM@{H7u7>qYq`0WI7TWk z^brZ+azg0&{1Wp-gqZ&${OnfgPvZeI1Xk&PuKu!e&PFC=bJoZcKGzxVqB8;IbJb5S z`=5zW-v z$%yY)R@`BvX`lE3ytfy4=Y}axee94b>pebY|5&$D1~f{1M+P~q_`FprFH&0~j7e3D zFJ;2jU+}R23%$2jtDf)u5v_n1XObO+KR;ICTf@V5jdU()T>|gnhJLA%WwR{8 zny1Mq+!sQcLDn@op_lvWpOWvUUBmio?cFP#-8j~^0d{6F1C3(T_H@}3e)@|2j@P$c z9|--YfDb@TyNamg68Ddg3mD@k|IHa|A%AW!2r3x}PL=|-0MG^*mQ}yRTLxGe6vT(= z_PHtq;GFEQ);=MGPMZw)SIEvnD7L=refzmu3#c)Pum^ep)4^S3KsRLC8eMalX);lu zmz+(n6#Iw_O-Z#A8W8y(JuU1*9ohRH!2`G|hz;J$txXV01R`qD135pwtdtc(=|2RY z_;z3EdHAkwwwquU_p@`e&f7K5Kd;EMn-@2tcz#hXMl4K|PkDoierr>?05+`km znhYFHh9T`zs}Qd~1KTZUtVf9}is}wm8qVQ7X_>4~CN+e|_;BzwZP6ADO$xVGqx*n?PXwdHim-PLU*#<;s4__5gfv#yHhv*-xDsU1 z$DM(BnQQW_(`9xue?-<>_yt)-G4qE`-h2`7Oym(e2zEIlO7 zDU&r3oO`D<3t6{qjQ`muke4%o>}kmp|5sNbyoo7P_?^AVxY}Zq2zpwvg%$LGOvtvq z!3Efikb0u(Ts-!4W?wl0Yq8GhzhFcRlaN7`x>1sy9|J`of0>O4Y&mEb41G-m!!SuQyqQ&_#vVOFby=HCzBF6{U#t`|&e)~?%uwY)>2iEKVo?bF8 zXcY!RO?5&6l!1$H{|*NsV=`gEFpdDT7vanNr=X3qgiI{inMWR5{g7QK{AQ%abBT<0!|y1Mp+b*K-e4?k}2o-hGh@p)G7`AW+aC`s2dV%Aly>#d(7kQ zEH8HTTIDbv5B_Y)d?eVga<@|hdN9K2`^#=|G37Y-T9ru@L(s#y?GLzCe%?}>EgH@U zN2oKv!x`*9j8@p(h(q)FjX`uq!b(x~dV7KdF@jvay7FAbdCB_zgu#ZrR@*4rNoVj5 zpp1-SGG;SUCVt-n5A^zvfYWDK9y$}JiI~?)3sJLiB5|4lACC_7;=L83t~lqOWiR|( zsk5IMdlYcpcJ3>ew0YQ=l!mE*kRvN-=~)2OVvNrPGOXs~lqIj9F$n4m`SjB1-}YLm zGJ#zJw>UT;+m|^cVO)2916lo)S4*qs_5w?DW#l=hd2JKlAKMy`e5^S}&ath}E$=h{ zL&Qf}BUDP86K9<;mEiW#qa^#g>iYdxA4oNM^nSpqthXlo`t&k{j00bSy;m35y~;{O z>}z3%kdrvYr{xw2j-Y0)%siw*?o{*YRvu1>y!9OemeQ-PE&3eMee^rTfDIR_P9XVJ z^0>BbqGweMRg9d&=pXrk5gbqded{Od0ukDidqccyJ;1XF`qre`>XY{;XI!Df{lf)0UiR#MW*6 z+yLunnEVpLhcaihr!$t+6CG9)kcVki?eJv9MxN9Yd7A*s74EP^VZu#%B z{V}GVFFRP#3GzKF)k7cw7Q&S({&Q0$VIfU|>h!0ypImCS-DKHGT4Yx*W>BX$sc^%m zDui9dP)4i1HVw6sRlB(HvReEn--ReFBzZEA!jAae7><^t$L@W8s+{;V%T(+hn70V- zccp#Y#qXhvl*yJLhw3WA(ysU9>UieHUuKp{+PC7}Q+m6R5%8MNfx}qtrXqj$2b3Y_ z%)!54y59iJI9GBjpr0Y_QM0S}`OO%|-q=R%5y65S!d7d32-!CALbbvh|B%+Aj*QMF zbL_)@s++EgPp*Qqb3@bn`|r|6q%F&Peq?S4e4C$nj~yN4Z)4W6Q!i~bByv_%;(^ar zUUA#VQEXcgbn%QEFffu6H4sSp%Ig)Zxek!io>cADrssmQ)npZFWF|8HV`mOOM4mFc zg-So`%AU+T$cptFJ)!*~&0JaeJBb7GzThi`kSQ5Eey=5RFv#y^AZtxRq;6^iJNt99!m?>MZIao^#i&6Jf?q|ISq&r+Iu*B@32 zoelV#i}$Q@{UyUN&_Bg;cU~hYK>0SGAoDR##jwlskMHNpq*k_)xJ5|ncP}1zWqXm^ z!%QEpxwi3ol~&(~4uhP_J6PjDDxggV0;NAYr&x_DRk<|YfqJRDZ7{#|NyI*6*?t2J z{`$?*W3%tw92f&7UcN6wrYensZO~$6C@sAX-2$NS+;hB$Ga|?MaUpS@@r=^-4E@Jx z>FXK2bGZ}qn>%P(y(t4m@O%tS1?lFhEtDPG?`%lg1-9(mRVBR+xw`Tm7~QZ|RToT` z$aJUY8V7ad;2rBPRlp2oHZd^H?b`c~p8Y(q?ZMb-{R+`l|nF38qBj<3GwH2A@;Gl*$*q0CuCfdaPS~?C*5lBN0%-lVtlo~Mx=oy{@>-^!k5`-hEjRaS6@tVv~-!JqFw!9=L7oZC%Q4$=C< z9DnP(nyQ=FcR!pntB~i0={>Y zXP6$(4XMC;Xq-K*$M&c3CGO=f3Hb;mv~u-Q9OIROtgQQD)ot<$N(ap9>qx zEQm)*VhBH5_gU7W`N^!VUWfB4J<7GD=GSv(YLIdp20;y6-wI z2F?PeD;&S&;Uj+ECmAmGSijN2RPy<`4~!eo;eUY(DrJ_5bynJX&i)ky-tzs29kB1y zsTN2=(>i)#UFjo8&Ya?9s?O$0jr?*DacKpD>`!h&NZBRy;f+yWLZCt1(T&C)*M9FC zqRyc4aR#m$-2F>rjAwhfX3g@h#gJot;e6aPTHuj80bZBNMYOT%zO&j zoqg_gexuB^zonipjwyXO+H)p~idXb3_bgYMFulS4Kp%b=8#4?yN(mY=2P$oZ`Kzpi zHgT2r8c671N@3Hbdi?j3*dlrYMo)||k>d+!b$(p+qqCVOvJZp+2}(Olr8UrZ{F6wj zlJvjxi`u!BnXU4ymQ5^g(KY)kolJ%xYj z95V3(B=)S=PpjmiuZbJyaM#8@t)KU?)AIR)&nkAFO7yIIBw8eiYRr}j;Cj#(Uy@XR z;8Uuk^9e3}bF7{3YDs^JcB%A-U7#h0c}|qiDEKxBskD^&Ro?P&tidjmL7Vh}V3bN6 zNE6u1myty?6lOm`d=x+m3rw&YgTDSfYS)zy`{NMO2~hROrJ`{LV`dxcnhd#_VclRB zXSd(4RY4+Sm^jOa(e0A-LNULU4Z6?Ip3W{ZsQg(z_N6p@pT}9^NwA}sIwl%_C8Y{T zO>LI;o^wO>YCRW$a_)*6pA+?`zXa2g&+UEdh?YmkJxgU~aFlXND?|)s*k%siy}{3) zv^Mku%lR2-^w1U~?YG*6o#lHk!=SW@{E!_JzIvrU_t%I<(CQuu zAW|-;q5@gTTzP_Qg8RNqL{-SF((Q-NIiCUK8ITiIsUA-&K6Y_pcnz+UiK7+P&4zSB zwgh}|HVddZ2eD>y>&bc%KT`9|>W>Bd_7i{4=db(+*e_!5VoPo&=p*ZOHvY@P^E|Z< zHdzPuKG?ac3#PgP1V_p0?3(?*($AJ=2!;wWW$`gGc)i|dR9yY)Eh>Cu`!`hdBa6+~ee4ckG>@szf$S%Wme=?}C z3`cUsUJ_8Wqc?hhqmkeJUdgH!2MMZUlel9p-nZ(8t5>b89Z#JM_R zNBT<@gYV&uf|ln_sB9p*`qTRc4?d}!N*fk9_85>k8T8{>rd(**z**a`8^%Yrr`i=Y zn2{SsJt``%M2q3Mf=jZjYgg%w^~jsJ~r*~ zm!ypl^81^he1EW01z#A48z1HQ&O?G-{1-F!m%6`QZM{z3-KI2u@n7}%GU2NezjQKu zTC!O8Kbw}a(jp9{O`Iw-vttyn?!VMZ+3_v4vS(BGyEa;ftQsSz{a#{z7UC3&Ltp>A zpU|p*vpSx{>mFaL+{nSGhhnWW6f5uXEgKyl+G^H)zbi7h%kJ^m+^+Dn_}3c36!bO zDlQSKiQz2+hZwSX?`M2W!;r1gP2jIm4Xg9GL=#MQ(5@bF8Sy{FP@>s`;?(B64x(zzvb;w^QnV>Tdxqk~}Z{EyLX zqiF2F3xLMSn0cio0^8=*PZ^Bp=bw5x+inC-Q+Xds>SEXciSob0Z z;1VG8dXKh>jRJZ-c$70s&^Z(5X5Da!8UdzsV2# zlda~b781jN9OnHEt4_dF@7d67S8(sKlx+;xzepv{RtC{>7A02-?P_0Ui7eR&&NY+R z)6bEB)!27p9IX9CTN8FKJ$MQDm8|Ol1KVO{yW8qY!u@5odGGFlw@%~W?giZ!ct;=> z-7ZOb=q;xw`#@Ofe-%HzF?zO55HXqhZ}{P=Dm~c!cOktvn{#~uqVok#`@K$);plq( zp9^Yu=gYDvhwMKSGAMMgUY9_ZZ#v|-TM++LFD2Vq-M0ZxfG_OR*?cY_exZaLA@KaF z!E%3*F9Y(1JU5}{Om9lUvmW$-KX05Whap;Wi`6J4FMGZToAs|~i$TW5@@d)1h6qS% zQSC>tQv0=?wd5d`-NBiIFc3zEIc%;qOXU|hZdVW@UxH{n3S5s$|B{jWp(#e5rIF`e zL2MCl>t`5kNnYiZo7k0tZ{Af}1D6{~vgZY?JE(9lkXZ+V9L4YH^zS3~Oqsse_MnHp zAbsNlkf-Lq1x^Uy-zx1(kF82I&z*;}wGj7uxazX)nZ|aC0DSTPb%_v*q|damDVFcx z8SKDVKK*XVWQR=f3;)qSYG33!m%LE%^uf3G1ryVunPK(^$(jr++hB`=__e~51Nff5 zejFI@VmV&UlNK-cN@WI}hc-Xpr&`rZ062AgLO;y);mmfNEYyO>!EMj{GyZ^F-4J1w z=Q1h0!4a3dh@B-c+tt2lPZk1UU#>kVW;@Zr3@Vr)M+RJcHe%SwgO4pfZow*bCL2L` z{{N!RAcN?2AT|rFn-IkWS^m+Bc z)ye~bW9A07>^~wt71T`Bk@EA-P!mB0<5+I#YxUKw>;*`=`q#xX70j#J{^J9S4!KLq S&-oDm0000>O% literal 0 HcmV?d00001 diff --git a/apps/editor/public/icons/lineset.png b/apps/editor/public/icons/lineset.png new file mode 100644 index 0000000000000000000000000000000000000000..755e7899b92f75ad0654d8262471daf7a959e76c GIT binary patch literal 754989 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\EkGz_QL6>z|mSoL((tS{AE9U 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%0DI^e+<+E_D3PAj4+H}V&=*V{8vv* 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%0DhN1Pv)tS$)N%S7WP2G3d8c)*ajnJZ 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

  • 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 BPU-*v literal 0 HcmV?d00001 diff --git a/apps/editor/public/icons/registers.png b/apps/editor/public/icons/registers.png new file mode 100644 index 0000000000000000000000000000000000000000..faf1ad71c9d0bb784073177b7304b3024de56d83 GIT binary patch literal 468207 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

    umEM+C#NOhtrIbMo}$GykuoeB$@A!u9C%E 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 z%0AkF{6ltlXP3GVa?B8>e+l4Il7d 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


    |J3@%F8s4dhNDo<#a|1#J-+yX3z~k82 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
      hHJ(Ov^ql33W0$0 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�Lq?WXA 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 z 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°$!T8 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 literal 0 HcmV?d00001 diff --git a/packages/editor/src/components/ui/action-menu/structure-tools.tsx b/packages/editor/src/components/ui/action-menu/structure-tools.tsx index 30f897eec..af7d8e55a 100644 --- a/packages/editor/src/components/ui/action-menu/structure-tools.tsx +++ b/packages/editor/src/components/ui/action-menu/structure-tools.tsx @@ -25,4 +25,11 @@ export const tools: ToolConfig[] = [ { id: 'zone', iconSrc: '/icons/zone.png', label: 'Zone' }, { id: 'spawn', iconSrc: '/icons/spawn-point.png', label: 'Spawn Point' }, { id: 'shelf', iconSrc: '/icons/shelf.png', label: 'Shelf' }, + { id: 'duct-segment', iconSrc: '/icons/duct.png', label: 'Duct' }, + { id: 'duct-fitting', iconSrc: '/icons/duct-fitting.png', label: 'Duct Fitting' }, + { id: 'duct-terminal', iconSrc: '/icons/registers.png', label: 'Register' }, + { id: 'hvac-equipment', iconSrc: '/icons/HVAC.png', label: 'HVAC Unit' }, + { id: 'pipe-segment', iconSrc: '/icons/dwv-pipes.png', label: 'DWV Pipe' }, + { id: 'pipe-fitting', iconSrc: '/icons/duct-fitting.png', label: 'Pipe Fitting' }, + { id: 'lineset', iconSrc: '/icons/lineset.png', label: 'Lineset' }, ] diff --git a/packages/nodes/src/duct-fitting/definition.ts b/packages/nodes/src/duct-fitting/definition.ts index b65c847f0..9b1cf316c 100644 --- a/packages/nodes/src/duct-fitting/definition.ts +++ b/packages/nodes/src/duct-fitting/definition.ts @@ -122,7 +122,7 @@ export const ductFittingDefinition: NodeDefinition = { presentation: { label: 'Duct Fitting', description: 'Elbow, tee, reducer, or square-to-round transition connecting duct runs.', - icon: { kind: 'iconify', name: 'lucide:git-branch' }, + icon: { kind: 'url', src: '/icons/duct-fitting.png' }, paletteSection: 'structure', paletteOrder: 91, }, diff --git a/packages/nodes/src/duct-fitting/tool.tsx b/packages/nodes/src/duct-fitting/tool.tsx index f5d071fd8..fe5ea23a4 100644 --- a/packages/nodes/src/duct-fitting/tool.tsx +++ b/packages/nodes/src/duct-fitting/tool.tsx @@ -1,7 +1,7 @@ 'use client' import { DuctFittingNode, emitter, type GridEvent, useScene } from '@pascal-app/core' -import { EDITOR_LAYER, triggerSFX, useEditor } from '@pascal-app/editor' +import { CursorSphere, EDITOR_LAYER, triggerSFX, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useMemo, useRef, useState } from 'react' @@ -206,6 +206,11 @@ const DuctFittingTool = () => { return ( + {/* Same ground ring + vertical line + tool-icon badge the duct draw + tool shows in 3D (icon resolved from the active `duct-fitting` + structure-tools entry). In 2D the floorplan overlay draws this for + every tool; in 3D each tool renders its own. */} + diff --git a/packages/nodes/src/duct-segment/definition.ts b/packages/nodes/src/duct-segment/definition.ts index b0c4f9840..d6ba4d270 100644 --- a/packages/nodes/src/duct-segment/definition.ts +++ b/packages/nodes/src/duct-segment/definition.ts @@ -1,4 +1,5 @@ import type { NodeDefinition } from '@pascal-app/core' +import { createPathPointMoveAffordance } from '../shared/path-point-affordance' import { buildDuctSegmentFloorplan } from './floorplan' import { buildDuctSegmentGeometry, ductPortDiameterIn } from './geometry' import { ductSegmentParametrics } from './parametrics' @@ -112,6 +113,13 @@ export const ductSegmentDefinition: NodeDefinition = { floorplan: buildDuctSegmentFloorplan, + // 2D selection-time path-point handles — the floor-plan twin of the 3D + // `affordanceTools.selection` handles. The builder emits an + // `endpoint-handle` per path vertex; this drags the matching point. + floorplanAffordances: { + 'move-path-point': createPathPointMoveAffordance('duct-segment'), + }, + // Selection-time path-point handles (drag to edit a committed run). // Editor-only UI (reads gridSnapStep, renders DimensionPill), so it // mounts via the editor's SelectionAffordanceManager — not `def.system`, @@ -139,7 +147,7 @@ export const ductSegmentDefinition: NodeDefinition = { presentation: { label: 'Duct', description: 'HVAC duct run — polyline of round, rect, or flat-oval sections.', - icon: { kind: 'iconify', name: 'lucide:wind' }, + icon: { kind: 'url', src: '/icons/duct.png' }, paletteSection: 'structure', paletteOrder: 90, }, diff --git a/packages/nodes/src/duct-segment/floorplan.ts b/packages/nodes/src/duct-segment/floorplan.ts index ce730bd4a..26b9cd9fe 100644 --- a/packages/nodes/src/duct-segment/floorplan.ts +++ b/packages/nodes/src/duct-segment/floorplan.ts @@ -20,12 +20,17 @@ export function buildDuctSegmentFloorplan( ): FloorplanGeometry | null { if (node.path.length < 2) return null - // Project to plan, dropping consecutive duplicates (risers). + // Project to plan, dropping consecutive duplicates (risers). `indexMap[k]` + // is the original path index plan point k came from, so the drag handle + // edits the right vertex. const points: FloorplanPoint[] = [] - for (const [x, , z] of node.path) { + const indexMap: number[] = [] + for (let i = 0; i < node.path.length; i++) { + const [x, , z] = node.path[i]! const prev = points[points.length - 1] if (prev && Math.abs(prev[0] - x) < 1e-6 && Math.abs(prev[1] - z) < 1e-6) continue points.push([x, z]) + indexMap.push(i) } // Plan width: rect / oval runs draw at their actual width; round at diameter. @@ -79,5 +84,19 @@ export function buildDuctSegmentFloorplan( }, ] + // Selection chrome: one draggable handle per path vertex (2D twin of the + // 3D selection handles). Routes to the shared `move-path-point` affordance. + if (view?.selected) { + for (let k = 0; k < points.length; k++) { + children.push({ + kind: 'endpoint-handle', + point: points[k]!, + state: 'idle', + affordance: 'move-path-point', + payload: { pointIndex: indexMap[k]! }, + }) + } + } + return { kind: 'group', children } } diff --git a/packages/nodes/src/duct-segment/geometry.ts b/packages/nodes/src/duct-segment/geometry.ts index 8a6d764fa..313d43546 100644 --- a/packages/nodes/src/duct-segment/geometry.ts +++ b/packages/nodes/src/duct-segment/geometry.ts @@ -29,11 +29,10 @@ function pickInsulationThickness(r: number): number { return (INSULATION_BASE_IN + r * INSULATION_INCHES_PER_R) * INCHES_TO_METERS } +// Supply/return tint — kept only for the spiral seam ridge accent; the duct +// body itself is plain white (see createDuctMaterial). const SUPPLY_COLOR = '#d4825a' const RETURN_COLOR = '#5a8ad4' -const FLEX_COLOR = '#8a8a8a' -const SHEET_METAL_COLOR = '#c2c2c2' -const DUCT_BOARD_COLOR = '#a5946d' const RADIAL_SEGMENTS = 24 @@ -321,30 +320,21 @@ type DuctAppearance = { system: 'supply' | 'return' } -function getDuctColor(node: DuctAppearance): string { - if (node.ductMaterial === 'flex') return FLEX_COLOR - if (node.ductMaterial === 'duct-board') return DUCT_BOARD_COLOR - // Spiral is galvanized sheet metal — same body finish; the seam ridge - // is what tells it apart. - return SHEET_METAL_COLOR -} - function getSystemTint(node: DuctAppearance): string { return node.system === 'supply' ? SUPPLY_COLOR : RETURN_COLOR } /** - * Standard duct body material — color by construction material with a - * faint supply/return emissive tint. Shared with the fitting builder so - * connected runs and junctions read as one system. + * Standard duct body material — a plain white matte finish so runs and + * fittings read like walls / other building elements rather than tinted + * metal. Shared with the fitting builder so connected runs and junctions + * look like one piece. */ -export function createDuctMaterial(node: DuctAppearance): MeshStandardMaterial { +export function createDuctMaterial(_node: DuctAppearance): MeshStandardMaterial { return new MeshStandardMaterial({ - color: getDuctColor(node), - metalness: node.ductMaterial === 'flex' ? 0.1 : 0.6, - roughness: node.ductMaterial === 'flex' ? 0.85 : 0.4, - emissive: getSystemTint(node), - emissiveIntensity: 0.08, + color: '#ffffff', + metalness: 0, + roughness: 0.7, }) } diff --git a/packages/nodes/src/duct-segment/tool.tsx b/packages/nodes/src/duct-segment/tool.tsx index 2fe76395c..119917888 100644 --- a/packages/nodes/src/duct-segment/tool.tsx +++ b/packages/nodes/src/duct-segment/tool.tsx @@ -9,6 +9,7 @@ import { useScene, } from '@pascal-app/core' import { + CursorSphere, DimensionPill, EDITOR_LAYER, markToolCancelConsumed, @@ -21,6 +22,7 @@ import { useEffect, useRef, useState } from 'react' import { type Group, Matrix4, Vector3 } from 'three' import { getDuctFittingPorts } from '../duct-fitting/ports' import { planElbowAtPort, planElbowRealign, planTeeAtRunBody } from '../shared/auto-fitting' +import { alignDrawPoint, clearDrawAlignment } from '../shared/draw-alignment' import { collectScenePorts, DUCT_PORT_SYSTEMS, @@ -538,6 +540,24 @@ const DuctSegmentTool = () => { return [last[0], y, last[2]] } + // Resolve the cursor point (port / body / grid / angle snap) and then + // layer Figma-style alignment on top so a run lines up with other runs, + // fittings, and items as it's drawn. Snap is applied for a free point + // (first vertex, or Shift free-angle); an angle-locked continuation shows + // the guide passively without leaving its 45° ray. A port / body snap or + // Alt bypasses alignment entirely. + const resolveAlignedPoint = (event: GridEvent) => { + const r = resolveSnappedPoint(event) + const hasStart = draftRef.current.length > 0 + const shift = event.nativeEvent?.shiftKey === true + const alt = event.nativeEvent?.altKey === true + const point = alignDrawPoint(r.point, { + applySnap: !hasStart || shift, + bypass: alt || r.snapped !== null, + }) + return { ...r, point } + } + const onMove = (event: GridEvent) => { const clientY = (event.nativeEvent as { clientY?: number } | undefined)?.clientY if (typeof clientY === 'number') lastClientYRef.current = clientY @@ -545,12 +565,13 @@ const DuctSegmentTool = () => { if (altAnchorRef.current && typeof clientY === 'number') { const point = resolveAltVerticalPoint(clientY) if (point) { + clearDrawAlignment() setCursorPos(point) setSnapTarget(null) return } } - const { point, snapped } = resolveSnappedPoint(event) + const { point, snapped } = resolveAlignedPoint(event) setCursorPos(point) setSnapTarget(snapped) } @@ -571,7 +592,7 @@ const DuctSegmentTool = () => { } return } - const { point, port, body } = resolveSnappedPoint(event) + const { point, port, body } = resolveAlignedPoint(event) if (!start) { // First click: anchor the segment start, remembering the port or // run body it snapped to so the commit can mint an elbow / tee. @@ -656,6 +677,7 @@ const DuctSegmentTool = () => { } const onCancel = () => { + clearDrawAlignment() if (draftRef.current.length === 0) return markToolCancelConsumed() setDraftPoints([]) @@ -677,6 +699,7 @@ const DuctSegmentTool = () => { window.removeEventListener('keydown', onKeyDown) window.removeEventListener('keyup', onKeyUp) altAnchorRef.current = null + clearDrawAlignment() } }, [activeLevelId]) @@ -723,30 +746,34 @@ const DuctSegmentTool = () => { return ( - {/* Cursor pip */} - - - - - - {pillParts && ( - -
      - - {ceilingMode && !last && ( -
      - Ceiling · C to toggle + {/* Cursor marker — the same ground ring + vertical line + tool-icon + badge walls and items show while drawing (icon resolved from the + active `duct-segment` structure-tools entry). The dimension pill + rides just above the cursor. */} + {cursorPos && ( + <> + + {pillParts && ( + + +
      + + {ceilingMode && !last && ( +
      + Ceiling · C to toggle +
      + )}
      - )} -
      - - )} - + + + )} + + )} {/* Endpoint-snap halo — brighter ring around the target endpoint while the cursor is within snap range, so the user sees that the next click will join an existing duct rather than freeform-place. */} diff --git a/packages/nodes/src/duct-terminal/definition.ts b/packages/nodes/src/duct-terminal/definition.ts index dbb284284..821a7ddcb 100644 --- a/packages/nodes/src/duct-terminal/definition.ts +++ b/packages/nodes/src/duct-terminal/definition.ts @@ -65,7 +65,7 @@ export const ductTerminalDefinition: NodeDefinition = { label: 'Register', description: 'Duct terminal — supply register, ceiling diffuser, or return grille. Duct runs end at its collar.', - icon: { kind: 'iconify', name: 'lucide:air-vent' }, + icon: { kind: 'url', src: '/icons/registers.png' }, paletteSection: 'structure', paletteOrder: 93, }, diff --git a/packages/nodes/src/duct-terminal/tool.tsx b/packages/nodes/src/duct-terminal/tool.tsx index 184a7c193..3ddcc620f 100644 --- a/packages/nodes/src/duct-terminal/tool.tsx +++ b/packages/nodes/src/duct-terminal/tool.tsx @@ -9,12 +9,13 @@ import { useScene, type WallEvent, } from '@pascal-app/core' -import { triggerSFX, useEditor } from '@pascal-app/editor' +import { CursorSphere, triggerSFX, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useThree } from '@react-three/fiber' import { useEffect, useMemo, useRef, useState } from 'react' import { Matrix3, Matrix4, Plane, Raycaster, Vector2, Vector3 } from 'three' +import { alignDrawPoint, clearDrawAlignment } from '../shared/draw-alignment' import { ductTerminalDefinition } from './definition' import { buildDuctTerminalGeometry } from './geometry' @@ -137,10 +138,13 @@ const DuctTerminalTool = () => { const hit = hitLocalPlane(nativeEvent, y) if (!hit) return null const step = nativeEvent.shiftKey ? 0 : useEditor.getState().gridSnapStep - return { - position: [snap(hit.x, step), y, snap(hit.z, step)], - yaw: yawRef.current, - } + // Grid-snap, then layer Figma-style alignment so a floor / ceiling + // register lines up with ducts, equipment, and items (Shift = free). + const position = alignDrawPoint([snap(hit.x, step), y, snap(hit.z, step)], { + applySnap: true, + bypass: nativeEvent.shiftKey === true, + }) + return { position, yaw: yawRef.current } } const commit = (p: Placement) => { @@ -191,6 +195,8 @@ const DuctTerminalTool = () => { const onWallMove = (event: WallEvent) => { if (mountRef.current !== 'wall') return + // Wall-mounted terminals snap flush to the wall — no plan alignment. + clearDrawAlignment() const p = resolveWall(event) if (p) setPlacement(p) } @@ -239,6 +245,7 @@ const DuctTerminalTool = () => { emitter.off('wall:move', onWallMove) emitter.off('wall:click', onWallClick) window.removeEventListener('keydown', onKeyDown, true) + clearDrawAlignment() } }, [activeLevelId, camera, gl]) @@ -248,6 +255,11 @@ const DuctTerminalTool = () => { return ( + {/* Same ground ring + vertical line + tool-icon badge the duct draw + tool shows in 3D (icon resolved from the active `duct-terminal` + structure-tools entry). In 2D the floorplan overlay draws this for + every tool; in 3D each tool renders its own. */} + diff --git a/packages/nodes/src/hvac-equipment/definition.ts b/packages/nodes/src/hvac-equipment/definition.ts index 3fa615492..abaf1bf96 100644 --- a/packages/nodes/src/hvac-equipment/definition.ts +++ b/packages/nodes/src/hvac-equipment/definition.ts @@ -82,7 +82,7 @@ export const hvacEquipmentDefinition: NodeDefinition = label: 'HVAC Unit', description: 'Furnace, air handler, or condenser — duct runs connect to its supply/return collars.', - icon: { kind: 'iconify', name: 'lucide:heater' }, + icon: { kind: 'url', src: '/icons/HVAC.png' }, paletteSection: 'structure', paletteOrder: 92, }, diff --git a/packages/nodes/src/hvac-equipment/tool.tsx b/packages/nodes/src/hvac-equipment/tool.tsx index 482660a75..50743255a 100644 --- a/packages/nodes/src/hvac-equipment/tool.tsx +++ b/packages/nodes/src/hvac-equipment/tool.tsx @@ -5,6 +5,7 @@ import { triggerSFX, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useMemo, useRef, useState } from 'react' +import { alignDrawPoint, clearDrawAlignment } from '../shared/draw-alignment' import { hvacEquipmentDefinition } from './definition' import { buildHvacEquipmentGeometry } from './geometry' @@ -55,10 +56,19 @@ const HvacEquipmentTool = () => { return [snap(event.localPosition[0], step), 0, snap(event.localPosition[2], step)] } - const onMove = (event: GridEvent) => setCursor(resolve(event)) + // Grid-snap the cursor, then layer Figma-style alignment so the unit lines + // up with ducts, other equipment, and items as it's placed (Shift = free, + // no snap + no guides). + const resolveAligned = (event: GridEvent): [number, number, number] => + alignDrawPoint(resolve(event), { + applySnap: true, + bypass: event.nativeEvent?.shiftKey === true, + }) + + const onMove = (event: GridEvent) => setCursor(resolveAligned(event)) const onClick = (event: GridEvent) => { - const position = resolve(event) + const position = resolveAligned(event) const unit = HvacEquipmentNode.parse({ ...hvacEquipmentDefinition.defaults(), name: 'Furnace', @@ -92,6 +102,7 @@ const HvacEquipmentTool = () => { emitter.off('grid:move', onMove) emitter.off('grid:click', onClick) window.removeEventListener('keydown', onKeyDown, true) + clearDrawAlignment() } }, [activeLevelId]) diff --git a/packages/nodes/src/lineset/definition.ts b/packages/nodes/src/lineset/definition.ts index 5dbeeba03..e08370025 100644 --- a/packages/nodes/src/lineset/definition.ts +++ b/packages/nodes/src/lineset/definition.ts @@ -1,4 +1,5 @@ import type { NodeDefinition } from '@pascal-app/core' +import { createPathPointMoveAffordance } from '../shared/path-point-affordance' import { buildLinesetFloorplan } from './floorplan' import { buildLinesetGeometry } from './geometry' import { linesetParametrics } from './parametrics' @@ -85,6 +86,13 @@ export const linesetDefinition: NodeDefinition = { floorplan: buildLinesetFloorplan, + // 2D selection-time path-point handles — the floor-plan twin of the 3D + // `affordanceTools.selection` handles. The builder emits an + // `endpoint-handle` per path vertex; this drags the matching point. + floorplanAffordances: { + 'move-path-point': createPathPointMoveAffordance('lineset'), + }, + // Selection-time path-point handles (drag to edit a committed run). // Editor-only UI (reads gridSnapStep, renders DimensionPill), so it // mounts via the editor's SelectionAffordanceManager — not `def.system`, @@ -112,7 +120,7 @@ export const linesetDefinition: NodeDefinition = { label: 'Lineset', description: 'Refrigerant lineset — copper suction + liquid pair joining a condenser to the indoor coil.', - icon: { kind: 'iconify', name: 'lucide:cable' }, + icon: { kind: 'url', src: '/icons/lineset.png' }, paletteSection: 'structure', paletteOrder: 93, }, diff --git a/packages/nodes/src/lineset/floorplan.ts b/packages/nodes/src/lineset/floorplan.ts index 74646c600..7de546cc1 100644 --- a/packages/nodes/src/lineset/floorplan.ts +++ b/packages/nodes/src/lineset/floorplan.ts @@ -18,10 +18,15 @@ export function buildLinesetFloorplan( if (node.path.length < 2) return null const points: FloorplanPoint[] = [] - for (const [x, , z] of node.path) { + // Plan point k ← original path index indexMap[k] (risers collapse to one + // plan point), so the path-point drag handle edits the right vertex. + const indexMap: number[] = [] + for (let i = 0; i < node.path.length; i++) { + const [x, , z] = node.path[i]! const prev = points[points.length - 1] if (prev && Math.abs(prev[0] - x) < 1e-6 && Math.abs(prev[1] - z) < 1e-6) continue points.push([x, z]) + indexMap.push(i) } const widthM = Math.max(node.suctionDiameter, node.liquidDiameter) * INCHES_TO_METERS @@ -43,29 +48,42 @@ export function buildLinesetFloorplan( } } - return { - kind: 'group', - children: [ - { - kind: 'polyline', - points, - stroke: showSelectedChrome && palette ? palette.selectedStroke : BODY_COLOR, - strokeWidth: widthM * 2, - strokeLinecap: 'round', - strokeLinejoin: 'round', - opacity: showSelectedChrome ? 0.95 : 0.8, - }, - { - kind: 'polyline', - points, - stroke: COPPER_LINE, - strokeWidth: 1.5, - vectorEffect: 'non-scaling-stroke', - strokeDasharray: '4 3', - strokeLinecap: 'round', - strokeLinejoin: 'round', - opacity: 0.9, - }, - ], + const children: FloorplanGeometry[] = [ + { + kind: 'polyline', + points, + stroke: showSelectedChrome && palette ? palette.selectedStroke : BODY_COLOR, + strokeWidth: widthM * 2, + strokeLinecap: 'round', + strokeLinejoin: 'round', + opacity: showSelectedChrome ? 0.95 : 0.8, + }, + { + kind: 'polyline', + points, + stroke: COPPER_LINE, + strokeWidth: 1.5, + vectorEffect: 'non-scaling-stroke', + strokeDasharray: '4 3', + strokeLinecap: 'round', + strokeLinejoin: 'round', + opacity: 0.9, + }, + ] + + // Selection chrome: one draggable handle per path vertex (2D twin of the + // 3D selection handles). Routes to the shared `move-path-point` affordance. + if (view?.selected) { + for (let k = 0; k < points.length; k++) { + children.push({ + kind: 'endpoint-handle', + point: points[k]!, + state: 'idle', + affordance: 'move-path-point', + payload: { pointIndex: indexMap[k]! }, + }) + } } + + return { kind: 'group', children } } diff --git a/packages/nodes/src/lineset/geometry.ts b/packages/nodes/src/lineset/geometry.ts index 35f411aa0..e32269dcf 100644 --- a/packages/nodes/src/lineset/geometry.ts +++ b/packages/nodes/src/lineset/geometry.ts @@ -5,7 +5,9 @@ import type { LinesetNode } from './schema' const RADIAL_SEGMENTS = 16 const COPPER_COLOR = '#b06b3f' -const INSULATION_COLOR = '#1f1f22' +// Light foam sleeve. Real Armaflex is black, but a light jacket reads +// cleaner against the scene and matches the white pipe materials. +const INSULATION_COLOR = '#e8e8ea' const UP = new Vector3(0, 1, 0) const FALLBACK_PERP = new Vector3(1, 0, 0) @@ -103,7 +105,7 @@ function buildRun( * The two lines are offset symmetrically about the path centerline along a * horizontal perpendicular to each segment, so the pair reads as a parallel * run. Joint spheres cap interior corners on each line; the suction line's - * black foam jacket is a larger opaque cylinder over the copper. + * light foam jacket is a larger opaque cylinder over the copper. * * Children are level-local meters; `` owns the * node transform (identity today — the path is absolute within the level). diff --git a/packages/nodes/src/lineset/selection.tsx b/packages/nodes/src/lineset/selection.tsx index 36e594e4a..e348d0c17 100644 --- a/packages/nodes/src/lineset/selection.tsx +++ b/packages/nodes/src/lineset/selection.tsx @@ -237,7 +237,7 @@ const LinesetPointHandles = ({ lineset, target }: { lineset: LinesetNode; target > { return [last[0], y, last[2]] } + // Resolve the cursor point (port / grid / angle snap) then layer + // Figma-style alignment so a lineset lines up with other runs, equipment, + // and items as it's drawn. Free point (first vertex / Shift) snaps; an + // angle-locked continuation shows the guide passively. Port snap or Alt + // bypasses alignment. + const resolveAlignedPoint = (event: GridEvent) => { + const r = resolveSnappedPoint(event) + const hasStart = draftRef.current.length > 0 + const shift = event.nativeEvent?.shiftKey === true + const alt = event.nativeEvent?.altKey === true + const point = alignDrawPoint(r.point, { + applySnap: !hasStart || shift, + bypass: alt || r.snapped !== null, + }) + return { ...r, point } + } + const onMove = (event: GridEvent) => { const clientY = (event.nativeEvent as { clientY?: number } | undefined)?.clientY if (typeof clientY === 'number') lastClientYRef.current = clientY if (altAnchorRef.current && typeof clientY === 'number') { const point = resolveAltVerticalPoint(clientY) if (point) { + clearDrawAlignment() setCursorPos(point) setSnapTarget(null) return } } - const { point, snapped } = resolveSnappedPoint(event) + const { point, snapped } = resolveAlignedPoint(event) setCursorPos(point) setSnapTarget(snapped) } @@ -199,7 +219,7 @@ const LinesetTool = () => { } return } - const { point } = resolveSnappedPoint(event) + const { point } = resolveAlignedPoint(event) if (!start) { triggerSFX('sfx:grid-snap') setDraftPoints([point]) @@ -239,6 +259,7 @@ const LinesetTool = () => { } const onCancel = () => { + clearDrawAlignment() if (draftRef.current.length === 0) return markToolCancelConsumed() setDraftPoints([]) @@ -258,6 +279,7 @@ const LinesetTool = () => { window.removeEventListener('keydown', onKeyDown) window.removeEventListener('keyup', onKeyUp) altAnchorRef.current = null + clearDrawAlignment() } }, [activeLevelId]) @@ -291,22 +313,28 @@ const LinesetTool = () => { return ( - - - - - - {pillParts && ( - - - - )} - + {/* Cursor marker — the same ground ring + vertical line + tool-icon + badge the duct draw tool shows in 3D (icon resolved from the active + `lineset` structure-tools entry). In 2D the floorplan overlay draws + this for every tool; in 3D each tool renders its own. The dimension + pill rides just above the cursor. */} + {cursorPos && ( + <> + + {pillParts && ( + + + + + + )} + + )} {snapTarget && ( diff --git a/packages/nodes/src/pipe-fitting/definition.ts b/packages/nodes/src/pipe-fitting/definition.ts index 742c46fff..3c533cda8 100644 --- a/packages/nodes/src/pipe-fitting/definition.ts +++ b/packages/nodes/src/pipe-fitting/definition.ts @@ -92,7 +92,8 @@ export const pipeFittingDefinition: NodeDefinition = { presentation: { label: 'Pipe Fitting', description: 'DWV joint — elbow bend, 45° wye, or sanitary tee.', - icon: { kind: 'iconify', name: 'lucide:git-merge' }, + // Reuses the duct-fitting artwork — DWV fittings read the same in the UI. + icon: { kind: 'url', src: '/icons/duct-fitting.png' }, paletteSection: 'structure', paletteOrder: 96, hidden: true, diff --git a/packages/nodes/src/pipe-fitting/tool.tsx b/packages/nodes/src/pipe-fitting/tool.tsx index db32cdfc4..4dd04f453 100644 --- a/packages/nodes/src/pipe-fitting/tool.tsx +++ b/packages/nodes/src/pipe-fitting/tool.tsx @@ -1,7 +1,7 @@ 'use client' import { emitter, type GridEvent, PipeFittingNode, useScene } from '@pascal-app/core' -import { EDITOR_LAYER, triggerSFX, useEditor } from '@pascal-app/editor' +import { CursorSphere, EDITOR_LAYER, triggerSFX, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useMemo, useRef, useState } from 'react' @@ -208,6 +208,11 @@ const PipeFittingTool = () => { return ( + {/* Same ground ring + vertical line + tool-icon badge the duct draw + tool shows in 3D (icon resolved from the active `pipe-fitting` + structure-tools entry). In 2D the floorplan overlay draws this for + every tool; in 3D each tool renders its own. */} + diff --git a/packages/nodes/src/pipe-segment/definition.ts b/packages/nodes/src/pipe-segment/definition.ts index ac505bf86..6ac636c64 100644 --- a/packages/nodes/src/pipe-segment/definition.ts +++ b/packages/nodes/src/pipe-segment/definition.ts @@ -1,4 +1,5 @@ import type { NodeDefinition } from '@pascal-app/core' +import { createPathPointMoveAffordance } from '../shared/path-point-affordance' import { buildPipeSegmentFloorplan } from './floorplan' import { buildPipeSegmentGeometry } from './geometry' import { pipeSegmentParametrics } from './parametrics' @@ -82,6 +83,13 @@ export const pipeSegmentDefinition: NodeDefinition = { floorplan: buildPipeSegmentFloorplan, + // 2D selection-time path-point handles — the floor-plan twin of the 3D + // `affordanceTools.selection` handles. The builder emits an + // `endpoint-handle` per path vertex; this drags the matching point. + floorplanAffordances: { + 'move-path-point': createPathPointMoveAffordance('pipe-segment'), + }, + // Selection-time path-point handles (drag to edit a committed run). // Editor-only UI (reads gridSnapStep, renders DimensionPill), so it // mounts via the editor's SelectionAffordanceManager — not `def.system`, @@ -110,7 +118,7 @@ export const pipeSegmentDefinition: NodeDefinition = { label: 'DWV Pipe', description: 'Drain / waste / vent pipe run — waste lines fall at ¼″ per foot, vents run level or vertical.', - icon: { kind: 'iconify', name: 'lucide:droplets' }, + icon: { kind: 'url', src: '/icons/dwv-pipes.png' }, paletteSection: 'structure', paletteOrder: 95, }, diff --git a/packages/nodes/src/pipe-segment/floorplan.ts b/packages/nodes/src/pipe-segment/floorplan.ts index b7b2c9778..1451019df 100644 --- a/packages/nodes/src/pipe-segment/floorplan.ts +++ b/packages/nodes/src/pipe-segment/floorplan.ts @@ -17,10 +17,15 @@ export function buildPipeSegmentFloorplan( if (node.path.length < 2) return null const points: FloorplanPoint[] = [] - for (const [x, , z] of node.path) { + // Plan point k ← original path index indexMap[k] (stacks collapse to one + // plan point), so the path-point drag handle edits the right vertex. + const indexMap: number[] = [] + for (let i = 0; i < node.path.length; i++) { + const [x, , z] = node.path[i]! const prev = points[points.length - 1] if (prev && Math.abs(prev[0] - x) < 1e-6 && Math.abs(prev[1] - z) < 1e-6) continue points.push([x, z]) + indexMap.push(i) } const diameterM = node.diameter * INCHES_TO_METERS @@ -76,5 +81,19 @@ export function buildPipeSegmentFloorplan( }, ] + // Selection chrome: one draggable handle per path vertex (2D twin of the + // 3D selection handles). Routes to the shared `move-path-point` affordance. + if (view?.selected) { + for (let k = 0; k < points.length; k++) { + children.push({ + kind: 'endpoint-handle', + point: points[k]!, + state: 'idle', + affordance: 'move-path-point', + payload: { pointIndex: indexMap[k]! }, + }) + } + } + return { kind: 'group', children } } diff --git a/packages/nodes/src/pipe-segment/geometry.ts b/packages/nodes/src/pipe-segment/geometry.ts index cbf4d316c..c4fd28316 100644 --- a/packages/nodes/src/pipe-segment/geometry.ts +++ b/packages/nodes/src/pipe-segment/geometry.ts @@ -2,7 +2,7 @@ import { Group, Mesh, MeshStandardMaterial, SphereGeometry, Vector3 } from 'thre import { buildSection, INCHES_TO_METERS } from '../duct-segment/geometry' import type { PipeSegmentNode } from './schema' -const PVC_COLOR = '#e9e7e1' +const PVC_COLOR = '#f5f5f5' const ABS_COLOR = '#3a3a3a' const CAST_IRON_COLOR = '#54575c' /** Vents read slightly translucent-matte so they don't visually compete diff --git a/packages/nodes/src/pipe-segment/tool.tsx b/packages/nodes/src/pipe-segment/tool.tsx index 251420e8c..2efe2a829 100644 --- a/packages/nodes/src/pipe-segment/tool.tsx +++ b/packages/nodes/src/pipe-segment/tool.tsx @@ -2,6 +2,7 @@ import { type AnyNode, emitter, type GridEvent, PipeSegmentNode, useScene } from '@pascal-app/core' import { + CursorSphere, DimensionPill, EDITOR_LAYER, markToolCancelConsumed, @@ -13,6 +14,7 @@ import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' import { Vector3 } from 'three' import { planPipeBranchTap, planPipeElbowAtPort } from '../shared/auto-fitting' +import { alignDrawPoint, clearDrawAlignment } from '../shared/draw-alignment' import { collectScenePorts, DWV_PORT_SYSTEMS, @@ -326,18 +328,36 @@ const PipeSegmentTool = () => { return [start[0], y, start[2]] } + // Resolve the cursor point (port / body / grid / angle snap) then layer + // Figma-style alignment so a run lines up with other runs, fittings, and + // items as it's drawn. Free point (first vertex / Shift) snaps; an + // angle-locked continuation shows the guide passively. Port / body snap or + // Alt bypasses alignment. + const resolveAlignedPoint = (event: GridEvent) => { + const r = resolveSnappedPoint(event) + const hasStart = !!startRef.current + const shift = event.nativeEvent?.shiftKey === true + const alt = event.nativeEvent?.altKey === true + const point = alignDrawPoint(r.point, { + applySnap: !hasStart || shift, + bypass: alt || r.snapped !== null, + }) + return { ...r, point } + } + const onMove = (event: GridEvent) => { const clientY = (event.nativeEvent as { clientY?: number } | undefined)?.clientY if (typeof clientY === 'number') lastClientYRef.current = clientY if (altAnchorRef.current && typeof clientY === 'number') { const point = resolveAltVerticalPoint(clientY) if (point) { + clearDrawAlignment() setCursorPos(point) setSnapTarget(null) return } } - const { point, snapped } = resolveSnappedPoint(event) + const { point, snapped } = resolveAlignedPoint(event) setCursorPos(point) setSnapTarget(snapped) } @@ -353,7 +373,7 @@ const PipeSegmentTool = () => { } return } - const { point, port, body } = resolveSnappedPoint(event) + const { point, port, body } = resolveAlignedPoint(event) if (!start) { // First click: anchor the start, remembering the port / run body // it snapped to so the commit can mint a bend / wye. @@ -424,6 +444,7 @@ const PipeSegmentTool = () => { } const onCancel = () => { + clearDrawAlignment() if (!startRef.current) return markToolCancelConsumed() setDraftStart(null) @@ -445,6 +466,7 @@ const PipeSegmentTool = () => { window.removeEventListener('keydown', onKeyDown) window.removeEventListener('keyup', onKeyUp) altAnchorRef.current = null + clearDrawAlignment() } }, [activeLevelId]) @@ -485,32 +507,38 @@ const PipeSegmentTool = () => { return ( - - - - - - {pillParts && ( - -
      - -
      - {system === 'waste' - ? sloped - ? 'Waste · ¼″/ft fall' - : 'Waste · level' - : 'Vent · level'}{' '} - · Q system{system === 'waste' ? ' · S slope' : ''} -
      -
      - - )} -
      + {/* Cursor marker — the same ground ring + vertical line + tool-icon + badge the duct draw tool shows in 3D (icon resolved from the active + `pipe-segment` structure-tools entry). In 2D the floorplan overlay + draws this for every tool; in 3D each tool renders its own. The + dimension pill rides just above the cursor. */} + {cursorPos && ( + <> + + {pillParts && ( + + +
      + +
      + {system === 'waste' + ? sloped + ? 'Waste · ¼″/ft fall' + : 'Waste · level' + : 'Vent · level'}{' '} + · Q system{system === 'waste' ? ' · S slope' : ''} +
      +
      + +
      + )} + + )} {snapTarget && ( diff --git a/packages/nodes/src/shared/draw-alignment.ts b/packages/nodes/src/shared/draw-alignment.ts new file mode 100644 index 000000000..516650a34 --- /dev/null +++ b/packages/nodes/src/shared/draw-alignment.ts @@ -0,0 +1,35 @@ +'use client' + +import { alignFloorplanDraftPoint, useAlignmentGuides } from '@pascal-app/editor' + +type Vec3 = [number, number, number] + +/** + * Layer Figma-style alignment guides onto a draw-tool cursor point so HVAC / + * DWV runs and equipment line up with each other (and every other node) while + * being drawn — the same feedback walls get. + * + * Treats the point as a single corner anchor, gathers candidates from the live + * scene (every kind contributes via `nodeAlignmentAnchors`), publishes the + * guides to `useAlignmentGuides` (rendered in BOTH the 2D floor plan and the + * 3D view), and returns the point with the snap applied. Y is preserved — only + * XZ is aligned. + * + * - `applySnap: false` publishes the guide passively without pulling the point + * off a constrained ray (e.g. an angle-locked run continuation). + * - `bypass: true` clears guides and returns the point untouched (Alt, or when + * a stronger port / run-body snap already won). + */ +export function alignDrawPoint(point: Vec3, opts: { applySnap: boolean; bypass?: boolean }): Vec3 { + if (opts.bypass) { + useAlignmentGuides.getState().clear() + return point + } + const [x, z] = alignFloorplanDraftPoint([point[0], point[2]], { applySnap: opts.applySnap }) + return [x, point[1], z] +} + +/** Drop any alignment guides this tool published (cancel / commit / unmount). */ +export function clearDrawAlignment(): void { + useAlignmentGuides.getState().clear() +} diff --git a/packages/nodes/src/shared/path-point-affordance.ts b/packages/nodes/src/shared/path-point-affordance.ts new file mode 100644 index 000000000..74dbc5b6b --- /dev/null +++ b/packages/nodes/src/shared/path-point-affordance.ts @@ -0,0 +1,68 @@ +import { + type AnyNodeId, + type FloorplanAffordance, + type FloorplanAffordanceSession, + useScene, +} from '@pascal-app/core' +import { snapPointToGrid, type WallPlanPoint } from '@pascal-app/editor' + +/** + * Shared "drag a path point" floor-plan affordance for polyline + * distribution kinds (duct-segment / pipe-segment / lineset). It is the + * 2D counterpart of their 3D `affordanceTools.selection` handles: one + * draggable handle per path vertex, moved freely on the plan (XZ) with + * grid snap (Shift bypasses). The vertex's Y (elevation / slope) is held + * fixed — plan editing never changes height. + * + * Wired via `def.floorplanAffordances['move-path-point']`; the floor-plan + * builders emit `endpoint-handle` primitives carrying `{ pointIndex }` so + * the dispatcher routes pointer-downs here. + */ +export type PathPointPayload = { pointIndex: number } + +type PathShape = { path: ReadonlyArray } + +export function createPathPointMoveAffordance( + kind: string, +): FloorplanAffordance { + const inert: FloorplanAffordanceSession = { + affectedIds: [], + apply() {}, + canCommit() { + return false + }, + } + return { + start({ node, payload }): FloorplanAffordanceSession { + const { pointIndex } = payload as PathPointPayload + const initialPath = node.path.map((p) => [...p] as [number, number, number]) + const target = initialPath[pointIndex] + if (!target) return { ...inert, affectedIds: [node.id] } + // Hold the dragged vertex's elevation — the plan move only shifts XZ. + const y = target[1] + + return { + affectedIds: [node.id], + apply({ planPoint, modifiers }) { + // Plan coords map x→world X, y→world Z. + const raw: WallPlanPoint = [planPoint[0], planPoint[1]] + const [sx, sz] = modifiers.shiftKey ? raw : snapPointToGrid(raw) + const nextPath = initialPath.map((p, i) => + i === pointIndex ? ([sx, y, sz] as [number, number, number]) : p, + ) + useScene + .getState() + .updateNodes([{ id: node.id, data: { path: nextPath } as Partial as never }]) + }, + canCommit() { + const final = useScene.getState().nodes[node.id] as N | undefined + return ( + !!final && + (final as unknown as { type: string }).type === kind && + final.path.length >= 2 + ) + }, + } + }, + } +} From 8bc1e9b5201ce61649da06f8193bdf470c681d05 Mon Sep 17 00:00:00 2001 From: sudhir Date: Tue, 16 Jun 2026 00:10:31 +0530 Subject: [PATCH 50/59] feat(nodes): standalone liquid-line MEP tool with click-to-trace follow MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add a `liquid-line` node — the thin bare-copper rail split out of the lineset — as its own drawable MEP run, plus a Follow mode that traces it alongside an existing lineset. - New node under packages/nodes/src/liquid-line: schema, single-centerline geometry, floorplan, parametrics, endpoint-fold connect, selection + ghost move/duplicate affordances, and a draw tool (same model as the lineset tool: 45° lock, Shift free, Alt vertical, refrigerant-port snap). - Follow mode: arm "Follow lineset" (Build → MEP panel toggle or `F`), then click a lineset to lay a liquid line beside it, tracing its whole path at a small clear-air gap on the cursor's side. Backed by a shared useLiquidLineToolOptions store so panel and tool stay in sync. - Shared path-offset helper (parallel miter offset) drives the trace. - Lineset geometry now draws a single centerline pipe (suction + optional jacket), dropping the parallel liquid rail it used to render. - Register the kind across core schema/events, the nodes plugin, the editor StructureTool union + lookup table, the floating-action-menu path-kind branch, and the Build tab's MEP group. Co-Authored-By: Claude Opus 4.8 (1M context) --- apps/editor/components/build-tab.tsx | 295 ++++++---- apps/ifc-converter/next-env.d.ts | 2 +- packages/core/src/events/bus.ts | 3 + packages/core/src/schema/index.ts | 1 + packages/core/src/schema/nodes/lineset.ts | 5 +- packages/core/src/schema/nodes/liquid-line.ts | 29 + packages/core/src/schema/types.ts | 2 + .../editor/floating-action-menu.tsx | 3 +- .../ui/action-menu/structure-tools.tsx | 1 + packages/editor/src/store/use-editor.tsx | 1 + packages/nodes/src/index.ts | 3 + packages/nodes/src/lineset/geometry.ts | 126 +--- packages/nodes/src/liquid-line/connect.ts | 98 ++++ packages/nodes/src/liquid-line/definition.ts | 124 ++++ packages/nodes/src/liquid-line/floorplan.ts | 77 +++ packages/nodes/src/liquid-line/geometry.ts | 66 +++ packages/nodes/src/liquid-line/index.ts | 5 + packages/nodes/src/liquid-line/move-tool.tsx | 300 ++++++++++ packages/nodes/src/liquid-line/options.ts | 21 + packages/nodes/src/liquid-line/parametrics.ts | 20 + packages/nodes/src/liquid-line/schema.ts | 1 + packages/nodes/src/liquid-line/selection.tsx | 282 +++++++++ packages/nodes/src/liquid-line/tool.tsx | 543 ++++++++++++++++++ packages/nodes/src/shared/path-offset.ts | 76 +++ 24 files changed, 1874 insertions(+), 210 deletions(-) create mode 100644 packages/core/src/schema/nodes/liquid-line.ts create mode 100644 packages/nodes/src/liquid-line/connect.ts create mode 100644 packages/nodes/src/liquid-line/definition.ts create mode 100644 packages/nodes/src/liquid-line/floorplan.ts create mode 100644 packages/nodes/src/liquid-line/geometry.ts create mode 100644 packages/nodes/src/liquid-line/index.ts create mode 100644 packages/nodes/src/liquid-line/move-tool.tsx create mode 100644 packages/nodes/src/liquid-line/options.ts create mode 100644 packages/nodes/src/liquid-line/parametrics.ts create mode 100644 packages/nodes/src/liquid-line/schema.ts create mode 100644 packages/nodes/src/liquid-line/selection.tsx create mode 100644 packages/nodes/src/liquid-line/tool.tsx create mode 100644 packages/nodes/src/shared/path-offset.ts diff --git a/apps/editor/components/build-tab.tsx b/apps/editor/components/build-tab.tsx index 7e445ffab..442a4982e 100644 --- a/apps/editor/components/build-tab.tsx +++ b/apps/editor/components/build-tab.tsx @@ -1,8 +1,8 @@ 'use client' -import { Icon as IconifyIcon } from '@iconify/react' import { nodeRegistry } from '@pascal-app/core' import { MaterialPaintPanel, triggerSFX, useEditor } from '@pascal-app/editor' +import { useLiquidLineToolOptions } from '@pascal-app/nodes' import Image from 'next/image' import { useCallback, useEffect, useMemo, useRef, useState } from 'react' import { @@ -30,28 +30,41 @@ type BuildToolKind = | 'column' | 'shelf' | 'spawn' + +/** + * MEP (mechanical / plumbing) tool kinds surfaced under the Build tab's "MEP" + * group tile — its own sub-grid, like Roof's "Features". + */ +type MepToolKind = | 'duct-segment' | 'duct-fitting' | 'duct-terminal' | 'hvac-equipment' | 'lineset' + | 'liquid-line' | 'pipe-segment' | 'pipe-fitting' type BuildType = { - /** Selection id — equals `kind` for tool types, `'painting'` for paint mode. */ + /** Selection id — equals `kind` for tool types, `'painting'` for paint mode, `'mep'` for the MEP group. */ id: string label: string /** Raster asset tile (legacy Build sidebar artwork). */ - iconSrc?: string - /** Iconify identifier — used by kinds with no bespoke PNG (HVAC). */ - iconify?: string - /** Present for structure-tool types (absent for the paint mode). */ + iconSrc: string + /** Present for structure-tool types (absent for paint mode and the MEP group). */ kind?: BuildToolKind /** Non-placement special mode. */ mode?: 'material-paint' } +type MepItem = { + /** Selection id — equals `kind`. */ + id: string + label: string + iconSrc: string + kind: MepToolKind +} + // Same icons + ordering as the community Build sidebar, minus presets. const BUILD_TYPES: BuildType[] = [ { id: 'wall', label: 'Wall', iconSrc: '/icons/wall.png', kind: 'wall' }, @@ -66,6 +79,14 @@ const BUILD_TYPES: BuildType[] = [ { id: 'column', label: 'Column', iconSrc: '/icons/column.png', kind: 'column' }, { id: 'shelf', label: 'Shelf', iconSrc: '/icons/shelf.png', kind: 'shelf' }, { id: 'spawn', label: 'Spawn Point', iconSrc: '/icons/spawn-point.png', kind: 'spawn' }, + // Group tile — no tool of its own; opens the MEP sub-grid below (like Roof). + { id: 'mep', label: 'MEP', iconSrc: '/icons/HVAC.png' }, + { id: 'painting', label: 'Painting', iconSrc: '/icons/paint.png', mode: 'material-paint' }, +] + +// MEP sub-grid surfaced under the "MEP" tile — same icons + ordering the MEP +// tools had in the community Build sidebar. +const MEP_ITEMS: MepItem[] = [ { id: 'duct-segment', label: 'Duct', iconSrc: '/icons/duct.png', kind: 'duct-segment' }, { id: 'duct-terminal', @@ -75,15 +96,15 @@ const BUILD_TYPES: BuildType[] = [ }, { id: 'hvac-equipment', label: 'HVAC Unit', iconSrc: '/icons/HVAC.png', kind: 'hvac-equipment' }, { id: 'lineset', label: 'Lineset', iconSrc: '/icons/lineset.png', kind: 'lineset' }, + { id: 'liquid-line', label: 'Liquid Line', iconSrc: '/icons/lineset.png', kind: 'liquid-line' }, { id: 'pipe-segment', label: 'DWV Pipe', iconSrc: '/icons/dwv-pipes.png', kind: 'pipe-segment' }, - { id: 'painting', label: 'Painting', iconSrc: '/icons/paint.png', mode: 'material-paint' }, ] /** * Activate a raw structure draw/cursor tool. Mirrors the editor's own * structure-tool activation (`setPhase`/`setStructureLayer`/`setMode`/`setTool`). */ -function activateBuildTool(kind: BuildToolKind): void { +function activateBuildTool(kind: BuildToolKind | MepToolKind): void { const ed = useEditor.getState() ed.setPhase('structure') ed.setStructureLayer('elements') @@ -132,10 +153,31 @@ function activateRoofFeatureTool(kind: string): void { export function BuildTab() { const activeTool = useEditor((s) => s.tool) const mode = useEditor((s) => s.mode) - // Which build tile's panel is showing. Roof is the only tile with a panel - // (its Features group); others arm a tool and show nothing below. + const follow = useLiquidLineToolOptions((s) => s.follow) + const toggleFollow = useLiquidLineToolOptions((s) => s.toggleFollow) + // Which build tile's panel is showing. Roof (Features) and MEP (its tool + // sub-grid) are the tiles with a panel; others arm a tool and show nothing + // below. const [selectedTypeId, setSelectedTypeId] = useState(null) + // The fitting / follow tools are armed from a segment's panel, not a grid + // tile — keep the segment tile lit so the panel (and the way back) stays + // visible. + const ductContext = + mode === 'build' && (activeTool === 'duct-segment' || activeTool === 'duct-fitting') + const pipeContext = + mode === 'build' && (activeTool === 'pipe-segment' || activeTool === 'pipe-fitting') + const liquidLineContext = mode === 'build' && activeTool === 'liquid-line' + + const isMepItemActive = (item: MepItem) => + item.kind === 'duct-segment' + ? ductContext + : item.kind === 'pipe-segment' + ? pipeContext + : item.kind === 'liquid-line' + ? liquidLineContext + : mode === 'build' && activeTool === item.kind + // Read at render time (not module scope): the registry is populated by the // app bootstrap, so enumerating earlier would race it and see no kinds. const roofFeatures = useMemo(() => { @@ -156,26 +198,16 @@ export function BuildTab() { return features }, []) - // The fitting tools are armed from their segment's panel, not a grid - // tile — keep the segment tile lit so the panel (and the way back) - // stays visible. - const ductContext = - mode === 'build' && (activeTool === 'duct-segment' || activeTool === 'duct-fitting') - const pipeContext = - mode === 'build' && (activeTool === 'pipe-segment' || activeTool === 'pipe-fitting') - const isTypeActive = (type: BuildType) => - type.mode === 'material-paint' - ? mode === 'material-paint' - : type.kind === 'duct-segment' - ? ductContext - : type.kind === 'pipe-segment' - ? pipeContext - : selectedTypeId === type.id + type.mode === 'material-paint' ? mode === 'material-paint' : selectedTypeId === type.id const handleTypeClick = useCallback((type: BuildType) => { if (type.mode === 'material-paint') { activatePaintMode() + } else if (type.id === 'mep') { + // MEP is a group tile: arm its first tool so a usable tool is active + // (and we leave any prior paint mode), then reveal the MEP sub-grid. + activateBuildTool('duct-segment') } else if (type.kind) { activateBuildTool(type.kind) } @@ -218,21 +250,13 @@ export function BuildTab() { onMouseEnter={() => triggerSFX('sfx:menu-hover')} type="button" > - {type.iconSrc ? ( - {type.label} - ) : ( - - )} + {type.label} @@ -244,66 +268,6 @@ export function BuildTab() {
      - {ductContext ? ( -
      - Duct - -
      - ) : null} - - {pipeContext ? ( -
      - DWV Pipe - -
      - ) : null} - {mode === 'material-paint' ? (
      @@ -353,6 +317,137 @@ export function BuildTab() {
  • +=~hedpG!m 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

    + ) : selectedTypeId === 'mep' ? ( +
    +
    MEP
    + +
    + {MEP_ITEMS.map((item) => { + const active = isMepItemActive(item) + return ( + + + + + + {item.label} + + + ) + })} +
    +
    + + {ductContext ? ( +
    + Duct + +
    + ) : null} + + {pipeContext ? ( +
    + DWV Pipe + +
    + ) : null} + + {liquidLineContext ? ( +
    + Liquid Line + + + {follow + ? 'Click a lineset to lay the line beside it.' + : 'Trace a line alongside an existing lineset (F).'} + +
    + ) : null} +
    ) : null} ) diff --git a/apps/ifc-converter/next-env.d.ts b/apps/ifc-converter/next-env.d.ts index 9edff1c7c..c4b7818fb 100644 --- a/apps/ifc-converter/next-env.d.ts +++ b/apps/ifc-converter/next-env.d.ts @@ -1,6 +1,6 @@ /// /// -import "./.next/types/routes.d.ts"; +import "./.next/dev/types/routes.d.ts"; // NOTE: This file should not be edited // see https://nextjs.org/docs/app/api-reference/config/typescript for more information. diff --git a/packages/core/src/events/bus.ts b/packages/core/src/events/bus.ts index 91b1a8f35..6374cbb40 100644 --- a/packages/core/src/events/bus.ts +++ b/packages/core/src/events/bus.ts @@ -23,6 +23,7 @@ import type { ItemNode, LevelNode, LinesetNode, + LiquidLineNode, PipeFittingNode, PipeSegmentNode, PipeTrapNode, @@ -123,6 +124,7 @@ export type PipeSegmentEvent = NodeEvent export type PipeFittingEvent = NodeEvent export type PipeTrapEvent = NodeEvent export type LinesetEvent = NodeEvent +export type LiquidLineEvent = NodeEvent // Event suffixes - exported for use in hooks export const eventSuffixes = [ @@ -285,6 +287,7 @@ type EditorEvents = GridEvents & NodeEvents<'pipe-fitting', PipeFittingEvent> & NodeEvents<'pipe-trap', PipeTrapEvent> & NodeEvents<'lineset', LinesetEvent> & + NodeEvents<'liquid-line', LiquidLineEvent> & CameraControlEvents & ToolEvents & GuideEvents & diff --git a/packages/core/src/schema/index.ts b/packages/core/src/schema/index.ts index 33e47861e..aae58c9c5 100644 --- a/packages/core/src/schema/index.ts +++ b/packages/core/src/schema/index.ts @@ -93,6 +93,7 @@ export { } from './nodes/item' export { LevelNode } from './nodes/level' export { LinesetNode } from './nodes/lineset' +export { LiquidLineNode } from './nodes/liquid-line' export { PipeFittingNode } from './nodes/pipe-fitting' export { PipeSegmentNode } from './nodes/pipe-segment' export { PipeTrapNode } from './nodes/pipe-trap' diff --git a/packages/core/src/schema/nodes/lineset.ts b/packages/core/src/schema/nodes/lineset.ts index 2abcc455d..06bc7ff3a 100644 --- a/packages/core/src/schema/nodes/lineset.ts +++ b/packages/core/src/schema/nodes/lineset.ts @@ -10,8 +10,9 @@ import { BaseNode, nodeType, objectId } from '../base' * * Real linesets run a fat insulated SUCTION line (cool vapour back to the * compressor) beside a thin bare LIQUID line (warm liquid out to the coil). - * The geometry builder draws both: the suction line wrapped in a foam - * jacket, the liquid line as bare copper offset alongside it. + * The geometry builder draws a single copper line on the path centerline + * (sized to `suctionDiameter`, wrapped in a foam jacket when `insulated`); + * draw the liquid line as a second lineset rather than both off one path. * * Path coordinates are level-local meters: [x, y, z] tuples, same space as * duct paths and grid events. Diameters are nominal copper OD in inches. diff --git a/packages/core/src/schema/nodes/liquid-line.ts b/packages/core/src/schema/nodes/liquid-line.ts new file mode 100644 index 000000000..5b3f8b386 --- /dev/null +++ b/packages/core/src/schema/nodes/liquid-line.ts @@ -0,0 +1,29 @@ +import dedent from 'dedent' +import { z } from 'zod' +import { BaseNode, nodeType, objectId } from '../base' + +/** + * Standalone refrigerant liquid line — the thin bare-copper line that carries + * warm liquid out to the indoor coil. It is the line that used to be drawn as + * the lineset's second rail; broken out here as its own polyline run so it can + * be drawn on its own, including traced alongside an existing lineset. + * + * Path coordinates are level-local meters: [x, y, z] tuples, the same space as + * lineset and duct paths. Diameter is nominal copper OD in inches. + */ +export const LiquidLineNode = BaseNode.extend({ + id: objectId('liquid-line'), + type: nodeType('liquid-line'), + // Polyline path in level-local meters. Minimum two points (start, end). + path: z.array(z.tuple([z.number(), z.number(), z.number()])).min(2), + // Nominal copper OD in inches. Common residential sizes are 1/4"–3/8". + diameter: z.number().min(0.125).max(1).default(0.375), +}).describe( + dedent` + Standalone refrigerant liquid line - a thin bare-copper polyline run. + - path: list of [x, y, z] points in level-local meters (min 2) + - diameter: nominal copper OD in inches (typ. 1/4"-3/8") + `, +) +export type LiquidLineNode = z.infer +export type LiquidLineNodeId = LiquidLineNode['id'] diff --git a/packages/core/src/schema/types.ts b/packages/core/src/schema/types.ts index f164ed80a..d404367b0 100644 --- a/packages/core/src/schema/types.ts +++ b/packages/core/src/schema/types.ts @@ -20,6 +20,7 @@ import { HvacEquipmentNode } from './nodes/hvac-equipment' import { ItemNode } from './nodes/item' import { LevelNode } from './nodes/level' import { LinesetNode } from './nodes/lineset' +import { LiquidLineNode } from './nodes/liquid-line' import { PipeFittingNode } from './nodes/pipe-fitting' import { PipeSegmentNode } from './nodes/pipe-segment' import { PipeTrapNode } from './nodes/pipe-trap' @@ -78,6 +79,7 @@ export const AnyNode = z.discriminatedUnion('type', [ DuctTerminalNode, HvacEquipmentNode, LinesetNode, + LiquidLineNode, PipeSegmentNode, PipeFittingNode, PipeTrapNode, diff --git a/packages/editor/src/components/editor/floating-action-menu.tsx b/packages/editor/src/components/editor/floating-action-menu.tsx index b43c6c5ef..6ae525500 100644 --- a/packages/editor/src/components/editor/floating-action-menu.tsx +++ b/packages/editor/src/components/editor/floating-action-menu.tsx @@ -512,7 +512,8 @@ export function FloatingActionMenu() { duplicate.type === 'duct-segment' || duplicate.type === 'duct-fitting' || duplicate.type === 'pipe-segment' || - duplicate.type === 'lineset' + duplicate.type === 'lineset' || + duplicate.type === 'liquid-line' ) { // Duct runs & fittings, DWV pipe runs, and refrigerant linesets use // pure drag-to-place: NO node is inserted into the scene until the diff --git a/packages/editor/src/components/ui/action-menu/structure-tools.tsx b/packages/editor/src/components/ui/action-menu/structure-tools.tsx index af7d8e55a..9238963df 100644 --- a/packages/editor/src/components/ui/action-menu/structure-tools.tsx +++ b/packages/editor/src/components/ui/action-menu/structure-tools.tsx @@ -32,4 +32,5 @@ export const tools: ToolConfig[] = [ { id: 'pipe-segment', iconSrc: '/icons/dwv-pipes.png', label: 'DWV Pipe' }, { id: 'pipe-fitting', iconSrc: '/icons/duct-fitting.png', label: 'Pipe Fitting' }, { id: 'lineset', iconSrc: '/icons/lineset.png', label: 'Lineset' }, + { id: 'liquid-line', iconSrc: '/icons/lineset.png', label: 'Liquid Line' }, ] diff --git a/packages/editor/src/store/use-editor.tsx b/packages/editor/src/store/use-editor.tsx index 92b66bfe1..67515e0cb 100644 --- a/packages/editor/src/store/use-editor.tsx +++ b/packages/editor/src/store/use-editor.tsx @@ -111,6 +111,7 @@ export type StructureTool = | 'duct-terminal' | 'hvac-equipment' | 'lineset' + | 'liquid-line' | 'pipe-segment' | 'pipe-fitting' diff --git a/packages/nodes/src/index.ts b/packages/nodes/src/index.ts index bac5b582e..ee5a13b32 100644 --- a/packages/nodes/src/index.ts +++ b/packages/nodes/src/index.ts @@ -20,6 +20,7 @@ import { hvacEquipmentDefinition } from './hvac-equipment' import { itemDefinition } from './item' import { levelDefinition } from './level' import { linesetDefinition } from './lineset' +import { liquidLineDefinition } from './liquid-line' import { pipeFittingDefinition } from './pipe-fitting' import { pipeSegmentDefinition } from './pipe-segment' import { pipeTrapDefinition } from './pipe-trap' @@ -102,6 +103,7 @@ export const builtinPlugin: Plugin = { ductTerminalDefinition as unknown as AnyNodeDefinition, hvacEquipmentDefinition as unknown as AnyNodeDefinition, linesetDefinition as unknown as AnyNodeDefinition, + liquidLineDefinition as unknown as AnyNodeDefinition, // DWV plumbing — Phase 2 of the research doc's plan. pipeSegmentDefinition as unknown as AnyNodeDefinition, pipeFittingDefinition as unknown as AnyNodeDefinition, @@ -130,6 +132,7 @@ export { hvacEquipmentDefinition } from './hvac-equipment' export { itemDefinition } from './item' export { levelDefinition } from './level' export { linesetDefinition } from './lineset' +export { liquidLineDefinition, useLiquidLineToolOptions } from './liquid-line' export { pipeFittingDefinition } from './pipe-fitting' export { pipeSegmentDefinition } from './pipe-segment' export { pipeTrapDefinition } from './pipe-trap' diff --git a/packages/nodes/src/lineset/geometry.ts b/packages/nodes/src/lineset/geometry.ts index e32269dcf..96360835f 100644 --- a/packages/nodes/src/lineset/geometry.ts +++ b/packages/nodes/src/lineset/geometry.ts @@ -10,72 +10,14 @@ const COPPER_COLOR = '#b06b3f' const INSULATION_COLOR = '#e8e8ea' const UP = new Vector3(0, 1, 0) -const FALLBACK_PERP = new Vector3(1, 0, 0) /** - * Foam-jacket thickness (meters) wrapped around the suction line when - * `insulated`. A real ~3/4" black Armaflex sleeve adds ~3/8" of wall; this - * matches that so the insulated suction line reads visibly fatter than the - * bare liquid line beside it. + * Foam-jacket thickness (meters) wrapped around the line when `insulated`. A + * real ~3/4" black Armaflex sleeve adds ~3/8" of wall; this matches that so an + * insulated line reads visibly fatter than the bare copper underneath. */ const INSULATION_THICKNESS_M = 0.01 -/** Cap on the miter-length multiplier so a sharp turn doesn't shoot the - * corner off to infinity — past this we'd want a bevel, but linesets bend - * gently enough that clamping is invisible. */ -const MITER_LIMIT = 4 - -/** - * Horizontal side vector for each path segment — the axis the two lines are - * pushed apart along, kept HORIZONTAL so the pair never tilts. A vertical - * (riser) segment has no horizontal heading of its own, so it inherits the - * side vector from the nearest segment that does; this is what keeps the two - * lines side by side as the run climbs instead of rotating about the bend. - * Falls back to the X axis only if the whole path is vertical. - */ -function segmentSides(points: Vector3[]): Vector3[] { - const sides: (Vector3 | null)[] = [] - for (let i = 0; i < points.length - 1; i++) { - const dir = new Vector3().subVectors(points[i + 1]!, points[i]!) - const horizontal = new Vector3(dir.x, 0, dir.z) - sides.push(horizontal.lengthSq() < 1e-9 ? null : horizontal.normalize().cross(UP).normalize()) - } - // Forward then backward fill so vertical segments adopt a real heading. - for (let i = 1; i < sides.length; i++) if (!sides[i]) sides[i] = sides[i - 1] ?? null - for (let i = sides.length - 2; i >= 0; i--) if (!sides[i]) sides[i] = sides[i + 1] ?? null - return sides.map((s) => s ?? FALLBACK_PERP.clone()) -} - -/** - * Per-vertex offset vectors for turning the path into two parallel lines. - * At an interior vertex the offset follows the angle bisector of the two - * adjacent segment side vectors, scaled by `1/cos(half-angle)` so the offset - * segments on either side of the bend meet exactly at one miter point (a - * plain per-segment side leaves them crossing/gapping). Endpoints use their - * single segment's side. Side vectors are horizontal, so the offset is too — - * a horizontal→vertical bend keeps the same side (cos 1, no expansion), - * leaving the pair perfectly side by side up the riser. The returned vector - * is the `+offset` (liquid) side; the suction side is its negation. - */ -function miterOffsets(points: Vector3[], offset: number): Vector3[] { - const sides = segmentSides(points) - return points.map((_p, i) => { - const sIn = i > 0 ? sides[i - 1]! : null - const sOut = i < sides.length ? sides[i]! : null - if (sIn && sOut) { - const bisector = sIn.clone().add(sOut) - // s_in == -s_out → a 180° switchback; the bisector vanishes, so just - // run straight out on one side. - if (bisector.lengthSq() < 1e-9) return sIn.clone().multiplyScalar(offset) - bisector.normalize() - const cos = bisector.dot(sIn) - const scale = Math.min(MITER_LIMIT, 1 / Math.max(cos, 1 / MITER_LIMIT)) - return bisector.multiplyScalar(offset * scale) - } - return (sIn ?? sOut)!.clone().multiplyScalar(offset) - }) -} - /** Cylinder spanning `start`→`end` at `radius`, named for debugging. */ function buildRun( start: Vector3, @@ -99,13 +41,13 @@ function buildRun( } /** - * Pure geometry builder for a refrigerant lineset: a fat insulated suction - * line beside a thin bare-copper liquid line, both following the node path. + * Pure geometry builder for a refrigerant lineset: a single copper line that + * follows the node path centerline, optionally wrapped in a foam jacket. * - * The two lines are offset symmetrically about the path centerline along a - * horizontal perpendicular to each segment, so the pair reads as a parallel - * run. Joint spheres cap interior corners on each line; the suction line's - * light foam jacket is a larger opaque cylinder over the copper. + * One line per node — what the ghost previews is exactly what commits. To run + * the suction line beside the liquid line, draw them as two separate linesets + * rather than rendering both together off one path. Joint spheres cap interior + * corners so turns read as continuous pipe. * * Children are level-local meters; `` owns the * node transform (identity today — the path is absolute within the level). @@ -114,11 +56,8 @@ export function buildLinesetGeometry(node: LinesetNode): Group { const group = new Group() if (node.path.length < 2) return group - const suctionR = (node.suctionDiameter * INCHES_TO_METERS) / 2 - const liquidR = (node.liquidDiameter * INCHES_TO_METERS) / 2 - const jacketR = node.insulated ? suctionR + INSULATION_THICKNESS_M : suctionR - // Half the center-to-center spacing: the two jackets sit just touching. - const offset = jacketR + liquidR + const copperR = (node.suctionDiameter * INCHES_TO_METERS) / 2 + const jacketR = node.insulated ? copperR + INSULATION_THICKNESS_M : copperR const copperMat = new MeshStandardMaterial({ color: COPPER_COLOR, @@ -133,34 +72,13 @@ export function buildLinesetGeometry(node: LinesetNode): Group { const points = node.path.map(([x, y, z]) => new Vector3(x, y, z)) - // Miter-offset each path point so the two parallel lines meet cleanly at - // every bend instead of drifting apart (a plain per-segment perpendicular - // leaves the inner line cutting the corner). - const offsets = miterOffsets(points, offset) - const suctionPts = points.map((p, i) => p.clone().sub(offsets[i]!)) - const liquidPts = points.map((p, i) => p.clone().add(offsets[i]!)) - for (let i = 0; i < points.length - 1; i++) { - const sCopper = buildRun( - suctionPts[i]!, - suctionPts[i + 1]!, - suctionR, - copperMat, - `lineset-suction-${i}`, - ) - if (sCopper) group.add(sCopper) - const liquid = buildRun( - liquidPts[i]!, - liquidPts[i + 1]!, - liquidR, - copperMat, - `lineset-liquid-${i}`, - ) - if (liquid) group.add(liquid) + const copper = buildRun(points[i]!, points[i + 1]!, copperR, copperMat, `lineset-copper-${i}`) + if (copper) group.add(copper) if (node.insulated) { const jacket = buildRun( - suctionPts[i]!, - suctionPts[i + 1]!, + points[i]!, + points[i + 1]!, jacketR, insulationMat, `lineset-jacket-${i}`, @@ -171,18 +89,14 @@ export function buildLinesetGeometry(node: LinesetNode): Group { // Joint caps at interior corners so turns read as continuous pipe. for (let i = 1; i < points.length - 1; i++) { - const sJoint = new Mesh(new SphereGeometry(suctionR, RADIAL_SEGMENTS, 10), copperMat) - sJoint.name = `lineset-suction-joint-${i}` - sJoint.position.copy(suctionPts[i] as Vector3) - group.add(sJoint) - const lJoint = new Mesh(new SphereGeometry(liquidR, RADIAL_SEGMENTS, 10), copperMat) - lJoint.name = `lineset-liquid-joint-${i}` - lJoint.position.copy(liquidPts[i] as Vector3) - group.add(lJoint) + const joint = new Mesh(new SphereGeometry(copperR, RADIAL_SEGMENTS, 10), copperMat) + joint.name = `lineset-copper-joint-${i}` + joint.position.copy(points[i] as Vector3) + group.add(joint) if (node.insulated) { const jJoint = new Mesh(new SphereGeometry(jacketR, RADIAL_SEGMENTS, 10), insulationMat) jJoint.name = `lineset-jacket-joint-${i}` - jJoint.position.copy(suctionPts[i] as Vector3) + jJoint.position.copy(points[i] as Vector3) group.add(jJoint) } } diff --git a/packages/nodes/src/liquid-line/connect.ts b/packages/nodes/src/liquid-line/connect.ts new file mode 100644 index 000000000..74c7afab0 --- /dev/null +++ b/packages/nodes/src/liquid-line/connect.ts @@ -0,0 +1,98 @@ +import type { LiquidLineNode } from './schema' + +type Point = [number, number, number] +type LiquidLineId = LiquidLineNode['id'] + +/** Coincidence tolerance (meters) for folding endpoints into one run. The + * draw tool snaps onto an existing run's endpoint exactly, so this only + * needs to absorb float drift, not user aim. */ +const COINCIDENT_EPS_M = 1e-3 + +function samePoint(a: Point, b: Point): boolean { + return ( + Math.abs(a[0] - b[0]) < COINCIDENT_EPS_M && + Math.abs(a[1] - b[1]) < COINCIDENT_EPS_M && + Math.abs(a[2] - b[2]) < COINCIDENT_EPS_M + ) +} + +/** Which terminal of `line` coincides with `p`, if either. */ +function matchEnd(line: LiquidLineNode, p: Point): 'start' | 'end' | null { + const path = line.path as Point[] + if (samePoint(path[0]!, p)) return 'start' + if (samePoint(path[path.length - 1]!, p)) return 'end' + return null +} + +/** First liquid line whose start or end coincides with `p`. */ +function findConnection( + existing: LiquidLineNode[], + p: Point, +): { line: LiquidLineNode; side: 'start' | 'end' } | null { + for (const line of existing) { + if (line.path.length < 2) continue + const side = matchEnd(line, p) + if (side) return { line, side } + } + return null +} + +/** Path re-ordered so the connecting terminal is its LAST point. */ +function endLast(path: Point[], side: 'start' | 'end'): Point[] { + return side === 'end' ? path : [...path].reverse() +} + +/** Path re-ordered so the connecting terminal is its FIRST point. */ +function startFirst(path: Point[], side: 'start' | 'end'): Point[] { + return side === 'start' ? path : [...path].reverse() +} + +/** + * Outcome of committing a new `start`→`end` segment against the existing + * liquid-line runs on the same level: + * - `create` — no shared endpoint; place a fresh standalone run. + * - `extend` — one end lands on run `id`; grow that run's path so the old + * terminal becomes an interior point (the geometry miters it). + * - `bridge` — both ends land on two *different* runs; weld them plus the + * new segment into one path on `id` and delete the absorbed `deleteId`. + */ +export type LiquidLineConnectPlan = + | { kind: 'create'; path: Point[] } + | { kind: 'extend'; id: LiquidLineId; path: Point[] } + | { kind: 'bridge'; id: LiquidLineId; path: Point[]; deleteId: LiquidLineId } + +/** + * Decide how a freshly drawn `start`→`end` segment folds into existing + * liquid-line runs that share an endpoint coordinate. Pure: returns a plan, + * the caller mutates the scene. Coords are level-local, so `existing` must be + * pre-filtered to the segment's level. + */ +export function planLiquidLineConnect( + existing: LiquidLineNode[], + start: Point, + end: Point, +): LiquidLineConnectPlan { + const atStart = findConnection(existing, start) + const atEnd = findConnection(existing, end) + + // Both ends meet distinct runs → weld the three into one path. + if (atStart && atEnd && atStart.line.id !== atEnd.line.id) { + const left = endLast(atStart.line.path as Point[], atStart.side) // ...→ start + const right = startFirst(atEnd.line.path as Point[], atEnd.side) // end →... + return { + kind: 'bridge', + id: atStart.line.id, + path: [...left, ...right], + deleteId: atEnd.line.id, + } + } + if (atStart) { + const base = endLast(atStart.line.path as Point[], atStart.side) // ...→ start + return { kind: 'extend', id: atStart.line.id, path: [...base, end] } + } + if (atEnd) { + const base = startFirst(atEnd.line.path as Point[], atEnd.side) // end →... + return { kind: 'extend', id: atEnd.line.id, path: [start, ...base] } + } + return { kind: 'create', path: [start, end] } +} diff --git a/packages/nodes/src/liquid-line/definition.ts b/packages/nodes/src/liquid-line/definition.ts new file mode 100644 index 000000000..97cbc80a4 --- /dev/null +++ b/packages/nodes/src/liquid-line/definition.ts @@ -0,0 +1,124 @@ +import type { NodeDefinition } from '@pascal-app/core' +import { createPathPointMoveAffordance } from '../shared/path-point-affordance' +import { buildLiquidLineFloorplan } from './floorplan' +import { buildLiquidLineGeometry } from './geometry' +import { liquidLineParametrics } from './parametrics' +import { LiquidLineNode } from './schema' + +/** + * Standalone refrigerant liquid line — the thin bare-copper line broken out of + * the lineset so it can be drawn on its own. The refrigerant-side sibling of + * `lineset`: same polyline model and draw tool, snapping onto refrigerant + * service ports, but a single thin line. Its tool adds a Follow mode that + * traces an existing lineset's path at an offset. + * + * Composition: `def.geometry` only, plus a selection-time path-handle system + * shared in spirit with the lineset. The framework's `` + * mounts an empty group; `` fills it via + * `buildLiquidLineGeometry` on dirty. + */ +export const liquidLineDefinition: NodeDefinition = { + kind: 'liquid-line', + schemaVersion: 1, + schema: LiquidLineNode, + category: 'utility', + distributionRole: 'run', + + defaults: () => ({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + path: [ + [0, 0, 0], + [2, 0, 0], + ], + diameter: 0.375, + }), + + capabilities: { + selectable: { hitVolume: 'bbox' }, + duplicable: true, + deletable: true, + }, + + parametrics: liquidLineParametrics, + + geometry: buildLiquidLineGeometry, + geometryKey: (n) => JSON.stringify([n.path, n.diameter]), + + // Open run ends as typed refrigerant ports — directions point outward along + // the path tangent so they mate flush onto a service valve. Path coords are + // already level-local, so no transform is needed. + ports: (n) => { + if (n.path.length < 2) return [] + const diameter = n.diameter + const unit = ( + a: readonly [number, number, number], + b: readonly [number, number, number], + ): [number, number, number] => { + const d: [number, number, number] = [a[0] - b[0], a[1] - b[1], a[2] - b[2]] + const len = Math.hypot(d[0], d[1], d[2]) + return len < 1e-9 ? [1, 0, 0] : [d[0] / len, d[1] / len, d[2] / len] + } + const first = n.path[0]! + const second = n.path[1]! + const last = n.path[n.path.length - 1]! + const prev = n.path[n.path.length - 2]! + return [ + { + id: 'start', + position: first, + direction: unit(first, second), + diameter, + system: 'refrigerant', + }, + { + id: 'end', + position: last, + direction: unit(last, prev), + diameter, + system: 'refrigerant', + }, + ] + }, + + floorplan: buildLiquidLineFloorplan, + + // 2D selection-time path-point handles — the floor-plan twin of the 3D + // `affordanceTools.selection` handles. + floorplanAffordances: { + 'move-path-point': createPathPointMoveAffordance('liquid-line'), + }, + + // Selection-time path-point handles (drag to edit a committed run) and the + // ghost-preview duplicate / move tool (drag-to-place a translucent copy). + affordanceTools: { + selection: () => import('./selection'), + move: () => import('./move-tool'), + }, + + tool: () => import('./tool'), + toolHints: [ + { key: 'Click', label: 'Start liquid line' }, + { key: 'Click again', label: 'Place it (locked to 45°)' }, + { key: 'Shift', label: 'Free angle' }, + { key: 'Alt + drag', label: 'Go vertical ↕, click to place' }, + { key: 'F', label: 'Follow: trace a lineset' }, + { key: 'Esc', label: 'Cancel' }, + ], + + presentation: { + label: 'Liquid Line', + description: + 'Standalone refrigerant liquid line — a thin bare-copper run; Follow mode traces an existing lineset.', + icon: { kind: 'url', src: '/icons/lineset.png' }, + paletteSection: 'structure', + paletteOrder: 94, + }, + + mcp: { + description: + 'A standalone refrigerant liquid line defined as a polyline of thin bare copper. Snaps onto refrigerant service ports; can be traced alongside an existing lineset.', + }, +} diff --git a/packages/nodes/src/liquid-line/floorplan.ts b/packages/nodes/src/liquid-line/floorplan.ts new file mode 100644 index 000000000..13b03943a --- /dev/null +++ b/packages/nodes/src/liquid-line/floorplan.ts @@ -0,0 +1,77 @@ +import type { FloorplanGeometry, FloorplanPoint, GeometryContext } from '@pascal-app/core' +import { INCHES_TO_METERS } from '../duct-segment/geometry' +import type { LiquidLineNode } from './schema' + +const COPPER_LINE = '#b06b3f' + +/** + * Floor-plan representation of a liquid line: a single thin copper polyline at + * the line's real width. Vertical risers collapse to a point in plan; + * consecutive duplicate plan points are dropped so they don't render + * zero-length artifacts. + */ +export function buildLiquidLineFloorplan( + node: LiquidLineNode, + ctx: GeometryContext, +): FloorplanGeometry | null { + if (node.path.length < 2) return null + + const points: FloorplanPoint[] = [] + // Plan point k ← original path index indexMap[k] (risers collapse to one + // plan point), so the path-point drag handle edits the right vertex. + const indexMap: number[] = [] + for (let i = 0; i < node.path.length; i++) { + const [x, , z] = node.path[i]! + const prev = points[points.length - 1] + if (prev && Math.abs(prev[0] - x) < 1e-6 && Math.abs(prev[1] - z) < 1e-6) continue + points.push([x, z]) + indexMap.push(i) + } + + const widthM = node.diameter * INCHES_TO_METERS + const view = ctx.viewState + const palette = view?.palette + const showSelectedChrome = (view?.selected || view?.highlighted) ?? false + + if (points.length < 2) { + const p = points[0] ?? [node.path[0]![0], node.path[0]![2]] + return { + kind: 'circle', + cx: p[0], + cy: p[1], + r: Math.max(widthM, 0.02), + fill: COPPER_LINE, + stroke: showSelectedChrome && palette ? palette.selectedStroke : COPPER_LINE, + strokeWidth: 0.02, + opacity: 0.9, + } + } + + const children: FloorplanGeometry[] = [ + { + kind: 'polyline', + points, + stroke: showSelectedChrome && palette ? palette.selectedStroke : COPPER_LINE, + strokeWidth: Math.max(widthM * 2, 0.04), + strokeLinecap: 'round', + strokeLinejoin: 'round', + opacity: showSelectedChrome ? 0.95 : 0.85, + }, + ] + + // Selection chrome: one draggable handle per path vertex (2D twin of the + // 3D selection handles). Routes to the shared `move-path-point` affordance. + if (view?.selected) { + for (let k = 0; k < points.length; k++) { + children.push({ + kind: 'endpoint-handle', + point: points[k]!, + state: 'idle', + affordance: 'move-path-point', + payload: { pointIndex: indexMap[k]! }, + }) + } + } + + return { kind: 'group', children } +} diff --git a/packages/nodes/src/liquid-line/geometry.ts b/packages/nodes/src/liquid-line/geometry.ts new file mode 100644 index 000000000..0a99afab4 --- /dev/null +++ b/packages/nodes/src/liquid-line/geometry.ts @@ -0,0 +1,66 @@ +import { CylinderGeometry, Group, Mesh, MeshStandardMaterial, SphereGeometry, Vector3 } from 'three' +import { INCHES_TO_METERS } from '../duct-segment/geometry' +import type { LiquidLineNode } from './schema' + +const RADIAL_SEGMENTS = 16 +const COPPER_COLOR = '#b06b3f' + +const UP = new Vector3(0, 1, 0) + +/** Cylinder spanning `start`→`end` at `radius`, named for debugging. */ +function buildRun( + start: Vector3, + end: Vector3, + radius: number, + material: MeshStandardMaterial, + name: string, +): Mesh | null { + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-6) return null + dir.normalize() + const mesh = new Mesh( + new CylinderGeometry(radius, radius, length, RADIAL_SEGMENTS, 1, false), + material, + ) + mesh.name = name + mesh.position.copy(start).addScaledVector(dir, length / 2) + mesh.quaternion.setFromUnitVectors(UP, dir) + return mesh +} + +/** + * Pure geometry builder for a standalone liquid line: a single thin bare-copper + * cylinder following the node path centerline, with joint spheres capping + * interior corners so turns read as continuous pipe. + * + * Children are level-local meters; `` owns the node + * transform (identity today — the path is absolute within the level). + */ +export function buildLiquidLineGeometry(node: LiquidLineNode): Group { + const group = new Group() + if (node.path.length < 2) return group + + const radius = (node.diameter * INCHES_TO_METERS) / 2 + const copperMat = new MeshStandardMaterial({ + color: COPPER_COLOR, + metalness: 0.8, + roughness: 0.3, + }) + + const points = node.path.map(([x, y, z]) => new Vector3(x, y, z)) + + for (let i = 0; i < points.length - 1; i++) { + const run = buildRun(points[i]!, points[i + 1]!, radius, copperMat, `liquid-line-${i}`) + if (run) group.add(run) + } + + for (let i = 1; i < points.length - 1; i++) { + const joint = new Mesh(new SphereGeometry(radius, RADIAL_SEGMENTS, 10), copperMat) + joint.name = `liquid-line-joint-${i}` + joint.position.copy(points[i] as Vector3) + group.add(joint) + } + + return group +} diff --git a/packages/nodes/src/liquid-line/index.ts b/packages/nodes/src/liquid-line/index.ts new file mode 100644 index 000000000..cd63be633 --- /dev/null +++ b/packages/nodes/src/liquid-line/index.ts @@ -0,0 +1,5 @@ +export { type LiquidLineConnectPlan, planLiquidLineConnect } from './connect' +export { liquidLineDefinition } from './definition' +export { buildLiquidLineGeometry } from './geometry' +export { useLiquidLineToolOptions } from './options' +export { LiquidLineNode } from './schema' diff --git a/packages/nodes/src/liquid-line/move-tool.tsx b/packages/nodes/src/liquid-line/move-tool.tsx new file mode 100644 index 000000000..3e5c81413 --- /dev/null +++ b/packages/nodes/src/liquid-line/move-tool.tsx @@ -0,0 +1,300 @@ +'use client' + +import { + type AlignmentAnchor, + type AnyNode, + type AnyNodeId, + emitter, + type GridEvent, + LiquidLineNode, + sceneRegistry, + useScene, +} from '@pascal-app/core' +import { + DragBoundingBox, + EDITOR_LAYER, + markToolCancelConsumed, + stripPlacementMetadataFlags, + triggerSFX, + useAlignmentGuides, + useEditor, +} from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { useEffect, useRef, useState } from 'react' +import { Vector3 } from 'three' +import { + type Aabb2D, + collectGhostAlignmentCandidates, + resolveGhostAlignment, +} from '../shared/ghost-alignment' + +type Vec3 = [number, number, number] + +const GHOST_COLOR = '#818cf8' +const GHOST_OPACITY = 0.5 +const IN_TO_M = 0.0254 + +/** Snap a coordinate to the editor's live grid step. */ +function snapToGridStep(value: number): number { + const step = useEditor.getState().gridSnapStep + if (step <= 0) return value + return Math.round(value / step) * step +} + +function pathCenterXZ(path: readonly Vec3[]): [number, number] { + let x = 0 + let z = 0 + for (const p of path) { + x += p[0] + z += p[2] + } + const n = path.length || 1 + return [x / n, z / n] +} + +/** The liquid line's footprint radius (meters) — half its OD, used as box / + * footprint padding and ghost radius. */ +function liquidLineRadiusM(line: LiquidLineNode): number { + return (line.diameter * IN_TO_M) / 2 +} + +/** XZ bounds of a path padded by the line's radius. */ +function pathAabb(path: readonly Vec3[], r: number): Aabb2D { + let minX = Number.POSITIVE_INFINITY + let maxX = Number.NEGATIVE_INFINITY + let minZ = Number.POSITIVE_INFINITY + let maxZ = Number.NEGATIVE_INFINITY + for (const p of path) { + if (p[0] < minX) minX = p[0] + if (p[0] > maxX) maxX = p[0] + if (p[2] < minZ) minZ = p[2] + if (p[2] > maxZ) maxZ = p[2] + } + return { minX: minX - r, maxX: maxX + r, minZ: minZ - r, maxZ: maxZ + r } +} + +/** + * Ghost-preview duplicate / move tool for liquid lines — the path-mover sibling + * of `MoveLinesetTool`. A translucent cylinder at the line's OD per section + * stands in for the run (mirrors the draw tool's `PreviewSegment`). + * + * **Duplicate** (`metadata.isNew`): pure drag-to-place — NOTHING is inserted + * into the scene until the commit click. A translucent ghost rides the cursor + * inside a footprint bounding box and Figma-style alignment guides snap the + * box's edges to nearby geometry. The next grid click calls `createNode`; Esc + * discards. The run's Y coords ride along untouched: the move only shifts XZ. + * + * **Move** (existing run): the real node's mesh is hidden while the same ghost + * + box tracks the cursor; the commit click writes the translated `path` and + * reveals it, Esc reveals it unchanged. + * + * Wired via `def.affordanceTools.move`. + */ +export const MoveLiquidLineTool: React.FC<{ node: AnyNode }> = ({ node }) => { + const line = node as LiquidLineNode + const originalPathRef = useRef(line.path.map((p) => [...p] as Vec3)) + + const isNew = + typeof node.metadata === 'object' && + node.metadata !== null && + !Array.isArray(node.metadata) && + (node.metadata as Record).isNew === true + + const [previewPath, setPreviewPath] = useState(originalPathRef.current) + const previewPathRef = useRef(originalPathRef.current) + const hasMovedRef = useRef(false) + const activatedAtRef = useRef(Date.now()) + const prevSnapRef = useRef<[number, number] | null>(null) + + useEffect(() => { + const nodeId = node.id as AnyNodeId + const originalPath = originalPathRef.current + const [centerX, centerZ] = pathCenterXZ(originalPath) + const r = liquidLineRadiusM(line) + const baseAabb = pathAabb(originalPath, r) + + useScene.temporal.getState().pause() + let committed = false + + const candidates: AlignmentAnchor[] = collectGhostAlignmentCandidates( + useScene.getState().nodes, + nodeId, + useViewer.getState().selection.levelId ?? node.parentId, + ) + + // Moving an existing run: hide its 3D MESH imperatively (NOT the store + // `visible` flag — the 2D floor plan skips `visible:false` nodes, so a + // store hide makes the run vanish in 2D / split view). The ghost stands + // in until commit; the real mesh is restored on cancel / unmount. + const existedAtStart = !isNew && !!useScene.getState().nodes[nodeId] + const setMeshHidden = (hidden: boolean) => { + const obj = sceneRegistry.nodes.get(nodeId) + if (obj) obj.visible = !hidden + } + if (existedAtStart) setMeshHidden(true) + + const setPreview = (path: Vec3[]) => { + previewPathRef.current = path + setPreviewPath(path) + } + + const onMove = (event: GridEvent) => { + const bypass = event.nativeEvent?.shiftKey === true + const snap = bypass ? (v: number) => v : snapToGridStep + let dx = snap(event.localPosition[0] - centerX) + let dz = snap(event.localPosition[2] - centerZ) + + // Figma-style alignment: snap the run's footprint box edges onto nearby + // geometry and publish the guides (Shift bypass). + if (!bypass) { + const proposed: Aabb2D = { + minX: baseAabb.minX + dx, + maxX: baseAabb.maxX + dx, + minZ: baseAabb.minZ + dz, + maxZ: baseAabb.maxZ + dz, + } + const { dx: sdx, dz: sdz, guides } = resolveGhostAlignment(nodeId, proposed, candidates) + dx += sdx + dz += sdz + useAlignmentGuides.getState().set(guides) + } else { + useAlignmentGuides.getState().clear() + } + + const cur: [number, number] = [centerX + dx, centerZ + dz] + if ( + !bypass && + (!prevSnapRef.current || + prevSnapRef.current[0] !== cur[0] || + prevSnapRef.current[1] !== cur[1]) + ) { + triggerSFX('sfx:grid-snap') + } + prevSnapRef.current = cur + hasMovedRef.current = true + setPreview(originalPath.map(([x, y, z]) => [x + dx, y, z + dz] as Vec3)) + } + + const commit = (event: GridEvent) => { + if (committed) return + if (Date.now() - activatedAtRef.current < 150) { + event.nativeEvent?.stopPropagation?.() + return + } + if (!hasMovedRef.current) { + event.nativeEvent?.stopPropagation?.() + return + } + committed = true + const finalPath = previewPathRef.current + + useScene.temporal.getState().resume() + let selectId = nodeId + if (isNew && !useScene.getState().nodes[nodeId]) { + const created = LiquidLineNode.parse({ + ...(node as Record), + path: finalPath, + metadata: stripPlacementMetadataFlags(node.metadata), + visible: true, + }) + useScene.getState().createNode(created as AnyNode, node.parentId as AnyNodeId) + selectId = created.id as AnyNodeId + } else { + useScene.getState().updateNode(nodeId, { path: finalPath } as Partial) + useScene.getState().markDirty(nodeId) + } + useScene.temporal.getState().pause() + setMeshHidden(false) + + useAlignmentGuides.getState().clear() + triggerSFX('sfx:item-place') + useViewer.getState().setSelection({ selectedIds: [selectId] }) + useEditor.getState().setMovingNodeOrigin('3d') + useEditor.getState().setMovingNode(null) + event.nativeEvent?.stopPropagation?.() + } + + const onCancel = () => { + if (existedAtStart) { + setMeshHidden(false) + useViewer.getState().setSelection({ selectedIds: [nodeId] }) + } + useAlignmentGuides.getState().clear() + useScene.temporal.getState().resume() + markToolCancelConsumed() + useEditor.getState().setMovingNodeOrigin('3d') + useEditor.getState().setMovingNode(null) + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', commit) + emitter.on('tool:cancel', onCancel) + + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', commit) + emitter.off('tool:cancel', onCancel) + useAlignmentGuides.getState().clear() + if (existedAtStart) setMeshHidden(false) + useScene.temporal.getState().resume() + } + }, [line, isNew, node]) + + const segments: Array<{ a: Vec3; b: Vec3 }> = [] + for (let i = 0; i < previewPath.length - 1; i++) { + segments.push({ a: previewPath[i]!, b: previewPath[i + 1]! }) + } + + // Footprint box spanning the whole run (axis-aligned), drawn around the ghost + // the same way items get one. Recomputed from the live preview path. + const r = liquidLineRadiusM(line) + const box = pathAabb(previewPath, r) + const boxY = previewPath[0]?.[1] ?? 0 + + return ( + + {segments.map((seg, i) => ( + + ))} + + + ) +} + +/** Translucent stand-in for one liquid-line section — mirrors the draw tool's + * `PreviewSegment` so the ghost matches what actually lands. */ +function GhostSegment({ a, b, radius }: { a: Vec3; b: Vec3; radius: number }) { + const start = new Vector3(...a) + const end = new Vector3(...b) + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-4) return null + dir.normalize() + const mid = new Vector3().addVectors(start, end).multiplyScalar(0.5) + + return ( + { + if (!m) return + m.quaternion.setFromUnitVectors(new Vector3(0, 1, 0), dir) + }} + > + + + + ) +} + +export default MoveLiquidLineTool diff --git a/packages/nodes/src/liquid-line/options.ts b/packages/nodes/src/liquid-line/options.ts new file mode 100644 index 000000000..04c87098a --- /dev/null +++ b/packages/nodes/src/liquid-line/options.ts @@ -0,0 +1,21 @@ +import { create } from 'zustand' + +/** + * Shared draw-time options for the liquid-line tool. Lives in the nodes + * package so both the tool (which reads + key-toggles it) and the app's MEP + * panel (which renders the toggle button) can bind to the same state. + * + * `follow` arms "trace a lineset": while on, clicking an existing lineset + * lays a liquid line beside it along the same path instead of free-drawing. + */ +type LiquidLineToolOptions = { + follow: boolean + setFollow: (value: boolean) => void + toggleFollow: () => void +} + +export const useLiquidLineToolOptions = create((set) => ({ + follow: false, + setFollow: (value) => set({ follow: value }), + toggleFollow: () => set((s) => ({ follow: !s.follow })), +})) diff --git a/packages/nodes/src/liquid-line/parametrics.ts b/packages/nodes/src/liquid-line/parametrics.ts new file mode 100644 index 000000000..c19403752 --- /dev/null +++ b/packages/nodes/src/liquid-line/parametrics.ts @@ -0,0 +1,20 @@ +import type { ParametricDescriptor } from '@pascal-app/core' +import type { LiquidLineNode } from './schema' + +export const liquidLineParametrics: ParametricDescriptor = { + groups: [ + { + label: 'Line', + fields: [ + { + key: 'diameter', + kind: 'number', + unit: 'in', + min: 0.125, + max: 0.75, + step: 0.125, + }, + ], + }, + ], +} diff --git a/packages/nodes/src/liquid-line/schema.ts b/packages/nodes/src/liquid-line/schema.ts new file mode 100644 index 000000000..f9b7fbd27 --- /dev/null +++ b/packages/nodes/src/liquid-line/schema.ts @@ -0,0 +1 @@ +export { LiquidLineNode } from '@pascal-app/core' diff --git a/packages/nodes/src/liquid-line/selection.tsx b/packages/nodes/src/liquid-line/selection.tsx new file mode 100644 index 000000000..ed23f9d2f --- /dev/null +++ b/packages/nodes/src/liquid-line/selection.tsx @@ -0,0 +1,282 @@ +'use client' + +import { + type AnyNodeId, + type LiquidLineNode, + pauseSceneHistory, + resumeSceneHistory, + sceneRegistry, + useScene, +} from '@pascal-app/core' +import { DimensionPill, EDITOR_LAYER, useEditor } from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { createPortal, type ThreeEvent, useThree } from '@react-three/fiber' +import { useEffect, useRef, useState } from 'react' +import { type Object3D, Plane, Raycaster, Vector2, Vector3 } from 'three' +import { collectScenePorts, findNearestPortXZ, REFRIGERANT_PORT_SYSTEMS } from '../shared/ports' + +const HANDLE_RADIUS = 0.07 +const PORT_SNAP_RADIUS_M = 0.4 + +const UP = new Vector3(0, 1, 0) + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +type Point = [number, number, number] + +/** + * Selection-time editing for committed liquid-line runs: one draggable handle + * per path point. Mirrors the lineset path-handle system; dragged run + * endpoints snap onto refrigerant ports only. + * + * Handles are PORTALED into the line's registered scene group so they share + * its exact frame. Drag raycasts run in world space and convert hits back into + * the group's local frame before writing the path. + */ +const LiquidLineSelectionAffordance = () => { + const selectedIds = useViewer((s) => s.selection.selectedIds) + const line = useScene((s) => { + if (selectedIds.length !== 1) return null + const node = s.nodes[selectedIds[0] as AnyNodeId] + return node?.type === 'liquid-line' ? (node as LiquidLineNode) : null + }) + + const lineId = line?.id ?? null + const [target, setTarget] = useState(null) + useEffect(() => { + if (!lineId) { + setTarget(null) + return + } + let frameId = 0 + const resolve = () => { + const next = sceneRegistry.nodes.get(lineId as AnyNodeId) ?? null + setTarget((cur) => (cur === next ? cur : next)) + if (!next) frameId = window.requestAnimationFrame(resolve) + } + resolve() + return () => window.cancelAnimationFrame(frameId) + }, [lineId]) + + if (!line || !target) return null + return createPortal(, target, undefined) +} + +const LiquidLinePointHandles = ({ line, target }: { line: LiquidLineNode; target: Object3D }) => { + const { camera, gl } = useThree() + const unit = useViewer((s) => s.unit) + const [draggingIndex, setDraggingIndex] = useState(null) + const [hoverIndex, setHoverIndex] = useState(null) + const dragRef = useRef<{ + index: number + initialPath: Point[] + current: Point + cleanup: () => void + } | null>(null) + + const makeRay = (clientX: number, clientY: number) => { + const rect = gl.domElement.getBoundingClientRect() + const ndc = new Vector2( + ((clientX - rect.left) / rect.width) * 2 - 1, + -((clientY - rect.top) / rect.height) * 2 + 1, + ) + const raycaster = new Raycaster() + raycaster.setFromCamera(ndc, camera) + return raycaster.ray + } + + const intersect = (clientX: number, clientY: number, plane: Plane): Vector3 | null => { + const hit = new Vector3() + return makeRay(clientX, clientY).intersectPlane(plane, hit) ? hit : null + } + + const projectOntoAxis = ( + clientX: number, + clientY: number, + anchorWorld: Vector3, + axisWorld: Vector3, + ): number | null => { + const ray = makeRay(clientX, clientY) + const w0 = new Vector3().subVectors(ray.origin, anchorWorld) + const b = ray.direction.dot(axisWorld) + const denom = 1 - b * b + if (Math.abs(denom) < 1e-6) return null + const d0 = ray.direction.dot(w0) + const e0 = axisWorld.dot(w0) + return (e0 - b * d0) / denom + } + + const toWorld = (p: Point): Vector3 => target.localToWorld(new Vector3(p[0], p[1], p[2])) + const toLocal = (world: Vector3): Point => { + const local = target.worldToLocal(world.clone()) + return [local.x, local.y, local.z] + } + + const onHandleDown = (index: number) => (e: ThreeEvent) => { + e.stopPropagation() + const initialPath = line.path.map((p) => [...p] as Point) + const startPoint = initialPath[index]! + pauseSceneHistory(useScene) + useViewer.getState().setInputDragging(true) + document.body.style.cursor = 'grabbing' + setDraggingIndex(index) + + const isEndpoint = index === 0 || index === initialPath.length - 1 + + const neighbor = initialPath[index === 0 ? 1 : index - 1]! + const axisLocal = new Vector3( + startPoint[0] - neighbor[0], + startPoint[1] - neighbor[1], + startPoint[2] - neighbor[2], + ) + if (axisLocal.lengthSq() < 1e-9) axisLocal.set(1, 0, 0) + axisLocal.normalize() + const anchorWorldStart = toWorld(startPoint) + const axisWorld = toWorld([ + startPoint[0] + axisLocal.x, + startPoint[1] + axisLocal.y, + startPoint[2] + axisLocal.z, + ]) + .sub(anchorWorldStart) + .normalize() + + const onMove = (event: PointerEvent) => { + const drag = dragRef.current + if (!drag) return + const current = drag.current + const step = event.shiftKey ? 0 : useEditor.getState().gridSnapStep + let next: Point | null = null + if (event.altKey) { + const plane = new Plane().setFromNormalAndCoplanarPoint(UP, toWorld(current)) + const hit = intersect(event.clientX, event.clientY, plane) + if (hit) { + const local = toLocal(hit) + next = [snap(local[0], step), current[1], snap(local[2], step)] + if (isEndpoint) { + const port = findNearestPortXZ( + [local[0], current[1], local[2]], + collectScenePorts({ excludeNodeId: line.id, systems: REFRIGERANT_PORT_SYSTEMS }), + PORT_SNAP_RADIUS_M, + ) + if (port) next = [port.position[0], port.position[1], port.position[2]] + } + } + } else { + const t = projectOntoAxis(event.clientX, event.clientY, anchorWorldStart, axisWorld) + if (t !== null) { + const dist = snap(t, step) + next = [ + startPoint[0] + axisLocal.x * dist, + Math.max(0, startPoint[1] + axisLocal.y * dist), + startPoint[2] + axisLocal.z * dist, + ] + } + } + if (!next) return + if (next[0] === current[0] && next[1] === current[1] && next[2] === current[2]) return + drag.current = next + const path = line.path.map((p, i) => (i === drag.index ? next! : p)) as Point[] + useScene.getState().updateNode(line.id, { path }) + } + + const onUp = () => { + const drag = dragRef.current + if (!drag) return + drag.cleanup() + dragRef.current = null + setDraggingIndex(null) + const finalPath = drag.initialPath.map((p, i) => + i === drag.index ? drag.current : p, + ) as Point[] + useScene.getState().updateNode(line.id, { path: drag.initialPath }) + resumeSceneHistory(useScene) + const moved = finalPath[drag.index]!.some( + (v, axis) => v !== drag.initialPath[drag.index]![axis], + ) + if (moved) useScene.getState().updateNode(line.id, { path: finalPath }) + } + + const cleanup = () => { + window.removeEventListener('pointermove', onMove) + window.removeEventListener('pointerup', onUp) + window.removeEventListener('pointercancel', onUp) + useViewer.getState().setInputDragging(false) + document.body.style.cursor = '' + } + + dragRef.current = { index, initialPath, current: startPoint, cleanup } + window.addEventListener('pointermove', onMove) + window.addEventListener('pointerup', onUp) + window.addEventListener('pointercancel', onUp) + } + + return ( + + {line.path.map((p, i) => { + const active = draggingIndex === i + const hovered = hoverIndex === i + return ( + { + e.stopPropagation() + setHoverIndex(i) + if (draggingIndex === null) document.body.style.cursor = 'grab' + }} + onPointerLeave={() => { + setHoverIndex((prev) => (prev === i ? null : prev)) + if (draggingIndex === null) document.body.style.cursor = '' + }} + position={p as Point} + > + + + + ) + })} + {draggingIndex !== null && + line.path[draggingIndex] && + (() => { + const point = line.path[draggingIndex]! + const origin = dragRef.current?.initialPath[draggingIndex] ?? point + const deltas = [point[0] - origin[0], point[1] - origin[1], point[2] - origin[2]] + const axes = ['x', 'y', 'z'] as const + const primary = axes.reduce((best, axis, i) => + Math.abs(deltas[i]!) > Math.abs(deltas[axes.indexOf(best)]!) ? axis : best, + ) + return ( + + ({ + key: axis, + prefix: axis.toUpperCase(), + value: deltas[i]!, + signed: true, + }))} + primary={primary} + unit={unit} + /> + + ) + })()} + + ) +} + +export default LiquidLineSelectionAffordance diff --git a/packages/nodes/src/liquid-line/tool.tsx b/packages/nodes/src/liquid-line/tool.tsx new file mode 100644 index 000000000..75a3565e8 --- /dev/null +++ b/packages/nodes/src/liquid-line/tool.tsx @@ -0,0 +1,543 @@ +'use client' + +import { + type AnyNodeId, + emitter, + type GridEvent, + type LinesetNode, + LiquidLineNode, + useScene, +} from '@pascal-app/core' +import { + CursorSphere, + DimensionPill, + EDITOR_LAYER, + markToolCancelConsumed, + triggerSFX, + useEditor, +} from '@pascal-app/editor' +import { useViewer } from '@pascal-app/viewer' +import { Html } from '@react-three/drei' +import { useEffect, useRef, useState } from 'react' +import { type Group, Vector3 } from 'three' +import { alignDrawPoint, clearDrawAlignment } from '../shared/draw-alignment' +import { offsetPathHorizontal } from '../shared/path-offset' +import { collectScenePorts, findNearestPortXZ, REFRIGERANT_PORT_SYSTEMS } from '../shared/ports' +import { planLiquidLineConnect } from './connect' +import { liquidLineDefinition } from './definition' +import { useLiquidLineToolOptions } from './options' + +/** + * One-segment-at-a-time placement tool for standalone liquid lines — the same + * draw model as the lineset tool (the line it used to be a rail of): + * - **First click** anchors the run start; within range of a refrigerant + * service port it snaps onto it so a run mates flush. + * - **Second click** commits a two-point line and re-arms; the in-flight end + * is angle-locked to 45° (Shift frees it), Alt drags it vertical. + * + * **Follow mode** (toggled by the MEP panel's Follow button or the `F` key): + * instead of free-drawing, hover an existing lineset and click — a liquid line + * is laid beside it, tracing the lineset's whole path at a fixed offset on the + * side the cursor is on. This is the "place it exactly next to this" affordance. + */ +const PREVIEW_OPACITY = 0.6 +const PREVIEW_COLOR = '#b06b3f' +/** Snap radius (meters) for joining onto a refrigerant port. */ +const ENDPOINT_SNAP_RADIUS_M = 0.5 +/** Angle step (radians) for the XZ angle lock — 45°. */ +const ANGLE_STEP_RAD = Math.PI / 4 +/** Mouse pixels → meters mapping for Alt-vertical drag. 100 px ≈ 1 m. */ +const ALT_PIXELS_PER_METER = 100 +const ALT_Y_MIN_M = -3 +const ALT_Y_MAX_M = 10 + +const IN_TO_M = 0.0254 +/** Default liquid OD (~3/8") — the ghost radius and trace-line size. */ +const DEFAULT_DIAMETER_IN = 0.375 +const GHOST_RADIUS_M = (DEFAULT_DIAMETER_IN * IN_TO_M) / 2 +/** Matches the lineset's foam-jacket thickness so the traced line sits just + * outside an insulated suction line, exactly where the old paired rail was. */ +const INSULATION_THICKNESS_M = 0.01 +/** How close (meters, XZ) the cursor must be to a lineset path to trace it. */ +const FOLLOW_PICK_RADIUS_M = 0.6 +/** Clear-air gap (meters) between the lineset's outer surface and the traced + * liquid line, so the new run reads as its own line instead of fusing onto + * the lineset (~2"). */ +const FOLLOW_GAP_M = 0.05 + +type Vec3 = [number, number, number] + +function snap(value: number, step: number): number { + if (step <= 0) return value + return Math.round(value / step) * step +} + +/** Nearest refrigerant port within snap range on the XZ plane, as a position + * tuple. Y is ignored for the distance check; the snap adopts the port's full + * 3D position. */ +function findNearbyPort(point: Vec3): Vec3 | null { + const port = findNearestPortXZ( + point, + collectScenePorts({ systems: REFRIGERANT_PORT_SYSTEMS }), + ENDPOINT_SNAP_RADIUS_M, + ) + return port ? [port.position[0], port.position[1], port.position[2]] : null +} + +function projectToAngleLock(from: Vec3, raw: Vec3): Vec3 { + const dx = raw[0] - from[0] + const dz = raw[2] - from[2] + const len = Math.hypot(dx, dz) + if (len < 1e-4) return [from[0], from[1], from[2]] + const theta = Math.atan2(dz, dx) + const snapped = Math.round(theta / ANGLE_STEP_RAD) * ANGLE_STEP_RAD + const proj = dx * Math.cos(snapped) + dz * Math.sin(snapped) + const d = Math.max(0, proj) + return [from[0] + Math.cos(snapped) * d, from[1], from[2] + Math.sin(snapped) * d] +} + +/** Distance (XZ) from point `p` to segment `a`→`b`. */ +function distToSegmentXZ(p: Vec3, a: Vec3, b: Vec3): number { + const dx = b[0] - a[0] + const dz = b[2] - a[2] + const len2 = dx * dx + dz * dz + let t = len2 > 0 ? ((p[0] - a[0]) * dx + (p[2] - a[2]) * dz) / len2 : 0 + t = Math.max(0, Math.min(1, t)) + const cx = a[0] + t * dx + const cz = a[2] + t * dz + return Math.hypot(p[0] - cx, p[2] - cz) +} + +/** Center-to-center offset (meters) that drops the liquid line a small gap + * outside the lineset's outer surface, so the two read as separate lines. */ +function traceOffsetMeters(lineset: LinesetNode): number { + const suctionR = (lineset.suctionDiameter * IN_TO_M) / 2 + const jacket = lineset.insulated ? INSULATION_THICKNESS_M : 0 + return suctionR + jacket + FOLLOW_GAP_M + GHOST_RADIUS_M +} + +type FollowTarget = { lineset: LinesetNode; sign: number } + +/** + * Nearest lineset whose path passes within `FOLLOW_PICK_RADIUS_M` of the + * cursor, plus which side of it the cursor is on (`sign`, matching + * `offsetPathHorizontal`'s side convention). Restricted to the active level. + */ +function findFollowTarget(point: Vec3, levelId: AnyNodeId): FollowTarget | null { + const scene = useScene.getState() + let best: FollowTarget | null = null + let bestD = FOLLOW_PICK_RADIUS_M + for (const n of Object.values(scene.nodes)) { + if (!n || n.type !== 'lineset') continue + if ((n.parentId as AnyNodeId | null) !== levelId) continue + const ls = n as LinesetNode + if (ls.path.length < 2) continue + for (let i = 0; i < ls.path.length - 1; i++) { + const a = ls.path[i] as Vec3 + const b = ls.path[i + 1] as Vec3 + const d = distToSegmentXZ(point, a, b) + if (d >= bestD) continue + bestD = d + // Side vector = normalize(heading_xz) × UP = (-hz, 0, hx); sign is which + // side of the segment the cursor sits on. + const hx = b[0] - a[0] + const hz = b[2] - a[2] + const hlen = Math.hypot(hx, hz) + const sx = hlen > 1e-9 ? -hz / hlen : 0 + const sz = hlen > 1e-9 ? hx / hlen : 0 + const dot = (point[0] - a[0]) * sx + (point[2] - a[2]) * sz + best = { lineset: ls, sign: dot >= 0 ? 1 : -1 } + } + } + return best +} + +/** The offset path a follow-target would trace, or null if degenerate. */ +function tracePath(target: FollowTarget): Vec3[] | null { + const offset = target.sign * traceOffsetMeters(target.lineset) + const traced = offsetPathHorizontal(target.lineset.path as Vec3[], offset) + return traced.length >= 2 ? traced : null +} + +const LiquidLineTool = () => { + const activeLevelId = useViewer((s) => s.selection.levelId) + const unit = useViewer((s) => s.unit) + const follow = useLiquidLineToolOptions((s) => s.follow) + const cursorRef = useRef(null) + const [draftPoints, setDraftPoints] = useState([]) + const [cursorPos, setCursorPos] = useState(null) + const [snapTarget, setSnapTarget] = useState(null) + const [traceGhost, setTraceGhost] = useState(null) + const [altActive, setAltActive] = useState(false) + const draftRef = useRef(draftPoints) + draftRef.current = draftPoints + const followTargetRef = useRef(null) + const altAnchorRef = useRef<{ clientY: number; baseY: number } | null>(null) + const lastClientYRef = useRef(null) + + // Clear in-flight draft / trace whenever Follow toggles (panel button or F). + useEffect(() => { + setDraftPoints([]) + setTraceGhost(null) + followTargetRef.current = null + altAnchorRef.current = null + setAltActive(false) + }, [follow]) + + // Leaving the tool clears Follow so re-arming it starts in free-draw. + useEffect(() => () => useLiquidLineToolOptions.getState().setFollow(false), []) + + useEffect(() => { + if (!activeLevelId) return + + const commitSegment = (start: Vec3, end: Vec3) => { + const sameSpot = + Math.abs(start[0] - end[0]) < 1e-4 && + Math.abs(start[1] - end[1]) < 1e-4 && + Math.abs(start[2] - end[2]) < 1e-4 + if (sameSpot) return + + // Fold into any existing run that shares this segment's endpoint, so two + // runs meeting at a coordinate become one mitered path instead of + // overlapping nodes. Only same-level runs are candidates. + const scene = useScene.getState() + const existing = Object.values(scene.nodes).filter( + (n): n is LiquidLineNode => + n?.type === 'liquid-line' && (n.parentId as AnyNodeId | null) === activeLevelId, + ) + const plan = planLiquidLineConnect(existing, start, end) + + if (plan.kind === 'create') { + const line = LiquidLineNode.parse({ + ...liquidLineDefinition.defaults(), + name: 'Liquid Line', + path: plan.path, + }) + scene.createNode(line, activeLevelId) + } else if (plan.kind === 'extend') { + scene.updateNode(plan.id, { path: plan.path }) + } else { + scene.updateNode(plan.id, { path: plan.path }) + scene.deleteNode(plan.deleteId) + } + triggerSFX('sfx:item-place') + setDraftPoints([]) + setSnapTarget(null) + altAnchorRef.current = null + setAltActive(false) + } + + // Lay a liquid line beside a lineset, tracing its whole path at the offset. + const commitTrace = (target: FollowTarget) => { + const traced = tracePath(target) + if (!traced) return + const scene = useScene.getState() + const line = LiquidLineNode.parse({ + ...liquidLineDefinition.defaults(), + name: 'Liquid Line', + path: traced, + }) + scene.createNode(line, activeLevelId) + triggerSFX('sfx:item-place') + setTraceGhost(null) + followTargetRef.current = null + } + + const resolveSnappedPoint = (event: GridEvent): { point: Vec3; snapped: Vec3 | null } => { + const last = draftRef.current.at(-1) + if (!last) { + const raw: Vec3 = [event.localPosition[0], 0, event.localPosition[2]] + if (event.nativeEvent?.altKey !== true) { + const target = findNearbyPort(raw) + if (target) return { point: target, snapped: target } + } + const step = useEditor.getState().gridSnapStep + return { point: [snap(raw[0], step), 0, snap(raw[2], step)], snapped: null } + } + const rawXZ: Vec3 = [event.localPosition[0], last[1], event.localPosition[2]] + const shift = event.nativeEvent?.shiftKey === true + const angled = shift ? rawXZ : projectToAngleLock(last, rawXZ) + if (event.nativeEvent?.altKey !== true && !shift) { + const target = findNearbyPort(rawXZ) + if (target) return { point: target, snapped: target } + } + const step = useEditor.getState().gridSnapStep + return { point: [snap(angled[0], step), angled[1], snap(angled[2], step)], snapped: null } + } + + const resolveAltVerticalPoint = (clientY: number): Vec3 | null => { + const anchor = altAnchorRef.current + const last = draftRef.current.at(-1) + if (!anchor || !last) return null + const step = useEditor.getState().gridSnapStep + const dy = (anchor.clientY - clientY) / ALT_PIXELS_PER_METER + const snappedDy = snap(dy, step) + const y = Math.min(ALT_Y_MAX_M, Math.max(ALT_Y_MIN_M, anchor.baseY + snappedDy)) + return [last[0], y, last[2]] + } + + const resolveAlignedPoint = (event: GridEvent) => { + const r = resolveSnappedPoint(event) + const hasStart = draftRef.current.length > 0 + const shift = event.nativeEvent?.shiftKey === true + const alt = event.nativeEvent?.altKey === true + const point = alignDrawPoint(r.point, { + applySnap: !hasStart || shift, + bypass: alt || r.snapped !== null, + }) + return { ...r, point } + } + + const onMove = (event: GridEvent) => { + // Follow mode: track the lineset under the cursor and preview its trace. + if (useLiquidLineToolOptions.getState().follow) { + const raw: Vec3 = [event.localPosition[0], 0, event.localPosition[2]] + clearDrawAlignment() + setCursorPos(raw) + setSnapTarget(null) + const target = findFollowTarget(raw, activeLevelId as AnyNodeId) + followTargetRef.current = target + setTraceGhost(target ? tracePath(target) : null) + return + } + + const clientY = (event.nativeEvent as { clientY?: number } | undefined)?.clientY + if (typeof clientY === 'number') lastClientYRef.current = clientY + if (altAnchorRef.current && typeof clientY === 'number') { + const point = resolveAltVerticalPoint(clientY) + if (point) { + clearDrawAlignment() + setCursorPos(point) + setSnapTarget(null) + return + } + } + const { point, snapped } = resolveAlignedPoint(event) + setCursorPos(point) + setSnapTarget(snapped) + } + + const onClick = (event: GridEvent) => { + // Follow mode: a click commits the trace beside the hovered lineset. + if (useLiquidLineToolOptions.getState().follow) { + const target = followTargetRef.current + if (target) commitTrace(target) + return + } + + const start = draftRef.current.at(-1) + if (altAnchorRef.current && start) { + const clientY = + (event.nativeEvent as { clientY?: number } | undefined)?.clientY ?? lastClientYRef.current + if (typeof clientY === 'number') { + const point = resolveAltVerticalPoint(clientY) + if (point && Math.abs(point[1] - start[1]) >= 1e-4) { + commitSegment(start, point) + } + } + return + } + const { point } = resolveAlignedPoint(event) + if (!start) { + triggerSFX('sfx:grid-snap') + setDraftPoints([point]) + return + } + commitSegment(start, point) + } + + const enterAltMode = () => { + if (useLiquidLineToolOptions.getState().follow) return + const last = draftRef.current.at(-1) + if (!last || lastClientYRef.current === null) return + if (altAnchorRef.current) return + altAnchorRef.current = { clientY: lastClientYRef.current, baseY: last[1] } + setAltActive(true) + } + + const exitAltMode = () => { + if (!altAnchorRef.current) return + altAnchorRef.current = null + setAltActive(false) + } + + const onKeyDown = (e: KeyboardEvent) => { + const tag = (e.target as HTMLElement | null)?.tagName + if (tag === 'INPUT' || tag === 'TEXTAREA') return + if (e.key === 'f' || e.key === 'F') { + e.preventDefault() + useLiquidLineToolOptions.getState().toggleFollow() + return + } + if (e.key === 'Alt') { + e.preventDefault() + enterAltMode() + } + } + + const onKeyUp = (e: KeyboardEvent) => { + if (e.key === 'Alt') { + e.preventDefault() + exitAltMode() + } + } + + const onCancel = () => { + clearDrawAlignment() + if (draftRef.current.length === 0 && !followTargetRef.current) return + markToolCancelConsumed() + setDraftPoints([]) + setCursorPos(null) + setSnapTarget(null) + setTraceGhost(null) + followTargetRef.current = null + } + + emitter.on('grid:move', onMove) + emitter.on('grid:click', onClick) + emitter.on('tool:cancel', onCancel) + window.addEventListener('keydown', onKeyDown) + window.addEventListener('keyup', onKeyUp) + return () => { + emitter.off('grid:move', onMove) + emitter.off('grid:click', onClick) + emitter.off('tool:cancel', onCancel) + window.removeEventListener('keydown', onKeyDown) + window.removeEventListener('keyup', onKeyUp) + altAnchorRef.current = null + clearDrawAlignment() + } + }, [activeLevelId]) + + if (!activeLevelId) return null + + const previewSegments: Array<{ a: Vec3; b: Vec3 }> = [] + for (let i = 0; i < draftPoints.length - 1; i++) { + previewSegments.push({ a: draftPoints[i]!, b: draftPoints[i + 1]! }) + } + const last = draftPoints.at(-1) + if (last && cursorPos) { + previewSegments.push({ a: last, b: cursorPos }) + } + + const traceSegments: Array<{ a: Vec3; b: Vec3 }> = [] + if (traceGhost) { + for (let i = 0; i < traceGhost.length - 1; i++) { + traceSegments.push({ a: traceGhost[i]!, b: traceGhost[i + 1]! }) + } + } + + const pillParts = cursorPos + ? (['x', 'y', 'z'] as const).map((axis, i) => ({ + key: axis, + prefix: axis.toUpperCase(), + value: last ? cursorPos[i]! - last[i]! : cursorPos[i]!, + signed: !!last, + })) + : null + const pillPrimary = + last && cursorPos + ? altActive + ? 'y' + : Math.abs(cursorPos[0] - last[0]) >= Math.abs(cursorPos[2] - last[2]) + ? 'x' + : 'z' + : undefined + + return ( + + {cursorPos && ( + <> + + {follow ? ( + + +
    + {followTargetRef.current + ? 'Click to trace this lineset' + : 'Follow: hover a lineset'} +
    + +
    + ) : ( + pillParts && ( + + + + + + ) + )} + + )} + {snapTarget && ( + + + + + )} + {draftPoints.map((p, i) => ( + + + + + ))} + {previewSegments.map((seg, i) => ( + + ))} + {traceSegments.map((seg, i) => ( + + ))} +
    + ) +} + +function PreviewSegment({ a, b }: { a: Vec3; b: Vec3 }) { + const start = new Vector3(...a) + const end = new Vector3(...b) + const dir = new Vector3().subVectors(end, start) + const length = dir.length() + if (length < 1e-4) return null + dir.normalize() + const mid = new Vector3().addVectors(start, end).multiplyScalar(0.5) + return ( + { + if (!m) return + m.quaternion.setFromUnitVectors(new Vector3(0, 1, 0), dir) + }} + > + + + + ) +} + +export default LiquidLineTool diff --git a/packages/nodes/src/shared/path-offset.ts b/packages/nodes/src/shared/path-offset.ts new file mode 100644 index 000000000..1c8946f41 --- /dev/null +++ b/packages/nodes/src/shared/path-offset.ts @@ -0,0 +1,76 @@ +import { Vector3 } from 'three' + +type Point = [number, number, number] + +const UP = new Vector3(0, 1, 0) +const FALLBACK_PERP = new Vector3(1, 0, 0) + +/** Cap on the miter-length multiplier so a sharp turn doesn't shoot the + * corner off to infinity — past this we'd want a bevel, but MEP runs bend + * gently enough that clamping is invisible. */ +const MITER_LIMIT = 4 + +/** + * Horizontal side vector for each path segment — the axis a parallel line is + * pushed apart along, kept HORIZONTAL so the offset never tilts. A vertical + * (riser) segment has no horizontal heading of its own, so it inherits the + * side vector from the nearest segment that does; this keeps the offset line + * beside the source as the run climbs instead of rotating about the bend. + * Falls back to the X axis only if the whole path is vertical. + */ +function segmentSides(points: Vector3[]): Vector3[] { + const sides: (Vector3 | null)[] = [] + for (let i = 0; i < points.length - 1; i++) { + const dir = new Vector3().subVectors(points[i + 1]!, points[i]!) + const horizontal = new Vector3(dir.x, 0, dir.z) + sides.push(horizontal.lengthSq() < 1e-9 ? null : horizontal.normalize().cross(UP).normalize()) + } + // Forward then backward fill so vertical segments adopt a real heading. + for (let i = 1; i < sides.length; i++) if (!sides[i]) sides[i] = sides[i - 1] ?? null + for (let i = sides.length - 2; i >= 0; i--) if (!sides[i]) sides[i] = sides[i + 1] ?? null + return sides.map((s) => s ?? FALLBACK_PERP.clone()) +} + +/** + * Per-vertex offset vectors for shifting a path sideways into a parallel line. + * At an interior vertex the offset follows the angle bisector of the two + * adjacent segment side vectors, scaled by `1/cos(half-angle)` so the offset + * segments on either side of the bend meet exactly at one miter point (a plain + * per-segment side leaves them crossing/gapping). Endpoints use their single + * segment's side. Side vectors are horizontal, so the offset is too — a + * horizontal→vertical bend keeps the same side (cos 1, no expansion), leaving + * the parallel line side by side up the riser. + */ +function miterOffsets(points: Vector3[], offset: number): Vector3[] { + const sides = segmentSides(points) + return points.map((_p, i) => { + const sIn = i > 0 ? sides[i - 1]! : null + const sOut = i < sides.length ? sides[i]! : null + if (sIn && sOut) { + const bisector = sIn.clone().add(sOut) + // s_in == -s_out → a 180° switchback; the bisector vanishes, so just + // run straight out on one side. + if (bisector.lengthSq() < 1e-9) return sIn.clone().multiplyScalar(offset) + bisector.normalize() + const cos = bisector.dot(sIn) + const scale = Math.min(MITER_LIMIT, 1 / Math.max(cos, 1 / MITER_LIMIT)) + return bisector.multiplyScalar(offset * scale) + } + return (sIn ?? sOut)!.clone().multiplyScalar(offset) + }) +} + +/** + * Offset a polyline horizontally by `offset` meters to one side, mitered at + * bends so the parallel line meets cleanly. Positive `offset` shifts along the + * `+UP × heading` side of each segment; negative flips to the other side. Used + * to lay a thin line beside an existing run (the liquid-line follow-trace). + */ +export function offsetPathHorizontal(path: readonly Point[], offset: number): Point[] { + const points = path.map(([x, y, z]) => new Vector3(x, y, z)) + const offsets = miterOffsets(points, offset) + return points.map((p, i) => { + const o = p.clone().add(offsets[i]!) + return [o.x, o.y, o.z] as Point + }) +} From bf663421224f193566963ae6767593cbf6be6dbf Mon Sep 17 00:00:00 2001 From: sudhir Date: Tue, 16 Jun 2026 15:51:19 +0530 Subject: [PATCH 51/59] feat(nodes): auto tee/cross fittings for duct & DWV runs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Auto-insert a fitting when a drawn run taps or crosses an existing run: ducts mint a tee (end/side tap) or 4-way cross (pass-through); DWV pipes mint a square sanitary tee (was a 45° wye) or a new cross fitting. Body taps now step along the run with grid snap (Shift frees to smooth). Co-Authored-By: Claude Opus 4.7 --- apps/editor/components/build-tab.tsx | 4 +- apps/editor/public/icons/duct-fitting.png | Bin 544969 -> 475948 bytes apps/editor/public/icons/duct.png | Bin 373962 -> 567009 bytes packages/core/src/registry/types.ts | 11 +- .../core/src/schema/nodes/duct-fitting.ts | 23 +- .../core/src/schema/nodes/duct-terminal.ts | 12 +- .../core/src/schema/nodes/hvac-equipment.ts | 18 +- .../core/src/schema/nodes/pipe-fitting.ts | 13 +- packages/nodes/src/duct-fitting/geometry.ts | 70 ++++- .../nodes/src/duct-fitting/parametrics.ts | 26 +- packages/nodes/src/duct-fitting/ports.ts | 33 ++ packages/nodes/src/duct-fitting/tool.tsx | 5 +- packages/nodes/src/duct-segment/definition.ts | 33 +- packages/nodes/src/duct-segment/tool.tsx | 173 +++++++++-- .../nodes/src/duct-terminal/definition.ts | 15 +- packages/nodes/src/duct-terminal/geometry.ts | 43 ++- .../nodes/src/duct-terminal/parametrics.ts | 39 ++- packages/nodes/src/duct-terminal/ports.ts | 19 +- packages/nodes/src/duct-terminal/tool.tsx | 157 ++++++++-- .../nodes/src/hvac-equipment/definition.ts | 12 + packages/nodes/src/hvac-equipment/geometry.ts | 148 +++++++-- .../nodes/src/hvac-equipment/parametrics.ts | 59 +++- packages/nodes/src/hvac-equipment/ports.ts | 40 ++- packages/nodes/src/hvac-equipment/tool.tsx | 5 +- packages/nodes/src/lineset/tool.tsx | 5 +- packages/nodes/src/liquid-line/tool.tsx | 5 +- .../nodes/src/pipe-fitting/parametrics.ts | 2 +- packages/nodes/src/pipe-fitting/ports.ts | 21 +- packages/nodes/src/pipe-fitting/tool.tsx | 5 +- packages/nodes/src/pipe-segment/tool.tsx | 130 +++++++- packages/nodes/src/pipe-trap/tool.tsx | 5 +- .../nodes/src/shared/auto-fitting.test.ts | 265 +++++++++++++++- packages/nodes/src/shared/auto-fitting.ts | 294 ++++++++++++++++-- .../nodes/src/shared/level-offset-group.tsx | 34 ++ packages/nodes/src/shared/ports.ts | 68 ++++ 35 files changed, 1603 insertions(+), 189 deletions(-) create mode 100644 packages/nodes/src/shared/level-offset-group.tsx diff --git a/apps/editor/components/build-tab.tsx b/apps/editor/components/build-tab.tsx index 442a4982e..d89b69ca5 100644 --- a/apps/editor/components/build-tab.tsx +++ b/apps/editor/components/build-tab.tsx @@ -322,7 +322,7 @@ export function BuildTab() {
    MEP
    - + ) } diff --git a/packages/nodes/src/lineset/tool.tsx b/packages/nodes/src/lineset/tool.tsx index 60555a9e3..d7a057a58 100644 --- a/packages/nodes/src/lineset/tool.tsx +++ b/packages/nodes/src/lineset/tool.tsx @@ -14,6 +14,7 @@ import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' import { type Group, Vector3 } from 'three' import { alignDrawPoint, clearDrawAlignment } from '../shared/draw-alignment' +import { LevelOffsetGroup } from '../shared/level-offset-group' import { collectScenePorts, findNearestPortXZ, REFRIGERANT_PORT_SYSTEMS } from '../shared/ports' import { planLinesetConnect } from './connect' import { linesetDefinition } from './definition' @@ -312,7 +313,7 @@ const LinesetTool = () => { : undefined return ( - + {/* Cursor marker — the same ground ring + vertical line + tool-icon badge the duct draw tool shows in 3D (icon resolved from the active `lineset` structure-tools entry). In 2D the floorplan overlay draws @@ -350,7 +351,7 @@ const LinesetTool = () => { {previewSegments.map((seg, i) => ( ))} - + ) } diff --git a/packages/nodes/src/liquid-line/tool.tsx b/packages/nodes/src/liquid-line/tool.tsx index 75a3565e8..f47d3d520 100644 --- a/packages/nodes/src/liquid-line/tool.tsx +++ b/packages/nodes/src/liquid-line/tool.tsx @@ -21,6 +21,7 @@ import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' import { type Group, Vector3 } from 'three' import { alignDrawPoint, clearDrawAlignment } from '../shared/draw-alignment' +import { LevelOffsetGroup } from '../shared/level-offset-group' import { offsetPathHorizontal } from '../shared/path-offset' import { collectScenePorts, findNearestPortXZ, REFRIGERANT_PORT_SYSTEMS } from '../shared/ports' import { planLiquidLineConnect } from './connect' @@ -445,7 +446,7 @@ const LiquidLineTool = () => { : undefined return ( - + {cursorPos && ( <> @@ -508,7 +509,7 @@ const LiquidLineTool = () => { {traceSegments.map((seg, i) => ( ))} - + ) } diff --git a/packages/nodes/src/pipe-fitting/parametrics.ts b/packages/nodes/src/pipe-fitting/parametrics.ts index bb45a5b7d..9d9377509 100644 --- a/packages/nodes/src/pipe-fitting/parametrics.ts +++ b/packages/nodes/src/pipe-fitting/parametrics.ts @@ -9,7 +9,7 @@ export const pipeFittingParametrics: ParametricDescriptor = { { key: 'fittingType', kind: 'enum', - options: ['elbow', 'wye', 'sanitary-tee'], + options: ['elbow', 'wye', 'sanitary-tee', 'cross'], display: 'segmented', }, { diff --git a/packages/nodes/src/pipe-fitting/ports.ts b/packages/nodes/src/pipe-fitting/ports.ts index 573aba433..158e4896e 100644 --- a/packages/nodes/src/pipe-fitting/ports.ts +++ b/packages/nodes/src/pipe-fitting/ports.ts @@ -19,7 +19,8 @@ type LocalPort = { id: string; position: Vector3; direction: Vector3; diameter: * Ports in the fitting's LOCAL frame (origin at the junction, before * `position`/`rotation`). Conventions documented on the schema: elbow * inlet -X / outlet at `angle`° in XZ; wye run along X with the branch - * at 45° between +X and +Z; sanitary tee run along X, branch +Z. + * at 45° between +X and +Z; sanitary tee run along X, branch +Z; cross + * run along X, two opposed branches on ±Z. */ export function localPipeFittingPorts(node: PipeFittingNode): LocalPort[] { const run = pipeFittingLegLength(node.diameter) @@ -49,6 +50,24 @@ export function localPipeFittingPorts(node: PipeFittingNode): LocalPort[] { diameter: node.diameter, } const branchLeg = pipeFittingLegLength(node.diameter2) + if (node.fittingType === 'cross') { + return [ + inlet, + outlet, + { + id: 'branch', + position: new Vector3(0, 0, branchLeg), + direction: new Vector3(0, 0, 1), + diameter: node.diameter2, + }, + { + id: 'branch2', + position: new Vector3(0, 0, -branchLeg), + direction: new Vector3(0, 0, -1), + diameter: node.diameter2, + }, + ] + } const branchDir = node.fittingType === 'wye' ? new Vector3(Math.cos(WYE_BRANCH_RAD), 0, Math.sin(WYE_BRANCH_RAD)) diff --git a/packages/nodes/src/pipe-fitting/tool.tsx b/packages/nodes/src/pipe-fitting/tool.tsx index 4dd04f453..eeb502bf5 100644 --- a/packages/nodes/src/pipe-fitting/tool.tsx +++ b/packages/nodes/src/pipe-fitting/tool.tsx @@ -12,6 +12,7 @@ import { getRotationAxis, ROTATE_STEP_RAD, } from '../shared/fitting-rotation' +import { LevelOffsetGroup } from '../shared/level-offset-group' import { collectScenePorts, DWV_PORT_SYSTEMS, @@ -207,7 +208,7 @@ const PipeFittingTool = () => { if (!activeLevelId || !placement) return null return ( - + {/* Same ground ring + vertical line + tool-icon badge the duct draw tool shows in 3D (icon resolved from the active `pipe-fitting` structure-tools entry). In 2D the floorplan overlay draws this for @@ -247,7 +248,7 @@ const PipeFittingTool = () => { )} - + ) } diff --git a/packages/nodes/src/pipe-segment/tool.tsx b/packages/nodes/src/pipe-segment/tool.tsx index 2efe2a829..077359125 100644 --- a/packages/nodes/src/pipe-segment/tool.tsx +++ b/packages/nodes/src/pipe-segment/tool.tsx @@ -13,13 +13,19 @@ import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useRef, useState } from 'react' import { Vector3 } from 'three' -import { planPipeBranchTap, planPipeElbowAtPort } from '../shared/auto-fitting' +import { + planPipeBranchTap, + planPipeCrossAtRunBody, + planPipeElbowAtPort, +} from '../shared/auto-fitting' import { alignDrawPoint, clearDrawAlignment } from '../shared/draw-alignment' +import { LevelOffsetGroup } from '../shared/level-offset-group' import { collectScenePorts, DWV_PORT_SYSTEMS, findNearestPortXZ, findNearestRunBodyXZ, + findRunBodyCrossingXZ, type RunBodyHit, type ScenePort, } from '../shared/ports' @@ -67,6 +73,13 @@ function snap(value: number, step: number): number { return Math.round(value / step) * step } +function dist2(a: readonly [number, number, number], b: readonly [number, number, number]): number { + const dx = a[0] - b[0] + const dy = a[1] - b[1] + const dz = a[2] - b[2] + return dx * dx + dy * dy + dz * dz +} + function findNearbyPort(point: [number, number, number]): ScenePort | null { return findNearestPortXZ( point, @@ -152,6 +165,7 @@ const PipeSegmentTool = () => { rawStart: [number, number, number], end: [number, number, number], endPort: ScenePort | null = null, + endBody: RunBodyHit | null = null, ) => { // Free waste start: lift it by the drain fall so the run lands ON // the grid plane instead of sinking below it. Snapped starts are @@ -184,9 +198,26 @@ const PipeSegmentTool = () => { body && bodyOwner?.type === 'pipe-segment' ? planPipeBranchTap(bodyOwner, body, dir, diameterRef.current) : null + // End body tap: the END landed on a run's side — split that trunk and + // the new run ends at the branch collar, the branch leaving back + // toward the drawn run (along -dir, since dir points start→end). + const endTapBody = endPlan ? null : endBody + const endTapOwner = endTapBody ? useScene.getState().nodes[endTapBody.nodeId] : null + const endTapPlan = + endTapBody && endTapOwner?.type === 'pipe-segment' + ? planPipeBranchTap( + endTapOwner, + endTapBody, + [-dir[0], -dir[1], -dir[2]], + diameterRef.current, + ) + : null + // Both ends tapping the SAME run would split one polyline twice in a + // single change — drop the end tap and let the end butt-join instead. + const endTap = endTapPlan && endTapBody?.nodeId === body?.nodeId ? null : endTapPlan let pipeStart = startPlan?.collarPoint ?? tapPlan?.branchCollar ?? start - let pipeEnd = endPlan?.collarPoint ?? end + let pipeEnd = endPlan?.collarPoint ?? endTap?.branchCollar ?? end const remaining = Math.hypot( pipeEnd[0] - pipeStart[0], pipeEnd[1] - pipeStart[1], @@ -194,20 +225,54 @@ const PipeSegmentTool = () => { ) let bends = [startPlan, endPlan].filter((p) => p !== null) let tap = tapPlan + let endTapFinal = endTap + + // Cross tap: the drawn run passes straight THROUGH a run's body + // (interior crossing, not an end touch). Split that run and the drawn + // pipe into two halves meeting the cross's opposed branch collars. + // Skip a run already tapped by a start / end tee so one polyline isn't + // split twice in a single change. + const crossHit = findRunBodyCrossingXZ(start, end, BODY_SNAP_RADIUS_M, { + kinds: ['pipe-segment'], + }) + const crossOwner = crossHit ? useScene.getState().nodes[crossHit.nodeId] : null + const crossTappedElsewhere = + crossHit?.nodeId === body?.nodeId || crossHit?.nodeId === endTapBody?.nodeId + let cross = + crossHit && !crossTappedElsewhere && crossOwner?.type === 'pipe-segment' + ? planPipeCrossAtRunBody(crossOwner, crossHit, dir, diameterRef.current) + : null + if (remaining <= 0.05) { bends = [] tap = null + endTapFinal = null + cross = null pipeStart = start pipeEnd = end } - const pipe = PipeSegmentNode.parse({ - ...pipeSegmentDefinition.defaults(), - name: systemRef.current === 'vent' ? 'Vent' : 'Drain', - path: [pipeStart, pipeEnd], - diameter: diameterRef.current, - system: systemRef.current, - }) + const makePipe = (from: [number, number, number], to: [number, number, number]) => + PipeSegmentNode.parse({ + ...pipeSegmentDefinition.defaults(), + name: systemRef.current === 'vent' ? 'Vent' : 'Drain', + path: [from, to], + diameter: diameterRef.current, + system: systemRef.current, + }) + // A cross splits the drawn run into two halves that meet its opposed + // branch collars; otherwise it's one pipe end-to-end. Degenerate + // halves (the crossing too near an end) are dropped. + const pipes = cross + ? [ + dist2(pipeStart, cross.branchCollarNear) > 0.05 * 0.05 + ? makePipe(pipeStart, cross.branchCollarNear) + : null, + dist2(cross.branchCollarFar, pipeEnd) > 0.05 * 0.05 + ? makePipe(cross.branchCollarFar, pipeEnd) + : null, + ].filter((p) => p !== null) + : [makePipe(pipeStart, pipeEnd)] useScene.getState().applyNodeChanges({ create: [ ...bends.map((plan) => ({ node: plan.fitting, parentId: activeLevelId })), @@ -217,11 +282,27 @@ const PipeSegmentTool = () => { { node: tap.runTail, parentId: activeLevelId }, ] : []), - { node: pipe, parentId: activeLevelId }, + ...(endTapFinal + ? [ + { node: endTapFinal.fitting, parentId: activeLevelId }, + { node: endTapFinal.runTail, parentId: activeLevelId }, + ] + : []), + ...(cross + ? [ + { node: cross.fitting, parentId: activeLevelId }, + { node: cross.runTail, parentId: activeLevelId }, + ] + : []), + ...pipes.map((node) => ({ node, parentId: activeLevelId })), ], update: [ ...bends.map((plan) => plan.trim), ...(tap ? [tap.runUpdate as { id: AnyNode['id']; data: Partial }] : []), + ...(endTapFinal + ? [endTapFinal.runUpdate as { id: AnyNode['id']; data: Partial }] + : []), + ...(cross ? [cross.runUpdate as { id: AnyNode['id']; data: Partial }] : []), ], }) triggerSFX('sfx:item-place') @@ -258,6 +339,8 @@ const PipeSegmentTool = () => { const start = startRef.current if (!start) { const raw: [number, number, number] = [event.localPosition[0], 0, event.localPosition[2]] + const step = useEditor.getState().gridSnapStep + const shift = event.nativeEvent?.shiftKey === true if (event.nativeEvent?.altKey !== true) { const port = findNearbyPort(raw) if (port) { @@ -269,12 +352,16 @@ const PipeSegmentTool = () => { return { point: p, snapped: p, port, body: null } } // No open end nearby — try the side of a run (wye / santee tap). - const body = findNearestRunBodyXZ(raw, BODY_SNAP_RADIUS_M, { + // Probe with a grid-snapped cursor so the tap steps along the run + // like every other placement; Shift frees it to ride smoothly. + const probe: [number, number, number] = shift + ? raw + : [snap(raw[0], step), 0, snap(raw[2], step)] + const body = findNearestRunBodyXZ(probe, BODY_SNAP_RADIUS_M, { kinds: ['pipe-segment'], }) if (body) return { point: body.point, snapped: body.point, port: null, body } } - const step = useEditor.getState().gridSnapStep return { point: [snap(raw[0], step), 0, snap(raw[2], step)], snapped: null, @@ -289,14 +376,25 @@ const PipeSegmentTool = () => { ] const shift = event.nativeEvent?.shiftKey === true const angled = shift ? rawXZ : projectToAngleLock(start, rawXZ) + const step = useEditor.getState().gridSnapStep if (event.nativeEvent?.altKey !== true && !shift) { const port = findNearbyPort(rawXZ) if (port) { const p: [number, number, number] = [port.position[0], port.position[1], port.position[2]] return { point: p, snapped: p, port, body: null } } + // No open end nearby — landing on the side of a run taps a wye / + // sanitary tee there (mirror of the first-point tap). Probe with a + // grid-snapped cursor so the tap steps along the run; checked against + // the cursor, not the 45° projection, so a slightly-off trunk captures. + const probe: [number, number, number] = [ + snap(rawXZ[0], step), + rawXZ[1], + snap(rawXZ[2], step), + ] + const body = findNearestRunBodyXZ(probe, BODY_SNAP_RADIUS_M, { kinds: ['pipe-segment'] }) + if (body) return { point: body.point, snapped: body.point, port: null, body } } - const step = useEditor.getState().gridSnapStep let end: [number, number, number] if (shift) { end = [snap(angled[0], step), angled[1], snap(angled[2], step)] @@ -383,7 +481,7 @@ const PipeSegmentTool = () => { setDraftStart(point) return } - commitSegment(start, point, port) + commitSegment(start, point, port, port ? null : body) } const enterAltMode = () => { @@ -506,7 +604,7 @@ const PipeSegmentTool = () => { const pillPrimary = draftStart && cursorPos ? (altActive ? 'y' : 'y') : undefined return ( - + {/* Cursor marker — the same ground ring + vertical line + tool-icon badge the duct draw tool shows in 3D (icon resolved from the active `pipe-segment` structure-tools entry). In 2D the floorplan overlay @@ -554,7 +652,7 @@ const PipeSegmentTool = () => { {displayStart && cursorPos && ( )} - + ) } diff --git a/packages/nodes/src/pipe-trap/tool.tsx b/packages/nodes/src/pipe-trap/tool.tsx index bcf445086..5de8795f0 100644 --- a/packages/nodes/src/pipe-trap/tool.tsx +++ b/packages/nodes/src/pipe-trap/tool.tsx @@ -5,6 +5,7 @@ import { triggerSFX, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useEffect, useMemo, useRef, useState } from 'react' +import { LevelOffsetGroup } from '../shared/level-offset-group' import { pipeTrapDefinition } from './definition' import { buildPipeTrapGeometry } from './geometry' @@ -109,7 +110,7 @@ const PipeTrapTool = () => { if (!activeLevelId || !cursor) return null return ( - + @@ -127,7 +128,7 @@ const PipeTrapTool = () => { R/T rotate - + ) } diff --git a/packages/nodes/src/shared/auto-fitting.test.ts b/packages/nodes/src/shared/auto-fitting.test.ts index f4fc4fc00..81447fcd8 100644 --- a/packages/nodes/src/shared/auto-fitting.test.ts +++ b/packages/nodes/src/shared/auto-fitting.test.ts @@ -126,7 +126,7 @@ describe('planElbowAtPort', () => { }) import { DuctFittingNode, DuctSegmentNode } from '@pascal-app/core' -import { planTeeAtRunBody } from './auto-fitting' +import { planCrossAtRunBody, planTeeAtRunBody } from './auto-fitting' import type { RunBodyHit } from './ports' function trunk(path: Point[]): DuctSegmentNode { @@ -296,6 +296,128 @@ describe('planTeeAtRunBody', () => { }) }) +describe('planCrossAtRunBody', () => { + test('drawn run through a trunk: junction on the hit, four legs mate', () => { + const run = trunk([ + [0, 2.4, 0], + [6, 2.4, 0], + ]) + // Drawn run goes -Z → +Z straight through the trunk at x=3. + const plan = planCrossAtRunBody(run, bodyHit(run, 0, [3, 2.4, 0]), [0, 0, 1], ROUND_6) + expect(plan).not.toBeNull() + + const ports = getDuctFittingPorts(plan!.fitting) + const inlet = ports.find((p) => p.id === 'inlet')! + const outlet = ports.find((p) => p.id === 'outlet')! + const branch = ports.find((p) => p.id === 'branch')! + const branch2 = ports.find((p) => p.id === 'branch2')! + + // Junction exactly on the centerline hit. + expect(dist(plan!.fitting.position, [3, 2.4, 0])).toBeLessThan(1e-6) + // Run legs along the trunk axis; trunk split halves mate them. + const upstream = plan!.trunkUpdate.data.path + expect(dist(upstream[upstream.length - 1]!, inlet.position)).toBeLessThan(1e-6) + expect(dist(plan!.trunkTail.path[0]!, outlet.position)).toBeLessThan(1e-6) + expect(dist(plan!.trunkTail.path[1]!, [6, 2.4, 0])).toBeLessThan(1e-6) + // Opposed branches square to the run; collars where the drawn halves meet. + expect(dot(branch.direction, [0, 0, 1])).toBeCloseTo(1, 6) + expect(dot(branch2.direction, [0, 0, -1])).toBeCloseTo(1, 6) + expect(dist(plan!.branchCollarFar, branch.position)).toBeLessThan(1e-6) + expect(dist(plan!.branchCollarNear, branch2.position)).toBeLessThan(1e-6) + // Cross carries trunk diameter on the run, branch diameter on the collars. + expect(plan!.fitting.diameter).toBe(8) + expect(plan!.fitting.diameter2).toBe(6) + }) + + test('near / far collars sit on opposite sides of the trunk', () => { + const run = trunk([ + [0, 0, 0], + [6, 0, 0], + ]) + const plan = planCrossAtRunBody(run, bodyHit(run, 0, [3, 0, 0]), [0, 0, 1], ROUND_6) + expect(plan).not.toBeNull() + // awayDir is +Z, so the far collar (drawn end side) is +Z, near is -Z. + expect(plan!.branchCollarFar[2]).toBeGreaterThan(0) + expect(plan!.branchCollarNear[2]).toBeLessThan(0) + }) + + test('crossing too close to a trunk end → null', () => { + const run = trunk([ + [0, 0, 0], + [6, 0, 0], + ]) + expect(planCrossAtRunBody(run, bodyHit(run, 0, [0.1, 0, 0]), [0, 0, 1], ROUND_6)).toBeNull() + expect(planCrossAtRunBody(run, bodyHit(run, 0, [5.95, 0, 0]), [0, 0, 1], ROUND_6)).toBeNull() + }) + + test('drawn run parallel to the trunk → null', () => { + const run = trunk([ + [0, 0, 0], + [6, 0, 0], + ]) + expect(planCrossAtRunBody(run, bodyHit(run, 0, [3, 0, 0]), [1, 0, 0], ROUND_6)).toBeNull() + }) + + test('rect trunk: cross sized to the equivalent diameter, tail stays rect', () => { + const rect = DuctSegmentNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Trunk', + path: [ + [0, 2.4, 0], + [6, 2.4, 0], + ], + shape: 'rect', + diameter: 6, + width: 14, + height: 8, + ductMaterial: 'sheet-metal', + insulationR: 0, + system: 'supply', + }) + const plan = planCrossAtRunBody(rect, bodyHit(rect, 0, [3, 2.4, 0]), [0, 0, 1], ROUND_6) + expect(plan).not.toBeNull() + expect(plan!.fitting.shape).toBe('rect') + expect(plan!.fitting.diameter).toBeCloseTo(2 * Math.sqrt((14 * 8) / Math.PI), 6) + expect(plan!.trunkTail.shape).toBe('rect') + expect(plan!.trunkTail.width).toBe(14) + }) +}) + +describe('cross ports', () => { + function cross(): DuctFittingNode { + return DuctFittingNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Cross', + fittingType: 'cross', + diameter: 8, + diameter2: 6, + system: 'supply', + }) + } + + test('four opposed ports: run ±X at diameter, branches ±Z at diameter2', () => { + const ports = getDuctFittingPorts(cross()) + expect(ports).toHaveLength(4) + const inlet = ports.find((p) => p.id === 'inlet')! + const outlet = ports.find((p) => p.id === 'outlet')! + const branch = ports.find((p) => p.id === 'branch')! + const branch2 = ports.find((p) => p.id === 'branch2')! + expect(dot(inlet.direction, [-1, 0, 0])).toBeCloseTo(1, 6) + expect(dot(outlet.direction, [1, 0, 0])).toBeCloseTo(1, 6) + expect(dot(branch.direction, [0, 0, 1])).toBeCloseTo(1, 6) + expect(dot(branch2.direction, [0, 0, -1])).toBeCloseTo(1, 6) + expect(inlet.diameter).toBe(8) + expect(branch.diameter).toBe(6) + expect(branch2.diameter).toBe(6) + }) +}) + describe('tee branchAngle (lateral)', () => { function tee(branchAngle: number): DuctFittingNode { return DuctFittingNode.parse({ @@ -394,3 +516,144 @@ describe('planElbowRealign', () => { expect(planElbowRealign(tee, 'outlet', [0, 1, 0])).toBeNull() }) }) + +import { PipeFittingNode, PipeSegmentNode } from '@pascal-app/core' +import { getPipeFittingPorts } from '../pipe-fitting/ports' +import { planPipeBranchTap, planPipeCrossAtRunBody } from './auto-fitting' + +function pipeRun(path: Point[]): PipeSegmentNode { + return PipeSegmentNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Drain', + path, + diameter: 2, + system: 'waste', + }) +} + +function pipeBodyHit(node: PipeSegmentNode, segmentIndex: number, point: Point): RunBodyHit { + return { nodeId: node.id, segmentIndex, point } +} + +describe('planPipeBranchTap', () => { + test('horizontal drain tap mints a SQUARE sanitary tee (not a wye)', () => { + const run = pipeRun([ + [0, 0, 0], + [6, 0, 0], + ]) + const plan = planPipeBranchTap(run, pipeBodyHit(run, 0, [3, 0, 0]), [0, 0, 1], 2) + expect(plan).not.toBeNull() + expect(plan!.fitting.fittingType).toBe('sanitary-tee') + const branch = getPipeFittingPorts(plan!.fitting).find((p) => p.id === 'branch')! + // Branch leaves square to the run regardless of the drawn lead-in. + expect(dot(branch.direction, [0, 0, 1])).toBeCloseTo(1, 6) + }) + + test('45° drawn branch still enters square (projected perpendicular)', () => { + const run = pipeRun([ + [0, 0, 0], + [6, 0, 0], + ]) + const d = Math.SQRT1_2 + const plan = planPipeBranchTap(run, pipeBodyHit(run, 0, [3, 0, 0]), [d, 0, d], 2) + expect(plan).not.toBeNull() + const branch = getPipeFittingPorts(plan!.fitting).find((p) => p.id === 'branch')! + expect(dot(branch.direction, [0, 0, 1])).toBeCloseTo(1, 6) + }) + + test('junction on the hit, run legs mate the split halves', () => { + const run = pipeRun([ + [0, 0, 0], + [6, 0, 0], + ]) + const plan = planPipeBranchTap(run, pipeBodyHit(run, 0, [3, 0, 0]), [0, 0, 1], 2) + expect(plan).not.toBeNull() + const ports = getPipeFittingPorts(plan!.fitting) + const inlet = ports.find((p) => p.id === 'inlet')! + const outlet = ports.find((p) => p.id === 'outlet')! + const branch = ports.find((p) => p.id === 'branch')! + expect(dist(plan!.fitting.position, [3, 0, 0])).toBeLessThan(1e-6) + const upstream = plan!.runUpdate.data.path + expect(dist(upstream[upstream.length - 1]!, inlet.position)).toBeLessThan(1e-6) + expect(dist(plan!.runTail.path[0]!, outlet.position)).toBeLessThan(1e-6) + expect(dist(plan!.branchCollar, branch.position)).toBeLessThan(1e-6) + }) + + test('tap too close to a run end → null', () => { + const run = pipeRun([ + [0, 0, 0], + [6, 0, 0], + ]) + expect(planPipeBranchTap(run, pipeBodyHit(run, 0, [0.02, 0, 0]), [0, 0, 1], 2)).toBeNull() + }) +}) + +describe('planPipeCrossAtRunBody', () => { + test('drawn run through a run: junction on the hit, four legs mate', () => { + const run = pipeRun([ + [0, 0, 0], + [6, 0, 0], + ]) + const plan = planPipeCrossAtRunBody(run, pipeBodyHit(run, 0, [3, 0, 0]), [0, 0, 1], 2) + expect(plan).not.toBeNull() + expect(plan!.fitting.fittingType).toBe('cross') + const ports = getPipeFittingPorts(plan!.fitting) + expect(ports).toHaveLength(4) + const inlet = ports.find((p) => p.id === 'inlet')! + const outlet = ports.find((p) => p.id === 'outlet')! + const branch = ports.find((p) => p.id === 'branch')! + const branch2 = ports.find((p) => p.id === 'branch2')! + expect(dist(plan!.fitting.position, [3, 0, 0])).toBeLessThan(1e-6) + const upstream = plan!.runUpdate.data.path + expect(dist(upstream[upstream.length - 1]!, inlet.position)).toBeLessThan(1e-6) + expect(dist(plan!.runTail.path[0]!, outlet.position)).toBeLessThan(1e-6) + // awayDir +Z → far collar (drawn end) on +Z branch, near on -Z branch2. + expect(dot(branch.direction, [0, 0, 1])).toBeCloseTo(1, 6) + expect(dot(branch2.direction, [0, 0, -1])).toBeCloseTo(1, 6) + expect(dist(plan!.branchCollarFar, branch.position)).toBeLessThan(1e-6) + expect(dist(plan!.branchCollarNear, branch2.position)).toBeLessThan(1e-6) + }) + + test('crossing too close to a run end → null', () => { + const run = pipeRun([ + [0, 0, 0], + [6, 0, 0], + ]) + expect(planPipeCrossAtRunBody(run, pipeBodyHit(run, 0, [0.02, 0, 0]), [0, 0, 1], 2)).toBeNull() + }) + + test('drawn run parallel to the run → null', () => { + const run = pipeRun([ + [0, 0, 0], + [6, 0, 0], + ]) + expect(planPipeCrossAtRunBody(run, pipeBodyHit(run, 0, [3, 0, 0]), [1, 0, 0], 2)).toBeNull() + }) +}) + +describe('cross pipe ports', () => { + test('four opposed ports: run ±X at diameter, branches ±Z at diameter2', () => { + const cross = PipeFittingNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Cross', + fittingType: 'cross', + diameter: 3, + diameter2: 2, + system: 'waste', + }) + const ports = getPipeFittingPorts(cross) + expect(ports).toHaveLength(4) + const branch = ports.find((p) => p.id === 'branch')! + const branch2 = ports.find((p) => p.id === 'branch2')! + expect(dot(branch.direction, [0, 0, 1])).toBeCloseTo(1, 6) + expect(dot(branch2.direction, [0, 0, -1])).toBeCloseTo(1, 6) + expect(branch.diameter).toBe(2) + expect(branch2.diameter).toBe(2) + }) +}) diff --git a/packages/nodes/src/shared/auto-fitting.ts b/packages/nodes/src/shared/auto-fitting.ts index 18aca8c09..6d14c3513 100644 --- a/packages/nodes/src/shared/auto-fitting.ts +++ b/packages/nodes/src/shared/auto-fitting.ts @@ -11,7 +11,7 @@ import { equivalentDiameterIn, ovalEquivalentDiameterIn, } from '../duct-segment/geometry' -import { pipeFittingLegLength, WYE_BRANCH_RAD } from '../pipe-fitting/ports' +import { pipeFittingLegLength } from '../pipe-fitting/ports' import type { RunBodyHit, ScenePort } from './ports' /** Turns shallower than this read as a straight continuation — butt-join @@ -316,6 +316,143 @@ export function planTeeAtRunBody( } } +// ─── Cross taps (drawn run passes THROUGH a trunk's body) ──────────── + +export type CrossTapPlan = { + /** Parsed cross node, junction ON the crossing point, run legs along + * the trunk and two opposed branch legs along the drawn run. */ + fitting: DuctFittingNode + /** Branch collar on the START side of the drawn run — the first half + * of the drawn duct ENDS here. */ + branchCollarNear: Point + /** Branch collar on the END side of the drawn run — the second half + * of the drawn duct STARTS here. */ + branchCollarFar: Point + /** Trunk rewritten to END one run-leg before the crossing. */ + trunkUpdate: { id: DuctSegmentNode['id']; data: { path: Point[] } } + /** New run carrying the rest of the trunk, starting one run-leg past + * the crossing. Created alongside the cross. */ + trunkTail: DuctSegmentNode +} + +/** + * Plan the four-way cross where a drawn run passes straight THROUGH the + * SIDE of an existing run. Like a tee tap, the trunk is split at the + * crossing (original keeps the upstream half, a new node carries the + * downstream half, both pulled one run-leg back). The drawn run is split + * by the CALLER into two halves that meet the cross's two opposed branch + * collars — `branchCollarNear` toward `awayDir`'s origin (the drawn + * start) and `branchCollarFar` along `awayDir` (the drawn end). + * + * `awayDir` is the drawn run's direction (start → end). Its component + * perpendicular to the trunk axis sets the branch axis; a drawn run that + * isn't square to the trunk still gets a square cross (the off-square + * lead-ins are absorbed by the drawn duct halves). Returns null when the + * crossing is too near a trunk end (no room for the run legs) or the + * drawn run is parallel to the trunk. + */ +export function planCrossAtRunBody( + trunk: DuctSegmentNode, + hit: RunBodyHit, + awayDir: Point, + branch: DuctProfile, +): CrossTapPlan | null { + const a = trunk.path[hit.segmentIndex] + const b = trunk.path[hit.segmentIndex + 1] + if (!a || !b) return null + const axis = new Vector3(b[0] - a[0], b[1] - a[1], b[2] - a[2]) + if (axis.lengthSq() < 1e-10) return null + axis.normalize() + + // Branch axis: the drawn direction projected square to the trunk. + const away = new Vector3(...awayDir) + const branchDir = away.clone().addScaledVector(axis, -away.dot(axis)) + if (branchDir.lengthSq() < 1e-6) return null + branchDir.normalize() + + const trunkDiameterIn = Math.min(48, ductPortDiameterIn(trunk)) + const branchDiameterIn = Math.min(48, profileDiameterIn(branch)) + const legRun = fittingLegLength(trunkDiameterIn) + const legBranch = fittingLegLength(branchDiameterIn) + const P = new Vector3(...hit.point) + const upstream = P.distanceTo(new Vector3(...a)) + const downstream = P.distanceTo(new Vector3(...b)) + const MIN_STUB = 0.08 + if (upstream < legRun + MIN_STUB || downstream < legRun + MIN_STUB) return null + + // Local +X (the run) → axis, local +Z (the branch +Z leg) → branchDir. + const localFrame = frame(new Vector3(1, 0, 0), new Vector3(0, 0, 1)) + const worldFrame = frame(axis, branchDir) + if (!localFrame || !worldFrame) return null + const rotation = new Quaternion().setFromRotationMatrix( + worldFrame.multiply(localFrame.transpose()), + ) + const euler = new Euler().setFromQuaternion(rotation) + + const inletTrim = P.clone().addScaledVector(axis, -legRun) + const outletTrim = P.clone().addScaledVector(axis, legRun) + // +Z branch (`branch`) faces along branchDir = the drawn END side; + // -Z branch (`branch2`) faces the drawn START side. + const collarFar = P.clone().addScaledVector(branchDir, legBranch) + const collarNear = P.clone().addScaledVector(branchDir, -legBranch) + + const fitting = DuctFittingNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Cross', + fittingType: 'cross', + shape: trunk.shape, + width: trunk.width, + height: trunk.height, + diameter: trunkDiameterIn, + shape2: branch.shape, + width2: branch.width, + height2: branch.height, + diameter2: branchDiameterIn, + ductMaterial: 'sheet-metal', + system: trunk.system, + position: [P.x, P.y, P.z], + rotation: [euler.x, euler.y, euler.z], + }) + + const upstreamPath: Point[] = [ + ...trunk.path.slice(0, hit.segmentIndex + 1).map((p) => [...p] as Point), + [inletTrim.x, inletTrim.y, inletTrim.z], + ] + const tailPath: Point[] = [ + [outletTrim.x, outletTrim.y, outletTrim.z], + ...trunk.path.slice(hit.segmentIndex + 1).map((p) => [...p] as Point), + ] + + const trunkTail = DuctSegmentNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: trunk.name ?? 'Duct run', + path: tailPath, + shape: trunk.shape, + diameter: trunk.diameter, + width: trunk.width, + height: trunk.height, + roll: trunk.roll, + ductMaterial: trunk.ductMaterial, + insulated: trunk.insulated, + insulationR: trunk.insulationR, + system: trunk.system, + }) + + return { + fitting, + branchCollarNear: [collarNear.x, collarNear.y, collarNear.z], + branchCollarFar: [collarFar.x, collarFar.y, collarFar.z], + trunkUpdate: { id: trunk.id, data: { path: upstreamPath } }, + trunkTail, + } +} + // ─── Elbow realignment (run drawn onto an existing fitting's collar) ── export type ElbowRealignPlan = { @@ -451,18 +588,10 @@ export type PipeBranchTapPlan = { runTail: PipeSegmentNode } -/** A run steeper than this reads as a vertical stack — branch entries - * use a sanitary tee instead of a wye. */ -const STACK_AXIS_Y = 0.7 - /** * Plan the branch fitting that taps a new run into the SIDE of an - * existing DWV run — plumbing's code-correct joints: - * - * - Horizontal drain → **wye**: the branch enters at 45°, leaning - * DOWNSTREAM (along the run's draw direction, which is its fall - * direction), so flow merges instead of colliding. - * - Vertical stack → **sanitary tee**: the branch enters square. + * existing DWV run — a **sanitary tee**: the branch enters SQUARE off the + * run (same T as the duct tee tap), facing the drawn branch's side. * * The run splits like a duct tee tap: original keeps the upstream half, * a new node carries the downstream half, both trimmed one run-leg from @@ -481,20 +610,12 @@ export function planPipeBranchTap( if (axis.lengthSq() < 1e-10) return null axis.normalize() + // Branch axis: the drawn direction projected square to the run, so the + // tee enters perpendicular regardless of the lead-in angle. const away = new Vector3(...awayDir) - const perp = away.clone().addScaledVector(axis, -away.dot(axis)) - if (perp.lengthSq() < 1e-6) return null - perp.normalize() - - const isStack = Math.abs(axis.y) > STACK_AXIS_Y - const fittingType = isStack ? 'sanitary-tee' : 'wye' - const branchDir = isStack - ? perp.clone() - : axis - .clone() - .multiplyScalar(Math.cos(WYE_BRANCH_RAD)) - .addScaledVector(perp, Math.sin(WYE_BRANCH_RAD)) - .normalize() + const branchDir = away.clone().addScaledVector(axis, -away.dot(axis)) + if (branchDir.lengthSq() < 1e-6) return null + branchDir.normalize() const legRun = pipeFittingLegLength(run.diameter) const legBranch = pipeFittingLegLength(branchDiameterIn) @@ -504,10 +625,11 @@ export function planPipeBranchTap( const MIN_STUB = 0.05 if (upstream < legRun + MIN_STUB || downstream < legRun + MIN_STUB) return null - // Local +X (run) → axis, local +Z (branch plane) → perp. The wye's - // 45° local branch maps onto branchDir automatically. + // Local +X (run) → axis, local +Z (branch) → branchDir. Both pairs are + // perpendicular, so the basis transfer is exact and the santee's square + // +Z branch lands on branchDir. const localFrame = frame(new Vector3(1, 0, 0), new Vector3(0, 0, 1)) - const worldFrame = frame(axis, perp) + const worldFrame = frame(axis, branchDir) if (!localFrame || !worldFrame) return null const rotation = new Quaternion().setFromRotationMatrix( worldFrame.multiply(localFrame.transpose()), @@ -523,8 +645,8 @@ export function planPipeBranchTap( parentId: null, visible: true, metadata: {}, - name: isStack ? 'Sanitary tee' : 'Wye', - fittingType, + name: 'Sanitary tee', + fittingType: 'sanitary-tee', diameter: run.diameter, diameter2: branchDiameterIn, pipeMaterial: run.pipeMaterial, @@ -561,3 +683,117 @@ export function planPipeBranchTap( runTail, } } + +export type PipeCrossTapPlan = { + /** Parsed cross node, junction ON the crossing point, run legs along + * the run and two opposed branch legs along the drawn run. */ + fitting: PipeFittingNode + /** Branch collar on the START side of the drawn run — the first half + * of the drawn pipe ENDS here. */ + branchCollarNear: Point + /** Branch collar on the END side of the drawn run — the second half + * of the drawn pipe STARTS here. */ + branchCollarFar: Point + /** Tapped run rewritten to END one run-leg before the crossing. */ + runUpdate: { id: PipeSegmentNode['id']; data: { path: Point[] } } + /** New run carrying the rest of the tapped run. */ + runTail: PipeSegmentNode +} + +/** + * Plan the four-way DWV cross where a drawn run passes straight THROUGH + * the SIDE of an existing run — the pipe sibling of `planCrossAtRunBody`. + * The run splits at the crossing (original keeps the upstream half, a new + * node carries the downstream half, both pulled one run-leg back). The + * drawn run is split by the CALLER into two halves meeting the cross's + * opposed branch collars — `branchCollarNear` toward the drawn start, + * `branchCollarFar` along the drawn end. Returns null when the crossing + * is too near a run end or the drawn run is parallel to the run. + */ +export function planPipeCrossAtRunBody( + run: PipeSegmentNode, + hit: RunBodyHit, + awayDir: Point, + branchDiameterIn: number, +): PipeCrossTapPlan | null { + const a = run.path[hit.segmentIndex] + const b = run.path[hit.segmentIndex + 1] + if (!a || !b) return null + const axis = new Vector3(b[0] - a[0], b[1] - a[1], b[2] - a[2]) + if (axis.lengthSq() < 1e-10) return null + axis.normalize() + + // Branch axis: the drawn direction projected square to the run. + const away = new Vector3(...awayDir) + const branchDir = away.clone().addScaledVector(axis, -away.dot(axis)) + if (branchDir.lengthSq() < 1e-6) return null + branchDir.normalize() + + const legRun = pipeFittingLegLength(run.diameter) + const legBranch = pipeFittingLegLength(branchDiameterIn) + const P = new Vector3(...hit.point) + const upstream = P.distanceTo(new Vector3(...a)) + const downstream = P.distanceTo(new Vector3(...b)) + const MIN_STUB = 0.05 + if (upstream < legRun + MIN_STUB || downstream < legRun + MIN_STUB) return null + + // Local +X (run) → axis, local +Z (the branch +Z leg) → branchDir. + const localFrame = frame(new Vector3(1, 0, 0), new Vector3(0, 0, 1)) + const worldFrame = frame(axis, branchDir) + if (!localFrame || !worldFrame) return null + const rotation = new Quaternion().setFromRotationMatrix( + worldFrame.multiply(localFrame.transpose()), + ) + const euler = new Euler().setFromQuaternion(rotation) + + const inletTrim = P.clone().addScaledVector(axis, -legRun) + const outletTrim = P.clone().addScaledVector(axis, legRun) + // +Z branch faces along branchDir = the drawn END side; -Z branch2 + // faces the drawn START side. + const collarFar = P.clone().addScaledVector(branchDir, legBranch) + const collarNear = P.clone().addScaledVector(branchDir, -legBranch) + + const fitting = PipeFittingNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: 'Cross', + fittingType: 'cross', + diameter: run.diameter, + diameter2: branchDiameterIn, + pipeMaterial: run.pipeMaterial, + system: run.system, + position: [P.x, P.y, P.z], + rotation: [euler.x, euler.y, euler.z], + }) + + const upstreamPath: Point[] = [ + ...run.path.slice(0, hit.segmentIndex + 1).map((p) => [...p] as Point), + [inletTrim.x, inletTrim.y, inletTrim.z], + ] + const tailPath: Point[] = [ + [outletTrim.x, outletTrim.y, outletTrim.z], + ...run.path.slice(hit.segmentIndex + 1).map((p) => [...p] as Point), + ] + + const runTail = PipeSegmentNode.parse({ + object: 'node', + parentId: null, + visible: true, + metadata: {}, + name: run.name ?? 'Drain', + path: tailPath, + diameter: run.diameter, + pipeMaterial: run.pipeMaterial, + system: run.system, + }) + + return { + fitting, + branchCollarNear: [collarNear.x, collarNear.y, collarNear.z], + branchCollarFar: [collarFar.x, collarFar.y, collarFar.z], + runUpdate: { id: run.id, data: { path: upstreamPath } }, + runTail, + } +} diff --git a/packages/nodes/src/shared/level-offset-group.tsx b/packages/nodes/src/shared/level-offset-group.tsx new file mode 100644 index 000000000..3228e6b68 --- /dev/null +++ b/packages/nodes/src/shared/level-offset-group.tsx @@ -0,0 +1,34 @@ +'use client' + +import { type AnyNodeId, sceneRegistry } from '@pascal-app/core' +import { useViewer } from '@pascal-app/viewer' +import { useFrame } from '@react-three/fiber' +import { type ReactNode, useRef } from 'react' +import type { Group } from 'three' + +/** + * Wraps a placement tool's preview/ghost so it rides the active level's + * stacked elevation. + * + * Placement tools are mounted inside the building-local group (see the editor's + * ToolManager), which carries no per-floor elevation. But their points, ports, + * and committed paths are level-local (Y=0 = the floor) and the committed nodes + * parent to the level mesh, which DOES carry the stacked Y offset. Without this + * the ghost renders at world ground on upper floors while the cursor raycast + * rides the floor plane — they drift apart. Tracking the level mesh's Y here + * (the same value the grid plane follows) keeps the preview on the floor being + * drawn, with no change to any tool's level-local math. + */ +export function LevelOffsetGroup({ children }: { children: ReactNode }) { + const activeLevelId = useViewer((s) => s.selection.levelId) + const ref = useRef(null) + + useFrame(() => { + const group = ref.current + if (!group) return + const levelMesh = activeLevelId ? sceneRegistry.nodes.get(activeLevelId as AnyNodeId) : null + group.position.y = levelMesh ? levelMesh.position.y : 0 + }) + + return {children} +} diff --git a/packages/nodes/src/shared/ports.ts b/packages/nodes/src/shared/ports.ts index a7258731c..4200c0286 100644 --- a/packages/nodes/src/shared/ports.ts +++ b/packages/nodes/src/shared/ports.ts @@ -130,3 +130,71 @@ export function findNearestRunBodyXZ( } return best } + +/** + * Where a drawn segment `start`→`end` crosses straight THROUGH an + * existing run's centerline in XZ — the four-way (cross) case, as + * opposed to ending ON a run (the tee case). The crossing must be + * INTERIOR to both: strictly between the drawn segment's ends (so the + * run truly passes through, not just touches at a tip — those are tee + * taps) and strictly inside the hit trunk segment, clear of its joints + * by `endMargin` meters so the run legs have room. The hit's `point` + * adopts the trunk centerline's interpolated 3D position (the drawn run + * snaps onto the trunk's height). Returns the nearest such crossing, or + * null. Vertical risers (no XZ extent) are skipped, same as the body + * query. + */ +export function findRunBodyCrossingXZ( + start: readonly [number, number, number], + end: readonly [number, number, number], + endMargin: number, + filter: { excludeNodeId?: AnyNodeId; kinds?: readonly string[] } = {}, +): RunBodyHit | null { + const kinds = filter.kinds ?? ['duct-segment'] + const { nodes } = useScene.getState() + const dx = end[0] - start[0] + const dz = end[2] - start[2] + const drawnLenSq = dx * dx + dz * dz + if (drawnLenSq < 1e-8) return null + const drawnLen = Math.sqrt(drawnLenSq) + // Interior margins as a fraction of each segment's length. + const drawnPad = Math.min(0.45, endMargin / drawnLen) + let best: RunBodyHit | null = null + let bestScore = Number.POSITIVE_INFINITY + for (const node of Object.values(nodes)) { + if (!node || !kinds.includes(node.type) || node.id === filter.excludeNodeId) continue + const path = (node as { path?: Array }).path + if (!path) continue + for (let i = 0; i < path.length - 1; i++) { + const a = path[i]! + const b = path[i + 1]! + const ex = b[0] - a[0] + const ez = b[2] - a[2] + const runLenSq = ex * ex + ez * ez + if (runLenSq < 1e-8) continue // vertical riser — no XZ extent + // Solve start + s·d = a + t·e in XZ. denom is the 2D cross of the + // two directions; ~0 means parallel (no single crossing). + const denom = dx * ez - dz * ex + if (Math.abs(denom) < 1e-9) continue + const wx = a[0] - start[0] + const wz = a[2] - start[2] + const s = (wx * ez - wz * ex) / denom + const t = (wx * dz - wz * dx) / denom + const runLen = Math.sqrt(runLenSq) + const runPad = Math.min(0.45, endMargin / runLen) + // Strictly interior to both segments, clear of the trunk's joints. + if (s <= drawnPad || s >= 1 - drawnPad) continue + if (t <= runPad || t >= 1 - runPad) continue + // Prefer the crossing nearest the drawn start (first run hit). + if (s < bestScore) { + bestScore = s + best = { + nodeId: node.id, + segmentIndex: i, + point: [a[0] + ex * t, a[1] + (b[1] - a[1]) * t, a[2] + ez * t], + } + } + } + } + return best +} From 74b73512dcf45064b6260dc3c6653c7443a5e2a0 Mon Sep 17 00:00:00 2001 From: sudhir Date: Tue, 16 Jun 2026 22:25:15 +0530 Subject: [PATCH 52/59] fix(nodes): register snaps onto slab top / real ceiling Floor-mounted registers ignored slab thickness and sat at y=0, sinking into the slab. Declare the `floorPlaced` capability so the generic FloorElevationSystem lifts the committed mesh onto the slab surface (footprint-driven, multi-slab aware), and lift the placement ghost via getFloorStackPreviewPosition so the preview matches. Ceiling-mounted registers snapped to a global "tallest ceiling, else wall, else 2.5m" plane. Resolve the actual ceiling the cursor ray hits (point-in-polygon, holes excluded) and take that surface's own height; refuse placement when no real ceiling is under the cursor. Co-Authored-By: Claude Opus 4.8 --- .../nodes/src/duct-terminal/definition.ts | 11 +++ packages/nodes/src/duct-terminal/tool.tsx | 95 +++++++++++++------ 2 files changed, 75 insertions(+), 31 deletions(-) diff --git a/packages/nodes/src/duct-terminal/definition.ts b/packages/nodes/src/duct-terminal/definition.ts index 7ba0b00ac..b083017f1 100644 --- a/packages/nodes/src/duct-terminal/definition.ts +++ b/packages/nodes/src/duct-terminal/definition.ts @@ -44,6 +44,17 @@ export const ductTerminalDefinition: NodeDefinition = { rotatable: { axes: ['y'], snapAngles: [Math.PI / 4] }, duplicable: true, deletable: true, + // A floor register rests on top of whatever slab is under it — the + // generic FloorElevationSystem lifts its mesh Y by the slab's elevation + // so the face sits on the slab surface instead of sinking into it. + // Ceiling / wall mounts derive their Y elsewhere, so `applies` skips them. + floorPlaced: { + footprint: (node) => { + const t = node as DuctTerminalNode + return { dimensions: [t.width, 0, t.depth], rotation: [0, t.rotation, 0] } + }, + applies: (node) => (node as DuctTerminalNode).mount === 'floor', + }, }, parametrics: ductTerminalParametrics, diff --git a/packages/nodes/src/duct-terminal/tool.tsx b/packages/nodes/src/duct-terminal/tool.tsx index 1d2b92c70..717c5247b 100644 --- a/packages/nodes/src/duct-terminal/tool.tsx +++ b/packages/nodes/src/duct-terminal/tool.tsx @@ -4,12 +4,13 @@ import { type AnyNodeId, DuctTerminalNode, emitter, + pointInPolygon, resolveLevelId, sceneRegistry, useScene, type WallEvent, } from '@pascal-app/core' -import { CursorSphere, triggerSFX, useEditor } from '@pascal-app/editor' +import { CursorSphere, getFloorStackPreviewPosition, triggerSFX, useEditor } from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useThree } from '@react-three/fiber' @@ -25,7 +26,7 @@ import { COLLAR_LENGTH, mountQuaternion } from './ports' const PREVIEW_OPACITY = 0.55 /** R/T yaw step — 45°. */ const ROTATE_STEP_RAD = Math.PI / 4 -/** Fallback ceiling height (meters) when no walls/ceilings inform one. */ +/** Fallback height (meters) for a ceiling node that carries no `height`. */ const DEFAULT_CEILING_HEIGHT = 2.5 /** Snap radius (meters) for mating the collar onto a nearby duct port. */ const PORT_SNAP_RADIUS_M = 0.5 @@ -59,30 +60,6 @@ function activeLevelMesh() { return levelId ? (sceneRegistry.nodes.get(levelId as AnyNodeId) ?? null) : null } -/** - * Ceiling height for the active level, in level-local meters: the tallest - * ceiling node if any exist, else the tallest wall, else the default. Used - * as the horizontal plane a ceiling-mounted terminal snaps onto when the - * mount is `ceiling` (a "virtual ceiling" derived from the walls, so the - * terminal lands at hang height even before a ceiling node is drawn). - */ -function resolveCeilingHeight(activeLevelId: string): number { - const nodes = useScene.getState().nodes - let ceilingMax = 0 - let wallMax = 0 - for (const node of Object.values(nodes)) { - if (!node) continue - if (node.type !== 'ceiling' && node.type !== 'wall') continue - if (resolveLevelId(node, nodes) !== activeLevelId) continue - const h = (node as { height?: number }).height ?? DEFAULT_CEILING_HEIGHT - if (node.type === 'ceiling') ceilingMax = Math.max(ceilingMax, h) - else wallMax = Math.max(wallMax, h) - } - if (ceilingMax > 0) return ceilingMax - if (wallMax > 0) return wallMax - return DEFAULT_CEILING_HEIGHT -} - type Placement = { position: [number, number, number] /** Yaw radians applied to the ghost / committed node. */ @@ -227,9 +204,52 @@ const DuctTerminalTool = () => { return ray.intersectPlane(plane, hit) ? hit : null } + /** + * Ceiling mount only lands where the cursor ray actually hits a real + * ceiling. Walk the active level's ceiling nodes, raycast each against a + * plane at its own height, and keep the lowest one whose polygon (minus + * holes) contains the hit — the surface you'd see looking up. Null when + * the ray misses every ceiling, so a ceiling register never drops onto a + * fixed virtual plane; the height comes from the ceiling itself. + */ + const resolveCeilingHit = ( + nativeEvent: PointerEvent | MouseEvent, + ): { hit: Vector3; height: number } | null => { + const nodes = useScene.getState().nodes + let best: { hit: Vector3; height: number } | null = null + for (const node of Object.values(nodes)) { + if (!node || node.type !== 'ceiling') continue + if (resolveLevelId(node, nodes) !== activeLevelId) continue + const ceiling = node as { + height?: number + polygon: Array<[number, number]> + holes?: Array> + } + const height = ceiling.height ?? DEFAULT_CEILING_HEIGHT + const hit = hitLocalPlane(nativeEvent, height) + if (!hit) continue + if (!pointInPolygon(hit.x, hit.z, ceiling.polygon)) continue + if (ceiling.holes?.some((h) => h.length >= 3 && pointInPolygon(hit.x, hit.z, h))) continue + if (!best || height < best.height) best = { hit, height } + } + return best + } + const resolvePlanar = (nativeEvent: PointerEvent | MouseEvent): Placement | null => { - const y = mountRef.current === 'ceiling' ? resolveCeilingHeight(activeLevelId) : 0 - const hit = hitLocalPlane(nativeEvent, y) + // Floor sits on the grid (y=0; the slab lift is applied to the committed + // mesh by FloorElevationSystem). Ceiling resolves the real ceiling the + // ray hits and takes that surface's height — no fixed fallback plane. + let hit: Vector3 | null + let y: number + if (mountRef.current === 'ceiling') { + const ceiling = resolveCeilingHit(nativeEvent) + if (!ceiling) return null + hit = ceiling.hit + y = ceiling.height + } else { + y = 0 + hit = hitLocalPlane(nativeEvent, y) + } if (!hit) return null const step = nativeEvent.shiftKey ? 0 : useEditor.getState().gridSnapStep // Grid-snap, then layer Figma-style alignment so a floor / ceiling @@ -358,19 +378,32 @@ const DuctTerminalTool = () => { const mountLabel = effectiveMount.charAt(0).toUpperCase() + effectiveMount.slice(1) + // The committed mesh's slab lift is applied by FloorElevationSystem, but the + // ghost renders here directly — preview it on the slab top too so a floor + // register doesn't appear to sink in before the click. + const previewPosition = + effectiveMount === 'floor' + ? getFloorStackPreviewPosition({ + node: previewNode, + position: placement.position, + rotation: placement.yaw, + levelId: activeLevelId, + }) + : placement.position + return ( {/* Same ground ring + vertical line + tool-icon badge the duct draw tool shows in 3D (icon resolved from the active `duct-terminal` structure-tools entry). In 2D the floorplan overlay draws this for every tool; in 3D each tool renders its own. */} - - + + From a3b5e4dce310bcd274b4870ba2e267f6868d30be Mon Sep 17 00:00:00 2001 From: sudhir Date: Tue, 16 Jun 2026 23:13:59 +0530 Subject: [PATCH 53/59] fix(lint): resolve all biome check issues - Wrap loadExampleFile/handleFile/loadAndConvert in useCallback and reorder before their useEffect in IfcConverter to fix noInvalidUseBeforeDeclaration - Remove unused biome-ignore comments for noConsole (rule is off) in dormer/csg-geometry.ts and noArrayIndexKey (rule is off) in dormer/window-assembly.tsx - Remove misplaced useExhaustiveDependencies suppression in dormer/panel-position-section.tsx (rule not firing on that hook) - Add correct suppression for resolvedRadii spread-dep pattern in dormer/window-assembly.tsx - Biome auto-fixed excess/missing hook deps across 30+ node files Co-Authored-By: Claude Sonnet 4.6 --- .../ifc-converter/components/IfcConverter.tsx | 147 ++++++++++-------- .../src/components/editor/floorplan-panel.tsx | 16 +- packages/nodes/src/box-vent/preview.tsx | 2 +- packages/nodes/src/box-vent/renderer.tsx | 1 + packages/nodes/src/chimney/preview.tsx | 2 + packages/nodes/src/chimney/renderer.tsx | 1 + packages/nodes/src/cupola/preview.tsx | 2 +- packages/nodes/src/cupola/renderer.tsx | 2 +- packages/nodes/src/door/preview.tsx | 10 +- packages/nodes/src/dormer/csg-geometry.ts | 3 - .../src/dormer/panel-position-section.tsx | 3 +- packages/nodes/src/dormer/panel.tsx | 2 +- packages/nodes/src/dormer/preview.tsx | 10 +- packages/nodes/src/dormer/renderer.tsx | 2 + packages/nodes/src/dormer/window-assembly.tsx | 5 +- packages/nodes/src/downspout/preview.tsx | 1 + packages/nodes/src/downspout/renderer.tsx | 6 +- packages/nodes/src/duct-terminal/tool.tsx | 7 +- packages/nodes/src/eyebrow-vent/preview.tsx | 2 +- packages/nodes/src/eyebrow-vent/renderer.tsx | 2 +- packages/nodes/src/gutter/preview.tsx | 2 +- packages/nodes/src/gutter/renderer.tsx | 7 +- packages/nodes/src/liquid-line/tool.tsx | 2 +- packages/nodes/src/ridge-vent/preview.tsx | 2 +- packages/nodes/src/ridge-vent/renderer.tsx | 2 +- packages/nodes/src/roof-segment/renderer.tsx | 1 + packages/nodes/src/skylight/renderer.tsx | 2 +- packages/nodes/src/solar-panel/preview.tsx | 1 + packages/nodes/src/solar-panel/renderer.tsx | 3 +- packages/nodes/src/turbine-vent/preview.tsx | 10 +- packages/nodes/src/turbine-vent/renderer.tsx | 4 +- packages/nodes/src/window/preview.tsx | 1 + .../src/systems/geometry/geometry-system.tsx | 2 +- 33 files changed, 153 insertions(+), 112 deletions(-) diff --git a/apps/ifc-converter/components/IfcConverter.tsx b/apps/ifc-converter/components/IfcConverter.tsx index 6e9c2f302..6e104e528 100644 --- a/apps/ifc-converter/components/IfcConverter.tsx +++ b/apps/ifc-converter/components/IfcConverter.tsx @@ -115,18 +115,7 @@ export default function IfcConverter() { return results }, [pascalData, searchQuery]) - useEffect(() => { - const params = new URLSearchParams(window.location.search) - const requested = params.get('file') - const matched = testFiles.some((f) => f.name === requested) - const initial = matched ? requested! : '01-duplex.ifc' - loadExampleFile(initial) - if (matched) { - document.getElementById('try')?.scrollIntoView({ block: 'start' }) - } - }, []) - - const loadAndConvert = async (data: Uint8Array, name: string) => { + const loadAndConvert = useCallback(async (data: Uint8Array, name: string) => { setFileName(name) setStatus('converting') setSearchQuery('') @@ -148,69 +137,89 @@ export default function IfcConverter() { setStatus('error') setConversionProgress(0) } - } + }, []) - const loadExampleFile = async (filename: string) => { - setStatus('loading') - setSelectedFile(filename) - setError(null) + const loadExampleFile = useCallback( + async (filename: string) => { + setStatus('loading') + setSelectedFile(filename) + setError(null) + + const params = new URLSearchParams(window.location.search) + if (params.get('file') !== filename) { + params.set('file', filename) + const newUrl = `${window.location.pathname}?${params.toString()}${window.location.hash}` + window.history.replaceState(null, '', newUrl) + } - const params = new URLSearchParams(window.location.search) - if (params.get('file') !== filename) { - params.set('file', filename) - const newUrl = `${window.location.pathname}?${params.toString()}${window.location.hash}` - window.history.replaceState(null, '', newUrl) - } + try { + const file = testFiles.find((f) => f.name === filename) + const url = file ? exampleFileUrl(file) : `/test-ifc-files/${filename}` + const response = await fetch(url) + if (!response.ok) throw new Error(`Could not load ${filename} (${response.status})`) + const arrayBuffer = await response.arrayBuffer() + const uint8Array = new Uint8Array(arrayBuffer) + setIfcData(uint8Array) + await loadAndConvert(uint8Array, filename) + } catch (err) { + setError(err instanceof Error ? err.message : 'Failed to load file') + setStatus('error') + } + }, + [loadAndConvert], + ) - try { - const file = testFiles.find((f) => f.name === filename) - const url = file ? exampleFileUrl(file) : `/test-ifc-files/${filename}` - const response = await fetch(url) - if (!response.ok) throw new Error(`Could not load ${filename} (${response.status})`) - const arrayBuffer = await response.arrayBuffer() - const uint8Array = new Uint8Array(arrayBuffer) - setIfcData(uint8Array) - await loadAndConvert(uint8Array, filename) - } catch (err) { - setError(err instanceof Error ? err.message : 'Failed to load file') - setStatus('error') - } - } + const handleFile = useCallback( + async (file: File) => { + setStatus('loading') + setError(null) + setSelectedFile('') + + const params = new URLSearchParams(window.location.search) + if (params.has('file')) { + params.delete('file') + const qs = params.toString() + const newUrl = `${window.location.pathname}${qs ? `?${qs}` : ''}${window.location.hash}` + window.history.replaceState(null, '', newUrl) + } - const handleFile = async (file: File) => { - setStatus('loading') - setError(null) - setSelectedFile('') + try { + const arrayBuffer = await file.arrayBuffer() + const uint8Array = new Uint8Array(arrayBuffer) + setIfcData(uint8Array) + await loadAndConvert(uint8Array, file.name) + } catch (err) { + setError(err instanceof Error ? err.message : 'Failed to load file') + setStatus('error') + } + }, + [loadAndConvert], + ) + useEffect(() => { const params = new URLSearchParams(window.location.search) - if (params.has('file')) { - params.delete('file') - const qs = params.toString() - const newUrl = `${window.location.pathname}${qs ? `?${qs}` : ''}${window.location.hash}` - window.history.replaceState(null, '', newUrl) - } - - try { - const arrayBuffer = await file.arrayBuffer() - const uint8Array = new Uint8Array(arrayBuffer) - setIfcData(uint8Array) - await loadAndConvert(uint8Array, file.name) - } catch (err) { - setError(err instanceof Error ? err.message : 'Failed to load file') - setStatus('error') - } - } - - const handleDrop = useCallback((e: React.DragEvent) => { - e.preventDefault() - setIsDragging(false) - const file = e.dataTransfer.files[0] - if (file?.name.toLowerCase().endsWith('.ifc')) { - handleFile(file) - } else { - setError('Please drop a valid IFC file') + const requested = params.get('file') + const matched = testFiles.some((f) => f.name === requested) + const initial = matched ? requested! : '01-duplex.ifc' + loadExampleFile(initial) + if (matched) { + document.getElementById('try')?.scrollIntoView({ block: 'start' }) } - }, []) + }, [loadExampleFile]) + + const handleDrop = useCallback( + (e: React.DragEvent) => { + e.preventDefault() + setIsDragging(false) + const file = e.dataTransfer.files[0] + if (file?.name.toLowerCase().endsWith('.ifc')) { + handleFile(file) + } else { + setError('Please drop a valid IFC file') + } + }, + [handleFile], + ) const handleDragOver = useCallback((e: React.DragEvent) => { e.preventDefault() @@ -234,7 +243,7 @@ export default function IfcConverter() { const url = URL.createObjectURL(blob) const a = document.createElement('a') a.href = url - a.download = fileName.replace('.ifc', '') + '_pascal.json' + a.download = `${fileName.replace('.ifc', '')}_pascal.json` a.click() URL.revokeObjectURL(url) } diff --git a/packages/editor/src/components/editor/floorplan-panel.tsx b/packages/editor/src/components/editor/floorplan-panel.tsx index 1bb7229cc..72ca14ef2 100644 --- a/packages/editor/src/components/editor/floorplan-panel.tsx +++ b/packages/editor/src/components/editor/floorplan-panel.tsx @@ -5551,15 +5551,7 @@ export function FloorplanPanel({ } as AnyNode usePlacementPreview.getState().set(ghost, wall) }, - [ - DoorNodeSchema, - WallNodeSchema, - WindowNodeSchema, - floorplanOpeningLocalY, - isDoorBuildActive, - movingNode, - movingOpeningType, - ], + [floorplanOpeningLocalY, isDoorBuildActive, movingNode, movingOpeningType], ) // Drop the floating opening ghost whenever opening placement ends (commit, // tool change, mode switch, cancel) or the active level changes, so a stale @@ -5569,7 +5561,7 @@ export function FloorplanPanel({ }, [isOpeningPlacementActive]) useEffect(() => { usePlacementPreview.getState().clear() - }, [levelId]) + }, []) const isMarqueeSelectionToolActive = mode === 'select' && floorplanSelectionTool === 'marquee' && @@ -8813,7 +8805,6 @@ export function FloorplanPanel({ isFenceBuildActive, isFloorplanGridInteractionActive, isMarqueeSelectionToolActive, - isOpeningPlacementActive, isPolygonBuildActive, isRoofBuildActive, isSlabBuildActive, @@ -8831,6 +8822,9 @@ export function FloorplanPanel({ viewBox.height, viewBox.width, walls, + isOpeningMoveActive, + showOpeningGhost, + isOpeningBuildActive, ], ) diff --git a/packages/nodes/src/box-vent/preview.tsx b/packages/nodes/src/box-vent/preview.tsx index 55b4b7638..7fba03f57 100644 --- a/packages/nodes/src/box-vent/preview.tsx +++ b/packages/nodes/src/box-vent/preview.tsx @@ -19,7 +19,7 @@ import type { BoxVentNode } from './schema' const BoxVentPreview = ({ node, invalid }: { node: BoxVentNode; invalid?: boolean }) => { const geometry = useMemo( () => buildBoxVentGeometry(node), - [node.width, node.depth, node.height, node.hoodOverhang, node.style], + [node.width, node.depth, node.height, node.hoodOverhang, node.style, node], ) const material = useMemo( diff --git a/packages/nodes/src/box-vent/renderer.tsx b/packages/nodes/src/box-vent/renderer.tsx index 98be50e59..2a13beb08 100644 --- a/packages/nodes/src/box-vent/renderer.tsx +++ b/packages/nodes/src/box-vent/renderer.tsx @@ -90,6 +90,7 @@ const BoxVentRenderer = ({ node: storeNode }: { node: BoxVentNode }) => { node.baseInset, node.baseHeight, node.cornerBevel, + node, ], ) diff --git a/packages/nodes/src/chimney/preview.tsx b/packages/nodes/src/chimney/preview.tsx index 472ca506c..69067ae9e 100644 --- a/packages/nodes/src/chimney/preview.tsx +++ b/packages/nodes/src/chimney/preview.tsx @@ -79,6 +79,8 @@ const ChimneyPreview = ({ node.position[0], node.position[2], node.rotation, + node, + effectiveSegment, ], ) diff --git a/packages/nodes/src/chimney/renderer.tsx b/packages/nodes/src/chimney/renderer.tsx index 16aaa2f65..cd9c8be95 100644 --- a/packages/nodes/src/chimney/renderer.tsx +++ b/packages/nodes/src/chimney/renderer.tsx @@ -93,6 +93,7 @@ const ChimneyRenderer = ({ node: storeNode }: { node: ChimneyNode }) => { segment?.deckThickness, segment?.overhang, segment?.shingleThickness, + segment, ], ) useEffect( diff --git a/packages/nodes/src/cupola/preview.tsx b/packages/nodes/src/cupola/preview.tsx index 5fd1fd7fd..b00ff1b67 100644 --- a/packages/nodes/src/cupola/preview.tsx +++ b/packages/nodes/src/cupola/preview.tsx @@ -15,7 +15,7 @@ import type { CupolaNode } from './schema' const CupolaPreview = ({ node, invalid }: { node: CupolaNode; invalid?: boolean }) => { const geometry = useMemo( () => buildCupolaGeometry(node), - [node.width, node.depth, node.height, node.roofStyle, node.finial], + [node.width, node.depth, node.height, node.roofStyle, node.finial, node], ) const material = useMemo( diff --git a/packages/nodes/src/cupola/renderer.tsx b/packages/nodes/src/cupola/renderer.tsx index 2352ff5b4..0784942ab 100644 --- a/packages/nodes/src/cupola/renderer.tsx +++ b/packages/nodes/src/cupola/renderer.tsx @@ -55,7 +55,7 @@ const CupolaRenderer = ({ node: storeNode }: { node: CupolaNode }) => { const geometry = useMemo( () => buildCupolaGeometry(node), - [node.width, node.depth, node.height, node.roofStyle, node.finial], + [node.width, node.depth, node.height, node.roofStyle, node.finial, node], ) useEffect(() => () => geometry.dispose(), [geometry]) diff --git a/packages/nodes/src/door/preview.tsx b/packages/nodes/src/door/preview.tsx index 0bc0892d7..ac3234fa7 100644 --- a/packages/nodes/src/door/preview.tsx +++ b/packages/nodes/src/door/preview.tsx @@ -21,7 +21,15 @@ const DoorPreview = ({ node, invalid }: { node: DoorNode; invalid?: boolean }) = const m = buildDoorPreviewMesh(node) m.layers.set(EDITOR_LAYER) return m - }, [node.width, node.height, node.frameDepth, node.openingShape, node.doorType, node.leafCount]) + }, [ + node.width, + node.height, + node.frameDepth, + node.openingShape, + node.doorType, + node.leafCount, + node, + ]) // Ghost treatment (clone + tint + raycast-off) re-applies if `invalid` // flips; its cleanup only disposes the clones it made. diff --git a/packages/nodes/src/dormer/csg-geometry.ts b/packages/nodes/src/dormer/csg-geometry.ts index a392d67a6..2f7dd7c02 100644 --- a/packages/nodes/src/dormer/csg-geometry.ts +++ b/packages/nodes/src/dormer/csg-geometry.ts @@ -325,7 +325,6 @@ export function generateDormerGeometry( const dormerBrushes = getRoofSegmentBrushes(virtualSegment) if (!dormerBrushes) { - // biome-ignore lint/suspicious/noConsole: keep diagnostic — fallback path. console.warn('[dormer] getRoofSegmentBrushes returned null; using fallback silhouette.') return buildDormerFallbackGeometry(dormer) } @@ -472,7 +471,6 @@ export function generateDormerGeometry( remapRoofShellFaces(resultGeo, virtualSegment) splitDormerGableMaterial(resultGeo, dormer.height, DORMER_GABLE_MATERIAL_INDEX) } catch (e) { - // biome-ignore lint/suspicious/noConsole: dormer CSG can throw; keep diagnostic. console.error('[dormer] CSG failed, falling back to silhouette:', e) if (dormerSolid) { try { @@ -492,7 +490,6 @@ export function generateDormerGeometry( // dormer is at least visible. const triCount = resultGeo.getIndex()?.count ?? resultGeo.getAttribute('position')?.count ?? 0 if (triCount === 0) { - // biome-ignore lint/suspicious/noConsole: keep diagnostic — empty CSG. console.warn('[dormer] CSG produced empty geometry; using fallback silhouette.') return buildDormerFallbackGeometry(dormer) } diff --git a/packages/nodes/src/dormer/panel-position-section.tsx b/packages/nodes/src/dormer/panel-position-section.tsx index c36e06291..5f63889e5 100644 --- a/packages/nodes/src/dormer/panel-position-section.tsx +++ b/packages/nodes/src/dormer/panel-position-section.tsx @@ -79,8 +79,7 @@ export function DormerPositionSection({ if (Number.isFinite(lo_x)) bounds = { minX: lo_x, maxX: hi_x, minZ: lo_z, maxZ: hi_z } } return { worldX, worldZ, worldRotation, bounds } - // biome-ignore lint/correctness/useExhaustiveDependencies: roofChildrenKey is the stable signature of `roof.children`; intentionally omitting `roof` (object identity) in favor of the joined ids. - }, [selectedId, px, py, pz, nodeRotation, segmentId, roofChildrenKey]) + }, [selectedId, px, pz, nodeRotation, roof.children, roof]) const worldX_now = worldXform.worldX const worldZ_now = worldXform.worldZ diff --git a/packages/nodes/src/dormer/panel.tsx b/packages/nodes/src/dormer/panel.tsx index be6d1676f..7eff4733b 100644 --- a/packages/nodes/src/dormer/panel.tsx +++ b/packages/nodes/src/dormer/panel.tsx @@ -107,7 +107,7 @@ export default function DormerPanel() { }, [node, selectedId, setMovingNode, setSelection]) const handleDuplicate = useCallback(() => { - if (!(node && node.roofSegmentId)) return + if (!node?.roofSegmentId) return triggerSFX('sfx:item-pick') // Deep clone and strip the id so the move tool's onClick branch // (`isNew || !node.id`) takes the "create fresh" path. Setting diff --git a/packages/nodes/src/dormer/preview.tsx b/packages/nodes/src/dormer/preview.tsx index 2aa2554c7..b4a31f5a0 100644 --- a/packages/nodes/src/dormer/preview.tsx +++ b/packages/nodes/src/dormer/preview.tsx @@ -28,7 +28,15 @@ const DormerPreview = ({ node, invalid }: { node: DormerNode; invalid?: boolean const geo = useMemo( () => buildDormerGhostGeometry(node), - [node.width, node.depth, node.height, node.roofHeight, node.roofType, node.wallSkirtHeight], + [ + node.width, + node.depth, + node.height, + node.roofHeight, + node.roofType, + node.wallSkirtHeight, + node, + ], ) useEffect(() => () => geo.dispose(), [geo]) diff --git a/packages/nodes/src/dormer/renderer.tsx b/packages/nodes/src/dormer/renderer.tsx index 36cf6bc23..68357adc2 100644 --- a/packages/nodes/src/dormer/renderer.tsx +++ b/packages/nodes/src/dormer/renderer.tsx @@ -95,6 +95,7 @@ const DormerRenderer = ({ node: storeNode }: { node: DormerNode }) => { node.sideMaterialPreset, node.wallMaterial, node.wallMaterialPreset, + node, ]) // The window frame bars / sill take the 'joinery' role when untextured; @@ -139,6 +140,7 @@ const DormerRenderer = ({ node: storeNode }: { node: DormerNode }) => { node.windowCornerRadii[1], node.windowCornerRadii[2], node.windowCornerRadii[3], + node, ]) useEffect(() => () => geometry?.dispose(), [geometry]) diff --git a/packages/nodes/src/dormer/window-assembly.tsx b/packages/nodes/src/dormer/window-assembly.tsx index 4c7734cbc..5d2e5052a 100644 --- a/packages/nodes/src/dormer/window-assembly.tsx +++ b/packages/nodes/src/dormer/window-assembly.tsx @@ -37,6 +37,7 @@ const DormerWindowAssembly = ({ node.windowOffsetX, node.windowOffsetY, node.wallSkirtHeight, + node, ], ) @@ -45,6 +46,7 @@ const DormerWindowAssembly = ({ const winShape: DormerWindowShape = node.windowShape const resolvedRadii: [number, number, number, number] = [...node.windowCornerRadii] + // biome-ignore lint/correctness/useExhaustiveDependencies: resolvedRadii is a local tuple — `...resolvedRadii` spreads its 4 stable number values into the dep list; the array reference itself is intentionally excluded. const winGeo = useMemo( () => buildDormerWindowGeometries( @@ -124,6 +126,7 @@ const DormerWindowAssembly = ({ // re-evaluate which gable still exposes the opening. node.windowOffsetY, node.wallSkirtHeight, + node, ], ) @@ -142,7 +145,6 @@ const DormerWindowAssembly = ({ {winGeo.glassPanes.map((pane, i) => ( { [ effectiveGutter?.profile, effectiveGutter?.size, - // The outlets array — its referenced entry's diameter / offset - // drives the collar bore + nesting. - effectiveGutter ? JSON.stringify(effectiveGutter.outlets) : undefined, effectiveSegment?.overhang, node.outletId, + effectiveSegment, + effectiveGutter, ], ) @@ -128,6 +127,7 @@ const DownspoutRenderer = ({ node: storeNode }: { node: DownspoutNode }) => { node.strapSpacing, node.terminal, routing, + node, ], ) useEffect(() => () => geometry.dispose(), [geometry]) diff --git a/packages/nodes/src/duct-terminal/tool.tsx b/packages/nodes/src/duct-terminal/tool.tsx index 717c5247b..15ca0e646 100644 --- a/packages/nodes/src/duct-terminal/tool.tsx +++ b/packages/nodes/src/duct-terminal/tool.tsx @@ -10,7 +10,12 @@ import { useScene, type WallEvent, } from '@pascal-app/core' -import { CursorSphere, getFloorStackPreviewPosition, triggerSFX, useEditor } from '@pascal-app/editor' +import { + CursorSphere, + getFloorStackPreviewPosition, + triggerSFX, + useEditor, +} from '@pascal-app/editor' import { useViewer } from '@pascal-app/viewer' import { Html } from '@react-three/drei' import { useThree } from '@react-three/fiber' diff --git a/packages/nodes/src/eyebrow-vent/preview.tsx b/packages/nodes/src/eyebrow-vent/preview.tsx index 3c6589cf1..76e8bdde8 100644 --- a/packages/nodes/src/eyebrow-vent/preview.tsx +++ b/packages/nodes/src/eyebrow-vent/preview.tsx @@ -15,7 +15,7 @@ import type { EyebrowVentNode } from './schema' const EyebrowVentPreview = ({ node, invalid }: { node: EyebrowVentNode; invalid?: boolean }) => { const geometry = useMemo( () => buildEyebrowVentGeometry(node), - [node.width, node.depth, node.height, node.style, node.louverCount, node.backRatio], + [node.width, node.depth, node.height, node.style, node.louverCount, node.backRatio, node], ) const material = useMemo( diff --git a/packages/nodes/src/eyebrow-vent/renderer.tsx b/packages/nodes/src/eyebrow-vent/renderer.tsx index dfd41f483..0da79c690 100644 --- a/packages/nodes/src/eyebrow-vent/renderer.tsx +++ b/packages/nodes/src/eyebrow-vent/renderer.tsx @@ -57,7 +57,7 @@ const EyebrowVentRenderer = ({ node: storeNode }: { node: EyebrowVentNode }) => const geometry = useMemo( () => buildEyebrowVentGeometry(node), - [node.width, node.depth, node.height, node.style, node.louverCount, node.backRatio], + [node.width, node.depth, node.height, node.style, node.louverCount, node.backRatio, node], ) useEffect(() => () => geometry.dispose(), [geometry]) diff --git a/packages/nodes/src/gutter/preview.tsx b/packages/nodes/src/gutter/preview.tsx index 40ddfde03..40946d235 100644 --- a/packages/nodes/src/gutter/preview.tsx +++ b/packages/nodes/src/gutter/preview.tsx @@ -33,7 +33,7 @@ const GutterPreview = ({ node, invalid }: { node: GutterNode; invalid?: boolean node.endCapRight, node.hangerStyle, node.hangerSpacing, - JSON.stringify(node.outlets), + node, ], ) diff --git a/packages/nodes/src/gutter/renderer.tsx b/packages/nodes/src/gutter/renderer.tsx index 76827e528..9eaa56a2d 100644 --- a/packages/nodes/src/gutter/renderer.tsx +++ b/packages/nodes/src/gutter/renderer.tsx @@ -156,6 +156,8 @@ const GutterRenderer = ({ node: storeNode }: { node: GutterNode }) => { effectiveSegment?.pitch, effectiveSegment?.roofType, mitreNodes, + effectiveSegment, + node, ]) const geometry = useMemo( @@ -169,11 +171,10 @@ const GutterRenderer = ({ node: storeNode }: { node: GutterNode }) => { node.endCapRight, node.hangerStyle, node.hangerSpacing, - // Value-compare the outlets array so the CSG drills only rebuild - // when an outlet's offset / diameter changes or one is added. - JSON.stringify(node.outlets), mitres.left, mitres.right, + node, + mitres, ], ) useEffect(() => () => geometry.dispose(), [geometry]) diff --git a/packages/nodes/src/liquid-line/tool.tsx b/packages/nodes/src/liquid-line/tool.tsx index f47d3d520..60211b1c4 100644 --- a/packages/nodes/src/liquid-line/tool.tsx +++ b/packages/nodes/src/liquid-line/tool.tsx @@ -183,7 +183,7 @@ const LiquidLineTool = () => { followTargetRef.current = null altAnchorRef.current = null setAltActive(false) - }, [follow]) + }, []) // Leaving the tool clears Follow so re-arming it starts in free-draw. useEffect(() => () => useLiquidLineToolOptions.getState().setFollow(false), []) diff --git a/packages/nodes/src/ridge-vent/preview.tsx b/packages/nodes/src/ridge-vent/preview.tsx index 3935dcfd2..33fd9a76c 100644 --- a/packages/nodes/src/ridge-vent/preview.tsx +++ b/packages/nodes/src/ridge-vent/preview.tsx @@ -9,7 +9,7 @@ import type { RidgeVentNode } from './schema' const RidgeVentPreview = ({ node, invalid }: { node: RidgeVentNode; invalid?: boolean }) => { const geometry = useMemo( () => buildRidgeVentGeometry(node), - [node.length, node.width, node.height, node.style, node.endCaps], + [node.length, node.width, node.height, node.style, node.endCaps, node], ) const material = useMemo( diff --git a/packages/nodes/src/ridge-vent/renderer.tsx b/packages/nodes/src/ridge-vent/renderer.tsx index 738865959..0c986892f 100644 --- a/packages/nodes/src/ridge-vent/renderer.tsx +++ b/packages/nodes/src/ridge-vent/renderer.tsx @@ -90,7 +90,7 @@ const RidgeVentRenderer = ({ node: storeNode }: { node: RidgeVentNode }) => { const geometry = useMemo( () => buildRidgeVentGeometry(node), - [node.length, node.width, node.height, node.style, node.endCaps], + [node.length, node.width, node.height, node.style, node.endCaps, node], ) useEffect(() => () => geometry.dispose(), [geometry]) diff --git a/packages/nodes/src/roof-segment/renderer.tsx b/packages/nodes/src/roof-segment/renderer.tsx index 8c1b50492..b3e52ff36 100644 --- a/packages/nodes/src/roof-segment/renderer.tsx +++ b/packages/nodes/src/roof-segment/renderer.tsx @@ -100,6 +100,7 @@ export const RoofSegmentRenderer = ({ node }: { node: RoofSegmentNode }) => { textures, colorPreset, sceneTheme, + node, ]) const material = debugColors diff --git a/packages/nodes/src/skylight/renderer.tsx b/packages/nodes/src/skylight/renderer.tsx index 4111cd779..77500038d 100644 --- a/packages/nodes/src/skylight/renderer.tsx +++ b/packages/nodes/src/skylight/renderer.tsx @@ -655,7 +655,7 @@ const SkylightRenderer = ({ node: storeNode }: { node: SkylightNode }) => { const surfaceFrame = useMemo(() => { if (!segment) return { point: new THREE.Vector3(), normal: new THREE.Vector3(0, 1, 0) } return getRoofOuterSurfaceFrameAtPoint(segment, node.position[0] ?? 0, node.position[2] ?? 0) - }, [segment, node.position[0], node.position[2], node.rotation, liveOverrides, storeNode.id]) + }, [segment, node.position[0], node.position[2]]) const surfaceQuat = useMemo( () => surfaceQuatFromNormal(surfaceFrame.normal, new THREE.Quaternion()), diff --git a/packages/nodes/src/solar-panel/preview.tsx b/packages/nodes/src/solar-panel/preview.tsx index 15b705a8f..2ecfb7992 100644 --- a/packages/nodes/src/solar-panel/preview.tsx +++ b/packages/nodes/src/solar-panel/preview.tsx @@ -41,6 +41,7 @@ const SolarPanelPreview = ({ node, invalid }: { node: SolarPanelNode; invalid?: node.frameThickness, node.frameDepth, node.standoffHeight, + node, ], ) diff --git a/packages/nodes/src/solar-panel/renderer.tsx b/packages/nodes/src/solar-panel/renderer.tsx index 663a5608f..b61249adc 100644 --- a/packages/nodes/src/solar-panel/renderer.tsx +++ b/packages/nodes/src/solar-panel/renderer.tsx @@ -110,6 +110,7 @@ const SolarPanelRenderer = ({ node: storeNode }: { node: SolarPanelNode }) => { node.frameThickness, node.frameDepth, node.standoffHeight, + node, ], ) @@ -147,7 +148,7 @@ const SolarPanelRenderer = ({ node: storeNode }: { node: SolarPanelNode }) => { node.position[0] ?? 0, node.position[2] ?? 0, ) - }, [segment, segmentOverrides, node.position[0], node.position[2]]) + }, [node.position[0], node.position[2], effectiveSegment]) const surfaceQuat = useMemo( () => surfaceQuatFromNormal(surfaceFrame.normal, new THREE.Quaternion()), diff --git a/packages/nodes/src/turbine-vent/preview.tsx b/packages/nodes/src/turbine-vent/preview.tsx index 4ebc4bee4..1a22dabde 100644 --- a/packages/nodes/src/turbine-vent/preview.tsx +++ b/packages/nodes/src/turbine-vent/preview.tsx @@ -16,7 +16,15 @@ import type { TurbineVentNode } from './schema' const TurbineVentPreview = ({ node, invalid }: { node: TurbineVentNode; invalid?: boolean }) => { const geometry = useMemo( () => buildTurbineVentGeometry(node), - [node.style, node.diameter, node.height, node.neckHeight, node.vaneCount, node.baseOverhang], + [ + node.style, + node.diameter, + node.height, + node.neckHeight, + node.vaneCount, + node.baseOverhang, + node, + ], ) const material = useMemo( diff --git a/packages/nodes/src/turbine-vent/renderer.tsx b/packages/nodes/src/turbine-vent/renderer.tsx index 2e7685440..db483c8ca 100644 --- a/packages/nodes/src/turbine-vent/renderer.tsx +++ b/packages/nodes/src/turbine-vent/renderer.tsx @@ -67,11 +67,11 @@ const TurbineVentRenderer = ({ node: storeNode }: { node: TurbineVentNode }) => const baseGeometry = useMemo( () => buildTurbineVentBase(node), - [node.diameter, node.height, node.neckHeight, node.baseOverhang], + [node.diameter, node.height, node.neckHeight, node.baseOverhang, node], ) const headGeometry = useMemo( () => buildTurbineVentHead(node), - [node.style, node.diameter, node.height, node.neckHeight, node.vaneCount], + [node.style, node.diameter, node.height, node.neckHeight, node.vaneCount, node], ) useEffect(() => () => baseGeometry.dispose(), [baseGeometry]) useEffect(() => () => headGeometry.dispose(), [headGeometry]) diff --git a/packages/nodes/src/window/preview.tsx b/packages/nodes/src/window/preview.tsx index e9291d447..a7d85ddb2 100644 --- a/packages/nodes/src/window/preview.tsx +++ b/packages/nodes/src/window/preview.tsx @@ -30,6 +30,7 @@ const WindowPreview = ({ node, invalid }: { node: WindowNode; invalid?: boolean node.sill, node.sillDepth, node.sillThickness, + node, ]) // Ghost treatment (clone + tint + raycast-off) re-applies if `invalid` diff --git a/packages/viewer/src/systems/geometry/geometry-system.tsx b/packages/viewer/src/systems/geometry/geometry-system.tsx index 3e6ddaf3e..1ed7fd1c7 100644 --- a/packages/viewer/src/systems/geometry/geometry-system.tsx +++ b/packages/viewer/src/systems/geometry/geometry-system.tsx @@ -72,7 +72,7 @@ export const GeometrySystem = () => { useScene.getState().markDirty(node.id as AnyNodeId) } } - }, [shading, textures, colorPreset, sceneTheme]) + }, []) useFrame(() => { if (dirtyNodes.size === 0) return From c1bfb88a5ea42d376dd39ac8b8e4b1f7a5110b4e Mon Sep 17 00:00:00 2001 From: sudhir Date: Tue, 16 Jun 2026 23:35:57 +0530 Subject: [PATCH 54/59] fix(viewer): restore appearance-change dirty-mark in GeometrySystem The biome --unsafe autofix stripped [shading, textures, colorPreset, sceneTheme] from the mount effect's dep array, treating them as unused. They are deliberate re-run TRIGGERS: the effect re-marks every def.geometry node dirty whenever an appearance value changes, so the builders re-run and pick up the new shading / textures / color preset / scene theme. Without them, switching render mode, toggling textures, or changing the preset no longer rebuilds existing registry-driven geometry. All four are primitives (stable by value), so listing them is safe; added a scoped biome-ignore so the trigger-only deps survive future autofixes. Co-Authored-By: Claude Opus 4.8 --- .../viewer/src/systems/geometry/geometry-system.tsx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/viewer/src/systems/geometry/geometry-system.tsx b/packages/viewer/src/systems/geometry/geometry-system.tsx index 1ed7fd1c7..e66b18666 100644 --- a/packages/viewer/src/systems/geometry/geometry-system.tsx +++ b/packages/viewer/src/systems/geometry/geometry-system.tsx @@ -64,6 +64,14 @@ export const GeometrySystem = () => { // shelf dirties the shelf without altering its boards. const builtGeometryKeyRef = useRef>(new Map()) + // Re-mark every geometry-backed node dirty whenever a viewer appearance + // value changes, so `def.geometry` builders re-run and pick up the new + // shading / texture / preset / theme. These four are deliberate re-run + // TRIGGERS, not values read in the body — the effect re-fires on any + // change. They're primitives (stable by value), so listing them is safe; + // biome flags them as "unnecessary" because the body doesn't reference + // them, but dropping them silently breaks appearance-mode switching. + // biome-ignore lint/correctness/useExhaustiveDependencies: shading/textures/colorPreset/sceneTheme are intentional re-run triggers; removing them stops geometry from rebuilding on appearance change. useEffect(() => { const nodes = useScene.getState().nodes for (const node of Object.values(nodes)) { @@ -72,7 +80,7 @@ export const GeometrySystem = () => { useScene.getState().markDirty(node.id as AnyNodeId) } } - }, []) + }, [shading, textures, colorPreset, sceneTheme]) useFrame(() => { if (dirtyNodes.size === 0) return From 0d96cb508ebc7d896b4d7e5dfa1424960646d45d Mon Sep 17 00:00:00 2001 From: sudhir Date: Tue, 16 Jun 2026 23:53:20 +0530 Subject: [PATCH 55/59] revert(lint): undo over-eager --unsafe dep-array rewrites MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The earlier `biome check --write --unsafe` pass (commit a3b5e4dc) did far more than satisfy the failing check. `useExhaustiveDependencies` is info-level and never failed `bun run check` — the only error-level failure was a formatter diff. But --unsafe rewrote ~25 hook dependency arrays, and several of those rewrites are regressions: - dormer/panel-position-section: replaced the stable `roofChildrenKey` signature with raw `roof.children` / `roof` captures, which both broke memoization AND introduced a TS error (`'roof' is possibly 'undefined'`) that failed `tsc --build` for @pascal-app/nodes. - gutter/downspout renderers: replaced deliberate `JSON.stringify` value-comparison deps (there to avoid expensive CSG rebuilds) with broad object-identity deps → CSG re-runs on every node mutation. - turbine-vent: added `node` to specific-property lists, defeating the narrow geometry-rebuild triggers. - floorplan-panel / liquid-line: dropped real deps (`levelId`, `follow`) → stale-closure risk. Reverts every such file to its pre-lint state (74b73512), restoring the authors' intentional dependency arrays. The only genuinely-required fix from that pass is kept: the duct-terminal import formatting (the actual error-level failure) and the GeometrySystem appearance-dep restoration (committed separately in c1bfb88a). Verified: `bun run check` exits 0, all 9 packages typecheck, and the test suite is unchanged (1228 pass / 20 pre-existing env failures). Co-Authored-By: Claude Opus 4.8 --- .../ifc-converter/components/IfcConverter.tsx | 147 ++++++++---------- apps/ifc-converter/next-env.d.ts | 2 +- .../src/components/editor/floorplan-panel.tsx | 16 +- packages/nodes/src/box-vent/preview.tsx | 2 +- packages/nodes/src/box-vent/renderer.tsx | 1 - packages/nodes/src/chimney/preview.tsx | 2 - packages/nodes/src/chimney/renderer.tsx | 1 - packages/nodes/src/cupola/preview.tsx | 2 +- packages/nodes/src/cupola/renderer.tsx | 2 +- packages/nodes/src/door/preview.tsx | 10 +- packages/nodes/src/dormer/csg-geometry.ts | 3 + .../src/dormer/panel-position-section.tsx | 3 +- packages/nodes/src/dormer/panel.tsx | 2 +- packages/nodes/src/dormer/preview.tsx | 10 +- packages/nodes/src/dormer/renderer.tsx | 2 - packages/nodes/src/dormer/window-assembly.tsx | 5 +- packages/nodes/src/downspout/preview.tsx | 1 - packages/nodes/src/downspout/renderer.tsx | 6 +- packages/nodes/src/eyebrow-vent/preview.tsx | 2 +- packages/nodes/src/eyebrow-vent/renderer.tsx | 2 +- packages/nodes/src/gutter/preview.tsx | 2 +- packages/nodes/src/gutter/renderer.tsx | 7 +- packages/nodes/src/liquid-line/tool.tsx | 2 +- packages/nodes/src/ridge-vent/preview.tsx | 2 +- packages/nodes/src/ridge-vent/renderer.tsx | 2 +- packages/nodes/src/roof-segment/renderer.tsx | 1 - packages/nodes/src/skylight/renderer.tsx | 2 +- packages/nodes/src/solar-panel/preview.tsx | 1 - packages/nodes/src/solar-panel/renderer.tsx | 3 +- packages/nodes/src/turbine-vent/preview.tsx | 10 +- packages/nodes/src/turbine-vent/renderer.tsx | 4 +- packages/nodes/src/window/preview.tsx | 1 - 32 files changed, 111 insertions(+), 147 deletions(-) diff --git a/apps/ifc-converter/components/IfcConverter.tsx b/apps/ifc-converter/components/IfcConverter.tsx index 6e104e528..6e9c2f302 100644 --- a/apps/ifc-converter/components/IfcConverter.tsx +++ b/apps/ifc-converter/components/IfcConverter.tsx @@ -115,7 +115,18 @@ export default function IfcConverter() { return results }, [pascalData, searchQuery]) - const loadAndConvert = useCallback(async (data: Uint8Array, name: string) => { + useEffect(() => { + const params = new URLSearchParams(window.location.search) + const requested = params.get('file') + const matched = testFiles.some((f) => f.name === requested) + const initial = matched ? requested! : '01-duplex.ifc' + loadExampleFile(initial) + if (matched) { + document.getElementById('try')?.scrollIntoView({ block: 'start' }) + } + }, []) + + const loadAndConvert = async (data: Uint8Array, name: string) => { setFileName(name) setStatus('converting') setSearchQuery('') @@ -137,89 +148,69 @@ export default function IfcConverter() { setStatus('error') setConversionProgress(0) } - }, []) + } - const loadExampleFile = useCallback( - async (filename: string) => { - setStatus('loading') - setSelectedFile(filename) - setError(null) - - const params = new URLSearchParams(window.location.search) - if (params.get('file') !== filename) { - params.set('file', filename) - const newUrl = `${window.location.pathname}?${params.toString()}${window.location.hash}` - window.history.replaceState(null, '', newUrl) - } + const loadExampleFile = async (filename: string) => { + setStatus('loading') + setSelectedFile(filename) + setError(null) - try { - const file = testFiles.find((f) => f.name === filename) - const url = file ? exampleFileUrl(file) : `/test-ifc-files/${filename}` - const response = await fetch(url) - if (!response.ok) throw new Error(`Could not load ${filename} (${response.status})`) - const arrayBuffer = await response.arrayBuffer() - const uint8Array = new Uint8Array(arrayBuffer) - setIfcData(uint8Array) - await loadAndConvert(uint8Array, filename) - } catch (err) { - setError(err instanceof Error ? err.message : 'Failed to load file') - setStatus('error') - } - }, - [loadAndConvert], - ) + const params = new URLSearchParams(window.location.search) + if (params.get('file') !== filename) { + params.set('file', filename) + const newUrl = `${window.location.pathname}?${params.toString()}${window.location.hash}` + window.history.replaceState(null, '', newUrl) + } - const handleFile = useCallback( - async (file: File) => { - setStatus('loading') - setError(null) - setSelectedFile('') - - const params = new URLSearchParams(window.location.search) - if (params.has('file')) { - params.delete('file') - const qs = params.toString() - const newUrl = `${window.location.pathname}${qs ? `?${qs}` : ''}${window.location.hash}` - window.history.replaceState(null, '', newUrl) - } + try { + const file = testFiles.find((f) => f.name === filename) + const url = file ? exampleFileUrl(file) : `/test-ifc-files/${filename}` + const response = await fetch(url) + if (!response.ok) throw new Error(`Could not load ${filename} (${response.status})`) + const arrayBuffer = await response.arrayBuffer() + const uint8Array = new Uint8Array(arrayBuffer) + setIfcData(uint8Array) + await loadAndConvert(uint8Array, filename) + } catch (err) { + setError(err instanceof Error ? err.message : 'Failed to load file') + setStatus('error') + } + } - try { - const arrayBuffer = await file.arrayBuffer() - const uint8Array = new Uint8Array(arrayBuffer) - setIfcData(uint8Array) - await loadAndConvert(uint8Array, file.name) - } catch (err) { - setError(err instanceof Error ? err.message : 'Failed to load file') - setStatus('error') - } - }, - [loadAndConvert], - ) + const handleFile = async (file: File) => { + setStatus('loading') + setError(null) + setSelectedFile('') - useEffect(() => { const params = new URLSearchParams(window.location.search) - const requested = params.get('file') - const matched = testFiles.some((f) => f.name === requested) - const initial = matched ? requested! : '01-duplex.ifc' - loadExampleFile(initial) - if (matched) { - document.getElementById('try')?.scrollIntoView({ block: 'start' }) + if (params.has('file')) { + params.delete('file') + const qs = params.toString() + const newUrl = `${window.location.pathname}${qs ? `?${qs}` : ''}${window.location.hash}` + window.history.replaceState(null, '', newUrl) } - }, [loadExampleFile]) - - const handleDrop = useCallback( - (e: React.DragEvent) => { - e.preventDefault() - setIsDragging(false) - const file = e.dataTransfer.files[0] - if (file?.name.toLowerCase().endsWith('.ifc')) { - handleFile(file) - } else { - setError('Please drop a valid IFC file') - } - }, - [handleFile], - ) + + try { + const arrayBuffer = await file.arrayBuffer() + const uint8Array = new Uint8Array(arrayBuffer) + setIfcData(uint8Array) + await loadAndConvert(uint8Array, file.name) + } catch (err) { + setError(err instanceof Error ? err.message : 'Failed to load file') + setStatus('error') + } + } + + const handleDrop = useCallback((e: React.DragEvent) => { + e.preventDefault() + setIsDragging(false) + const file = e.dataTransfer.files[0] + if (file?.name.toLowerCase().endsWith('.ifc')) { + handleFile(file) + } else { + setError('Please drop a valid IFC file') + } + }, []) const handleDragOver = useCallback((e: React.DragEvent) => { e.preventDefault() @@ -243,7 +234,7 @@ export default function IfcConverter() { const url = URL.createObjectURL(blob) const a = document.createElement('a') a.href = url - a.download = `${fileName.replace('.ifc', '')}_pascal.json` + a.download = fileName.replace('.ifc', '') + '_pascal.json' a.click() URL.revokeObjectURL(url) } diff --git a/apps/ifc-converter/next-env.d.ts b/apps/ifc-converter/next-env.d.ts index c4b7818fb..9edff1c7c 100644 --- a/apps/ifc-converter/next-env.d.ts +++ b/apps/ifc-converter/next-env.d.ts @@ -1,6 +1,6 @@ /// /// -import "./.next/dev/types/routes.d.ts"; +import "./.next/types/routes.d.ts"; // NOTE: This file should not be edited // see https://nextjs.org/docs/app/api-reference/config/typescript for more information. diff --git a/packages/editor/src/components/editor/floorplan-panel.tsx b/packages/editor/src/components/editor/floorplan-panel.tsx index 72ca14ef2..1bb7229cc 100644 --- a/packages/editor/src/components/editor/floorplan-panel.tsx +++ b/packages/editor/src/components/editor/floorplan-panel.tsx @@ -5551,7 +5551,15 @@ export function FloorplanPanel({ } as AnyNode usePlacementPreview.getState().set(ghost, wall) }, - [floorplanOpeningLocalY, isDoorBuildActive, movingNode, movingOpeningType], + [ + DoorNodeSchema, + WallNodeSchema, + WindowNodeSchema, + floorplanOpeningLocalY, + isDoorBuildActive, + movingNode, + movingOpeningType, + ], ) // Drop the floating opening ghost whenever opening placement ends (commit, // tool change, mode switch, cancel) or the active level changes, so a stale @@ -5561,7 +5569,7 @@ export function FloorplanPanel({ }, [isOpeningPlacementActive]) useEffect(() => { usePlacementPreview.getState().clear() - }, []) + }, [levelId]) const isMarqueeSelectionToolActive = mode === 'select' && floorplanSelectionTool === 'marquee' && @@ -8805,6 +8813,7 @@ export function FloorplanPanel({ isFenceBuildActive, isFloorplanGridInteractionActive, isMarqueeSelectionToolActive, + isOpeningPlacementActive, isPolygonBuildActive, isRoofBuildActive, isSlabBuildActive, @@ -8822,9 +8831,6 @@ export function FloorplanPanel({ viewBox.height, viewBox.width, walls, - isOpeningMoveActive, - showOpeningGhost, - isOpeningBuildActive, ], ) diff --git a/packages/nodes/src/box-vent/preview.tsx b/packages/nodes/src/box-vent/preview.tsx index 7fba03f57..55b4b7638 100644 --- a/packages/nodes/src/box-vent/preview.tsx +++ b/packages/nodes/src/box-vent/preview.tsx @@ -19,7 +19,7 @@ import type { BoxVentNode } from './schema' const BoxVentPreview = ({ node, invalid }: { node: BoxVentNode; invalid?: boolean }) => { const geometry = useMemo( () => buildBoxVentGeometry(node), - [node.width, node.depth, node.height, node.hoodOverhang, node.style, node], + [node.width, node.depth, node.height, node.hoodOverhang, node.style], ) const material = useMemo( diff --git a/packages/nodes/src/box-vent/renderer.tsx b/packages/nodes/src/box-vent/renderer.tsx index 2a13beb08..98be50e59 100644 --- a/packages/nodes/src/box-vent/renderer.tsx +++ b/packages/nodes/src/box-vent/renderer.tsx @@ -90,7 +90,6 @@ const BoxVentRenderer = ({ node: storeNode }: { node: BoxVentNode }) => { node.baseInset, node.baseHeight, node.cornerBevel, - node, ], ) diff --git a/packages/nodes/src/chimney/preview.tsx b/packages/nodes/src/chimney/preview.tsx index 69067ae9e..472ca506c 100644 --- a/packages/nodes/src/chimney/preview.tsx +++ b/packages/nodes/src/chimney/preview.tsx @@ -79,8 +79,6 @@ const ChimneyPreview = ({ node.position[0], node.position[2], node.rotation, - node, - effectiveSegment, ], ) diff --git a/packages/nodes/src/chimney/renderer.tsx b/packages/nodes/src/chimney/renderer.tsx index cd9c8be95..16aaa2f65 100644 --- a/packages/nodes/src/chimney/renderer.tsx +++ b/packages/nodes/src/chimney/renderer.tsx @@ -93,7 +93,6 @@ const ChimneyRenderer = ({ node: storeNode }: { node: ChimneyNode }) => { segment?.deckThickness, segment?.overhang, segment?.shingleThickness, - segment, ], ) useEffect( diff --git a/packages/nodes/src/cupola/preview.tsx b/packages/nodes/src/cupola/preview.tsx index b00ff1b67..5fd1fd7fd 100644 --- a/packages/nodes/src/cupola/preview.tsx +++ b/packages/nodes/src/cupola/preview.tsx @@ -15,7 +15,7 @@ import type { CupolaNode } from './schema' const CupolaPreview = ({ node, invalid }: { node: CupolaNode; invalid?: boolean }) => { const geometry = useMemo( () => buildCupolaGeometry(node), - [node.width, node.depth, node.height, node.roofStyle, node.finial, node], + [node.width, node.depth, node.height, node.roofStyle, node.finial], ) const material = useMemo( diff --git a/packages/nodes/src/cupola/renderer.tsx b/packages/nodes/src/cupola/renderer.tsx index 0784942ab..2352ff5b4 100644 --- a/packages/nodes/src/cupola/renderer.tsx +++ b/packages/nodes/src/cupola/renderer.tsx @@ -55,7 +55,7 @@ const CupolaRenderer = ({ node: storeNode }: { node: CupolaNode }) => { const geometry = useMemo( () => buildCupolaGeometry(node), - [node.width, node.depth, node.height, node.roofStyle, node.finial, node], + [node.width, node.depth, node.height, node.roofStyle, node.finial], ) useEffect(() => () => geometry.dispose(), [geometry]) diff --git a/packages/nodes/src/door/preview.tsx b/packages/nodes/src/door/preview.tsx index ac3234fa7..0bc0892d7 100644 --- a/packages/nodes/src/door/preview.tsx +++ b/packages/nodes/src/door/preview.tsx @@ -21,15 +21,7 @@ const DoorPreview = ({ node, invalid }: { node: DoorNode; invalid?: boolean }) = const m = buildDoorPreviewMesh(node) m.layers.set(EDITOR_LAYER) return m - }, [ - node.width, - node.height, - node.frameDepth, - node.openingShape, - node.doorType, - node.leafCount, - node, - ]) + }, [node.width, node.height, node.frameDepth, node.openingShape, node.doorType, node.leafCount]) // Ghost treatment (clone + tint + raycast-off) re-applies if `invalid` // flips; its cleanup only disposes the clones it made. diff --git a/packages/nodes/src/dormer/csg-geometry.ts b/packages/nodes/src/dormer/csg-geometry.ts index 2f7dd7c02..a392d67a6 100644 --- a/packages/nodes/src/dormer/csg-geometry.ts +++ b/packages/nodes/src/dormer/csg-geometry.ts @@ -325,6 +325,7 @@ export function generateDormerGeometry( const dormerBrushes = getRoofSegmentBrushes(virtualSegment) if (!dormerBrushes) { + // biome-ignore lint/suspicious/noConsole: keep diagnostic — fallback path. console.warn('[dormer] getRoofSegmentBrushes returned null; using fallback silhouette.') return buildDormerFallbackGeometry(dormer) } @@ -471,6 +472,7 @@ export function generateDormerGeometry( remapRoofShellFaces(resultGeo, virtualSegment) splitDormerGableMaterial(resultGeo, dormer.height, DORMER_GABLE_MATERIAL_INDEX) } catch (e) { + // biome-ignore lint/suspicious/noConsole: dormer CSG can throw; keep diagnostic. console.error('[dormer] CSG failed, falling back to silhouette:', e) if (dormerSolid) { try { @@ -490,6 +492,7 @@ export function generateDormerGeometry( // dormer is at least visible. const triCount = resultGeo.getIndex()?.count ?? resultGeo.getAttribute('position')?.count ?? 0 if (triCount === 0) { + // biome-ignore lint/suspicious/noConsole: keep diagnostic — empty CSG. console.warn('[dormer] CSG produced empty geometry; using fallback silhouette.') return buildDormerFallbackGeometry(dormer) } diff --git a/packages/nodes/src/dormer/panel-position-section.tsx b/packages/nodes/src/dormer/panel-position-section.tsx index 5f63889e5..c36e06291 100644 --- a/packages/nodes/src/dormer/panel-position-section.tsx +++ b/packages/nodes/src/dormer/panel-position-section.tsx @@ -79,7 +79,8 @@ export function DormerPositionSection({ if (Number.isFinite(lo_x)) bounds = { minX: lo_x, maxX: hi_x, minZ: lo_z, maxZ: hi_z } } return { worldX, worldZ, worldRotation, bounds } - }, [selectedId, px, pz, nodeRotation, roof.children, roof]) + // biome-ignore lint/correctness/useExhaustiveDependencies: roofChildrenKey is the stable signature of `roof.children`; intentionally omitting `roof` (object identity) in favor of the joined ids. + }, [selectedId, px, py, pz, nodeRotation, segmentId, roofChildrenKey]) const worldX_now = worldXform.worldX const worldZ_now = worldXform.worldZ diff --git a/packages/nodes/src/dormer/panel.tsx b/packages/nodes/src/dormer/panel.tsx index 7eff4733b..be6d1676f 100644 --- a/packages/nodes/src/dormer/panel.tsx +++ b/packages/nodes/src/dormer/panel.tsx @@ -107,7 +107,7 @@ export default function DormerPanel() { }, [node, selectedId, setMovingNode, setSelection]) const handleDuplicate = useCallback(() => { - if (!node?.roofSegmentId) return + if (!(node && node.roofSegmentId)) return triggerSFX('sfx:item-pick') // Deep clone and strip the id so the move tool's onClick branch // (`isNew || !node.id`) takes the "create fresh" path. Setting diff --git a/packages/nodes/src/dormer/preview.tsx b/packages/nodes/src/dormer/preview.tsx index b4a31f5a0..2aa2554c7 100644 --- a/packages/nodes/src/dormer/preview.tsx +++ b/packages/nodes/src/dormer/preview.tsx @@ -28,15 +28,7 @@ const DormerPreview = ({ node, invalid }: { node: DormerNode; invalid?: boolean const geo = useMemo( () => buildDormerGhostGeometry(node), - [ - node.width, - node.depth, - node.height, - node.roofHeight, - node.roofType, - node.wallSkirtHeight, - node, - ], + [node.width, node.depth, node.height, node.roofHeight, node.roofType, node.wallSkirtHeight], ) useEffect(() => () => geo.dispose(), [geo]) diff --git a/packages/nodes/src/dormer/renderer.tsx b/packages/nodes/src/dormer/renderer.tsx index 68357adc2..36cf6bc23 100644 --- a/packages/nodes/src/dormer/renderer.tsx +++ b/packages/nodes/src/dormer/renderer.tsx @@ -95,7 +95,6 @@ const DormerRenderer = ({ node: storeNode }: { node: DormerNode }) => { node.sideMaterialPreset, node.wallMaterial, node.wallMaterialPreset, - node, ]) // The window frame bars / sill take the 'joinery' role when untextured; @@ -140,7 +139,6 @@ const DormerRenderer = ({ node: storeNode }: { node: DormerNode }) => { node.windowCornerRadii[1], node.windowCornerRadii[2], node.windowCornerRadii[3], - node, ]) useEffect(() => () => geometry?.dispose(), [geometry]) diff --git a/packages/nodes/src/dormer/window-assembly.tsx b/packages/nodes/src/dormer/window-assembly.tsx index 5d2e5052a..4c7734cbc 100644 --- a/packages/nodes/src/dormer/window-assembly.tsx +++ b/packages/nodes/src/dormer/window-assembly.tsx @@ -37,7 +37,6 @@ const DormerWindowAssembly = ({ node.windowOffsetX, node.windowOffsetY, node.wallSkirtHeight, - node, ], ) @@ -46,7 +45,6 @@ const DormerWindowAssembly = ({ const winShape: DormerWindowShape = node.windowShape const resolvedRadii: [number, number, number, number] = [...node.windowCornerRadii] - // biome-ignore lint/correctness/useExhaustiveDependencies: resolvedRadii is a local tuple — `...resolvedRadii` spreads its 4 stable number values into the dep list; the array reference itself is intentionally excluded. const winGeo = useMemo( () => buildDormerWindowGeometries( @@ -126,7 +124,6 @@ const DormerWindowAssembly = ({ // re-evaluate which gable still exposes the opening. node.windowOffsetY, node.wallSkirtHeight, - node, ], ) @@ -145,6 +142,7 @@ const DormerWindowAssembly = ({ {winGeo.glassPanes.map((pane, i) => ( { [ effectiveGutter?.profile, effectiveGutter?.size, + // The outlets array — its referenced entry's diameter / offset + // drives the collar bore + nesting. + effectiveGutter ? JSON.stringify(effectiveGutter.outlets) : undefined, effectiveSegment?.overhang, node.outletId, - effectiveSegment, - effectiveGutter, ], ) @@ -127,7 +128,6 @@ const DownspoutRenderer = ({ node: storeNode }: { node: DownspoutNode }) => { node.strapSpacing, node.terminal, routing, - node, ], ) useEffect(() => () => geometry.dispose(), [geometry]) diff --git a/packages/nodes/src/eyebrow-vent/preview.tsx b/packages/nodes/src/eyebrow-vent/preview.tsx index 76e8bdde8..3c6589cf1 100644 --- a/packages/nodes/src/eyebrow-vent/preview.tsx +++ b/packages/nodes/src/eyebrow-vent/preview.tsx @@ -15,7 +15,7 @@ import type { EyebrowVentNode } from './schema' const EyebrowVentPreview = ({ node, invalid }: { node: EyebrowVentNode; invalid?: boolean }) => { const geometry = useMemo( () => buildEyebrowVentGeometry(node), - [node.width, node.depth, node.height, node.style, node.louverCount, node.backRatio, node], + [node.width, node.depth, node.height, node.style, node.louverCount, node.backRatio], ) const material = useMemo( diff --git a/packages/nodes/src/eyebrow-vent/renderer.tsx b/packages/nodes/src/eyebrow-vent/renderer.tsx index 0da79c690..dfd41f483 100644 --- a/packages/nodes/src/eyebrow-vent/renderer.tsx +++ b/packages/nodes/src/eyebrow-vent/renderer.tsx @@ -57,7 +57,7 @@ const EyebrowVentRenderer = ({ node: storeNode }: { node: EyebrowVentNode }) => const geometry = useMemo( () => buildEyebrowVentGeometry(node), - [node.width, node.depth, node.height, node.style, node.louverCount, node.backRatio, node], + [node.width, node.depth, node.height, node.style, node.louverCount, node.backRatio], ) useEffect(() => () => geometry.dispose(), [geometry]) diff --git a/packages/nodes/src/gutter/preview.tsx b/packages/nodes/src/gutter/preview.tsx index 40946d235..40ddfde03 100644 --- a/packages/nodes/src/gutter/preview.tsx +++ b/packages/nodes/src/gutter/preview.tsx @@ -33,7 +33,7 @@ const GutterPreview = ({ node, invalid }: { node: GutterNode; invalid?: boolean node.endCapRight, node.hangerStyle, node.hangerSpacing, - node, + JSON.stringify(node.outlets), ], ) diff --git a/packages/nodes/src/gutter/renderer.tsx b/packages/nodes/src/gutter/renderer.tsx index 9eaa56a2d..76827e528 100644 --- a/packages/nodes/src/gutter/renderer.tsx +++ b/packages/nodes/src/gutter/renderer.tsx @@ -156,8 +156,6 @@ const GutterRenderer = ({ node: storeNode }: { node: GutterNode }) => { effectiveSegment?.pitch, effectiveSegment?.roofType, mitreNodes, - effectiveSegment, - node, ]) const geometry = useMemo( @@ -171,10 +169,11 @@ const GutterRenderer = ({ node: storeNode }: { node: GutterNode }) => { node.endCapRight, node.hangerStyle, node.hangerSpacing, + // Value-compare the outlets array so the CSG drills only rebuild + // when an outlet's offset / diameter changes or one is added. + JSON.stringify(node.outlets), mitres.left, mitres.right, - node, - mitres, ], ) useEffect(() => () => geometry.dispose(), [geometry]) diff --git a/packages/nodes/src/liquid-line/tool.tsx b/packages/nodes/src/liquid-line/tool.tsx index 60211b1c4..f47d3d520 100644 --- a/packages/nodes/src/liquid-line/tool.tsx +++ b/packages/nodes/src/liquid-line/tool.tsx @@ -183,7 +183,7 @@ const LiquidLineTool = () => { followTargetRef.current = null altAnchorRef.current = null setAltActive(false) - }, []) + }, [follow]) // Leaving the tool clears Follow so re-arming it starts in free-draw. useEffect(() => () => useLiquidLineToolOptions.getState().setFollow(false), []) diff --git a/packages/nodes/src/ridge-vent/preview.tsx b/packages/nodes/src/ridge-vent/preview.tsx index 33fd9a76c..3935dcfd2 100644 --- a/packages/nodes/src/ridge-vent/preview.tsx +++ b/packages/nodes/src/ridge-vent/preview.tsx @@ -9,7 +9,7 @@ import type { RidgeVentNode } from './schema' const RidgeVentPreview = ({ node, invalid }: { node: RidgeVentNode; invalid?: boolean }) => { const geometry = useMemo( () => buildRidgeVentGeometry(node), - [node.length, node.width, node.height, node.style, node.endCaps, node], + [node.length, node.width, node.height, node.style, node.endCaps], ) const material = useMemo( diff --git a/packages/nodes/src/ridge-vent/renderer.tsx b/packages/nodes/src/ridge-vent/renderer.tsx index 0c986892f..738865959 100644 --- a/packages/nodes/src/ridge-vent/renderer.tsx +++ b/packages/nodes/src/ridge-vent/renderer.tsx @@ -90,7 +90,7 @@ const RidgeVentRenderer = ({ node: storeNode }: { node: RidgeVentNode }) => { const geometry = useMemo( () => buildRidgeVentGeometry(node), - [node.length, node.width, node.height, node.style, node.endCaps, node], + [node.length, node.width, node.height, node.style, node.endCaps], ) useEffect(() => () => geometry.dispose(), [geometry]) diff --git a/packages/nodes/src/roof-segment/renderer.tsx b/packages/nodes/src/roof-segment/renderer.tsx index b3e52ff36..8c1b50492 100644 --- a/packages/nodes/src/roof-segment/renderer.tsx +++ b/packages/nodes/src/roof-segment/renderer.tsx @@ -100,7 +100,6 @@ export const RoofSegmentRenderer = ({ node }: { node: RoofSegmentNode }) => { textures, colorPreset, sceneTheme, - node, ]) const material = debugColors diff --git a/packages/nodes/src/skylight/renderer.tsx b/packages/nodes/src/skylight/renderer.tsx index 77500038d..4111cd779 100644 --- a/packages/nodes/src/skylight/renderer.tsx +++ b/packages/nodes/src/skylight/renderer.tsx @@ -655,7 +655,7 @@ const SkylightRenderer = ({ node: storeNode }: { node: SkylightNode }) => { const surfaceFrame = useMemo(() => { if (!segment) return { point: new THREE.Vector3(), normal: new THREE.Vector3(0, 1, 0) } return getRoofOuterSurfaceFrameAtPoint(segment, node.position[0] ?? 0, node.position[2] ?? 0) - }, [segment, node.position[0], node.position[2]]) + }, [segment, node.position[0], node.position[2], node.rotation, liveOverrides, storeNode.id]) const surfaceQuat = useMemo( () => surfaceQuatFromNormal(surfaceFrame.normal, new THREE.Quaternion()), diff --git a/packages/nodes/src/solar-panel/preview.tsx b/packages/nodes/src/solar-panel/preview.tsx index 2ecfb7992..15b705a8f 100644 --- a/packages/nodes/src/solar-panel/preview.tsx +++ b/packages/nodes/src/solar-panel/preview.tsx @@ -41,7 +41,6 @@ const SolarPanelPreview = ({ node, invalid }: { node: SolarPanelNode; invalid?: node.frameThickness, node.frameDepth, node.standoffHeight, - node, ], ) diff --git a/packages/nodes/src/solar-panel/renderer.tsx b/packages/nodes/src/solar-panel/renderer.tsx index b61249adc..663a5608f 100644 --- a/packages/nodes/src/solar-panel/renderer.tsx +++ b/packages/nodes/src/solar-panel/renderer.tsx @@ -110,7 +110,6 @@ const SolarPanelRenderer = ({ node: storeNode }: { node: SolarPanelNode }) => { node.frameThickness, node.frameDepth, node.standoffHeight, - node, ], ) @@ -148,7 +147,7 @@ const SolarPanelRenderer = ({ node: storeNode }: { node: SolarPanelNode }) => { node.position[0] ?? 0, node.position[2] ?? 0, ) - }, [node.position[0], node.position[2], effectiveSegment]) + }, [segment, segmentOverrides, node.position[0], node.position[2]]) const surfaceQuat = useMemo( () => surfaceQuatFromNormal(surfaceFrame.normal, new THREE.Quaternion()), diff --git a/packages/nodes/src/turbine-vent/preview.tsx b/packages/nodes/src/turbine-vent/preview.tsx index 1a22dabde..4ebc4bee4 100644 --- a/packages/nodes/src/turbine-vent/preview.tsx +++ b/packages/nodes/src/turbine-vent/preview.tsx @@ -16,15 +16,7 @@ import type { TurbineVentNode } from './schema' const TurbineVentPreview = ({ node, invalid }: { node: TurbineVentNode; invalid?: boolean }) => { const geometry = useMemo( () => buildTurbineVentGeometry(node), - [ - node.style, - node.diameter, - node.height, - node.neckHeight, - node.vaneCount, - node.baseOverhang, - node, - ], + [node.style, node.diameter, node.height, node.neckHeight, node.vaneCount, node.baseOverhang], ) const material = useMemo( diff --git a/packages/nodes/src/turbine-vent/renderer.tsx b/packages/nodes/src/turbine-vent/renderer.tsx index db483c8ca..2e7685440 100644 --- a/packages/nodes/src/turbine-vent/renderer.tsx +++ b/packages/nodes/src/turbine-vent/renderer.tsx @@ -67,11 +67,11 @@ const TurbineVentRenderer = ({ node: storeNode }: { node: TurbineVentNode }) => const baseGeometry = useMemo( () => buildTurbineVentBase(node), - [node.diameter, node.height, node.neckHeight, node.baseOverhang, node], + [node.diameter, node.height, node.neckHeight, node.baseOverhang], ) const headGeometry = useMemo( () => buildTurbineVentHead(node), - [node.style, node.diameter, node.height, node.neckHeight, node.vaneCount, node], + [node.style, node.diameter, node.height, node.neckHeight, node.vaneCount], ) useEffect(() => () => baseGeometry.dispose(), [baseGeometry]) useEffect(() => () => headGeometry.dispose(), [headGeometry]) diff --git a/packages/nodes/src/window/preview.tsx b/packages/nodes/src/window/preview.tsx index a7d85ddb2..e9291d447 100644 --- a/packages/nodes/src/window/preview.tsx +++ b/packages/nodes/src/window/preview.tsx @@ -30,7 +30,6 @@ const WindowPreview = ({ node, invalid }: { node: WindowNode; invalid?: boolean node.sill, node.sillDepth, node.sillThickness, - node, ]) // Ghost treatment (clone + tint + raycast-off) re-applies if `invalid` From 05129d67ccc4ca34f3237e9f4cf2b305895c6b7f Mon Sep 17 00:00:00 2001 From: sudhir Date: Tue, 16 Jun 2026 23:54:24 +0530 Subject: [PATCH 56/59] chore: restore auto-generated next-env.d.ts to branch baseline This file is Next.js typegen output ("should not be edited") and was inadvertently swept into the previous commit by `git add -A` after a local `next typegen` run rewrote its route-types import path. Restore the branch's committed version so the lint cleanup doesn't carry an unrelated, environment-specific change. Co-Authored-By: Claude Opus 4.8 --- apps/ifc-converter/next-env.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/ifc-converter/next-env.d.ts b/apps/ifc-converter/next-env.d.ts index 9edff1c7c..c4b7818fb 100644 --- a/apps/ifc-converter/next-env.d.ts +++ b/apps/ifc-converter/next-env.d.ts @@ -1,6 +1,6 @@ /// /// -import "./.next/types/routes.d.ts"; +import "./.next/dev/types/routes.d.ts"; // NOTE: This file should not be edited // see https://nextjs.org/docs/app/api-reference/config/typescript for more information. From 463dee43bc6b2c1a599ffba311d43b98bf2b2128 Mon Sep 17 00:00:00 2001 From: sudhir Date: Wed, 17 Jun 2026 00:05:03 +0530 Subject: [PATCH 57/59] fix(lint): clear the 7 biome warnings (dead suppressions, optional chain) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit bun run check already passed (0 errors); these were warn-level: - Remove 5 dead biome-ignore comments — noConsole (csg-geometry, 3×) and noArrayIndexKey (window-assembly, 2×) are both disabled in biome.jsonc, so the suppressions had no effect. The console calls / index keys are unchanged (the rules are off); only the dead comments are gone. - Relocate the useExhaustiveDependencies suppression in panel-position-section from inside the useMemo body (where it covered nothing) to directly above the useMemo call, so it actually suppresses the diagnostic. Preserves the intentional `roofChildrenKey` stable-signature dep array — no behavior change. - panel.tsx: `!(node && node.roofSegmentId)` → `!node?.roofSegmentId` (useOptionalChain), equivalence-preserving. bun run check now reports 0 errors and 0 warnings. The remaining 92 are info-level useExhaustiveDependencies hints (intentional parametric narrow-rebuild deps); left untouched — broadening them reintroduces the CSG-rebuild churn reverted earlier. Co-Authored-By: Claude Opus 4.8 --- packages/nodes/src/dormer/csg-geometry.ts | 3 --- packages/nodes/src/dormer/panel-position-section.tsx | 2 +- packages/nodes/src/dormer/panel.tsx | 2 +- packages/nodes/src/dormer/window-assembly.tsx | 2 -- 4 files changed, 2 insertions(+), 7 deletions(-) diff --git a/packages/nodes/src/dormer/csg-geometry.ts b/packages/nodes/src/dormer/csg-geometry.ts index a392d67a6..2f7dd7c02 100644 --- a/packages/nodes/src/dormer/csg-geometry.ts +++ b/packages/nodes/src/dormer/csg-geometry.ts @@ -325,7 +325,6 @@ export function generateDormerGeometry( const dormerBrushes = getRoofSegmentBrushes(virtualSegment) if (!dormerBrushes) { - // biome-ignore lint/suspicious/noConsole: keep diagnostic — fallback path. console.warn('[dormer] getRoofSegmentBrushes returned null; using fallback silhouette.') return buildDormerFallbackGeometry(dormer) } @@ -472,7 +471,6 @@ export function generateDormerGeometry( remapRoofShellFaces(resultGeo, virtualSegment) splitDormerGableMaterial(resultGeo, dormer.height, DORMER_GABLE_MATERIAL_INDEX) } catch (e) { - // biome-ignore lint/suspicious/noConsole: dormer CSG can throw; keep diagnostic. console.error('[dormer] CSG failed, falling back to silhouette:', e) if (dormerSolid) { try { @@ -492,7 +490,6 @@ export function generateDormerGeometry( // dormer is at least visible. const triCount = resultGeo.getIndex()?.count ?? resultGeo.getAttribute('position')?.count ?? 0 if (triCount === 0) { - // biome-ignore lint/suspicious/noConsole: keep diagnostic — empty CSG. console.warn('[dormer] CSG produced empty geometry; using fallback silhouette.') return buildDormerFallbackGeometry(dormer) } diff --git a/packages/nodes/src/dormer/panel-position-section.tsx b/packages/nodes/src/dormer/panel-position-section.tsx index c36e06291..4833b75cf 100644 --- a/packages/nodes/src/dormer/panel-position-section.tsx +++ b/packages/nodes/src/dormer/panel-position-section.tsx @@ -41,6 +41,7 @@ export function DormerPositionSection({ const segmentId = segment?.id const roofChildrenKey = (roof?.children ?? []).join(',') + // biome-ignore lint/correctness/useExhaustiveDependencies: roofChildrenKey is the stable signature of `roof.children`; intentionally omitting `roof` (object identity) in favor of the joined ids. const worldXform = useMemo(() => { const dormerObj = sceneRegistry.nodes.get(selectedId) let worldX = 0 @@ -79,7 +80,6 @@ export function DormerPositionSection({ if (Number.isFinite(lo_x)) bounds = { minX: lo_x, maxX: hi_x, minZ: lo_z, maxZ: hi_z } } return { worldX, worldZ, worldRotation, bounds } - // biome-ignore lint/correctness/useExhaustiveDependencies: roofChildrenKey is the stable signature of `roof.children`; intentionally omitting `roof` (object identity) in favor of the joined ids. }, [selectedId, px, py, pz, nodeRotation, segmentId, roofChildrenKey]) const worldX_now = worldXform.worldX diff --git a/packages/nodes/src/dormer/panel.tsx b/packages/nodes/src/dormer/panel.tsx index be6d1676f..7eff4733b 100644 --- a/packages/nodes/src/dormer/panel.tsx +++ b/packages/nodes/src/dormer/panel.tsx @@ -107,7 +107,7 @@ export default function DormerPanel() { }, [node, selectedId, setMovingNode, setSelection]) const handleDuplicate = useCallback(() => { - if (!(node && node.roofSegmentId)) return + if (!node?.roofSegmentId) return triggerSFX('sfx:item-pick') // Deep clone and strip the id so the move tool's onClick branch // (`isNew || !node.id`) takes the "create fresh" path. Setting diff --git a/packages/nodes/src/dormer/window-assembly.tsx b/packages/nodes/src/dormer/window-assembly.tsx index 4c7734cbc..b0344d2cc 100644 --- a/packages/nodes/src/dormer/window-assembly.tsx +++ b/packages/nodes/src/dormer/window-assembly.tsx @@ -142,7 +142,6 @@ const DormerWindowAssembly = ({ {winGeo.glassPanes.map((pane, i) => ( Date: Wed, 17 Jun 2026 00:16:39 +0530 Subject: [PATCH 58/59] fix(nodes,editor): two stale-closure bugs surfaced by dep-array audit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit An exhaustive audit of the useExhaustiveDependencies info-level hints (28 files) confirmed two were genuine, user-visible stale-closure bugs (the other ~90 are the intentional narrow-rebuild pattern, left as-is). 1. chimney/renderer.tsx — `segmentBrushes` memoised on 9 hand-listed segment fields, omitting `gambrelLowerWidthRatio` / `mansardSteepWidthRatio` / `dutchHipWidthRatio`, which `getRoofSegmentBrushes` reads to shape the trim brushes. Editing one of those ratios re-identifies `segment` (so `geo`/`trimmedBody` re-CSG) but NOT the brushes — the chimney then trims against the old roof outline. Depend on `[segment]` directly, matching the sibling `geo` memo whose comment already argues whole-object deps avoid exactly this forgotten-field class of bug. `segment` is a useScene selector ref, stable except when the segment's own data changes, so a chimney slider drag still hits the cache. 2. floorplan-panel.tsx — `handlePointerMove` calls `showOpeningGhost` (whose door-swing-arc vs window-panes glyph is bound to `isDoorBuildActive`) but omitted it from deps. A door→window tool switch changes none of the handler's other listed deps, so it kept the stale closure and floated a door symbol while the window tool was armed. Add `showOpeningGhost` to the dep array. Verified: bun run check exits 0 (0 errors, 0 warnings; 88 intentional infos remain), all 9 packages typecheck, tests unchanged (1228 pass). Co-Authored-By: Claude Opus 4.8 --- .../src/components/editor/floorplan-panel.tsx | 6 ++++ packages/nodes/src/chimney/renderer.tsx | 28 +++++++------------ 2 files changed, 16 insertions(+), 18 deletions(-) diff --git a/packages/editor/src/components/editor/floorplan-panel.tsx b/packages/editor/src/components/editor/floorplan-panel.tsx index 1bb7229cc..a285152b3 100644 --- a/packages/editor/src/components/editor/floorplan-panel.tsx +++ b/packages/editor/src/components/editor/floorplan-panel.tsx @@ -8814,6 +8814,12 @@ export function FloorplanPanel({ isFloorplanGridInteractionActive, isMarqueeSelectionToolActive, isOpeningPlacementActive, + // The off-wall opening ghost is published through this memoised + // callback, whose glyph (door swing-arc vs window panes) is bound to + // `isDoorBuildActive`. It must be a dependency or a door→window tool + // switch (which changes none of the other listed deps) would keep the + // stale closure and float a door symbol while the window tool is armed. + showOpeningGhost, isPolygonBuildActive, isRoofBuildActive, isSlabBuildActive, diff --git a/packages/nodes/src/chimney/renderer.tsx b/packages/nodes/src/chimney/renderer.tsx index 16aaa2f65..a52d46d8c 100644 --- a/packages/nodes/src/chimney/renderer.tsx +++ b/packages/nodes/src/chimney/renderer.tsx @@ -77,24 +77,16 @@ const ChimneyRenderer = ({ node: storeNode }: { node: ChimneyNode }) => { }, [node, segment]) // Segment brushes for the body trim. Building these is non-trivial - // (4 CSG-ready Brush instances per segment), so memoise by the shape - // fields that drive their geometry. A chimney slider drag changes - // `node.*` but not these, so the cached brushes survive the drag — - // previously each frame rebuilt all four. - const segmentBrushes = useMemo( - () => (segment ? getRoofSegmentBrushes(segment) : null), - [ - segment?.roofType, - segment?.width, - segment?.depth, - segment?.wallHeight, - segment?.pitch, - segment?.wallThickness, - segment?.deckThickness, - segment?.overhang, - segment?.shingleThickness, - ], - ) + // (4 CSG-ready Brush instances per segment). `segment` comes from a + // `useScene` selector, so it only re-identifies when the segment's own + // data changes — depend on it directly (as the `geo` memo above does) + // and the brushes rebuild exactly when the host roof reshapes, incl. + // the gambrel / mansard / dutch-hip width-ratio fields that + // `getRoofSegmentBrushes` reads. A chimney slider drag changes `node`, + // not `segment`, so the cache still survives the drag. Enumerating + // individual fields here previously omitted those ratios and left the + // trim CSG-ing against a stale roof outline. + const segmentBrushes = useMemo(() => (segment ? getRoofSegmentBrushes(segment) : null), [segment]) useEffect( () => () => { if (segmentBrushes) { From 1ab570ed01609791eddd0e977e4b922437dac399 Mon Sep 17 00:00:00 2001 From: sudhir Date: Wed, 17 Jun 2026 00:35:45 +0530 Subject: [PATCH 59/59] fix(lint): clear the 88 useExhaustiveDependencies infos MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Most are the intentional tight-dep pattern in packages/nodes (geometry/ material memos capture the whole node but list only shape fields, so they don't rebuild on name/visible flips) — suppressed with a reason rather than widening the deps, plus a few intentional re-run triggers (follow, levelId, mount-only effects). Two were real and fixed: - floorplan-panel handlePointerMove: depended on isOpeningPlacementActive (= isOpeningBuildActive || isOpeningMoveActive) while the body branches on the operands individually, so a build->move transition kept a stale closure. Now lists both individual flags. - floorplan-panel showOpeningGhost: dropped three stable module-level schema imports from the dep array. Also converts one string concat to a template literal (useTemplate). Co-Authored-By: Claude Opus 4.8 --- apps/ifc-converter/components/IfcConverter.tsx | 4 +++- .../src/components/editor/floorplan-panel.tsx | 14 ++++---------- packages/nodes/src/box-vent/preview.tsx | 1 + packages/nodes/src/box-vent/renderer.tsx | 1 + packages/nodes/src/chimney/preview.tsx | 1 + packages/nodes/src/cupola/preview.tsx | 1 + packages/nodes/src/cupola/renderer.tsx | 1 + packages/nodes/src/door/preview.tsx | 1 + packages/nodes/src/dormer/preview.tsx | 1 + packages/nodes/src/dormer/renderer.tsx | 2 ++ packages/nodes/src/dormer/window-assembly.tsx | 3 +++ packages/nodes/src/downspout/preview.tsx | 1 + packages/nodes/src/downspout/renderer.tsx | 2 ++ packages/nodes/src/eyebrow-vent/preview.tsx | 1 + packages/nodes/src/eyebrow-vent/renderer.tsx | 1 + packages/nodes/src/gutter/preview.tsx | 1 + packages/nodes/src/gutter/renderer.tsx | 2 ++ packages/nodes/src/liquid-line/tool.tsx | 1 + packages/nodes/src/ridge-vent/preview.tsx | 1 + packages/nodes/src/ridge-vent/renderer.tsx | 1 + packages/nodes/src/roof-segment/renderer.tsx | 1 + packages/nodes/src/skylight/renderer.tsx | 1 + packages/nodes/src/solar-panel/preview.tsx | 1 + packages/nodes/src/solar-panel/renderer.tsx | 2 ++ packages/nodes/src/turbine-vent/preview.tsx | 1 + packages/nodes/src/turbine-vent/renderer.tsx | 2 ++ packages/nodes/src/window/preview.tsx | 1 + 27 files changed, 39 insertions(+), 11 deletions(-) diff --git a/apps/ifc-converter/components/IfcConverter.tsx b/apps/ifc-converter/components/IfcConverter.tsx index 6e9c2f302..829a36d5d 100644 --- a/apps/ifc-converter/components/IfcConverter.tsx +++ b/apps/ifc-converter/components/IfcConverter.tsx @@ -115,6 +115,7 @@ export default function IfcConverter() { return results }, [pascalData, searchQuery]) + // biome-ignore lint/correctness/useExhaustiveDependencies: runs once on mount to load the initial file from the URL. useEffect(() => { const params = new URLSearchParams(window.location.search) const requested = params.get('file') @@ -201,6 +202,7 @@ export default function IfcConverter() { } } + // biome-ignore lint/correctness/useExhaustiveDependencies: stable drop handler; handleFile only calls setState setters, so a mount-time capture stays correct. const handleDrop = useCallback((e: React.DragEvent) => { e.preventDefault() setIsDragging(false) @@ -234,7 +236,7 @@ export default function IfcConverter() { const url = URL.createObjectURL(blob) const a = document.createElement('a') a.href = url - a.download = fileName.replace('.ifc', '') + '_pascal.json' + a.download = `${fileName.replace('.ifc', '')}_pascal.json` a.click() URL.revokeObjectURL(url) } diff --git a/packages/editor/src/components/editor/floorplan-panel.tsx b/packages/editor/src/components/editor/floorplan-panel.tsx index a285152b3..7a7587495 100644 --- a/packages/editor/src/components/editor/floorplan-panel.tsx +++ b/packages/editor/src/components/editor/floorplan-panel.tsx @@ -5551,15 +5551,7 @@ export function FloorplanPanel({ } as AnyNode usePlacementPreview.getState().set(ghost, wall) }, - [ - DoorNodeSchema, - WallNodeSchema, - WindowNodeSchema, - floorplanOpeningLocalY, - isDoorBuildActive, - movingNode, - movingOpeningType, - ], + [floorplanOpeningLocalY, isDoorBuildActive, movingNode, movingOpeningType], ) // Drop the floating opening ghost whenever opening placement ends (commit, // tool change, mode switch, cancel) or the active level changes, so a stale @@ -5567,6 +5559,7 @@ export function FloorplanPanel({ useEffect(() => { if (!isOpeningPlacementActive) usePlacementPreview.getState().clear() }, [isOpeningPlacementActive]) + // biome-ignore lint/correctness/useExhaustiveDependencies: `levelId` is an intentional re-run trigger; the effect drops the placement ghost when the active level changes. useEffect(() => { usePlacementPreview.getState().clear() }, [levelId]) @@ -8813,7 +8806,8 @@ export function FloorplanPanel({ isFenceBuildActive, isFloorplanGridInteractionActive, isMarqueeSelectionToolActive, - isOpeningPlacementActive, + isOpeningBuildActive, + isOpeningMoveActive, // The off-wall opening ghost is published through this memoised // callback, whose glyph (door swing-arc vs window panes) is bound to // `isDoorBuildActive`. It must be a dependency or a door→window tool diff --git a/packages/nodes/src/box-vent/preview.tsx b/packages/nodes/src/box-vent/preview.tsx index 55b4b7638..566e0c5ea 100644 --- a/packages/nodes/src/box-vent/preview.tsx +++ b/packages/nodes/src/box-vent/preview.tsx @@ -17,6 +17,7 @@ import type { BoxVentNode } from './schema' * the cursor ray and starve the placement tool of `roof:move` events. */ const BoxVentPreview = ({ node, invalid }: { node: BoxVentNode; invalid?: boolean }) => { + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildBoxVentGeometry(node), [node.width, node.depth, node.height, node.hoodOverhang, node.style], diff --git a/packages/nodes/src/box-vent/renderer.tsx b/packages/nodes/src/box-vent/renderer.tsx index 98be50e59..26f01e846 100644 --- a/packages/nodes/src/box-vent/renderer.tsx +++ b/packages/nodes/src/box-vent/renderer.tsx @@ -75,6 +75,7 @@ const BoxVentRenderer = ({ node: storeNode }: { node: BoxVentNode }) => { // every parametric field, including the per-style ones. Listing them // explicitly keeps the dep array tight (vs. `[node]` which would // also fire on `name` / `visible` flips). + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildBoxVentGeometry(node), [ diff --git a/packages/nodes/src/chimney/preview.tsx b/packages/nodes/src/chimney/preview.tsx index 472ca506c..e50296c05 100644 --- a/packages/nodes/src/chimney/preview.tsx +++ b/packages/nodes/src/chimney/preview.tsx @@ -48,6 +48,7 @@ const ChimneyPreview = ({ const material = invalid ? invalidGhostMaterial : ghostMaterial const effectiveSegment = segment ?? RoofSegmentSchema.parse({}) + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geo = useMemo( () => buildChimneyGeometry(node, effectiveSegment), [ diff --git a/packages/nodes/src/cupola/preview.tsx b/packages/nodes/src/cupola/preview.tsx index 5fd1fd7fd..579844241 100644 --- a/packages/nodes/src/cupola/preview.tsx +++ b/packages/nodes/src/cupola/preview.tsx @@ -13,6 +13,7 @@ import type { CupolaNode } from './schema' * so the preview doesn't intercept the cursor ray feeding the tool. */ const CupolaPreview = ({ node, invalid }: { node: CupolaNode; invalid?: boolean }) => { + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildCupolaGeometry(node), [node.width, node.depth, node.height, node.roofStyle, node.finial], diff --git a/packages/nodes/src/cupola/renderer.tsx b/packages/nodes/src/cupola/renderer.tsx index 2352ff5b4..357c69569 100644 --- a/packages/nodes/src/cupola/renderer.tsx +++ b/packages/nodes/src/cupola/renderer.tsx @@ -53,6 +53,7 @@ const CupolaRenderer = ({ node: storeNode }: { node: CupolaNode }) => { : undefined, ) + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildCupolaGeometry(node), [node.width, node.depth, node.height, node.roofStyle, node.finial], diff --git a/packages/nodes/src/door/preview.tsx b/packages/nodes/src/door/preview.tsx index 0bc0892d7..3457305ec 100644 --- a/packages/nodes/src/door/preview.tsx +++ b/packages/nodes/src/door/preview.tsx @@ -17,6 +17,7 @@ import type { DoorNode } from './schema' * material on SCENE_LAYER would poison the WebGPU MRT pass (project gotcha). */ const DoorPreview = ({ node, invalid }: { node: DoorNode; invalid?: boolean }) => { + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const mesh = useMemo(() => { const m = buildDoorPreviewMesh(node) m.layers.set(EDITOR_LAYER) diff --git a/packages/nodes/src/dormer/preview.tsx b/packages/nodes/src/dormer/preview.tsx index 2aa2554c7..17932cd7e 100644 --- a/packages/nodes/src/dormer/preview.tsx +++ b/packages/nodes/src/dormer/preview.tsx @@ -26,6 +26,7 @@ const invalidGhostMaterial = new THREE.MeshStandardMaterial({ const DormerPreview = ({ node, invalid }: { node: DormerNode; invalid?: boolean }) => { const material = invalid ? invalidGhostMaterial : ghostMaterial + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geo = useMemo( () => buildDormerGhostGeometry(node), [node.width, node.depth, node.height, node.roofHeight, node.roofType, node.wallSkirtHeight], diff --git a/packages/nodes/src/dormer/renderer.tsx b/packages/nodes/src/dormer/renderer.tsx index 36cf6bc23..360215deb 100644 --- a/packages/nodes/src/dormer/renderer.tsx +++ b/packages/nodes/src/dormer/renderer.tsx @@ -59,6 +59,7 @@ const DormerRenderer = ({ node: storeNode }: { node: DormerNode }) => { // shingle, 4=Gable wall. Walls take the 'wall' role, the deck side and // shingle take 'roof'. When textures are off, every slot snaps to its // role colour regardless of explicit paint (the render-modes invariant). + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const material = useMemo(() => { const wallRole = () => createSurfaceRoleMaterial('wall', colorPreset, undefined, sceneTheme) const roofRole = () => createSurfaceRoleMaterial('roof', colorPreset, undefined, sceneTheme) @@ -111,6 +112,7 @@ const DormerRenderer = ({ node: storeNode }: { node: DormerNode }) => { [colorPreset, sceneTheme], ) + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo(() => { if (!segment) return null if (isLiveDrag) return buildDormerFallbackGeometry(node) diff --git a/packages/nodes/src/dormer/window-assembly.tsx b/packages/nodes/src/dormer/window-assembly.tsx index b0344d2cc..10060e1d7 100644 --- a/packages/nodes/src/dormer/window-assembly.tsx +++ b/packages/nodes/src/dormer/window-assembly.tsx @@ -28,6 +28,7 @@ const DormerWindowAssembly = ({ frameMaterial: THREE.Material glassMaterial: THREE.Material }) => { + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const skirtWin = useMemo( () => getDormerSkirtWindowDims(node), [ @@ -45,6 +46,7 @@ const DormerWindowAssembly = ({ const winShape: DormerWindowShape = node.windowShape const resolvedRadii: [number, number, number, number] = [...node.windowCornerRadii] + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const winGeo = useMemo( () => buildDormerWindowGeometries( @@ -101,6 +103,7 @@ const DormerWindowAssembly = ({ ) useEffect(() => () => sillGeo?.dispose(), [sillGeo]) + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const exposed = useMemo( () => getDormerExposedFaces(node, segment), [ diff --git a/packages/nodes/src/downspout/preview.tsx b/packages/nodes/src/downspout/preview.tsx index 4282f9e93..28efe27c8 100644 --- a/packages/nodes/src/downspout/preview.tsx +++ b/packages/nodes/src/downspout/preview.tsx @@ -26,6 +26,7 @@ const DownspoutPreview = ({ routing?: DownspoutRouting | null invalid?: boolean }) => { + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildDownspoutGeometry(node, routing), [ diff --git a/packages/nodes/src/downspout/renderer.tsx b/packages/nodes/src/downspout/renderer.tsx index cc0cb6e63..8f071ddac 100644 --- a/packages/nodes/src/downspout/renderer.tsx +++ b/packages/nodes/src/downspout/renderer.tsx @@ -101,6 +101,7 @@ const DownspoutRenderer = ({ node: storeNode }: { node: DownspoutNode }) => { // that actually move the jog or the collar bore, so the pipe geometry // only rebuilds when one of those changes (not on every override-merge // render). Resolves to null when the gutter has no outlet. + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const routing = useMemo( () => effectiveGutter && effectiveSegment @@ -117,6 +118,7 @@ const DownspoutRenderer = ({ node: storeNode }: { node: DownspoutNode }) => { ], ) + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildDownspoutGeometry(node, routing), [ diff --git a/packages/nodes/src/eyebrow-vent/preview.tsx b/packages/nodes/src/eyebrow-vent/preview.tsx index 3c6589cf1..d8f8008b4 100644 --- a/packages/nodes/src/eyebrow-vent/preview.tsx +++ b/packages/nodes/src/eyebrow-vent/preview.tsx @@ -13,6 +13,7 @@ import type { EyebrowVentNode } from './schema' * the preview doesn't intercept the cursor ray feeding the tool. */ const EyebrowVentPreview = ({ node, invalid }: { node: EyebrowVentNode; invalid?: boolean }) => { + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildEyebrowVentGeometry(node), [node.width, node.depth, node.height, node.style, node.louverCount, node.backRatio], diff --git a/packages/nodes/src/eyebrow-vent/renderer.tsx b/packages/nodes/src/eyebrow-vent/renderer.tsx index dfd41f483..eb9bf0933 100644 --- a/packages/nodes/src/eyebrow-vent/renderer.tsx +++ b/packages/nodes/src/eyebrow-vent/renderer.tsx @@ -55,6 +55,7 @@ const EyebrowVentRenderer = ({ node: storeNode }: { node: EyebrowVentNode }) => : undefined, ) + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildEyebrowVentGeometry(node), [node.width, node.depth, node.height, node.style, node.louverCount, node.backRatio], diff --git a/packages/nodes/src/gutter/preview.tsx b/packages/nodes/src/gutter/preview.tsx index 40ddfde03..5c03e204b 100644 --- a/packages/nodes/src/gutter/preview.tsx +++ b/packages/nodes/src/gutter/preview.tsx @@ -22,6 +22,7 @@ import type { GutterNode } from './schema' * placed gutter. */ const GutterPreview = ({ node, invalid }: { node: GutterNode; invalid?: boolean }) => { + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildGutterGeometry(node), [ diff --git a/packages/nodes/src/gutter/renderer.tsx b/packages/nodes/src/gutter/renderer.tsx index 76827e528..5a3862d66 100644 --- a/packages/nodes/src/gutter/renderer.tsx +++ b/packages/nodes/src/gutter/renderer.tsx @@ -117,6 +117,7 @@ const GutterRenderer = ({ node: storeNode }: { node: GutterNode }) => { // the FULL host segment (the alignment needs wallHeight / overhang / // pitch / roofType to derive each eave Y), which is a superset of what // the mitre detector reads — so one list feeds both. + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const { mitres, sharedEaveY } = useMemo(() => { if (!effectiveSegment) return { mitres: NO_MITRES, sharedEaveY: undefined } const segById = new Map() @@ -158,6 +159,7 @@ const GutterRenderer = ({ node: storeNode }: { node: GutterNode }) => { mitreNodes, ]) + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildGutterGeometry(node, mitres), [ diff --git a/packages/nodes/src/liquid-line/tool.tsx b/packages/nodes/src/liquid-line/tool.tsx index f47d3d520..745f1f145 100644 --- a/packages/nodes/src/liquid-line/tool.tsx +++ b/packages/nodes/src/liquid-line/tool.tsx @@ -177,6 +177,7 @@ const LiquidLineTool = () => { const lastClientYRef = useRef(null) // Clear in-flight draft / trace whenever Follow toggles (panel button or F). + // biome-ignore lint/correctness/useExhaustiveDependencies: `follow` is an intentional re-run trigger; the body clears the in-flight draft when it toggles. useEffect(() => { setDraftPoints([]) setTraceGhost(null) diff --git a/packages/nodes/src/ridge-vent/preview.tsx b/packages/nodes/src/ridge-vent/preview.tsx index 3935dcfd2..9fc5bf423 100644 --- a/packages/nodes/src/ridge-vent/preview.tsx +++ b/packages/nodes/src/ridge-vent/preview.tsx @@ -7,6 +7,7 @@ import { buildRidgeVentGeometry } from './geometry' import type { RidgeVentNode } from './schema' const RidgeVentPreview = ({ node, invalid }: { node: RidgeVentNode; invalid?: boolean }) => { + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildRidgeVentGeometry(node), [node.length, node.width, node.height, node.style, node.endCaps], diff --git a/packages/nodes/src/ridge-vent/renderer.tsx b/packages/nodes/src/ridge-vent/renderer.tsx index 738865959..15386ed92 100644 --- a/packages/nodes/src/ridge-vent/renderer.tsx +++ b/packages/nodes/src/ridge-vent/renderer.tsx @@ -88,6 +88,7 @@ const RidgeVentRenderer = ({ node: storeNode }: { node: RidgeVentNode }) => { : segmentStore : undefined + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildRidgeVentGeometry(node), [node.length, node.width, node.height, node.style, node.endCaps], diff --git a/packages/nodes/src/roof-segment/renderer.tsx b/packages/nodes/src/roof-segment/renderer.tsx index 8c1b50492..b584e1dfa 100644 --- a/packages/nodes/src/roof-segment/renderer.tsx +++ b/packages/nodes/src/roof-segment/renderer.tsx @@ -52,6 +52,7 @@ export const RoofSegmentRenderer = ({ node }: { node: RoofSegmentNode }) => { // slot 1 → 'wall' (deck top & shingle eave bands) // slot 2 → 'wall' (interior) // slot 3 → 'top' (shingle / roof surface) + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const customMaterial = useMemo(() => { const resolveSlot = (role: RoofSegmentSurfaceMaterialRole): THREE.Material | null => { const parentSpec = parentNode ? getEffectiveRoofSurfaceMaterial(parentNode, role) : undefined diff --git a/packages/nodes/src/skylight/renderer.tsx b/packages/nodes/src/skylight/renderer.tsx index 4111cd779..f4038470f 100644 --- a/packages/nodes/src/skylight/renderer.tsx +++ b/packages/nodes/src/skylight/renderer.tsx @@ -652,6 +652,7 @@ const SkylightRenderer = ({ node: storeNode }: { node: SkylightNode }) => { node.glassMaterialPreset, ]) + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const surfaceFrame = useMemo(() => { if (!segment) return { point: new THREE.Vector3(), normal: new THREE.Vector3(0, 1, 0) } return getRoofOuterSurfaceFrameAtPoint(segment, node.position[0] ?? 0, node.position[2] ?? 0) diff --git a/packages/nodes/src/solar-panel/preview.tsx b/packages/nodes/src/solar-panel/preview.tsx index 15b705a8f..f5c97ec93 100644 --- a/packages/nodes/src/solar-panel/preview.tsx +++ b/packages/nodes/src/solar-panel/preview.tsx @@ -29,6 +29,7 @@ const invalidGhostMaterial = new THREE.MeshStandardMaterial({ const SolarPanelPreview = ({ node, invalid }: { node: SolarPanelNode; invalid?: boolean }) => { const material = invalid ? invalidGhostMaterial : ghostMaterial + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildSolarPanelGeometry(node), [ diff --git a/packages/nodes/src/solar-panel/renderer.tsx b/packages/nodes/src/solar-panel/renderer.tsx index 663a5608f..997c29b00 100644 --- a/packages/nodes/src/solar-panel/renderer.tsx +++ b/packages/nodes/src/solar-panel/renderer.tsx @@ -98,6 +98,7 @@ const SolarPanelRenderer = ({ node: storeNode }: { node: SolarPanelNode }) => { : segment : undefined + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildSolarPanelGeometry(node), [ @@ -138,6 +139,7 @@ const SolarPanelRenderer = ({ node: storeNode }: { node: SolarPanelNode }) => { // the tilt normal flow from here, so a wall-height or pitch change // re-seats and re-orients the panel automatically. `segmentOverrides` // is in the deps so a live drag re-derives the frame mid-drag. + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const surfaceFrame = useMemo(() => { if (!effectiveSegment) { return { point: new THREE.Vector3(), normal: new THREE.Vector3(0, 1, 0) } diff --git a/packages/nodes/src/turbine-vent/preview.tsx b/packages/nodes/src/turbine-vent/preview.tsx index 4ebc4bee4..3c9b950d7 100644 --- a/packages/nodes/src/turbine-vent/preview.tsx +++ b/packages/nodes/src/turbine-vent/preview.tsx @@ -14,6 +14,7 @@ import type { TurbineVentNode } from './schema' * doesn't intercept the cursor ray feeding the placement tool. */ const TurbineVentPreview = ({ node, invalid }: { node: TurbineVentNode; invalid?: boolean }) => { + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const geometry = useMemo( () => buildTurbineVentGeometry(node), [node.style, node.diameter, node.height, node.neckHeight, node.vaneCount, node.baseOverhang], diff --git a/packages/nodes/src/turbine-vent/renderer.tsx b/packages/nodes/src/turbine-vent/renderer.tsx index 2e7685440..0d1bb494c 100644 --- a/packages/nodes/src/turbine-vent/renderer.tsx +++ b/packages/nodes/src/turbine-vent/renderer.tsx @@ -65,10 +65,12 @@ const TurbineVentRenderer = ({ node: storeNode }: { node: TurbineVentNode }) => : undefined, ) + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const baseGeometry = useMemo( () => buildTurbineVentBase(node), [node.diameter, node.height, node.neckHeight, node.baseOverhang], ) + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const headGeometry = useMemo( () => buildTurbineVentHead(node), [node.style, node.diameter, node.height, node.neckHeight, node.vaneCount], diff --git a/packages/nodes/src/window/preview.tsx b/packages/nodes/src/window/preview.tsx index e9291d447..8d125c596 100644 --- a/packages/nodes/src/window/preview.tsx +++ b/packages/nodes/src/window/preview.tsx @@ -17,6 +17,7 @@ import type { WindowNode } from './schema' * material on SCENE_LAYER would poison the WebGPU MRT pass (project gotcha). */ const WindowPreview = ({ node, invalid }: { node: WindowNode; invalid?: boolean }) => { + // biome-ignore lint/correctness/useExhaustiveDependencies: deps deliberately list the build inputs; depending on the whole object would rebuild on unrelated field changes. const mesh = useMemo(() => { const m = buildWindowPreviewMesh(node) m.layers.set(EDITOR_LAYER)
    {MEP_ITEMS.map((item) => { @@ -332,7 +332,7 @@ export function BuildTab() {