GuiCommand:
Name: Draft Downgrade
MenuLocation: Modification , Downgrade
Modify , Downgrade
Workbenches: Draft_Workbench, BIM_Workbench
Shortcut: D N
SeeAlso: Draft_Upgrade, Part_Cut
Draft Downgrade
Description
The Draft Downgrade command downgrades selected objects. The result depends on the number of selected objects and their type. The command can for example deconstruct a 3D solid into separate faces and a wire into separate edges. If two face are selected a Part Cut object is created from them. Note that not all objects can be downgraded. This command is the counterpart of the Draft Upgrade command.
![](https://raw.githubusercontent.com/FreeCAD/FreeCAD-documentation/master/wiki/images/Draft_Downgrade_example.jpg)
Usage
- Optionally select one or more objects.
- There are several ways to invoke the command:
- If you have not yet selected an object: select an object in the 3D view.
Scripting
See also: Autogenerated API documentation and FreeCAD Scripting Basics.
To downgrade objects use the downgrade
method of the Draft module.
downgrade_list = downgrade(objects, delete=False, force=None)
-
objects
contains the objects to be downgraded. It is either a single object or a list of objects. -
If
delete
isTrue
the source objects are deleted. -
force
forces a certain way of downgrading by calling a specific internal function. It can be:"explode"
,"shapify"
,"subtr"
,"splitFaces"
,"cut2"
,"getWire"
,"splitWires"
or"splitCompounds"
. -
downgrade_list
is returned. It is a list containing two lists: a list of new objects and a list of objects to be deleted. Ifdelete
isTrue
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=True)
compound = add_list1[0]
add_list2, delete_list2 = Draft.downgrade(compound, delete=False)
face = add_list2[0]
add_list3, delete_list3 = Draft.downgrade(face, delete=False)
box = doc.addObject("Part::Box", "Box")
box.Length = 2300
box.Width = 800
box.Height = 1000
add_list4, delete_list4 = Draft.downgrade(box, delete=True)
doc.recompute()
⏵ documentation index > Draft > Draft Downgrade
This page is retrieved from https://github.com/FreeCAD/FreeCAD-documentation/blob/main/wiki/Draft_Downgrade.md