Arch Roof: Difference between revisions
No edit summary |
No edit summary |
||
Line 35: | Line 35: | ||
{{Caption|View from above a building model showing the roof with certain transparency}} |
{{Caption|View from above a building model showing the roof with certain transparency}} |
||
==Usage== <!--T:17--> |
==Usage (wire base)== <!--T:17--> |
||
<!--T:18--> |
<!--T:18--> |
||
Line 62: | Line 62: | ||
# Select the solid base object. |
# Select the solid base object. |
||
# Press the {{Button|[[Image:Arch_Roof.svg|16px]] [[Arch Roof|Arch Roof]]}} button, or press {{KEY|R}} then {{KEY|F}} keys. |
# Press the {{Button|[[Image:Arch_Roof.svg|16px]] [[Arch Roof|Arch Roof]]}} button, or press {{KEY|R}} then {{KEY|F}} keys. |
||
<BR> |
|||
==Subtracting a roof== |
|||
I. Subtraction of Roof Volume from Wall ({{Version|0.22}}) |
|||
<BR><BR> |
|||
From Version 0.22 onward, for such a custom roof, automatic subtraction volume (subvolume) would be created and it would be the base object itself with a volume above this shape. If you [[Arch_Remove|remove]] this roof from your walls, you will see that walls are subtracted properly. Wall parts above the roof are removed also: |
|||
<BR> |
|||
<BR> |
|||
Roofs have an automatically generated subtraction volume ({{Version|0.22}} for roofs with a solid base). When a roof is [[Arch_Remove|removed]] from the walls of building both the volume of the roof itself as well as the volume above the roof are subtracted from the walls. |
|||
</translate> |
|||
[[File:Arch_Roof_Subtract_Subvolume.png|300px]] |
|||
<translate> |
|||
<BR> |
|||
<BR> |
|||
{{Version|0.22}}: It is possible to override the automatic subtraction volume by setting the {{PropertyData|Subvolume}} property of the roof to a custom solid object. |
|||
II. Subtraction of Custom Volume Shape from Wall ({{Version|0.22}}) |
|||
<BR><BR> |
|||
From Version 0.22 onward, {{PropertyData|Subvolume}} property (similar to Arch Window) is also added to the roof. If the above automatic created custom roof subtraction volume still doesn't suit you, you want a subtraction volume different from the roof shape (a gap between the roof and wall e.g.), a/another custom solid object using various other FreeCAD workbenches ([[Part_Workbench|Part]], [[Sketcher_Workbench|Sketcher]] etc.) could be created. And set the Subvolume property of the roof to the created shape, and remove the roof itself from the walls. |
|||
<BR> |
|||
<BR> |
|||
III. Subtraction of Roof Volume/Custom Volume Shape from Wall ({{VersionMinus|0.21}}) |
|||
<BR><BR> |
|||
<!--T:39--> |
|||
Before 0.22, for such a custom roof the automatic subtraction volume (subvolume) is just the base object itself. If you [[Arch_Remove|remove]] this roof from your walls you will see that walls are not subtracted properly. Wall parts above the roof are not removed: |
|||
</translate> |
|||
[[File:Arch_Roof_Subtract_Default.png|300px]] |
|||
<translate> |
|||
<!--T:40--> |
|||
To fix this, you need to define your own subvolume. This shape can be created by extruding the bottom faces of the roof in the Z direction: |
|||
</translate> |
</translate> |
||
[[File:Arch_Roof_Subvolume_Example.png|300px]] |
[[File:Arch_Roof_Subvolume_Example.png|300px]] |
||
<translate> |
<translate> |
||
{{Caption|Solid-based roof with an indication of the generated subtraction volume}} |
|||
<!--T:41--> |
|||
After that: |
|||
* {{VersionMinus|0.21}}: Remove this shape from the walls with [[Arch_Remove|Arch Remove]]. |
|||
</translate> |
|||
[[File:Arch_Roof_Subtract_Subvolume.png|300px]] |
|||
<translate> |
|||
==Options== <!--T:26--> |
==Options== <!--T:26--> |
Revision as of 11:40, 11 April 2024
Arch Roof |
Menu location |
---|
Arch → Roof |
Workbenches |
Arch |
Default shortcut |
R F |
Introduced in version |
- |
See also |
Arch Structure, Arch Wall |
Description
The Arch Roof tool allows for the creation of a sloped roof from a selected wire. The created roof object is parametric, keeping its relationship with the base object. The principle is that each edge is seen allotting a profile of roof (slope, width, overhang, thickness).
Note: This tool is still in development, and might fail with very complex shapes.
View from above a building model showing the roof with certain transparency
Usage (wire base)
- Create a closed wire with following the counter-clockwise direction and select it.
- Press the Arch Roof button, or press R then F keys
- The default roof object could have a strange shape, it's because the tool is missing some necessary information.
- After creating the default roof, double click on the object in the tree view to access and edit all the properties. Angle must be between 0 and 90.
- Each line corresponds to a roof pane. So you can set the properties you want for each roof pane.
- To help you, you can set
Angle
orRun
to0
and define aRelative Id
, this makes an automatic calculation to find the data relative to theRelative Id
. - It works like this:
- If
Angle = 0
andRun = 0
then profile is identical to the relative profile. - If
Angle = 0
thenAngle
is calculated so that the height is the same one as the relative profile. - If
Run = 0
thenRun
is calculated so that the height is the same one as the relative profile.
- If
- Finally, set an Angle to 90° to make a gable.
- Note: for better comprehension, please see this youtube clip.
Usage (solid base)
If your roof has a complex shape (e.g. contains pitched windows or other non-standard features) you can create a custom solid object using various other FreeCAD workbenches (Part, Sketcher etc.). And then use this solid as the DataBase object of your roof:
- Select the solid base object.
- Press the Arch Roof button, or press R then F keys.
Subtracting a roof
Roofs have an automatically generated subtraction volume (introduced in version 0.22 for roofs with a solid base). When a roof is removed from the walls of building both the volume of the roof itself as well as the volume above the roof are subtracted from the walls.
introduced in version 0.22: It is possible to override the automatic subtraction volume by setting the DataSubvolume property of the roof to a custom solid object.
Solid-based roof with an indication of the generated subtraction volume
Options
- Roofs share the common properties and behaviors of all Arch Components.
Properties
Data
Roof
- DataAngles (
FloatList
): The list of angles of the roof segments. - DataBorder Length (
Length
): The total length of the borders of the roof. - DataFace (
Integer
): The face number of the base object used to build the roof (not used). - DataFlip (
Bool
): Specifies if the direction of the roof should be flipped. - DataHeights (
FloatList
): The list of calculated heights of the roof segments. - DataId Rel (
IntegerList
): The list of IDs of the relative profiles of the roof segments. - DataOverhang (
FloatList
): The list of overhangs of the roof segments. - DataRidge Length (
Length
): The total length of the ridges and hips of the roof. - DataRuns (
FloatList
): The list of horizontal length projections of the roof segments. - DataSubvolume (
Link
): The volume to subtract. If specified it is used instead of the auto-generated subvolume. introduced in version 0.22 - DataThickness (
FloatList
): The list of thicknesses of the roof segments.
Scripting
See also: Arch API and FreeCAD Scripting Basics.
The Roof tool can be used in macros and from the Python console by using the following function:
Roof = makeRoof(baseobj=None, facenr=0, angles=[45.,], run=[], idrel=[0,], thickness=[50.,], overhang=[100.,], name="Roof")
- Creates a
Roof
object from the givenbaseobj
, which can be a closed wire or a solid object.- If
baseobj
is a wire, you can provide lists forangles
,run
,idrel
,thickness
, andoverhang
, for each edge in the wire to define the shape of the roof. - The lists are automatically completed to match the number of edges in the wire.
- If
Example:
import FreeCAD as App
import Arch, Draft
doc = App.newDocument()
rect = Draft.makeRectangle(3000, 4000)
doc.recompute()
roof = Arch.makeRoof(rect, angles=[30.,])
p1 = App.Vector(0, 0, 0)
p2 = App.Vector(1000, 1000, 0)
p3 = App.Vector(0, 2000, 0)
wire = Draft.make_wire([p1, p2, p3], closed=True)
doc.recompute()
roof1 = Arch.makeRoof(wire)
doc.recompute()
- Elements: Wall, Structure, Curtain Wall, Window, Roof, Space, Stairs, Equipment, Frame, Fence, Truss, Profile, Pipe, Pipe Connector
- Reinforcements: Straight Rebar, U-Shape Rebar, L-Shape Rebar, Stirrup, Bent-Shape Rebar, Helical Rebar, Column Reinforcement, Beam Reinforcement, Slab Reinforcement, Footing Reinforcement, Custom Rebar
- Panels: Panel, Panel Cut, Panel Sheet, Nest
- Materials: Material, Multi-Material
- Organization: Building Part, Project, Site, Building, Level, External reference, Section Plane, Schedule
- Axes: Axis, Axes system, Grid
- Modification: Cut with plane, Add component, Remove component, Survey
- Utilities: Component, Clone component, Split Mesh, Mesh to Shape, Select non-manifold meshes, Remove Shape from Arch, Close Holes, Merge Walls, Check, Toggle IFC Brep flag, 3 Views from mesh, Create IFC spreadsheet, Toggle Subcomponents
- Additional: Preferences, Import Export Preferences (IFC, DAE, OBJ, JSON, 3DS, SHP), IfcOpenShell, IfcPlusPlus, Arch API
- 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, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Start, Surface, TechDraw, Test Framework, Web
- Hubs: User hub, Power users hub, Developer hub