Macro Cut Circle/fr: Difference between revisions

From FreeCAD Documentation
m (Replaced content with "==Description==")
No edit summary
 
(20 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

{{Macro/fr
{{Macro/fr
|Name=Macro Cut Circle
|Name=Macro Cut Circle
|Name/fr=Macro Cut Circle
|Name/fr=Macro Cut Circle
|Icon=Macro_Cut_Circle.png
|Icon=Macro_Cut_Circle.png
|Description=Coupe un cercle(s) ou un arc(s) sélectionné(s) en plusieurs arcs contigus, les arcs créés sont colorés alternativement en rouge et blanc pour distinguer les différents arcs. Le nouveau cercle est créé dans la coordonnée réelle de l'objet, et non dans celle du corps. <br/>{{ColoredText|(Ligne de commande, collez cette macro complète dans la console Python)}}.
|Description=Découpe les cercles ou les arcs en plusieurs arcs. Les arcs créés peuvent être colorés alternativement pour les distinguer.<br/>{{ColoredText|(Ligne de commande, coller la macro complète dans la console Python)}}.
|Author=mario52
|Author=mario52
|Version=00.02
|Version=00.03
|Date=2015-03-09
|Date=2019-07-02
|FCVersion=Toutes
|Download=[https://wiki.freecad.org/images/9/93/Macro_Cut_Circle.png Icône de la barre d'outils]
}}
}}


==Description==
==Description==


This macro cut a circle(s) or arc(s) in multiple arcs, the arcs can be coloured alternately to distinguish.
Cette macro découpe les cercles ou les arcs en plusieurs arcs. Les arcs créés peuvent être colorés alternativement pour les distinguer.


[[File:Macro CutCircle 00.png|400px]]
[[File:Macro CutCircle 00.png|400px]]
{{Caption|CutCircle}}
{{Caption|CutCircle}}


<span id="Usage"></span>
==Utilisation==
==Utilisation==
Copiez la macro dans la console Python de FreeCAD, sélectionnez les arcs et cercles concernés, tapez la commande '''cutCirle''' dans la console Python de FreeCAD:


# Collez la macro '''cutCirle''' dans la [[Python_console/fr|console Python]].
pour voir les cercles et arcs découpés dans cet exemple cinq arcs contigus.
# Appuyez sur {{KEY|Entrée}} (le code est maintenant en mémoire).

# Sélectionnez un ou plusieurs cercles ou arcs.
l'objet(s) original(aux) n'est pas éffacé.
# Lancez la fonction {{Incode|cutCircle()}} avec 1 ou 2 arguments depuis la console Python :
#* Exemple avec 1 argument : {{Incode|cutCircle(4)}}. Ceci créera 4 nouveaux arcs pour chaque cercle ou arc sélectionné et s'arrêtera là (pas de coloration).
#* Exemple avec 2 arguments : {{Incode|cutCircle(6, 1)}}. Ceci créera 6 nouveaux arcs pour chaque cercle ou arc sélectionné, colorés alternativement en rouge et blanc comme indiqué dans l'image.
# L'objet original n'est pas supprimé.


==Script==
==Script==

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

'''Macro_Cut_Circle.FCMacro'''
'''Macro_Cut_Circle.FCMacro'''


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


# selection circle(s) (circles and arcs)
# selection circle(s) (circles and arcs)
# give number of cut, biColor 0/1
# give number of cut, biColor 0/1
# cut the circle to x arcs
# cut the circle to x arcs
# if biColor is <> 0 the arcs are coloured alternately Red White Red White ....
# if biColor is <> 0 the arcs are colored alternately Red White Red White ....
#
#
Line 88: Line 98:
App.ActiveDocument.recompute()
App.ActiveDocument.recompute()


#cutCircle(5, 1) # here with 5 arcs and coloured
#cutCircle(5, 1) # here with 5 arcs and colored
#cutCircle(4) #
#cutCircle(4) #


}}
}}

<span id="Example"></span>
==Exemple==
==Exemple==


{{Code|code=
{{Code|code=
cutCircle(5, 1) # here with 5 arcs and coloured
cutCircle(5, 1) # here with 5 arcs and colored
cutCircle(4) #
cutCircle(4) #
}}
}}


<span id="Project"></span>
==Projet==
==Projet==

Couper les cercles d'un cylindre.
Couper des cercles d'un cylindre.


==Version==
==Version==


ver 00.03 02/07/2019 : add "App.ActiveDocument.recompute()"
ver 00.03 02/07/2019 : ajout "App.ActiveDocument.recompute()"


ver 00.02 09/03/2015 : ajout de création des arcs colorés alternativement rouge et blanc ou non.
ver 00.02 09/03/2015 : ajout de création des arcs colorés alternativement rouge et blanc ou non.

Latest revision as of 12:21, 31 December 2023

Other languages:

Macro Cut Circle

Description
Découpe les cercles ou les arcs en plusieurs arcs. Les arcs créés peuvent être colorés alternativement pour les distinguer.
(Ligne de commande, coller la macro complète dans la console Python).

Version macro : 00.03
Date dernière modification : 2019-07-02
Version FreeCAD : Toutes
Téléchargement : Icône de la barre d'outils
Auteur: mario52
Auteur
mario52
Téléchargement
Icône de la barre d'outils
Liens
Version Macro
00.03
Dernière modification
2019-07-02
Version(s) FreeCAD
Toutes
Raccourci clavier
None
Voir aussi
None

Description

Cette macro découpe les cercles ou les arcs en plusieurs arcs. Les arcs créés peuvent être colorés alternativement pour les distinguer.

CutCircle

Utilisation

  1. Collez la macro cutCirle dans la console Python.
  2. Appuyez sur Entrée (le code est maintenant en mémoire).
  3. Sélectionnez un ou plusieurs cercles ou arcs.
  4. Lancez la fonction cutCircle() avec 1 ou 2 arguments depuis la console Python :
    • Exemple avec 1 argument : cutCircle(4). Ceci créera 4 nouveaux arcs pour chaque cercle ou arc sélectionné et s'arrêtera là (pas de coloration).
    • Exemple avec 2 arguments : cutCircle(6, 1). Ceci créera 6 nouveaux arcs pour chaque cercle ou arc sélectionné, colorés alternativement en rouge et blanc comme indiqué dans l'image.
  5. L'objet original n'est pas supprimé.

Script

Icône de la barre d'outils

Macro_Cut_Circle.FCMacro

# selection circle(s) (circles and arcs)
# give number of cut, biColor 0/1
# cut the circle to x arcs
# if biColor is <> 0 the arcs are colored alternately Red White Red White ....
# 
 
__title__   = "cutCircle"
__author__  = "Mario52"
__date__    = "02/07/2019"
__version__ = "00.03"

import Draft
global biscolor ; biscolor = 0
def cutCircle(number = 2, biColor = 0):
    global biscolor
    def defbiColor(objet):
        global biscolor
        if biscolor == 0:
            FreeCADGui.ActiveDocument.getObject(objet.Name).LineColor = (1.0,0.0,0.0) # 255 = 1 (10 = (1/255 * 10 ))
            biscolor = 1
        else:
            FreeCADGui.ActiveDocument.getObject(objet.Name).LineColor = (1.0,1.0,1.0) # 255 = 1 (10 = (1/255 * 10 ))
            biscolor = 0
    selection = FreeCADGui.Selection.getSelection()
    for piece in selection:
        nom = piece.Name
        if (nom[:6] == "Circle") or (nom[:8] == "Cylinder"):
            circonference = piece.Shape.Length
            rayon = piece.Radius
            placem = piece.Placement
 
            if (nom[:8] == "Cylinder"):
                pivot0 = float(piece.Angle/number)
                FreeCAD.Console.PrintMessage("Cylinder"+"\n")
            else:
                pivot0 = float(360/number)
                FreeCAD.Console.PrintMessage("Circle"+"\n")
            pivot1 = 0.0
            for i in range(number):
                cercle = Draft.makeCircle(radius=rayon,placement=placem,face=False,startangle=(pivot1),endangle=(pivot0+pivot1),support=None)
                if biColor != 0:
                    defbiColor(cercle)
                pivot1 += pivot0
        elif nom[:3] == "Arc":
            FreeCAD.Console.PrintMessage("Arc"+"\n")
            circonference = piece.Shape.Length
            rayon = piece.Radius
            placem = piece.Placement
            First = float(piece.FirstAngle)
            Last  = float(piece.LastAngle)
            pivot0 = abs((First - Last) / number)
            pivot1 = 0.0
            for i in range(number):
                cercle = Draft.makeCircle(radius=rayon,placement=placem,face=False,startangle=(pivot1+First),endangle=(pivot0+pivot1+First),support=None)
                if biColor != 0:
                    defbiColor(cercle)
                pivot1 += pivot0
    App.ActiveDocument.recompute()

#cutCircle(5, 1)  # here with 5 arcs and colored
#cutCircle(4)     #

Exemple

cutCircle(5, 1)  # here with 5 arcs and colored
cutCircle(4)     #

Projet

Couper des cercles d'un cylindre.

Version

ver 00.03 02/07/2019 : ajout "App.ActiveDocument.recompute()"

ver 00.02 09/03/2015 : ajout de création des arcs colorés alternativement rouge et blanc ou non.

ver 00.01 24/02/2015 :