Draft Facebinder/en: Difference between revisions
(Updating to match new version of source page) |
(Updating to match new version of source page) |
||
(25 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> |
|||
{{GuiCommand|Name=Draft_Facebinder|Workbenches=[[Draft Module|Draft]], [[Arch Module|Arch]]|MenuLocation=Draft → Facebinder|Shortcut=F F}} |
|||
{{Docnav |
|||
|[[Draft_Point|Point]] |
|||
|[[Draft_ShapeString|ShapeString]] |
|||
|[[Draft_Workbench|Draft]] |
|||
|IconL=Draft_Point.svg |
|||
|IconR=Draft_ShapeString.svg |
|||
|IconC=Workbench_Draft.svg |
|||
}} |
|||
{{GuiCommand |
|||
|Name=Draft Facebinder |
|||
|MenuLocation=Drafting → Facebinder |
|||
|Workbenches=[[Draft_Workbench|Draft]], [[Arch_Workbench|Arch]] |
|||
|Shortcut={{KEY|F}} {{KEY|F}} |
|||
|Version=0.14 |
|||
}} |
|||
==Description== |
==Description== |
||
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). |
|||
The facebinder a very simple object constructed from selected faces of other objects. It is of parametric, you can modify the original object and the facebinder object updates accordingly. It can then be used for example for making an extrusion out of a collection of faces from other objects. A typical use is in architectural design, to build an object that covers several pieces of walls. You can move and rotate the facebinder around after its creation, everything will stay linked to the original faces. |
|||
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. |
|||
[[Image:Draft facebinder example.jpg|400px]] |
|||
[[Image:Draft_facebinder_example.jpg|400px]] |
|||
==How to use== |
|||
{{Caption|Facebinder created from the faces of walls}} |
|||
==Usage== |
|||
# Select faces on objects (use CTRL to select several faces) |
|||
# Press the {{KEY| [[Image:Draft_Facebinder.png|16px]] [[Draft_Facebinder|Facebinder]]}}, button, or press {{KEY|F}}, {{KEY|F}} keys |
|||
# 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 == |
|||
See also: [[Property_editor|Property editor]]. |
|||
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=== |
|||
{{TitleProperty|Draft}} |
|||
* {{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 === |
|||
{{TitleProperty|Draft}} |
|||
* {{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== |
==Scripting== |
||
See also: [https://freecad.github.io/SourceDoc/ Autogenerated API documentation] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]]. |
|||
The facebinder tool can be usedin scripts and [[macros]] by using the following function: |
|||
<syntaxhighlight> |
|||
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. |
|||
makeFacebinder ( selectionset ) |
|||
</syntaxhighlight> |
|||
{{Code|code= |
|||
* Creates a facebinder object from the given selection set, which is a list of selection objects such as returned by the FreeCADGui.Selection.getSelectionEx() method. |
|||
facebinder = make_facebinder(selectionset) |
|||
* Only selected faces are taken into account |
|||
}} |
|||
* Returns the newly created object |
|||
* 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. |
|||
{{Code|code= |
|||
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 {{incode|Extrusion}} attribute; the value is entered in millimeters. |
|||
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. |
|||
Example: |
Example: |
||
<syntaxhighlight> |
|||
import Draft, FreeCADGui |
|||
mySelection = FreeCADGui.Selection.getSelectionEx() |
|||
Draft.makeFacebinder(mySelection) |
|||
</syntaxhighlight> |
|||
==Limitations== |
|||
{{Code|code= |
|||
* Not available before version 0.14 |
|||
import FreeCAD as App |
|||
{{clear}} |
|||
import FreeCADGui as Gui |
|||
<languages/> |
|||
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() |
|||
}} |
|||
{{Docnav |
|||
|[[Draft_Point|Point]] |
|||
|[[Draft_ShapeString|ShapeString]] |
|||
|[[Draft_Workbench|Draft]] |
|||
|IconL=Draft_Point.svg |
|||
|IconR=Draft_ShapeString.svg |
|||
|IconC=Workbench_Draft.svg |
|||
}} |
|||
{{Draft Tools navi{{#translation:}}}} |
|||
{{Userdocnavi{{#translation:}}}} |
Latest revision as of 19:31, 7 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
- Select one or more faces.
- 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 isFlat 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 givenselectionset
, which is a list ofSelectionObject
s as returned byFreeCADGui.Selection.getSelectionEx()
. Only selected faces are taken into account.selectionset
can also be aPropertyLinkSubList
.
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()
- Drafting: Line, Polyline, Fillet, Arc, Arc by 3 points, Circle, Ellipse, Rectangle, Polygon, B-spline, Cubic Bézier curve, Bézier curve, Point, Facebinder, ShapeString, Hatch
- Annotation: Text, Dimension, Label, Annotation styles, Annotation scale
- Modification: Move, Rotate, Scale, Mirror, Offset, Trimex, Stretch, Clone, Array, Polar array, Circular array, Path array, Path link array, Point array, Point link array, Edit, Subelement highlight, Join, Split, Upgrade, Downgrade, Wire to B-spline, Draft to sketch, Set slope, Flip dimension, Shape 2D view
- Draft Tray: Select plane, Set style, Toggle construction mode, AutoGroup
- 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
- Miscellaneous: Apply current style, Layer, Manage layers, Add a new named group, Move to group, Select group, Add to construction group, Toggle normal/wireframe display, Create working plane proxy, Heal, Show snap toolbar
- Additional: Constraining, Pattern, Preferences, Import Export Preferences, DXF/DWG, SVG, OCA, DAT
- Context menu:
- Layer container: Merge layer duplicates, Add new layer
- Layer: Activate this layer, Select layer contents
- Text: Open hyperlinks
- Wire: Flatten
- Working plane proxy: Write camera position, Write objects state
- 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, Surface, TechDraw, Test Framework
- Hubs: User hub, Power users hub, Developer hub