diff --git a/PARMmenu.xml b/PARMmenu.xml index c8c3ce57..2b35826b 100644 --- a/PARMmenu.xml +++ b/PARMmenu.xml @@ -139,11 +139,22 @@ except: len(kwargs['parms'])>0 and type(kwargs['parms'][0].parmTemplate()) is hou.FloatParmTemplate + + + + len(kwargs['parms'])>0 and type(kwargs['parms'][0].parmTemplate()) is hou.FloatParmTemplate + + + + diff --git a/otls/base/apply_xform_ql_SOP.otl b/otls/base/apply_xform_ql_SOP.otl index 9b5b99eb..ddf88b7e 100644 Binary files a/otls/base/apply_xform_ql_SOP.otl and b/otls/base/apply_xform_ql_SOP.otl differ diff --git a/otls/future/peak_ql_SOP.otl b/otls/future/peak_ql_SOP.otl index d0e30eea..8c14488f 100644 Binary files a/otls/future/peak_ql_SOP.otl and b/otls/future/peak_ql_SOP.otl differ diff --git a/otls/future/volume_retime_ql_SOP.otl b/otls/future/volume_retime_ql_SOP.otl index 9850a81e..3979e539 100644 Binary files a/otls/future/volume_retime_ql_SOP.otl and b/otls/future/volume_retime_ql_SOP.otl differ diff --git a/scripts/python/qlibutils.py b/scripts/python/qlibutils.py index 3241e06b..49769dc6 100644 --- a/scripts/python/qlibutils.py +++ b/scripts/python/qlibutils.py @@ -279,7 +279,7 @@ def toggle_abs_rel_path(kwargs): pass -def add_parm_value_multiplier(kwargs): +def add_parm_value_multiplier(kwargs, add_exponent=False): """Adds a value/multipler parameter pair to the specified parameter. (Called from PARMmenu.xml) """ @@ -295,8 +295,11 @@ def add_parm_value_multiplier(kwargs): pl = t.label() pvn = '%s_value' % pn pmn = '%s_mult' % pn + pxn = '%s_exp' % pn t = hou.FloatParmTemplate(name=p.name(), label="...", num_components=1) + expr = "ch('%s') * ch('%s')" % (pvn, pmn, ) + if not n.parm(pvn) and not n.parm(pmn): # value t.setName(pvn) @@ -310,10 +313,22 @@ def add_parm_value_multiplier(kwargs): t.setMaxValue(2.0) t.setDefaultValue( (1.0, ) ) g.insertAfter(pvn, t) + + if add_exponent and not n.parm(pxn): + # exp + t.setName(pxn) + t.setLabel('%s (exp)' % pl) + t.setMinValue(0.001) + t.setMaxValue(4.0) + t.setDefaultValue( (2.0, ) ) + g.insertAfter(pmn, t) + + expr = "ch('%s') * pow(ch('%s'), ch('%s'))" % (pvn, pmn, pxn, ) + # add parms n.setParmTemplateGroup(g) - p.setExpression("ch('%s') * ch('%s')" % (pvn, pmn, ) ) + p.setExpression(expr) else: hou.ui.setStatusMessage("Value/multiplier params already exist for %s" % p.path(), severity=hou.severityType.Warning)