LPG bullet tank
Horizontal pressurised LPG / propane storage (bullet) on a fixed and a sliding saddle. Hemispherical or 2:1 heads with real nozzle openings, top liquid inlet and vapour balance, bottom liquid outlet and drain, two davit manways, twin API 526 PSVs into a relief header, magnetic-flap level bridle with transmitter, pressure and temperature gauges, top walkway with caged ladder, deluge spray headers with riser, earth bosses and nameplate.
Installation
Copies vessels/bullet-tank.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 { BulletTank } from './components/deck-twin/vessels/bullet-tank'
export default function Scene() {
return (
<Canvas shadows camera={{ position: [8, 5, 9], fov: 35 }}>
<Stage>
<BulletTank />
</Stage>
<OrbitControls makeDefault />
</Canvas>
)
}
Props
| Prop | Type | Default | Range |
|---|---|---|---|
heads | "hemispherical" | "2:1" | null | |
diameter | number (m) | null | 1.2 – 4.5 |
length | number (m) | null | 5 – 40 |
pressure | number (barg) | null | 5 – 30 |
rating | 150 | 300 | 600 | 900 | 1500 | 2500 | null | |
inletNps | number (NPS, in) | null | |
outletNps | number (NPS, in) | null | |
vapourNps | number (NPS, in) | null | |
deluge | boolean | null | |
tag | string | null | |
...group | position, rotation, scale… |
P&ID
Horizontal capsule with hemispherical or 2:1 heads standing on two saddles, liquid inlet and vapour balance on top and liquid outlet at the bottom; a deluge ring or water-spray line is often drawn around it.
A horizontal capsule with no internals or boot in LPG / NGL storage service is a bullet; separators show a weir, boot or mesh pad. Spheres are circles on legs.
headsdiameterlengthpressureratinginletNpsoutletNpsvapourNpsdelugetagTypical suppliers
DNOW · Jianshen. 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/bullet-tank.json, or copy a ready-made instruction:
Add the Deck Twin "LPG bullet tank" component to this project. Run `npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz add bullet-tank` (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 bullet-tank` for its props, ranges and ports. Render <BulletTank /> 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