Arch Frame: Difference between revisions

From FreeCAD Documentation
(Created page with "<translate> {{GuiCommand|Name=Arch Frame|Workbenches=Arch|MenuLocation=Arch -> Frame|Shortcut=F R}} ==Description== The Frame tool is used to build all kinds...")
 
No edit summary
(31 intermediate revisions by 6 users not shown)
Line 1: Line 1:
<languages/>
<translate>
<translate>
<!--T:1-->
{{GuiCommand|Name=Arch Frame|Workbenches=[[Arch Module|Arch]]|MenuLocation=Arch -> Frame|Shortcut=F R}}
{{Docnav
|[[Arch_Nest|Nest]]
|[[Arch_Fence|Fence]]
|[[Arch_Module|Arch]]
|IconL=Arch_Nest.svg
|IconR=Arch_Fence.svg
|IconC=Workbench_Arch.svg
}}

<!--T:16-->
{{GuiCommand
|Name=Arch Frame
|MenuLocation=Arch → Frame
|Workbenches=[[Arch_Module|Arch]]
|Shortcut={{KEY|F}} {{KEY|R}}
|SeeAlso=[[Arch_Wall|Arch Wall]], [[Arch_Structure|Arch Structure]]
}}


==Description==
==Description== <!--T:2-->


<!--T:3-->
The Frame tool is used to build all kinds of frame objects based on a profile and a layout. The profile is extruded along the edges of the layout, which can be any 2D object such as a [[Sketcher Module|sketch]], or a [[Draft Module|draft object]]. It is especially useful to create railings, or frame walls. Frame objects can then easily be turned into [[Arch Wall|wall]] or [[Arch Structure|structure]] objects.
The {{Button|[[Image:Arch Frame.svg|16px]] [[Arch Frame|Arch Frame]]}} tool is used to build all kinds of frame objects based on a profile and a layout. The profile is extruded along the edges of the layout, which can be any 2D object such as a [[Sketcher Module|sketch]], or a [[Draft Module|draft object]]. It is especially useful to create railings, or frame walls. Frame objects can then easily be turned into [[Arch Wall|wall]] or [[Arch Structure|structure]] objects.


</translate>
</translate>
[[Image:Arch Frame example.jpg|640px]]
[[Image:Arch Frame example.jpg|640px]]
<translate>
<translate>
<!--T:4-->
{{Caption|Frame object created from a [[Draft Array]] of a [[Draft Line]], using a [[Draft Circle]] as profile}}


==Usage== <!--T:5-->
In the above image, a [[Draft Line|line]] has been turned into an [[Draft Array|array]], and a frame object has been made using the array as layout, and a [[Draft Circle|circle]] as profile.


<!--T:6-->
==How to use==
# Create a layout object and a profile object, for example with the [[Draft Workbench]] or the [[Sketcher Workbench]].
# Select the layout object first, then, with {{KEY|Ctrl}} pressed, select the profile object.
# Press the {{Button|[[Image:Arch Frame.svg|16px]] [[Arch Frame]]}} button, or press {{KEY|F}} then {{KEY|R}} keys.


==Options== <!--T:7-->
# Create a layout object and a profile object, for example with the [[Draft Workbench]] or the [[Sketcher Workbench]]
# Select the layout object, then, with {{KEY|CTRL}} pressed, select the profile object
# Press the {{KEY|[[Image:Arch Frame.png|16px]] [[Arch Frame]]}} button, or press {{KEY|F}} then {{KEY|R}} keys

==Options==


<!--T:8-->
* Frames share the common properties and behaviours of all [[Arch Component|Arch Components]]
* The frame object can be placed at a certain distance from the layout object, by setting its Offset property
* The frame object can be placed at a certain distance from the layout object, by setting its Offset property
* The profile will be copied at the base of each edge of the layout object, then extruded along it. You can control how the profile is placed at the base of each edge with the Align and Rotation properties.
* The profile will be copied at the base of each edge of the layout object, then extruded along it. You can control how the profile is placed at the base of each edge with the Align and Rotation properties.


==Properties==
==Properties== <!--T:9-->


<!--T:10-->
* {{PropertyData|Base}}: The layout this frame is based on.
* {{PropertyData|Base}}: The layout this frame is based on.
* {{PropertyData|Profile}}: The profile this frame is based on.
* {{PropertyData|Profile}}: The profile this frame is based on.
Line 31: Line 54:
* {{PropertyData|Rotation}}: The rotation of the profile around its extrusion axis.
* {{PropertyData|Rotation}}: The rotation of the profile around its extrusion axis.


==Scripting==
==Scripting== <!--T:11-->
{{Emphasis|See also:}} [[Arch API]] and [[FreeCAD Scripting Basics]].

The Wall tool can by used in [[macros]] and from the python console by using the following function:


<!--T:12-->
The Frame tool can be used in [[macros]] and from the [[Python]] console by using the following function:
</translate>
</translate>
{{Code|code=
<syntaxhighlight>
Frame = makeFrame(baseobj, profile)
makeFrame ( layout,profile )
}}
</syntaxhighlight>
<translate>
<translate>


<!--T:13-->
* Creates a frame object from a base sketch (or any other object containing wires) and a profile object (an extrudable 2D object containing faces or closed wires)
* Creates a {{incode|Frame}} object from the given {{incode|baseobj}} and {{incode|profile}}.
* Returns the new frame object, or None if the operation failed.
** {{incode|baseobj}} is any object containing wires, like a [[Draft Wire]], or a [[Draft Array]] with a collection of them.
** {{incode|profile}} is an extrudable 2D object containing faces or closed wires.


<!--T:14-->
Example:
Example:
</translate>
{{Code|code=
import Draft, Arch

Line = Draft.makeLine(FreeCAD.Vector(0, 0, 0), FreeCAD.Vector(0, 0, 2000))
baseobj = Draft.makeArray(Line, FreeCAD.Vector(1000, 0, 0), FreeCAD.Vector(0, 1, 0), 6, 1)

profile = Draft.makeCircle(200)
Frame = Arch.makeFrame(baseobj, profile)
FreeCAD.ActiveDocument.recompute()
}}
<translate>

<!--T:15-->
{{Docnav
|[[Arch_Nest|Nest]]
|[[Arch_Fence|Fence]]
|[[Arch_Module|Arch]]
|IconL=Arch_Nest.svg
|IconR=Arch_Fence.svg
|IconC=Workbench_Arch.svg
}}


</translate>
</translate>
{{Arch Tools navi{{#translation:}}}}
<syntaxhighlight>
import Draft, Arch
layout = Draft.makeLine(FreeCAD.Vector(0,0,0),FreeCAD.Vector(2,0,0))
profile = Draft.makeCircle(.2)
Arch.makeFrame(layout,profile)
</syntaxhighlight>


{{Userdocnavi{{#translation:}}}}
<languages/>

Revision as of 14:26, 29 November 2020

Arch Frame

Menu location
Arch → Frame
Workbenches
Arch
Default shortcut
F R
Introduced in version
-
See also
Arch Wall, Arch Structure

Description

The Arch Frame tool is used to build all kinds of frame objects based on a profile and a layout. The profile is extruded along the edges of the layout, which can be any 2D object such as a sketch, or a draft object. It is especially useful to create railings, or frame walls. Frame objects can then easily be turned into wall or structure objects.

Frame object created from a Draft Array of a Draft Line, using a Draft Circle as profile

Usage

  1. Create a layout object and a profile object, for example with the Draft Workbench or the Sketcher Workbench.
  2. Select the layout object first, then, with Ctrl pressed, select the profile object.
  3. Press the Arch Frame button, or press F then R keys.

Options

  • Frames share the common properties and behaviours of all Arch Components
  • The frame object can be placed at a certain distance from the layout object, by setting its Offset property
  • The profile will be copied at the base of each edge of the layout object, then extruded along it. You can control how the profile is placed at the base of each edge with the Align and Rotation properties.

Properties

  • DataBase: The layout this frame is based on.
  • DataProfile: The profile this frame is based on.
  • DataAlign: Specifies if the profile must be rotated to have its normal axis aligned with each edge.
  • DataOffset: An optional distance between the layout object and the frame object.
  • DataRotation: The rotation of the profile around its extrusion axis.

Scripting

See also: Arch API and FreeCAD Scripting Basics.

The Frame tool can be used in macros and from the Python console by using the following function:

Frame = makeFrame(baseobj, profile)
  • Creates a Frame object from the given baseobj and profile.
    • baseobj is any object containing wires, like a Draft Wire, or a Draft Array with a collection of them.
    • profile is an extrudable 2D object containing faces or closed wires.

Example:

import Draft, Arch

Line = Draft.makeLine(FreeCAD.Vector(0, 0, 0), FreeCAD.Vector(0, 0, 2000))
baseobj = Draft.makeArray(Line, FreeCAD.Vector(1000, 0, 0), FreeCAD.Vector(0, 1, 0), 6, 1)

profile = Draft.makeCircle(200)
Frame = Arch.makeFrame(baseobj, profile)
FreeCAD.ActiveDocument.recompute()