Handrail run (ISO 14122-3)
Straight guard-rail run after ISO 14122-3: Ø48.3 mm posts at ≤ 1.5 m on base plates with four anchors, Ø42.4 top rail at 1.1 m, knee rail, 100 mm toe plate, optional end returns towards −Z and a self-closing spring-hinged gate at the +X end. Origin at the centre of the run on the walking surface (y = 0); the run lies along X at z = 0 with the walkway on the −Z side.
Installation
Copies structure/handrail.tsx and the shared lib/ into src/components/deck-twin/. Needs three, @react-three/fiber and @react-three/drei. See installation for the manual route.
Usage
import { Canvas } from '@react-three/fiber'
import { OrbitControls } from '@react-three/drei'
import { Stage } from './components/deck-twin/lib/stage'
import { Handrail } from './components/deck-twin/structure/handrail'
export default function Scene() {
return (
<Canvas shadows camera={{ position: [8, 5, 9], fov: 35 }}>
<Stage>
<Handrail />
</Stage>
<OrbitControls makeDefault />
</Canvas>
)
}
Props
| Prop | Type | Default | Range |
|---|---|---|---|
length | number (m) | null | 0.5 – 30 |
height | number (m) | null | 0.9 – 1.2 |
gate | boolean | null | |
gateWidth | number (m) | null | 0.5 – 1.2 |
returns | number (m) | null | 0 – 1.5 |
toePlate | boolean | null | |
finish | "painted" | "galvanised" | null | |
...group | position, rotation, scale… |
P&ID
Elevation: top rail and knee rail on posts with a toe plate at the bottom; on plans a line just inside the deck or platform edge with small post marks (or crosses), and a gate drawn as a short swing arc.
On plans it looks like a wall line; the post marks and the location at the edge identify it. Not on P&IDs.
lengthheightgategateWidthreturnstoePlatefinishTypical suppliers
Fabricated to project specification. The geometry is generic and sized from public standards. It is not vendor CAD.
For agents
Machine-readable entry with props, ranges, defaults and ports:
Or fetch /r/handrail.json, or copy a ready-made instruction:
Add the Deck Twin "Handrail run (ISO 14122-3)" component to this project. Run `npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz add handrail` (it copies the file and the shared lib into src/components/deck-twin/), then `npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz info handrail` for its props, ranges and ports. Render <Handrail /> inside a React Three Fiber <Canvas shadows>, wrapped in <Stage> from src/components/deck-twin/lib/stage. Set props from my data (metres, NPS in inches, ASME class) and leave the rest at defaults. Install three, @react-three/fiber, @react-three/drei and @types/three if they're missing. Full guide: https://decktwin.com/skill/SKILL.md