naturalmente non sono proprio riuscito a creare lo snap come lo volevo io e quindi ho pensato di fare un'altro script che sarebbe utilissimo e che dovrebbe sopperire ad una mancanza del soft che fino ad oggi è stata ignorata da Maxon
riguarda il FFD free form deformation... che in cinema si applica in modo molto macchinoso
in 3ds max ed in maya per applicarlo è sufficiente selezionare l'oggetto o una selezione di un oggetto ed applicandolo il ffd prendera la stessa posizione e dimension dell'oggetto o della selezione, molto comodo e senza possibilita di errori o parti che non vengano incluse anche in oggetti molto complessi, invece in cinema va applicato, quindi va ridimensionato a seconda dell'oggetto a cui applicarlo... ma attenzione che deve essere fatto tramite l'object properties... se si cambia la dimensione nel viewport si ridimensiona anche l'ggetto a cui va applicato
tutta la premessa perche ho creato un piccolo script che dovrebbe farlo in automatico, allo stesso modo che 3ds o maya
MA NON FUNZIONA!!!!!!!
viene applicato ma nonostante nell'object properties ci siano scritte le corrette misure del modificatore... non le prende, cioe rimane della misura standard....
qui c'e il codice, se qualcuno volesse dare una mano farebbe un regalo alla comunita di c4d users
Codice: Seleziona tutto
#FFD Applicatore Python
import c4d
from c4d import gui
def main():
ModFFD = c4d.BaseObject(5108)
OggSelezionato = doc.GetActiveObjects(0)
if len(OggSelezionato)>0:
for ListOb in OggSelezionato:
BRad = ListOb.GetRad()
op.DelBit(c4d.BIT_ACTIVE)
ModFFD.SetBit(c4d.BIT_ACTIVE)
ModFFD[c4d.FFDOBJECT_SIZE]=(BRad*2)
doc.InsertObject(ModFFD,ListOb)
doc.AddUndo(c4d.UNDOTYPE_NEW, ModFFD)
doc.EndUndo()
c4d.EventAdd()
else:
gui.MessageDialog('Devi selezionare un oggetto')
if __name__=='__main__':
main()
FOLLOW US