node_calculator
node_calculator copied to clipboard
Avoid unnecessary setAttr-commands in Tracer
Currently
with noca.Tracer(pprint_trace=True):
b.tx = noca.Op.set_range(a.tx)
results in
var1 = cmds.createNode('setRange', name='nc_SET_RANGE_translateX_0_1_0_1_setRange')
cmds.connectAttr('A.translateX', var1 + '.valueX', force=True)
cmds.setAttr(var1 + '.minX', 0)
cmds.setAttr(var1 + '.maxX', 1)
cmds.setAttr(var1 + '.oldMinX', 0)
cmds.setAttr(var1 + '.oldMaxX', 1)
cmds.connectAttr(var1 + '.outValueX', 'B.translateX', force=True)
If min/max/oldMin/oldMax values are not different to default values they should not be traced:
var1 = cmds.createNode('setRange', name='nc_SET_RANGE_translateX_0_1_0_1_setRange')
cmds.connectAttr('A.translateX', var1 + '.valueX', force=True)
cmds.connectAttr(var1 + '.outValueX', 'B.translateX', force=True)