Steel column
Structural column of any EN / AISC section (H, I, SHS or CHS): base plate with anchor bolts, washers and nuts on a non-shrink grout bed and optional concrete pedestal, base stiffeners and a welded cap plate. Footprint centre at the origin; the pedestal (or base plate) bottom is on y = 0 and the cap plate top is at y = height, so a steel-beam with topOfSteel = height + its depth rests on it.
Installation
Copies structure/steel-column.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 { SteelColumn } from './components/deck-twin/structure/steel-column'
export default function Scene() {
return (
<Canvas shadows camera={{ position: [8, 5, 9], fov: 35 }}>
<Stage>
<SteelColumn />
</Stage>
<OrbitControls makeDefault />
</Canvas>
)
}
Props
| Prop | Type | Default | Range |
|---|---|---|---|
section | "HEB 200" | "HEB 300" | "HEB 400" | "HEA 300" | "IPE 300" | "W12x65" | "W14x90" | "SHS 200x200x10" | "SHS 300x300x12.5" | "CHS 323.9x12.5" | "CHS 406.4x16" | null | |
height | number (m) | null | 0.5 – 20 |
web | "x" | "z" | null | |
pedestal | number (m) | null | 0 – 1.5 |
plate | number (m) | null | 0.015 – 0.08 |
finish | "painted" | "galvanised" | null | |
...group | position, rotation, scale… |
P&ID
Plan view at a grid intersection: the column section (an H or I shape, a square for SHS, a circle for CHS) on a square base plate with anchor bolt circles, tagged with its section size.
Not on P&IDs. On framing plans columns sit on the dash-dot grid; a beam is drawn as a single line between them with its section written along it.
sectionheightwebpedestalplatefinishTypical 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/steel-column.json, or copy a ready-made instruction:
Add the Deck Twin "Steel column" component to this project. Run `npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz add steel-column` (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 steel-column` for its props, ranges and ports. Render <SteelColumn /> 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