Arch Roof: Difference between revisions
(adding <translate>) |
m (formatting, typos, grammar, links, templates) |
||
(38 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> |
|||
<translate> |
<translate> |
||
<!--T:30--> |
|||
{{GuiCommand|Name=Arch Roof|Workbenches=[[Arch Module|Arch]]|MenuLocation=Arch -> Roof|Shortcut=R F}} |
|||
{{Docnav |
|||
|[[Arch_Grid|Grid]] |
|||
|[[Arch_Space|Space]] |
|||
|[[Arch_Module|Arch]] |
|||
|IconL=Arch_Grid.svg |
|||
|IconC=Workbench_Arch.svg |
|||
|IconR=Arch_Space.svg |
|||
}} |
|||
<!--T:13--> |
|||
==Description== |
|||
{{GuiCommand |
|||
|Name=Arch Roof |
|||
|MenuLocation=Arch → Roof |
|||
|Workbenches=[[Arch Module|Arch]] |
|||
|Shortcut={{KEY|R}} {{KEY|F}} |
|||
|SeeAlso=[[Arch Structure|Arch Structure]], [[Arch Wall|Arch Wall]] |
|||
}} |
|||
==Description== <!--T:14--> |
|||
The Roof tool allows you to create a sloped roof from a selected face. Any face of any shape-based object can be used, and the created roof object is parametric, keeping its relationship with the base object. Please note that this tool is still in development, and might fail with very complex shapes. |
|||
</translate> |
|||
<!--T:15--> |
|||
[[Image:Arch Roof example.jpg|600px]] |
|||
The {{Button|[[Image:Arch Roof.svg|16px]] [[Arch Roof|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). |
|||
<!--T:29--> |
|||
'''Note:''' This tool is still in development, and might fail with very complex shapes. |
|||
</translate> |
|||
[[Image:RoofExample.png|600px]] |
|||
<translate> |
<translate> |
||
<!--T:16--> |
|||
==How to use== |
|||
{{Caption|View from above a building model showing the roof with certain transparency}} |
|||
==Usage== <!--T:17--> |
|||
# Select an existing face |
|||
# Press the {{KEY|[[Image:Arch Roof.png|16px]] [[Arch Roof]]}} button, or press {{KEY|R}} then {{KEY|F}} keys |
|||
<!--T:18--> |
|||
==Properties== |
|||
# Create a wire with following the counter-clockwise direction and select it. |
|||
#:[[Image:CounterclockwiseWire.png|600px]] |
|||
# Press the {{Button|[[Image:Arch Roof.svg|16px]] [[Arch Roof|Arch Roof]]}} button, or press {{KEY|R}} then {{KEY|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. |
|||
#:[[File:RoofTable.png]] |
|||
# 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 {{incode|Angle}} or {{incode|Run}} to {{incode|0}} and define a {{incode|Relative Id}}, this makes an automatic calculation to find the data relative to the {{incode|Relative Id}}. |
|||
# It works like this: |
|||
## If {{incode|Angle = 0}} and {{incode|Run = 0}} then profile is identical to the relative profile. |
|||
## If {{incode|Angle = 0}} then {{incode|Angle}} is calculated so that the height is the same one as the relative profile. |
|||
## If {{incode|Run = 0}} then {{incode|Run}} is calculated so that the height is the same one as the relative profile. |
|||
# Finally, set an Angle to 90° to make a gable. |
|||
#:[[Image:RoofProfil.png|600px]] |
|||
# {{Emphasis|Note}}: for better comprehension, please see this [https://www.youtube.com/watch?v=4Urwru71dVk youtube clip]. |
|||
==Options== <!--T:26--> |
|||
* {{PropertyData|Angle}}: The slope angle of the roof |
|||
* {{PropertyData|Face}}: The face index of the base object to be used |
|||
<!--T:27--> |
|||
==Scripting== |
|||
* Roofs share the common properties and behaviors of all [[Arch Component|Arch Components]] |
|||
==Properties== <!--T:20--> |
|||
The Roof tool can by used in [[macros]] and from the python console by using the following function: |
|||
<!--T:21--> |
|||
* {{PropertyData|Angles}}: List of the slope angle of the roof pane (an angle for each edge in the wire). |
|||
* {{PropertyData|Runs}}: List of the width of the roof pane (a run for each edge in the wire). |
|||
* {{PropertyData|IdRel}}: List of relation Id of the slope angle of the roof. |
|||
* {{PropertyData|Thickness}}: List of thickness of the roof pane. (a thickness for each edge in the wire). |
|||
* {{PropertyData|Overhang}}: List of the overhang of the roof pane (an overhang for each edge in the wire). |
|||
* {{PropertyData|Face}}: The face index of the base object to be used (not really used). |
|||
==Scripting== <!--T:22--> |
|||
{{Emphasis|See also:}} [[Arch API|Arch API]] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]]. |
|||
<!--T:23--> |
|||
The Roof tool can be used in [[macros|macros]] and from the [[Python|Python]] console by using the following function: |
|||
</translate> |
</translate> |
||
{{Code|code= |
|||
<syntaxhighlight> |
|||
Roof = makeRoof(baseobj=None, facenr=0, angles=[45.,], run=[], idrel=[0,], thickness=[50.,], overhang=[100.,], name="Roof") |
|||
makeRoof (baseobj,[facenr],[angle],[name]) |
|||
}} |
|||
</syntaxhighlight> |
|||
<translate> |
<translate> |
||
Makes a roof based on a face from an existing object. You can provide the number of the face to build the roof on (default = 1), the angle in degrees (default=45) and a name (default = roof). |
|||
<!--T:24--> |
|||
* Creates a {{incode|Roof}} object from the given {{incode|baseobj}}, which can be a closed wire or a solid object. |
|||
** If {{incode|baseobj}} is a wire, you can provide lists for {{incode|angles}}, {{incode|run}}, {{incode|idrel}}, {{incode|thickness}}, and {{incode|overhang}}, 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. |
|||
<!--T:25--> |
|||
Example: |
Example: |
||
</translate> |
</translate> |
||
{{Code|code= |
|||
<syntaxhighlight> |
|||
import Arch, Draft |
import FreeCAD, Arch, Draft |
||
rect = Draft.makeRectangle(2,4) |
|||
Rect = Draft.makeRectangle(3000, 4000) |
|||
Arch.makeRoof(rect,angle=30) |
|||
Roof = Arch.makeRoof(Rect, angles=[30.,]) |
|||
<syntaxhighlight> |
|||
FreeCAD.ActiveDocument.recompute() |
|||
<languages/> |
|||
p1 = FreeCAD.Vector(0, 0, 0) |
|||
p2 = FreeCAD.Vector(1000, 1000, 0) |
|||
p3 = FreeCAD.Vector(0, 2000, 0) |
|||
Wire = Draft.makeWire([p1, p2, p3], closed=True) |
|||
Roof2 = Arch.makeRoof(Wire) |
|||
FreeCAD.ActiveDocument.recompute() |
|||
}} |
|||
<translate> |
|||
<!--T:28--> |
|||
{{Docnav |
|||
|[[Arch_Grid|Grid]] |
|||
|[[Arch_Space|Space]] |
|||
|[[Arch_Module|Arch]] |
|||
|IconL=Arch_Grid.svg |
|||
|IconC=Workbench_Arch.svg |
|||
|IconR=Arch_Space.svg |
|||
}} |
|||
</translate> |
|||
{{Arch Tools navi{{#translation:}}}} |
|||
{{Userdocnavi{{#translation:}}}} |
Revision as of 13:16, 27 April 2020
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
- Create a 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.
Options
- Roofs share the common properties and behaviors of all Arch Components
Properties
- DataAngles: List of the slope angle of the roof pane (an angle for each edge in the wire).
- DataRuns: List of the width of the roof pane (a run for each edge in the wire).
- DataIdRel: List of relation Id of the slope angle of the roof.
- DataThickness: List of thickness of the roof pane. (a thickness for each edge in the wire).
- DataOverhang: List of the overhang of the roof pane (an overhang for each edge in the wire).
- DataFace: The face index of the base object to be used (not really used).
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, Arch, Draft
Rect = Draft.makeRectangle(3000, 4000)
Roof = Arch.makeRoof(Rect, angles=[30.,])
FreeCAD.ActiveDocument.recompute()
p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(1000, 1000, 0)
p3 = FreeCAD.Vector(0, 2000, 0)
Wire = Draft.makeWire([p1, p2, p3], closed=True)
Roof2 = Arch.makeRoof(Wire)
FreeCAD.ActiveDocument.recompute()
Arch
- 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
User documentation
- 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