Draft Clone: Difference between revisions

From FreeCAD Documentation
(Removed 'In progress')
(Button text.)
 
(2 intermediate revisions by 2 users not shown)
Line 6: Line 6:
|[[Draft_Stretch|Stretch]]
|[[Draft_Stretch|Stretch]]
|[[Draft_OrthoArray|OrthoArray]]
|[[Draft_OrthoArray|OrthoArray]]
|[[Draft_Module|Draft]]
|[[Draft_Workbench|Draft]]
|IconL=Draft_Stretch.svg
|IconL=Draft_Stretch.svg
|IconR=Draft_OrthoArray.svg
|IconR=Draft_OrthoArray.svg
Line 16: Line 16:
|Name=Draft Clone
|Name=Draft Clone
|MenuLocation=Modification → Clone
|MenuLocation=Modification → Clone
|Workbenches=[[Draft_Module|Draft]], [[Arch_Module|Arch]]
|Workbenches=[[Draft_Workbench|Draft]], [[Arch_Workbench|Arch]]
|Shortcut={{KEY|C}} {{KEY|L}}
|Shortcut={{KEY|C}} {{KEY|L}}
|SeeAlso=[[Draft_Scale|Draft Scale]]
|SeeAlso=[[Draft_Scale|Draft Scale]]
Line 24: Line 24:


<!--T:2-->
<!--T:2-->
The [[Image:Draft_Clone.svg|24px]] '''Draft Clone''' command creates linked copies, clones, of selected objects. The shape of a clone is parametric, it will update if its source object changes. But a clone does have its own position, rotation, and scale, and its own [[Property_editor|View properties]]. For [[Arch_Module|Arch]] objects the command creates a special type of clone: an Arch clone.
The [[Image:Draft_Clone.svg|24px]] '''Draft Clone''' command creates linked copies, clones, of selected objects. The shape of a clone is parametric, it will update if its source object changes. But a clone does have its own position, rotation, and scale, and its own [[Property_editor|View properties]]. For [[Arch_Workbench|Arch]] objects the command creates a special type of clone: an Arch clone.


<!--T:10-->
<!--T:10-->
The command can be used on 2D objects created with the [[Draft_Module|Draft Workbench]] or [[Sketcher_Workbench|Sketcher Workbench]], but also on many 3D objects such as those created with the [[Part_Module|Part Workbench]], [[PartDesign_Workbench|PartDesign Workbench]] or [[Arch_Module|Arch Workbench]]. Clones of 2D objects can be used in [[PartDesign_Body|PartDesign Bodies]].
The command can be used on 2D objects created with the [[Draft_Workbench|Draft Workbench]] or [[Sketcher_Workbench|Sketcher Workbench]], but also on many 3D objects such as those created with the [[Part_Workbench|Part Workbench]], [[PartDesign_Workbench|PartDesign Workbench]] or [[Arch_Workbench|Arch Workbench]]. Clones of 2D objects can be used in [[PartDesign_Body|PartDesign Bodies]].


</translate>
</translate>
Line 40: Line 40:
# Optionally select one or more objects.
# Optionally select one or more objects.
# There are several ways to invoke the command:
# There are several ways to invoke the command:
#* Press the {{Button|[[Image:Draft_Clone.svg|16px]] [[Draft_Clone|Draft Clone]]}} button.
#* Press the {{Button|[[Image:Draft_Clone.svg|16px]] [[Draft_Clone|Clone]]}} button.
#* Select the {{MenuCommand|Modification → [[Image:Draft_Clone.svg|16px]] Clone}} option from the menu.
#* Select the {{MenuCommand|Modification → [[Image:Draft_Clone.svg|16px]] Clone}} option from the menu.
#* Use the keyboard shortcut: {{KEY|C}} then {{KEY|L}}.
#* Use the keyboard shortcut: {{KEY|C}} then {{KEY|L}}.
Line 66: Line 66:


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


<!--T:16-->
<!--T:16-->
Line 80: Line 80:
* {{incode|obj}} contains the objects to be cloned. It is either a single object or a list of objects.
* {{incode|obj}} contains the objects to be cloned. It is either a single object or a list of objects.
* {{incode|delta}} is the displacement vector to be applied to the clone.
* {{incode|delta}} is the displacement vector to be applied to the clone.
* If {{incode|forcedraft}} is {{incode|False}} and {{incode|obj}} contains a single [[Arch Workbench|Arch object]] an Arch Clone is created. Set {{incode|forcedraft}} to {{incode|True}} to create a Draft Clone instead.
* If {{incode|forcedraft}} is {{incode|False}} and {{incode|obj}} contains a single [[Arch_Workbench|Arch object]] an Arch Clone is created. Set {{incode|forcedraft}} to {{incode|True}} to create a Draft Clone instead.
* {{incode|cloned_object}} is returned with the clone object.
* {{incode|cloned_object}} is returned with the clone object.


Line 111: Line 111:
|[[Draft_Stretch|Stretch]]
|[[Draft_Stretch|Stretch]]
|[[Draft_OrthoArray|OrthoArray]]
|[[Draft_OrthoArray|OrthoArray]]
|[[Draft_Module|Draft]]
|[[Draft_Workbench|Draft]]
|IconL=Draft_Stretch.svg
|IconL=Draft_Stretch.svg
|IconR=Draft_OrthoArray.svg
|IconR=Draft_OrthoArray.svg

Latest revision as of 17:08, 3 December 2023

Draft Clone

Menu location
Modification → Clone
Workbenches
Draft, Arch
Default shortcut
C L
Introduced in version
-
See also
Draft Scale

Description

The Draft Clone command creates linked copies, clones, of selected objects. The shape of a clone is parametric, it will update if its source object changes. But a clone does have its own position, rotation, and scale, and its own View properties. For Arch objects the command creates a special type of clone: an Arch clone.

The command can be used on 2D objects created with the Draft Workbench or Sketcher Workbench, but also on many 3D objects such as those created with the Part Workbench, PartDesign Workbench or Arch Workbench. Clones of 2D objects can be used in PartDesign Bodies.

Draft Clone next to its source object

Usage

  1. Optionally select one or more objects.
  2. There are several ways to invoke the command:
    • Press the Clone button.
    • Select the Modification → Clone option from the menu.
    • Use the keyboard shortcut: C then L.
  3. If you have not yet selected an object: select an object in the 3D view.

Properties

See also: Property editor.

An object created with the Draft Clone command is derived from a Part Part2DObject, a Part Feature object or, if an Arch Clone is created, from the object type of the source object. It inherits all properties from that object. A clone derived from one of the first two objects also has the following additional properties:

Data

Draft

  • DataFuse (Bool): specifies if overlapping shapes in the clone are fused or not.
  • DataObjects (LinkListGlobal): specifies the objects that are cloned.
  • DataScale (Vector): specifies the X, Y and Z scale factors.

Scripting

See also: Autogenerated API documentation and FreeCAD Scripting Basics.

To create a clone use the make_clone method (introduced in version 0.19) of the Draft module. This method replaces the deprecated clone method.

cloned_object = make_clone(obj, delta=None, forcedraft=False)
  • obj contains the objects to be cloned. It is either a single object or a list of objects.
  • delta is the displacement vector to be applied to the clone.
  • If forcedraft is False and obj contains a single Arch object an Arch Clone is created. Set forcedraft to True to create a Draft Clone instead.
  • cloned_object is returned with the clone object.

Example:

import FreeCAD as App
import Draft

doc = App.newDocument()

place = App.Placement(App.Vector(1000, 0, 0), App.Rotation())
polygon1 = Draft.make_polygon(3, 750)
polygon2 = Draft.make_polygon(5, 750, placement=place)

vector = App.Vector(2600, 500, 0)
cloned_object = Draft.clone([polygon1, polygon2], delta=vector)

cloned_object.Fuse = True

doc.recompute()