kfactor e radius Sheet Metal

Forum per le domande e le discussioni in Italiano
Forum rules
regole del forum e le informazioni utili

Importante: PRIMA di chiedere aiuto leggete qui!
Post Reply
FIBMCad
Posts: 17
Joined: Fri Mar 09, 2018 8:27 pm

kfactor e radius Sheet Metal

Post by FIBMCad »

Buona sera a tutti. Da un po' di tempo sto utilizzando il workbench Sheet Metal per piccoli progetti casalinghi.
Vorrei sapere se è possibile settare i valori di default per il fattore neutro (kfactor) ed il raggio di piega (radius) per tutte le pieghe del disegno.
Non trovando niente, ho provato a costruire una macro per il kfactor, ma non essendo esperto, mi sono bloccato nella ricerca dei nomi delle pieghe presentinel disegno...
Di seguito quello che ho fatto:

K=0.1
FreeCAD.ActiveDocument.getObject("Bend").kfactor=K
FreeCAD.ActiveDocument.getObject("Bend001").kfactor=K
...
FreeCAD.ActiveDocument.recompute()

Se si riuscisse ad eseguire iterativamente il comando su tutte le pieghe, si avrebbe la soluzione.
Qualcuno conosce una via più semplice?
Grazie in anticipo.
User avatar
easyw-fc
Veteran
Posts: 3629
Joined: Thu Jul 09, 2015 9:34 am

Re: kfactor e radius Sheet Metal

Post by easyw-fc »

Fra88 wrote: Fri Dec 28, 2018 11:01 pm Buona sera a tutti. Da un po' di tempo sto utilizzando il workbench Sheet Metal per piccoli progetti casalinghi.
Vorrei sapere se è possibile settare i valori di default per il fattore neutro (kfactor) ed il raggio di piega (radius) per tutte le pieghe del disegno.
Non trovando niente, ho provato a costruire una macro per il kfactor, ma non essendo esperto, mi sono bloccato nella ricerca dei nomi delle pieghe presenti nel disegno...
Di seguito quello che ho fatto:

K=0.1
FreeCAD.ActiveDocument.getObject("Bend").kfactor=K
FreeCAD.ActiveDocument.getObject("Bend001").kfactor=K
...
FreeCAD.ActiveDocument.recompute()

Se si riuscisse ad eseguire iterativamente il comando su tutte le pieghe, si avrebbe la soluzione.
Qualcuno conosce una via più semplice?
Grazie in anticipo.
Ciao,
puoi usare questo codice:

Code: Select all

#!/usr/bin/python
# -*- coding: utf-8 -*-

import FreeCAD, FreeCADGui

k = 0.1
sel = FreeCADGui.Selection.getSelection()
if len(sel) > 0:
    for o in sel:
        if hasattr(o,'kfactor'):
            o.kfactor = k
    FreeCAD.ActiveDocument.recompute()
    print('kfactor assigned to:',k)
La macro funziona sula selezione che operi nel documento.
Sarà sufficiente selezionare la 'Bend' più 'esterna' per cambiare tutte le 'Bends'
FIBMCad
Posts: 17
Joined: Fri Mar 09, 2018 8:27 pm

Re: kfactor e radius Sheet Metal

Post by FIBMCad »

Grazie mille per la risposta, oggi pomeriggio faccio una prova, se funziona proverò a modificare il codice per poter variare anche il raggio di piega. Buona giornata
FIBMCad
Posts: 17
Joined: Fri Mar 09, 2018 8:27 pm

Re: kfactor e radius Sheet Metal

Post by FIBMCad »

Ciao easyw-fc.
Ho fatto un test.
Per rendere la cosa visibile, ho modificato lo script sostituendo la variabile kfactor con radius.
Selezionando la piega più esterna, lo script agisce solo su questa.
Selezionando tutte le pieghe invece, lo script lemodifica tutte.

Per il resto sembra funzionare bene.
Buona giornata.
User avatar
easyw-fc
Veteran
Posts: 3629
Joined: Thu Jul 09, 2015 9:34 am

Re: kfactor e radius Sheet Metal

Post by easyw-fc »

Ciao,
se vuoi questa versione modifica tutte le pieghe del documento attivo:

Code: Select all

#!/usr/bin/python
# -*- coding: utf-8 -*-

import FreeCAD,FreeCADGui

k = 0.3
doc = FreeCAD.ActiveDocument

for o in doc.Objects:
    if hasattr(o,'kfactor'):
            o.kfactor = k
    FreeCAD.ActiveDocument.recompute()
    print('kfactor assigned to:',k)
Post Reply