Macro Repro Wire

From FreeCAD Documentation
Revision as of 07:34, 25 June 2016 by FuzzyBot (talk | contribs) (FuzzyBot moved page Macro ReproWire/fr to Macro Repro Wire/fr without leaving a redirect: Part of translatable page "Macro ReproWire".)

File:Macro ReproWire Macro_ReproWire

Description
Cette macro fait une copie de l'objet ou subObjet sélectionné.

Auteur: Mario52
Auteur
Mario52
Téléchargement
None
Liens
Version Macro
1.0
Dernière modification
None
Version(s) FreeCAD
None
Raccourci clavier
None
Voir aussi
None

Description

Cette macro crée une copie de l'arête, face, objet ou sous objet sélectionné.

Reproduction du fil objet ou face sélectionné
Reproduction du fil objet ou face sélectionné

Utilisation

Sélectionnez votre objet wire face ou vos objets et démarrez la macro pour créer votre copie, les faces peuvent être extrudées.

Les copies sont colorées en rouge et renommées en Shapexxx + nom original

Script

Macro_ReproWire.FCMacro l'icône pour votre barre d'outils icône pour votre barre d'outils

# -*- coding: utf-8 -*-
from __future__ import unicode_literals
import codecs   #https://docs.python.org/2/howto/unicode.html
import Part,Draft
#
#__title__="Macro_ReproWire"
#__author__ = "Mario52"
#__url__     = "http://www.freecadweb.org/index-fr.html"
#__version__ = "00.01"
#__date__    = "24/10/2015"
#

sel = Gui.Selection.getSelection()
s   = Gui.Selection.getSelectionEx()

try:
    if len(sel) != 0:
            print "Object(s) : ", len(sel), " , SubObject(s) : ", len(s)
            i2 = ii2 = -1 
            for i in s:
                i2 += 1
                ii2 = -1
                try:
                    FreeCADGui.Selection.getSelectionEx()[i2].SubObjects[ii2]
                    for ii in i.SubElementNames:
#                        print "SubObject"
                        ii2 += 1
                        Part.show(FreeCADGui.Selection.getSelectionEx()[i2].SubObjects[ii2].copy())   # create repro shape subObject
                        print i2+1 ,"/", ii2+1 ,"/", len(s) ," ", i.ObjectName ," ", ii               # display the info SubObject
                        a = App.ActiveDocument.ActiveObject
                        #    object Name  / original object Name / SubObject Name
                        a.Label = a.Name + " " + i.ObjectName + " " + ii                              # Label for the repro shape
                        try:
                            FreeCADGui.activeDocument().activeObject().LineColor  = (1.0,0.0,0.0)     # give LineColor
                            FreeCADGui.activeDocument().activeObject().PointColor = (1.0,0.0,0.0)     # give PointColor
                            FreeCADGui.activeDocument().activeObject().ShapeColor = (1.0,0.0,0.0)     # give ShapeColor
                        except Exception:
                            None
                except Exception:
#                    print "Not SubObject"
                    Part.show(sel[i2].Shape)                                                          # create repro shape object
                    print i2+1 ,"/", ii2+1 ,"/", len(s) ," ", sel[i2].Name                            # display the info SubObject
                    a = App.ActiveDocument.ActiveObject
                    #        object Name  /  original object Name
                    a.Label =a.Name + " " +  sel[i2].Name                                             # Label for the repro shape
                    try:
                        FreeCADGui.activeDocument().activeObject().LineColor  = (1.0,0.0,0.0)         # give LineColor
                        FreeCADGui.activeDocument().activeObject().PointColor = (1.0,0.0,0.0)         # give PointColor
                        FreeCADGui.activeDocument().activeObject().ShapeColor = (1.0,0.0,0.0)         # give ShapeColor
                    except Exception:
                        None
    else :
        print "Select one object"
except Exception:
    print "Unexpected error"

Version

00.01 24/10/2015 : extension à tous les objets

00.00 22/10/2015 :

Liens

Le forum are there any tools to extrude only selected surface from a sketch?


Other languages: