Arch Pipe
THIS COMMAND IS PART OF THE INTEGRATED BIM WORKBENCH IN V1.0
This page has been updated for that version.
This page has been updated for that version.
|
Menu location |
---|
3D/BIM → Pipe |
Workbenches |
BIM |
Default shortcut |
P I |
Introduced in version |
0.17 |
See also |
None |
Description
The Arch Pipe tool allows to create pipes from scratch, or from selected objects. The selected objects must be Part-based (Draft, Sketch, etc..) and contain one and only one open Wire.
Usage
- Optionally, select a linear Part shape such as a Draft Line, a Draft Wire or an open Sketch.
- Invoke this command using several methods:
- Pressing the
Pipe button on the toolbar.
- Pressing the P then I keyboard shortcut.
- Pressing the 3D/BIM → Pipe entry from the top menu.
- Pressing the
Options
- Pipes share the common properties and behaviours of all Arch Components
Properties
Data
Component
- DataBase (
Link
): The base wire of this pipe, if any.
For the other properties in the group see Arch Component.
Pipe
- DataDiameter (
Length
): The diameter of this pipe, if its DataProfile Type isCircle
. - DataHeight (
Length
): The height of this pipe, if its DataProfile Type isRectangle
. - DataLength (
Length
): The length of this pipe, if not based on a wire. - DataOffset End (
Length
): The offset from the end point of the pipe. Automatically set if an Arch PipeConnector is added at this point to make the pipe fit the connector. See Typical workflow below. - DataOffset Start (
Length
): The offset from the start point of the pipe. Idem. - DataProfile (
Link
): The base profile of this pipe. If not set, the pipe profile is determined by DataProfile Type. - DataProfile Type (
Enumeration
): The profile of this pipe. Only used if DataProfile is not set. The options are:Circle
,Square
orRectangle
. - DataWall Thickness (
Length
): The wall thickness of this pipe. - DataWidth (
Length
): The width of this pipe, if its DataProfile Type isSquare
orRectangle
.
Typical workflow
- Start by placing sanitary/hydraulic appliance items (below is an imported step file). You turn these objects into Arch Equipments by selecting them, and pressing the Arch Equipment button.
- Arch Equipments now have a new SnapPoints property, which is a list of 3D vectors. This allows you to add custom snap points, to which you can snap when the new Draft Special snap button is turned on. Currently that property is only available to Python, though. In the case above I added a new snap point at the exit of the WC appliance. The vectors inside SnapPoints appear on the model as white dots:
FreeCAD.ActiveDocument.Equipment.SnapPoints=[FreeCAD.Vector(0,0,100)]
- With the new "Snap Special" Draft Snap, you can now snap to these custom points:
- Now we can draw our piping using Draft Lines, Draft Wires, or Sketches. The best way, though, is using only Draft Lines:
- There is now a new Draft Slope tool that allows to change the slope of Draft lines, to, for example, 5% (0.05). So we can quickly give our waste lines a correct slope. Only z coordinates are change by this tool, so we only need to snap them back to each other, the top projection will stay unchanged.
- We now only have to select all our lines, and press the Arch Pipe button. Arch Pipe works with any Part-based object that contains one and only one open wire.
- We can now create connections by selecting 2 or 3 coincident tubes, and press the Arch PipeConnector button. If 3 pipes are selected, two of them must be aligned in order to create a tee element:
- Changing the connectors radius doesn't change the length of the underlying base line, only the resulting tube (by changing their OffsetStart or OffsetEnd property). So you can still draw your line layout with only straight lines, without the need to care about curves and radius.
It is also possible to create Arch Pipes without a base line, in this case use its "Length" property to define the length.
Scripting
See also: Arch API and FreeCAD Scripting Basics.
The Pipe tool can be used in macros and from the Python console by using the following function:
pipe = makePipe(baseobj=None, diameter=0, length=0, placement=None, name="Pipe")
- Creates a
pipe
object from the givenbaseobj
anddiameter
.baseobj
is a Draft Line or Draft Wire.- If
baseobj
is omitted, a straight pipe can be created with just thediameter
and thelength
in the Z direction.
- If a
placement
is given, it is used.
import Draft, Arch
p1 = FreeCAD.Vector(1000, 0, 0)
p2 = FreeCAD.Vector(2500, 200, 0)
p3 = FreeCAD.Vector(3100, 1000, 0)
p4 = FreeCAD.Vector(3500, 500, 0)
line = Draft.make_wire([p1, p2, p3, p4])
pipe = Arch.makePipe(line, 200)
FreeCAD.ActiveDocument.recompute()
pipe2 = Arch.makePipe(diameter=120, length=3000)
FreeCAD.ActiveDocument.recompute()
- 2D drafting: Sketch, Line, Polyline, Circle, Arc, Arc by 3 points, Fillet, Ellipse, Polygon, Rectangle, B-spline, Bézier curve, Cubic Bézier curve, Point
- 3D/BIM: Project, Site, Building, Level, Space, Wall, Curtain Wall, Column, Beam, Slab, Door, Window, Pipe, Pipe Connector, Stairs, Roof, Panel, Frame, Fence, Truss, Equipment
- Reinforcement tools: Custom Rebar, Straight Rebar, U-Shape Rebar, L-Shape Rebar, Stirrup, Bent-Shape Rebar, Helical Rebar, Column Reinforcement, Beam Reinforcement, Slab Reinforcement, Footing Reinforcement
- Generic 3D tools: Profile, Box, Shape builder..., Facebinder, Objects library, Component, External reference
- Annotation: Text, Shape from text, Aligned dimension, Horizontal dimension, Vertical dimension, Leader, Label, Axis, Axes System, Grid, Section Plane, Hatch, Page, View, Shape-based view
- Snapping: Snap lock, Snap endpoint, Snap midpoint, Snap center, Snap angle, Snap intersection, Snap perpendicular, Snap extension, Snap parallel, Snap special, Snap near, Snap ortho, Snap grid, Snap working plane, Snap dimensions, Toggle grid, Working Plane Top, Working Plane Front, Working Plane Side
- Modify: Move, Copy, Rotate, Clone, Create simple copy, Make compound, Offset, 2D Offset..., Trimex, Join, Split, Scale, Stretch, Draft to sketch, Upgrade, Downgrade, Add component, Remove component, Array, Path array, Polar array, Point array, Cut with plane, Mirror, Extrude..., Difference, Union, Intersection
- Manage: BIM Setup..., Views manager, Manage project..., Manage doors and windows..., Manage IFC elements..., Manage IFC quantities..., Manage IFC properties..., Manage classification..., Manage layers..., Material, Schedule, Preflight checks..., Annotation styles...
- Utils: Toggle bottom panels, Move to Trash, Working Plane View, Select group, Set slope, Create working plane proxy, Add to construction group, Split Mesh, Mesh to Shape, Select non-manifold meshes, Remove Shape from Arch, Close Holes, Merge Walls, Check, Toggle IFC Brep flag, Toggle subcomponents, Survey, IFC Diff, IFC explorer, Create IFC spreadsheet..., Image plane, Unclone, Rewire, Glue, Reextrude
- Panel tools: Panel, Panel Cut, Panel Sheet, Nest
- Structure tools: Structure, Structural System, Multiple Structures
- IFC tools: IFC Diff..., IFC Expand, Make IFC project, IfcOpenShell update
- Nudge: Nudge Switch, Nudge Up, Nudge Down, Nudge Left, Nudge Right, Nudge Rotate Left, Nudge Rotate Right, Nudge Extend, Nudge Shrink
- Additional: Preferences, Fine tuning, Import Export Preferences, IFC, DAE, OBJ, JSON, 3DS, SHP

- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Assembly, BIM, CAM, Draft, FEM, Inspection, Material, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework
- Hubs: User hub, Power users hub, Developer hub