l'enregistrement des macros

Forum destiné aux questions et discussions en français
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Post Reply
zest02
Posts: 9
Joined: Fri Nov 01, 2019 7:03 am

l'enregistrement des macros

Post by zest02 »

Bonjour à tous,
je débute dans l'enregistrement des macros. Mon but c'est d'automatiser une fonction qui me permettrait de disposer des automatiquement des éléments (provenant d'un clonage) en leur donnant la bonne échelle et la position x, y , z, dans l'espace. chose que je fais très simplement manuellement. J'ai donc décider de procéder par étape, en commençant par le clonage. Mais voilà, ça bloque des le début: J'enregistre , je stop, puis j’efface le clone obtenu. Ensuite je lance la macro et, pas grand chose.... je regarde le journal des erreurs et, apparemment, une bibliothèque est inexistante. J'ouvre la macro et effectivement elle cette bibliothèque(import gui_clone) est appelé !
le journaldes erreurs:
13:16:04 Traceback (most recent call last):
File "/Applications/FREECAD/MACRO/NV_ESSAI.FCMacro", line 5, in <module>
import gui_clone
<class 'ModuleNotFoundError'>: No module named 'gui_clone'
13:16:31 Traceback (most recent call last):
File "/Applications/FREECAD/MACRO/NV_ESSAI.FCMacro", line 5, in <module>
import gui_clone
<class 'ModuleNotFoundError'>: No module named 'gui_clone'

La macro enregistrée:

# -*- coding: utf-8 -*-

Macro Begin: /Applications/FREECAD/MACRO/NV_ESSAI.FCMacro +++++++++++++++++++++++++++++++++++++++++++++++++
import FreeCAD
import gui_clone

# Gui.runCommand('Std_DlgMacroRecord',0)
### Begin command Draft_Clone
Gui.Selection.addSelection('NOUVELLE_NERVURE_CREUSE','Clone002')
c0 = Draft.clone(FreeCAD.ActiveDocument.getObject("Clone002"))
### End command Draft_Clone
Gui.Selection.addSelection('NOUVELLE_NERVURE_CREUSE','Clone003')
# Gui.Selection.clearSelection()

# Gui.runCommand('Std_ToggleVisibility',0)
# Gui.Selection.clearSelection()
Gui.Selection.addSelection('NOUVELLE_NERVURE_CREUSE','Clone003')
FreeCAD.getDocument('NOUVELLE_NERVURE_CREUSE').getObject('Clone003').Scale = (19.00000, 1.00000, 1.00000)

FreeCAD.getDocument('NOUVELLE_NERVURE_CREUSE').getObject('Clone003').Scale = (190.00000, 1.00000, 1.00000)

FreeCAD.getDocument('NOUVELLE_NERVURE_CREUSE').getObject('Clone003').Scale = (190.00000, 19.00000, 1.00000)

FreeCAD.getDocument('NOUVELLE_NERVURE_CREUSE').getObject('Clone003').Scale = (190.00000, 190.00000, 1.00000)

Macro End: /Applications/FREECAD/MACRO/NV_ESSAI.FCMacro +++++++++++++++++++++++++++++++++++++++++++++++++


Avez vous une explication?
merci d'avance
Thierry
User avatar
flachyjoe
Veteran
Posts: 1891
Joined: Sat Mar 31, 2012 12:00 pm
Location: Limoges, France

Re: l'enregistrement des macros

Post by flachyjoe »

Salut,
tu peux supprimer cette ligne, elle est inutile.

NB : pour intégrer du code dans un message, utilise les balises [code] [/code]
- Flachy Joe -
Image
Post Reply