def testGettingKnobValues(self): params = KnobConvertersTest.__parameters() knobHolder = KnobConvertersTest.KnobHolder() IECoreNuke.createKnobsFromParameter(knobHolder, params) knobs = knobHolder.knobs() IECoreNuke.setParameterFromKnobs(knobHolder, params) self.assertEqual(params["A"].getNumericValue(), 1) self.assertEqual(params["B"]["C"].getNumericValue(), 2.0) self.assertEqual(params["B"]["D"].getNumericValue(), 3.0) knobs["parm_A"].setValue(10) knobs["parm_B_C"].setValue(20.0) knobs["parm_B_D"].setValue(30.0) knobs["parm_E"].setValue("40") knobs["parm_F_G"].setValue("50 60 70") knobs["parm_F_H"].setValue("80") knobs["parm_F_I"].setValue("90") knobs["parm_J"].setValue("100\n110\n120") knobs["parm_K"].setValue("/tmp2/test.dpx") knobs["parm_L"].setValue("/tmp2") knobs["parm_M"].setValue("/tmp2/test.%02d.dpx") knobs["parm_N"].setValue(False) knobs["parm_O"].setValue("preset3") IECoreNuke.setParameterFromKnobs(knobHolder, params) self.assertEqual(params["A"].getNumericValue(), 10) self.assertEqual(params["B"]["C"].getNumericValue(), 20.0) self.assertEqual(params["B"]["D"].getNumericValue(), 30.0) self.assertEqual(params["E"].getTypedValue(), "40") self.assertEqual(params["F"]["G"].getValue(), IECore.FloatVectorData([50, 60, 70])) self.assertEqual(params["F"]["H"].getValue(), IECore.IntVectorData([80])) self.assertEqual(params["F"]["I"].getValue(), IECore.DoubleVectorData([90])) self.assertEqual(params["J"].getValue(), IECore.StringVectorData(["100", "110", "120"])) self.assertEqual(params["K"].getTypedValue(), "/tmp2/test.dpx") self.assertEqual(params["L"].getTypedValue(), "/tmp2") self.assertEqual(params["M"].getTypedValue(), "/tmp2/test.##.dpx") self.assertEqual(params["N"].getTypedValue(), False) self.assertEqual( params["O"].getValue(), IECore.TransformationMatrixfData( IECore.TransformationMatrixf(IECore.V3f(1), IECore.Eulerf(), IECore.V3f(4)))) # raises exception when trying to convert an invalid file sequence syntax knobs["parm_M"].setValue("/tmp2/test.%2d.dpx") self.assertRaises(RuntimeError, IECoreNuke.setParameterFromKnobs, knobHolder, params)
def testGettingKnobValues(self): params = KnobConvertersTest.__parameters() knobHolder = KnobConvertersTest.KnobHolder() IECoreNuke.createKnobsFromParameter(knobHolder, params) knobs = knobHolder.knobs() IECoreNuke.setParameterFromKnobs(knobHolder, params) self.assertEqual(params["A"].getNumericValue(), 1) self.assertEqual(params["B"]["C"].getNumericValue(), 2.0) self.assertEqual(params["B"]["D"].getNumericValue(), 3.0) knobs["parm_A"].setValue(10) knobs["parm_B_C"].setValue(20.0) knobs["parm_B_D"].setValue(30.0) knobs["parm_E"].setValue("40") knobs["parm_F_G"].setValue("50 60 70") knobs["parm_F_H"].setValue("80") knobs["parm_F_I"].setValue("90") knobs["parm_J"].setValue("100\n110\n120") knobs["parm_K"].setValue("/tmp2/test.dpx") knobs["parm_L"].setValue("/tmp2") knobs["parm_M"].setValue("/tmp2/test.%02d.dpx") knobs["parm_N"].setValue(False) knobs["parm_O"].setValue("preset3") IECoreNuke.setParameterFromKnobs(knobHolder, params) self.assertEqual(params["A"].getNumericValue(), 10) self.assertEqual(params["B"]["C"].getNumericValue(), 20.0) self.assertEqual(params["B"]["D"].getNumericValue(), 30.0) self.assertEqual(params["E"].getTypedValue(), "40") self.assertEqual(params["F"]["G"].getValue(), IECore.FloatVectorData([50, 60, 70])) self.assertEqual(params["F"]["H"].getValue(), IECore.IntVectorData([80])) self.assertEqual(params["F"]["I"].getValue(), IECore.DoubleVectorData([90])) self.assertEqual(params["J"].getValue(), IECore.StringVectorData(["100", "110", "120"])) self.assertEqual(params["K"].getTypedValue(), "/tmp2/test.dpx") self.assertEqual(params["L"].getTypedValue(), "/tmp2") self.assertEqual(params["M"].getTypedValue(), "/tmp2/test.##.dpx") self.assertEqual(params["N"].getTypedValue(), False) self.assertEqual( params["O"].getValue(), IECore.TransformationMatrixfData( IECore.TransformationMatrixf(IECore.V3f(1), IECore.Eulerf(), IECore.V3f(4)) ), ) # raises exception when trying to convert an invalid file sequence syntax knobs["parm_M"].setValue("/tmp2/test.%2d.dpx") self.assertRaises(RuntimeError, IECoreNuke.setParameterFromKnobs, knobHolder, params)
def testKnobCreation( self ) : knobHolder = KnobConvertersTest.KnobHolder() IECoreNuke.createKnobsFromParameter( knobHolder, KnobConvertersTest.__parameters() ) knobs = knobHolder.knobs() self.assertEqual( knobs["parm_A"].getValue(), 1 ) self.assertEqual( knobs["parm_B_C"].getValue(), 2.0 ) self.assertEqual( knobs["parm_B_D"].getValue(), 3.0 ) self.assertEqual( knobs["parm_E"].getText(), "4" ) self.assertEqual( knobs["parm_F_G"].getText(), "5.0 6.0 7.0" ) self.assertEqual( knobs["parm_F_H"].getText(), "8" ) self.assertEqual( knobs["parm_F_I"].getText(), "" ) self.assertEqual( knobs["parm_J"].getText(), "10\n11\n12" ) self.assertEqual( knobs["parm_K"].getText(), "/tmp/test.dpx" ) self.assertEqual( knobs["parm_L"].getText(), "/tmp" ) self.assertEqual( knobs["parm_M"].getText(), "/tmp/test.%04d.dpx" ) self.assertEqual( knobs["parm_N"].getValue(), True ) self.assertEqual( knobs["parm_O"].value(), "preset0" )
def testKnobCreation(self): knobHolder = KnobConvertersTest.KnobHolder() IECoreNuke.createKnobsFromParameter(knobHolder, KnobConvertersTest.__parameters()) knobs = knobHolder.knobs() self.assertEqual(knobs["parm_A"].getValue(), 1) self.assertEqual(knobs["parm_B_C"].getValue(), 2.0) self.assertEqual(knobs["parm_B_D"].getValue(), 3.0) self.assertEqual(knobs["parm_E"].getText(), "4") self.assertEqual(knobs["parm_F_G"].getText(), "5.0 6.0 7.0") self.assertEqual(knobs["parm_F_H"].getText(), "8") self.assertEqual(knobs["parm_F_I"].getText(), "") self.assertEqual(knobs["parm_J"].getText(), "10\n11\n12") self.assertEqual(knobs["parm_K"].getText(), "/tmp/test.dpx") self.assertEqual(knobs["parm_L"].getText(), "/tmp") self.assertEqual(knobs["parm_M"].getText(), "/tmp/test.%04d.dpx") self.assertEqual(knobs["parm_N"].getValue(), True) self.assertEqual(knobs["parm_O"].value(), "preset0")
def testSettingKnobValues( self ) : params = KnobConvertersTest.__parameters() knobHolder = KnobConvertersTest.KnobHolder() IECoreNuke.createKnobsFromParameter( knobHolder, params ) # modify parameters params[ 'A' ] = 2 params[ 'F' ][ 'G' ] = IECore.FloatVectorData() params[ 'F' ][ 'I' ] = IECore.DoubleVectorData( [ 9 ] ) params[ 'M' ] = "/tmp/anotherTest.%d.dpx" params[ 'N' ] = False params[ 'O' ] = IECore.TransformationMatrixfData(IECore.TransformationMatrixf(imath.V3f(1), imath.Eulerf(), imath.V3f(3))) IECoreNuke.setKnobsFromParameter( knobHolder, params ) knobs = knobHolder.knobs() self.assertEqual( knobs["parm_A"].getValue(), 2 ) self.assertEqual( knobs["parm_F_G"].getText(), "" ) self.assertEqual( knobs["parm_F_I"].getText(), "9.0" ) self.assertEqual( knobs["parm_M"].getText(), "/tmp/anotherTest.%d.dpx" ) self.assertEqual( knobs["parm_N"].getValue(), False ) self.assertEqual( knobs["parm_O"].value(), "preset2" )
def testSettingKnobValues(self): params = KnobConvertersTest.__parameters() knobHolder = KnobConvertersTest.KnobHolder() IECoreNuke.createKnobsFromParameter(knobHolder, params) # modify parameters params['A'] = 2 params['F']['G'] = IECore.FloatVectorData() params['F']['I'] = IECore.DoubleVectorData([9]) params['M'] = "/tmp/anotherTest.%d.dpx" params['N'] = False params['O'] = IECore.TransformationMatrixfData( IECore.TransformationMatrixf(IECore.V3f(1), IECore.Eulerf(), IECore.V3f(3))) IECoreNuke.setKnobsFromParameter(knobHolder, params) knobs = knobHolder.knobs() self.assertEqual(knobs["parm_A"].getValue(), 2) self.assertEqual(knobs["parm_F_G"].getText(), "") self.assertEqual(knobs["parm_F_I"].getText(), "9.0") self.assertEqual(knobs["parm_M"].getText(), "/tmp/anotherTest.%d.dpx") self.assertEqual(knobs["parm_N"].getValue(), False) self.assertEqual(knobs["parm_O"].value(), "preset2")