Pipe spool

Shop-fabricated straight spool: B36.10 pipe with weld-neck flanged or B16.25 bevelled ends, butt welds, optional aluminium-jacketed insulation with stainless banding and ISO 14726 service identification bands. NPS, schedule, class and length drive the geometry.

ASME B36.10MASME B16.5ASME B16.25ISO 14726
Drag to orbit, scroll to zoom
Parameters
– m

Installation

$npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz add pipe-spool

Copies piping/pipe-spool.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 { PipeSpool } from './components/deck-twin/piping/pipe-spool'

export default function Scene() {
  return (
    <Canvas shadows camera={{ position: [8, 5, 9], fov: 35 }}>
      <Stage>
        <PipeSpool />
      </Stage>
      <OrbitControls makeDefault />
    </Canvas>
  )
}

Props

PropTypeDefaultRange
npsnumber (NPS, in)null
schedule"10" | "20" | "40" | "STD" | "80" | "XS" | "160" | "XXS" | "10S" | "40S" | "80S"null
rating150 | 300 | 600 | 900 | 1500 | 2500null
lengthnumber (m)null0.3 – 12
ends"flanged" | "plain" | "flanged-plain"null
insulatedbooleannull
service"none" | "oil" | "gas" | "multiphase" | "water" | "seawater" | "firewater" | "steam" | "air" | "nitrogen" | "chemical" | "flare" | "drain" | "fuel-gas" | "diesel" | "potable" | "cooling"null
...groupposition, rotation, scale…

P&ID

P&ID symbol for pipe-spool

A solid line labelled with its line number (size-service-number-class-insulation, e.g. 8"-PG-2101-D6A-N); flanged joints appear as short double bars across the line. Insulation is marked by the H / IH suffix or a dashed outline along the line.

ISO 10628-2 / PIP PIC001 (piping)

Process lines are thick solid; utility and minor lines thinner; instrument signal lines are dashed (electrical) or with hash marks (pneumatic). Each line number between two nozzles becomes one spool run.

Line list / piping class (ASME B31.3, B36.10) fields and the props they set
Nominal sizenps
Wall scheduleschedule
Flange rating (from class)rating
End connectionends
Insulationinsulated
Service codeservice

Typical suppliers

Johns Manville (metal jacketing). 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:

$npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz info pipe-spool

Or fetch /r/pipe-spool.json, or copy a ready-made instruction:

Add the Deck Twin "Pipe spool" component to this project. Run `npx -y https://decktwin.com/cli/deck-twin-0.2.2.tgz add pipe-spool` (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 pipe-spool` for its props, ranges and ports. Render <PipeSpool /> 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