Draft Upgrade: Difference between revisions

From FreeCAD Documentation
No edit summary
(Button text.)
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Page_in_progress}}
<languages/>
<languages/>
<translate>
<translate>
Line 7: Line 6:
|[[Draft_Split|Split]]
|[[Draft_Split|Split]]
|[[Draft_Downgrade|Downgrade]]
|[[Draft_Downgrade|Downgrade]]
|[[Draft_Module|Draft]]
|[[Draft_Workbench|Draft]]
|IconL=Draft_Split.svg
|IconL=Draft_Split.svg
|IconR=Draft_Downgrade.svg
|IconR=Draft_Downgrade.svg
Line 17: Line 16:
|Name=Draft Upgrade
|Name=Draft Upgrade
|MenuLocation=Modification → Upgrade
|MenuLocation=Modification → Upgrade
|Workbenches=[[Draft_Module|Draft]], [[Arch_Module|Arch]]
|Workbenches=[[Draft_Workbench|Draft]], [[Arch_Workbench|Arch]]
|Shortcut={{KEY|U}} {{KEY|P}}
|Shortcut={{KEY|U}} {{KEY|P}}
|SeeAlso=[[Draft_Downgrade|Draft Downgrade]], [[Part_Fuse|Part Fuse]]
|SeeAlso=[[Draft_Downgrade|Draft Downgrade]]
}}
}}


Line 25: Line 24:


<!--T:3-->
<!--T:3-->
The [[Image:Draft_Upgrade.svg|24px]] '''Draft Upgrade''' command upgrades selected objects. The result depends on the number of selected objects and their type. The command can for example fuse elements and create faces. It is worth trying to upgrade a selection several times to see if a better result can be obtained. See the example in the image. Note that not all objects can be upgraded. This command is the counterpart of the [[Draft_Downgrade|Draft Downgrade]] command.
The {{Button|[[Image:Draft Upgrade.svg|16px]] [[Draft_Upgrade|Draft Upgrade]]}} tool upgrades the selected objects in different ways.

<!--T:13-->
The Upgrade tool performs things such as creating faces and fusing different elements. This tool works with 2D Draft elements. To fuse 3D solids use [[Part_Fuse|Part Fuse]] and related Boolean operations of the [[Part Workbench]], and [[PartDesign Boolean]] of the [[PartDesign Workbench]].

<!--T:14-->
The counterpart to this tool is the {{Button|[[Image:Draft Downgrade.svg|16px]] [[Draft Downgrade|Draft Downgrade]]}} operation.


</translate>
</translate>
Line 44: Line 37:
# 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_Upgrade.svg|16px]] [[Draft_Upgrade|Draft Upgrade]]}} button.
#* Press the {{Button|[[Image:Draft_Upgrade.svg|16px]] [[Draft_Upgrade|Upgrade]]}} button.
#* Select the {{MenuCommand|Modification → [[Image:Draft_Upgrade.svg|16px]] Upgrade}} option from the menu.
#* Select the {{MenuCommand|Modification → [[Image:Draft_Upgrade.svg|16px]] Upgrade}} option from the menu.
#* Use the keyboard shortcut: {{KEY|U}} then {{KEY|P}}.
#* Use the keyboard shortcut: {{KEY|U}} then {{KEY|P}}.
# If you have not yet selected an object: select an object in the [[3D_view|3D view]].
# If you have not yet selected an object: select an object in the [[3D_view|3D view]].


==Notes== <!--T:24-->
== Example ==

<!--T:17-->
It is worth trying to upgrade a selection several times to see if a better result can be obtained. For example:
# Upgrading two [[Draft_Line|Draft Lines]] connected at one end will result in a non-editable wire.
# Upgrading this element again will add a third line and close the non-editable wire.
# Upgrading this element again will add a face to the closed, non-editable wire.
# Upgrading this element again will turn it into a fully editable [[Draft_Wire|Draft Wire]].

== Notes ==


<!--T:25-->
* [[Draft_Line|Draft Lines]] and [[Draft_Wire|Draft Wires]] can also be joined with the [[Draft_Join|Draft Join]] command or the [[Draft_Wire|Draft Wire]] command.
* [[Draft_Line|Draft Lines]] and [[Draft_Wire|Draft Wires]] can be joined with this command, but also with the [[Draft_Join|Draft Join]] command or the [[Draft_Wire|Draft Wire]] command.


==Scripting== <!--T:23-->
==Scripting== <!--T:23-->
Line 122: Line 107:
|[[Draft_Split|Split]]
|[[Draft_Split|Split]]
|[[Draft_Downgrade|Downgrade]]
|[[Draft_Downgrade|Downgrade]]
|[[Draft_Module|Draft]]
|[[Draft_Workbench|Draft]]
|IconL=Draft_Split.svg
|IconL=Draft_Split.svg
|IconR=Draft_Downgrade.svg
|IconR=Draft_Downgrade.svg

Latest revision as of 17:11, 3 December 2023

Draft Upgrade

Menu location
Modification → Upgrade
Workbenches
Draft, Arch
Default shortcut
U P
Introduced in version
-
See also
Draft Downgrade

Description

The Draft Upgrade command upgrades selected objects. The result depends on the number of selected objects and their type. The command can for example fuse elements and create faces. It is worth trying to upgrade a selection several times to see if a better result can be obtained. See the example in the image. Note that not all objects can be upgraded. This command is the counterpart of the Draft Downgrade command.

An open non-editable wire is upgraded to a closed wire, and then to a face. A closed non-editable square wire is also upgraded to a face. The two faces are then upgraded to create a compound, which is finally upgraded to a single editable Draft Wire.

Usage

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

Notes

Scripting

See also: Autogenerated API documentation and FreeCAD Scripting Basics.

To upgrade objects use the upgrade method of the Draft module.

upgrade_list = upgrade(objects, delete=False, force=None)
  • objects contains the objects to be upgraded. It is either a single object or a list of objects.
  • If delete is True the source objects are deleted.
  • force forces a certain way of upgrading by calling a specific internal function. It can be: "makeCompound", "closeGroupWires", "makeSolid", "closeWire", "turnToParts", "makeFusion", "makeShell", "makeFaces", "draftify", "joinFaces", "makeSketchFace", "makeWires" or "turnToLine".
  • upgrade_list is returned. It is a list containing two lists: a list of new objects and a list of objects to be deleted. If delete is True the second list is empty.

Example:

import FreeCAD as App
import Draft

doc = App.newDocument()

circle = Draft.make_circle(1000)
rectangle = Draft.make_rectangle(2000, 800)
doc.recompute()

add_list1, delete_list1 = Draft.upgrade([circle, rectangle], delete=False)

line1 = Draft.make_line(App.Vector(2000, 0, 0), App.Vector(2500, 1500, 0))
line2 = Draft.make_line(App.Vector(2500, 1500, 0), App.Vector(3000, -1000, 0))
doc.recompute()

add_list2, delete_list2 = Draft.upgrade([line1, line2], delete=False)

simple_wire = add_list2[0]
add_list3, delete_list3 = Draft.upgrade(simple_wire, delete=False)

closed_wire = add_list3[0]
add_list4, delete_list4 = Draft.upgrade(closed_wire, delete=False)

face = add_list4[0]
add_list5, delete_list5 = Draft.upgrade(face, delete=False)

doc.recompute()