Draft Downgrade/fr: Difference between revisions

From FreeCAD Documentation
No edit summary
(Updating to match new version of source page)
Line 1: Line 1:
{{Page_in_progress}}
<languages/>
<languages/>


Line 22: Line 21:
==Description==
==Description==


<div class="mw-translate-fuzzy">
L'outil {{Button|[[Image:Draft Downgrade.svg|16px]] [[Draft_Downgrade/fr|Draft Rétrograder]]}} rétrograde les objets sélectionnés de différentes manières.
L'outil {{Button|[[Image:Draft Downgrade.svg|16px]] [[Draft_Downgrade/fr|Draft Rétrograder]]}} rétrograde les objets sélectionnés de différentes manières.
</div>

L'outil Rétrograder effectue des opérations telles que casser des faces et déconstruire des fils (wires) en unité. Il peut couper une forme avec une autre forme de la même manière que {{Button|[[Image:Part_Cut.svg|16px]] [[Part_Cut/fr|Part Soustraction]]}}.

La contrepartie de cet outil est l'opération {{Button|[[Image:Draft Upgrade.svg|16px]] [[Draft Upgrade/fr|Draft Mettre à niveau]]}}.


[[Image:Draft_Downgrade_example.jpg|400px]]
[[Image:Draft_Downgrade_example.jpg|400px]]
<div class="mw-translate-fuzzy">
{{Caption|Figure soustraite d'une autre figure puis rétrogradé en un fil fermé puis rétrogradé en segments}}
{{Caption|Figure soustraite d'une autre figure puis rétrogradé en un fil fermé puis rétrogradé en segments}}
</div>


==Utilisation==
==Utilisation==


<div class="mw-translate-fuzzy">
# Sélectionnez un ou plusieurs objets que vous souhaitez rétrograder.
# Sélectionnez un ou plusieurs objets que vous souhaitez rétrograder.
# Il existe plusieurs façons de lancer la commande :
# Il existe plusieurs façons de lancer la commande :
Line 39: Line 39:
#* Utilisez l'entrée {{MenuCommand|Modification → Rétrograder}} dans le menu Draft
#* Utilisez l'entrée {{MenuCommand|Modification → Rétrograder}} dans le menu Draft
:Remarque : Si aucun objet n'est sélectionné, vous serez invité à en sélectionner un.
:Remarque : Si aucun objet n'est sélectionné, vous serez invité à en sélectionner un.
</div>

Les objets sélectionnés sont modifiés/rétrogradés à un niveau inférieur, en suivant l'ordre de cette liste :
# Si un seul objet est sélectionné et qu'il contient plusieurs faces, chaque face devient un objet séparé.
# S'il y a plus d'une face dans la sélection, les objets suivants sont soustraits de la première. Cette modification est similaire à {{Button|[[Image:Part_Cut.svg|16px]] [[Part_Cut/fr|Part Soustraction]]}}.
# S'il n'y a qu'une seule face dans la sélection, elle est convertie en un fil.
# Sinon, tous les fils trouvés dans la sélection sont éclatés en une seule arête.

==Options==

Il n'y a pas d'options pour cet outil. Cela fonctionne avec les objets sélectionnés ou non.

==Exemple==

<gallery widths="300" heights="200">
File:Draft Downgrade 01.png|Forme complète
File:Draft Downgrade 02.png|Forme dégradée, avec éclatement des faces
</gallery>


==Script==
==Script==


<div class="mw-translate-fuzzy">
Voir aussi: [https://www.freecadweb.org/api Autogenerated API documentation] et [[FreeCAD_Scripting_Basics/fr|Débuter avec les scripts FreeCAD]].
Voir aussi: [https://www.freecadweb.org/api Autogenerated API documentation] et [[FreeCAD_Scripting_Basics/fr|Débuter avec les scripts FreeCAD]].
</div>


<div class="mw-translate-fuzzy">
L'outil Rétrograder peut être utilisé dans une [[macros/fr|macro]] et dans la console [[Python/fr|Python]] en utilisant la fonction suivante :
L'outil Rétrograder peut être utilisé dans une [[macros/fr|macro]] et dans la console [[Python/fr|Python]] en utilisant la fonction suivante :
</div>


{{Code|code=
{{Code|code=
downgrade_list = downgrade(objects, delete=False, force=None)
downgrade_list = downgrade(objects, delete=False, force=None)
addList, deleteList = downgrade(objects, delete=False, force=None)
}}
}}


<div class="mw-translate-fuzzy">
* Rétrograde les {{incode|objects}} sélectionnés : soit un objet unique ou une liste d'objets.
* Rétrograde les {{incode|objects}} sélectionnés : soit un objet unique ou une liste d'objets.
* Si {{incode|delete}} est {{incode|True}}, les anciens objets sont supprimés.
* Si {{incode|delete}} est {{incode|True}}, les anciens objets sont supprimés.
* Si {{incode|force}} est donné, c'est la fonction interne qui force selon une certaine manière de déclasser. Cela peut être: {{incode|"explode"}}, {{incode|"shapify"}}, {{incode|"subtr"}}, {{incode|"splitFaces"}}, {{incode|"cut2"}}, {{incode|"getWire"}} ou {{incode|"splitWires"}}.
* Si {{incode|force}} est donné, c'est la fonction interne qui force selon une certaine manière de déclasser. Cela peut être: {{incode|"explode"}}, {{incode|"shapify"}}, {{incode|"subtr"}}, {{incode|"splitFaces"}}, {{incode|"cut2"}}, {{incode|"getWire"}} ou {{incode|"splitWires"}}.
* {{incode|upgrade_list}} est renvoyé laquelle liste contient deux listes : une liste de nouveaux objets ({{incode|addList}}) et une liste d'objets à supprimer ({{incode|deleteList}}).
* {{incode|upgrade_list}} est renvoyé laquelle liste contient deux listes : une liste de nouveaux objets ({{incode|addList}}) et une liste d'objets à supprimer ({{incode|deleteList}}).
</div>


Exemple :
Exemple :


{{Code|code=
{{Code|code=
import FreeCAD, Draft
import FreeCAD as App
import Draft

doc = App.newDocument()


circle = Draft.make_circle(1000)
# Create an union
Circle = Draft.makeCircle(1000)
rectangle = Draft.make_rectangle(2000, 800)
doc.recompute()
Rectangle = Draft.makeRectangle(2000, 800)


addList1, deleteList1 = Draft.upgrade([Circle, Rectangle], delete=True)
add_list1, delete_list1 = Draft.upgrade([circle, rectangle], delete=True)
union = addList1[0]


compound = add_list1[0]
# Downgrade the union twice
addList2, deleteList2 = Draft.downgrade(union, delete=False)
add_list2, delete_list2 = Draft.downgrade(compound, delete=False)
wire = addList2[0]
face = add_list2[0]
add_list3, delete_list3 = Draft.downgrade(face, delete=False)


box = doc.addObject("Part::Box", "Box")
list_edges, deleteList3 = Draft.downgrade(wire, delete=False)
box.Length = 2300
box.Width = 800
box.Height = 1000


add_list4, delete_list4 = Draft.downgrade(box, delete=True)
# Insert a solid box
Box = FreeCAD.ActiveDocument.addObject("Part::Box", "Box")
Box.Length = 2300
Box.Width = 800
Box.Height = 1000


doc.recompute()
list_faces, deleteList4 = Draft.downgrade(Box, delete=True)
}}
}}



Revision as of 09:26, 16 June 2021

Draft Rétrograder

Emplacement du menu
Modification → Rétrograder
Ateliers
Draft, Arch
Raccourci par défaut
D N
Introduit dans la version
-
Voir aussi
Draft Mettre à niveau, Draft Soustraction

Description

L'outil Draft Rétrograder rétrograde les objets sélectionnés de différentes manières.

Figure soustraite d'une autre figure puis rétrogradé en un fil fermé puis rétrogradé en segments

Utilisation

  1. Sélectionnez un ou plusieurs objets que vous souhaitez rétrograder.
  2. Il existe plusieurs façons de lancer la commande :
    • Appuyez sur le bouton Rétrograde les objets... de la barre d'outils Draft
    • Appuyez sur le raccourci clavier D puis N
    • Utilisez l'entrée Modification → Rétrograder dans le menu Draft
Remarque : Si aucun objet n'est sélectionné, vous serez invité à en sélectionner un.

Script

L'outil Rétrograder peut être utilisé dans une macro et dans la console Python en utilisant la fonction suivante :

downgrade_list = downgrade(objects, delete=False, force=None)
  • Rétrograde les objects sélectionnés : soit un objet unique ou une liste d'objets.
  • Si delete est True, les anciens objets sont supprimés.
  • Si force est donné, c'est la fonction interne qui force selon une certaine manière de déclasser. Cela peut être: "explode", "shapify", "subtr", "splitFaces", "cut2", "getWire" ou "splitWires".
  • upgrade_list est renvoyé laquelle liste contient deux listes : une liste de nouveaux objets (addList) et une liste d'objets à supprimer (deleteList).

Exemple :

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()