Skip to content
PyPath

Trade pack Coming soon

Heating

Heating zones, pipes and heat output: your own tools for heating installations, practised on a simulated greenhouse complex with a boiler, combined heat and power, pipe-rail heating and grow pipes.

Who it is for

Drafters, modellers and engineers who draw or calculate heating installations in Revit, in greenhouse horticulture or elsewhere.

Tools you build

  • Pipe length per system and per zone, as a list or a CSV for Excel
  • Find open ends: pipes that are not connected to anything
  • Check velocity and diameter against your design rule
  • Find a wrong piping system type
  • Flow and heat output per zone at a glance

The final list comes with the lessons.

An example

Which pipes run faster than 1.0 m/s? On the simulated greenhouse complex this script finds exactly the zone where a header pipe was drawn too small.

VelocityCheck.pushbutton/script.py
from Autodesk.Revit.DB import *
from Autodesk.Revit.DB.Plumbing import Pipe

doc = __revit__.ActiveUIDocument.Document
MAX_VELOCITY = 1.0  # m/s, design rule for steel pipes

for pipe in FilteredElementCollector(doc).OfClass(Pipe):
    v = pipe.get_Parameter(
        BuiltInParameter.RBS_PIPE_VELOCITY_PARAM).AsDouble()
    v = UnitUtils.ConvertFromInternalUnits(v, UnitTypeId.MetersPerSecond)
    if v > MAX_VELOCITY:
        zone = pipe.LookupParameter("Groep").AsString()
        dn = pipe.get_Parameter(
            BuiltInParameter.RBS_PIPE_DIAMETER_PARAM).AsValueString()
        print("{}: {:.2f} m/s at diameter {}".format(zone, v, dn))
Output on the simulated model
Afd 2 - Groep 3: 2.09 m/s at diameter 25 mm

"Groep" (zone) is a project parameter of the practice model, which uses Dutch names. Checked against the Revit API 2025 documentation; not yet run in a real Revit.