Draft Facebinder: Difference between revisions

From FreeCAD Documentation
(Draft_Facebinder incomplete)
 
(Button text.)
 
(76 intermediate revisions by 8 users not shown)
Line 1: Line 1:
<languages/>
{{GuiCommand|Name=Draft_Facebinder|Workbenches=[[Draft Module/it|Draft]], [[Arch Module|Arch]]|MenuLocation=Draft → Facebinder|Shortcut=F F}}
<translate>


<!--T:21-->
{{Template:UnfinishedDocu}}
{{Docnav
==Description==
|[[Draft_Point|Point]]
|[[Draft_ShapeString|ShapeString]]
|[[Draft_Workbench|Draft]]
|IconL=Draft_Point.svg
|IconR=Draft_ShapeString.svg
|IconC=Workbench_Draft.svg
}}


<!--T:1-->
{{GuiCommand
|Name=Draft Facebinder
|MenuLocation=Drafting → Facebinder
|Workbenches=[[Draft_Workbench|Draft]], [[Arch_Workbench|Arch]]
|Shortcut={{KEY|F}} {{KEY|F}}
|Version=0.14
}}


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


<!--T:3-->
[[File:Facebinder_it.png|left]]
The [[Image:Draft_Facebinder.svg|24px]] '''Draft Facebinder''' command creates a surface object from selected faces. A Draft Facebinder is parametric, it will update if you modify its source object(s).
{{clear}}
==How to use==
# Select one or more face
# Press the {{KEY|Facebinder}}, button, or press {{KEY|F}}, {{KEY|F}} keys
{{clear}}
==Properties==


<!--T:12-->
===Data===
It can be used to create an extrusion from a collection of faces. This extrusion can for example represent a wall finish in architectural design.
====Base====
* {{PropertyData|Label}}: nome
* {{PropertyData|Placement}}: [[Placement|placement]]
** {{PropertyData|Angle}}:
** {{PropertyData|Axis}}:
** {{PropertyData|Position}}:


</translate>
====Draft====
[[Image:Draft_facebinder_example.jpg|400px]]
<translate>
<!--T:13-->
{{Caption|Facebinder created from the faces of walls}}


==Usage== <!--T:4-->
{{clear}}


<!--T:5-->
# Select one or more faces.
# There are several ways to invoke the command:
#* Press the {{Button|[[Image:Draft_Facebinder.svg|16px]] [[Draft_Facebinder|Facebinder]]}} button.
#* Select the {{MenuCommand|Drafting → [[Image:Draft_Facebinder.svg|16px]] Facebinder}} option from the menu.
#* Use the keyboard shortcut: {{KEY|F}} then {{KEY|F}}.


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


<!--T:25-->
==Limitazioni==
See also: [[Property_editor|Property editor]].
* (post v0.13)


<!--T:26-->
{{languages | {{fr|Draft_Facebinder/fr}} {{it|Draft_Facebinder/it}} }}
A Draft Facebinder object is derived from a [[Part_Feature|Part Feature]] object and inherits all its properties. It also has the following additional properties:

===Data=== <!--T:27-->

<!--T:28-->
{{TitleProperty|Draft}}

<!--T:29-->
* {{PropertyData|Area|Area}}: (read-only) specifies the total area of the linked faces of the facebinder.
* {{PropertyData|Extrusion|Distance}}: specifies the extrusion thickness of the facebinder.
* {{PropertyData|Faces|LinkSubList}}: specifies the linked faces of the facebinder.
* {{PropertyData|Offset|Distance}}: specifies an offset distance to apply between the facebinder and the original faces, prior to extrusion.
* {{PropertyData|Remove Splitter|Bool}}: Specifies whether to remove splitter lines that divide co-planar faces of the facebinder.
* {{PropertyData|Sew|Bool}}: Specifies whether to perform a topological sewing operation on the facebinder.

=== View === <!--T:30-->

<!--T:31-->
{{TitleProperty|Draft}}

<!--T:17-->
* {{PropertyView|Pattern|Enumeration}}: specifies the [[Draft_Pattern|Draft Pattern]] with which to fill the faces of the facebinder. This property only works if {{PropertyView|Display Mode}} is {{value|Flat Lines}}.
* {{PropertyView|Pattern Size|Float}}: specifies the size of the [[Draft_Pattern|Draft Pattern]].

==Scripting== <!--T:32-->

<!--T:6-->
See also: [https://freecad.github.io/SourceDoc/ Autogenerated API documentation] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]].

<!--T:7-->
To create a Draft Facebinder use the {{incode|make_facebinder}} method ({{Version|0.19}}) of the Draft module. This method replaces the deprecated {{incode|makeFacebinder}} method.

</translate>
{{Code|code=
facebinder = make_facebinder(selectionset)
}}
<translate>

<!--T:8-->
* Creates a {{incode|facebinder}} object from the given {{incode|selectionset}}, which is a list of {{incode|SelectionObject}}s as returned by {{incode|FreeCADGui.Selection.getSelectionEx()}}. Only selected faces are taken into account.
** {{incode|selectionset}} can also be a {{incode|PropertyLinkSubList}}.
A {{incode|PropertyLinkSubList}} is a list of tuples; each tuple contains as first element an {{incode|object}}, and as second element a list (or tuple) of strings; these strings indicate the names of the sub-elements (faces) of that object.

</translate>
{{Code|code=
PropertyLinkSubList = [tuple1, tuple2, tuple3, ...]
PropertyLinkSubList = [(object1, list1), (object2, list2), (object3, list3), ...]
PropertyLinkSubList = [(object1, ['Face1', 'Face4', 'Face6']), ...]
PropertyLinkSubList = [(object1, ('Face1', 'Face4', 'Face6')), ...]
}}
<translate>

<!--T:18-->
The thickness of the Facebinder can be added by overwriting its {{incode|Extrusion}} attribute; the value is entered in millimeters.

<!--T:19-->
The placement of the Facebinder can be changed by overwriting its {{incode|Placement}} attribute, or by individually overwriting its {{incode|Placement.Base}} and {{incode|Placement.Rotation}} attributes.

<!--T:9-->
Example:

</translate>
{{Code|code=
import FreeCAD as App
import FreeCADGui as Gui
import Draft

doc = App.newDocument()

# Insert a solid box
box = doc.addObject("Part::Box", "Box")
box.Length = 2300
box.Width = 800
box.Height = 1000

# selection = Gui.Selection.getSelectionEx()
selection = [(box, ("Face1", "Face6"))]
facebinder = Draft.make_facebinder(selection)
facebinder.Extrusion = 50

doc.recompute()

facebinder.Placement.Base = App.Vector(1000, -1000, 100)
facebinder.ViewObject.ShapeColor = (0.99, 0.99, 0.4)

doc.recompute()
}}
<translate>


<!--T:20-->
{{Docnav
|[[Draft_Point|Point]]
|[[Draft_ShapeString|ShapeString]]
|[[Draft_Workbench|Draft]]
|IconL=Draft_Point.svg
|IconR=Draft_ShapeString.svg
|IconC=Workbench_Draft.svg
}}

</translate>
{{Draft Tools navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}

Latest revision as of 17:03, 3 December 2023

Draft Facebinder

Menu location
Drafting → Facebinder
Workbenches
Draft, Arch
Default shortcut
F F
Introduced in version
0.14
See also
None

Description

The Draft Facebinder command creates a surface object from selected faces. A Draft Facebinder is parametric, it will update if you modify its source object(s).

It can be used to create an extrusion from a collection of faces. This extrusion can for example represent a wall finish in architectural design.

Facebinder created from the faces of walls

Usage

  1. Select one or more faces.
  2. There are several ways to invoke the command:
    • Press the Facebinder button.
    • Select the Drafting → Facebinder option from the menu.
    • Use the keyboard shortcut: F then F.

Properties

See also: Property editor.

A Draft Facebinder object is derived from a Part Feature object and inherits all its properties. It also has the following additional properties:

Data

Draft

  • DataArea (Area): (read-only) specifies the total area of the linked faces of the facebinder.
  • DataExtrusion (Distance): specifies the extrusion thickness of the facebinder.
  • DataFaces (LinkSubList): specifies the linked faces of the facebinder.
  • DataOffset (Distance): specifies an offset distance to apply between the facebinder and the original faces, prior to extrusion.
  • DataRemove Splitter (Bool): Specifies whether to remove splitter lines that divide co-planar faces of the facebinder.
  • DataSew (Bool): Specifies whether to perform a topological sewing operation on the facebinder.

View

Draft

  • ViewPattern (Enumeration): specifies the Draft Pattern with which to fill the faces of the facebinder. This property only works if ViewDisplay Mode is Flat Lines.
  • ViewPattern Size (Float): specifies the size of the Draft Pattern.

Scripting

See also: Autogenerated API documentation and FreeCAD Scripting Basics.

To create a Draft Facebinder use the make_facebinder method (introduced in version 0.19) of the Draft module. This method replaces the deprecated makeFacebinder method.

facebinder = make_facebinder(selectionset)
  • Creates a facebinder object from the given selectionset, which is a list of SelectionObjects as returned by FreeCADGui.Selection.getSelectionEx(). Only selected faces are taken into account.
    • selectionset can also be a PropertyLinkSubList.

A PropertyLinkSubList is a list of tuples; each tuple contains as first element an object, and as second element a list (or tuple) of strings; these strings indicate the names of the sub-elements (faces) of that object.

PropertyLinkSubList = [tuple1, tuple2, tuple3, ...]
PropertyLinkSubList = [(object1, list1), (object2, list2), (object3, list3), ...]
PropertyLinkSubList = [(object1, ['Face1', 'Face4', 'Face6']), ...]
PropertyLinkSubList = [(object1, ('Face1', 'Face4', 'Face6')), ...]

The thickness of the Facebinder can be added by overwriting its Extrusion attribute; the value is entered in millimeters.

The placement of the Facebinder can be changed by overwriting its Placement attribute, or by individually overwriting its Placement.Base and Placement.Rotation attributes.

Example:

import FreeCAD as App
import FreeCADGui as Gui
import Draft

doc = App.newDocument()

# Insert a solid box
box = doc.addObject("Part::Box", "Box")
box.Length = 2300
box.Width = 800
box.Height = 1000

# selection = Gui.Selection.getSelectionEx()
selection = [(box, ("Face1", "Face6"))]
facebinder = Draft.make_facebinder(selection)
facebinder.Extrusion = 50

doc.recompute()

facebinder.Placement.Base = App.Vector(1000, -1000, 100)
facebinder.ViewObject.ShapeColor = (0.99, 0.99, 0.4)

doc.recompute()