Arch Fence
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 → Fence |
Workbenches |
BIM |
Default shortcut |
None |
Introduced in version |
0.19 |
See also |
None |
Description
The Arch Fence is an object that builds a fence by repeating a single fence post and section along a given path.
Usage
Creating from scratch
- Use a workbench of your choice to create a single fence post and a single section.
- Create the path the fence should follow using the Sketcher Workbench or Draft Workbench.
- Switch back to the BIM Workbench.
- Select the section, post and path in exactly that order.
- Press the
Fence button
Options
For now the tool assumes the following
- The Path is drawn on the XY-Plane
- Section and Post are drawn at the origin so that they stand upright in front view
Properties
Data
- DataPath: The path the fence should follow
- DataPost: A single fence post to repeat
- DataSection: A single section to repeat
- DataNumber Of Posts: The total number of posts used to build the fence. This is calculated automatically.
- DataNumber Of Sections: The total number of sections used to build the fence. This is calculated automatically.
View
- ViewUse Original Colors: When set to
true
the fence will use the colors from the original section and post. Otherwise the ShapeColor of the fence will be used to colorize the fence.
Notes
- Arch Fence was introduced in FC v0.19 by user furti.
- Forum thread discussing Arch Fence functionality
Scripting
The Fence tool can be used in macros and from the Python console by using the following function:
Fence = buildFence(section, post, path)
Example:
import FreeCAD
import Part
import Arch
parts = []
parts.append(Part.makeBox(2000, 50, 30, FreeCAD.Vector(0, 0, 1000 - 30)))
parts.append(Part.makeBox(2000, 50, 30))
parts.append(Part.makeBox(20, 20, 1000 - 60, FreeCAD.Vector(0, 15, 30)))
parts.append(Part.makeBox(20, 20, 1000 - 60, FreeCAD.Vector(1980, 15, 30)))
for i in range(8):
parts.append(Part.makeBox(20, 20, 1000 - 60, FreeCAD.Vector((2000 / 9 * (i + 1)) - 10, 15, 30)))
Part.show(Part.makeCompound(parts), "Fence_section")
fence_section = FreeCAD.ActiveDocument.Fence_section
sketch = FreeCAD.ActiveDocument.addObject("Sketcher::SketchObject", "Path")
sketch.Placement = FreeCAD.Placement(FreeCAD.Vector(0, 0, 0), FreeCAD.Rotation(0, 0, 0, 1))
sketch.addGeometry(Part.LineSegment(FreeCAD.Vector(0, 0, 0), FreeCAD.Vector(20000, 0, 0)), False)
sketch.addGeometry(Part.LineSegment(FreeCAD.Vector(20000, 0, 0), FreeCAD.Vector(20000, 20000, 0)), False)
post = Part.makeBox(100, 100, 1000, FreeCAD.Vector(0, 0, 0))
Part.show(post, "Post")
post = FreeCAD.ActiveDocument.Post
Fence = Arch.buildFence(fence_section, post, sketch)
- 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