Macro Duplicate Selection/it: Difference between revisions
Renatorivo (talk | contribs) (Created page with "La discussione [http://forum.freecadweb.org/viewtopic.php?f=3&t=15994 Duplicate Objects when more than one face selected] nel forum di FreeCAD.") |
(Updating to match new version of source page) |
||
Line 1: | Line 1: | ||
{{Macro |
{{Macro|Icon=Text-x-python|Name=Macro Duplicate Selection|Description= This macro testing if one selection are duplicate.|Author=Mario52|Version=00.00 (06/06/2016)}} |
||
==Descrizione== |
==Descrizione== |
||
Questa macro testa se una selezione è duplicabile. Selezionare gli oggetti nella '''vista 3D''', se una selezione è duplicabile il mouse rimane bloccato su "ForbiddenCursor" fino a duplicazione avvenuta. |
Questa macro testa se una selezione è duplicabile. Selezionare gli oggetti nella '''vista 3D''', se una selezione è duplicabile il mouse rimane bloccato su "ForbiddenCursor" fino a duplicazione avvenuta. |
Revision as of 09:02, 6 September 2016
File:Text-x-python Macro Duplicate Selection |
Description |
---|
This macro testing if one selection are duplicate. Macro version: 00.00 (06/06/2016) Author: Mario52 |
Author |
Mario52 |
Download |
None |
Links |
Macros recipes How to install macros How to customize toolbars |
Macro Version |
00.00 (06/06/2016) |
Date last modified |
None |
FreeCAD Version(s) |
None |
Default shortcut |
None |
See also |
None |
Descrizione
Questa macro testa se una selezione è duplicabile. Selezionare gli oggetti nella vista 3D, se una selezione è duplicabile il mouse rimane bloccato su "ForbiddenCursor" fino a duplicazione avvenuta.
Uso
Avviare la macro, essa rimane residente in memoria.
Selezionare gli oggetti da duplicare. Mentre gli oggetti vengono duplicati il cursore del mouse viene bloccato su "ForbiddenCursor"
Script
Macro_Duplicate_Selection.FCMacro
# -*- coding: utf-8 -*-
import FreeCADGui
import PySide
from PySide import QtGui ,QtCore
from PySide.QtGui import *
from PySide.QtCore import *
__title__ = "Macro_Duplicate_Selection"
__author__ = "Mario52"
__url__ = "http://www.freecadweb.org/index-fr.html"
__version__ = "00.00"
__date__ = "06/06/2016"
__Help__ = "Start the macro select the object IN THE 3D VIEW the ForbiddenCursor stay if the selection is duplicate"
def selectionObject():
sel = FreeCADGui.Selection.getSelection()
x = []
del x[:]
for a in range(len(sel)):
x.append(sel[a].Name)
doublet = 0
for i in range(len(sel)):
for ii in range((i+1),len(sel)):
if x[i] == x[ii]:
doublet = 1
break
if doublet == 1:
QtGui.QApplication.setOverrideCursor(QtGui.QCursor(QtCore.Qt.ForbiddenCursor))
# FreeCAD.Console.PrintError("HELP "+sel[-1].Name+" duplicate selection"+"\n")
else:
QtGui.QApplication.setOverrideCursor(QtGui.QCursor(QtCore.Qt.ArrowCursor))
class SelObserver:
def addSelection(self,doc,obj,sub,pnt): # Selection
selectionObject()
def removeSelection(self,doc,obj,sub): # Effacer l'objet salectionne
selectionObject()
def setPreselection(self, doc, obj, sub):
selectionObject()
def clearSelection(self,doc): # Si clic sur l'ecran, effacer la selection
selectionObject()
# def setSelection(self,doc): # Selection dans Combo View pour quitter la fonction
# App.Console.PrintMessage("Fin Macro_Duplicate"+"\n")
# QtGui.QApplication.setOverrideCursor(QtGui.QCursor(QtCore.Qt.ArrowCursor))
# FreeCADGui.Selection.removeObserver(s)# desinstalle la fonction residente
s=SelObserver()
FreeCADGui.Selection.addObserver(s) # installe la fonction en mode resident
Link
La discussione Duplicate Objects when more than one face selected nel forum di FreeCAD.