Macro FlattenWire3Points/fr: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Created page with "Icône de la barre d'outils Image:Macro_FlattenWire3Points.png")
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{Macro/fr
<div class="mw-translate-fuzzy">
|Name=FlattenWire3Points
{{Macro/fr|Icon=Text-x-python|Name=FlattenWire3Points|Name/fr=FlattenWire3Points|Description=Cette macro aplatit les fils (Wire) du projet qui ne sont pas plan à la médiane de leurs coordonnées z|Author=Yorik|Version=1.0|Date=2016-02-06}}
|Icon=Macro_FlattenWire3Points.png
</div>
|Description=Cette macro aplatit les fils (Wire) du projet qui ne sont pas plan à la médiane de leurs coordonnées z
|Author=Yorik
|Version=1.0
|Date=2016-02-06
|FCVersion=All
|Download=[https://www.freecadweb.org/wiki/images/1/1e/Macro_FlattenWire3Points.png ToolBar Icon]
}}


==Description==
==Description==

Cette macro aplatit les fils qui ne sont pas planaires sur un plan défini par 3 points. Pour utiliser cette macro, sélectionnez les 3 premiers sommets d'un seul [[Draft Wire/fr|Draft Wire]].
Cette macro aplatit les fils qui ne sont pas planaires sur un plan défini par 3 points. Pour utiliser cette macro, sélectionnez les 3 premiers sommets d'un seul [[Draft Wire/fr|Draft Wire]].


==Script==
==Script==

Icône de la barre d'outils [[Image:Macro_FlattenWire3Points.png]]


'''Macro_FlattenWire3Points.FCMacro'''
'''Macro_FlattenWire3Points.FCMacro'''


{{Code|code=
{{MacroCode|code=


import FreeCAD,FreeCADGui,Draft
import FreeCAD,FreeCADGui,Draft

Latest revision as of 19:56, 7 July 2021

Other languages:

FlattenWire3Points

Description
Cette macro aplatit les fils (Wire) du projet qui ne sont pas plan à la médiane de leurs coordonnées z

Version macro : 1.0
Date dernière modification : 2016-02-06
Version FreeCAD : All
Téléchargement : ToolBar Icon
Auteur: Yorik
Auteur
Yorik
Téléchargement
ToolBar Icon
Liens
Version Macro
1.0
Dernière modification
2016-02-06
Version(s) FreeCAD
All
Raccourci clavier
None
Voir aussi
None

Description

Cette macro aplatit les fils qui ne sont pas planaires sur un plan défini par 3 points. Pour utiliser cette macro, sélectionnez les 3 premiers sommets d'un seul Draft Wire.

Script

Icône de la barre d'outils

Macro_FlattenWire3Points.FCMacro

import FreeCAD,FreeCADGui,Draft
 
 # check selection
 sel = FreeCADGui.Selection.getSelectionEx()
 ok = True
 if len(sel) != 1:
    FreeCAD.Console.PrintError("Please select 3 vertices from one Draft wire\n")
    ok = False
 sel = sel[0]
 if Draft.getType(sel.Object) not in ["Wire","BSpline"]:
    FreeCAD.Console.PrintError("Please select 3 vertices from one Draft wire\n")
    ok = False
 if len(sel.SubElementNames) != 3:
    FreeCAD.Console.PrintError("Please select 3 vertices from one Draft wire\n")
    ok = False
 for e in sel.SubElementNames:
    if not "Vertex" in e:
        FreeCAD.Console.PrintError("Please select 3 vertices from one Draft wire\n")
        ok = False
 
 if ok:
    # define a plane
    p1 = getattr(sel.Object.Shape,sel.SubElementNames[0]).Point
    p2 = getattr(sel.Object.Shape,sel.SubElementNames[1]).Point
    p3 = getattr(sel.Object.Shape,sel.SubElementNames[2]).Point
    p4 = p2.sub(p1).cross(p3.sub(p1))
    
    # project wire points
    points = []
    for p in sel.Object.Points:
        points.append(p.projectToPlane(p1,p4))
    sel.Object.Points = points