Butterfly valve
Butterfly valve in four styles: concentric rubber-lined wafer (centring ears) or lug body (tapped lugs at every bolt), double-flanged, or metal-seated triple-offset with an offset disc. Notch-plate lever or worm gear with position indicator; the disc turns with open. Wafer and lug lengths from API 609 Category B; flanged lengths typical ISO 5752 series 13. companionFlanges draws the pipe flanges around wafer and lug bodies.
Installation
Copies valves/butterfly-valve.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 { ButterflyValve } from './components/deck-twin/valves/butterfly-valve'
export default function Scene() {
return (
<Canvas shadows camera={{ position: [8, 5, 9], fov: 35 }}>
<Stage>
<ButterflyValve />
</Stage>
<OrbitControls makeDefault />
</Canvas>
)
}
Props
| Prop | Type | Default | Range |
|---|---|---|---|
nps | number (NPS, in) | null | |
rating | 150 | 300 | 600 | 900 | 1500 | 2500 | null | |
style | "wafer" | "lug" | "double-flanged" | "triple-offset" | null | |
operator | "auto" | "lever" | "gear" | null | |
open | number | null | 0 – 1 |
companionFlanges | boolean | null | |
tag | string | null | |
...group | position, rotation, scale… |
P&ID
Bow-tie with a straight bar through the centre at right angles to the line (the disc), often with a dot at its middle. Older legends draw two vertical lines with a diagonal between them.
Bar through the centre = butterfly; circle = ball; filled dot = globe; two close parallel bars = knife gate. Common in seawater, cooling and firewater lines.
npsratingstyleoperatortagTypical suppliers
Bray · Emerson Vanessa. 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/butterfly-valve.json, or copy a ready-made instruction:
Add the Deck Twin "Butterfly valve" component to this project. Run `npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz add butterfly-valve` (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 butterfly-valve` for its props, ranges and ports. Render <ButterflyValve /> 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