Knob values displayed as percentage
-
const Knob1 = Content.getComponent("left"); Knob1.setControlCallback(onleftControl); inline function onleftControl(component, value) { Panel1.set("text", Math.round(value * 100) + "%"); Panel1.repaint(); this.setAttributeNormalized("DSPNetwork.leftjpanner.Pan", value); } const Panel1 = Content.getComponent("LeftPanel"); Panel1.setPaintRoutine(function(g) { var a = this.getLocalBounds(0); g.setColour(this.get("textColour")); g.drawAlignedText(this.get("text"), a, "centred"); }); -
@Jeetender Take a look at the snippet I posted above and my comment in the post above that.
-
@David-Healey yes i saw the snippet and ure comment
const DspNet = Synth.getEffect("Script FX1"); const Knob1 = Content.getComponent("left"); Knob1.setControlCallback(onleftControl); inline function onleftControl(component, value) { Panel1.set("text", Math.round(value * 100) + "%"); Panel1.repaint(); DspNet.setAttributeNormalized("Script Fx1.Left", value); // left is a macro in the dspnetowrk } const Panel1 = Content.getComponent("LeftPanel"); Panel1.setPaintRoutine(function(g) { var a = this.getLocalBounds(0); g.setColour(this.get("textColour")); g.drawAlignedText(this.get("text"), a, "centred"); }); -
@Jeetender said in Knob values displayed as percentage:
"Script Fx1.Left"
Did I use quotation marks in the snippet?
-
DspNet.setAttributeNormalized(Script FX1.Left, value);Found identifier when expecting ',' error after this line
-
@Jeetender Generally spaces are not good in code. Your reference is called DspNet not Script FX1 - so
DspNet.Left- you should name things consistently though so that you are using the same naming everywhere, your code will get very confusing otherwise. -
yea iam trying to clean up with small error, now as iam using
DspNet.setAttributeNormalized(DspNet.Left, value);
it give sout an error fucntion not found..
const DspNet = Synth.getEffect("Script FX1"); const Knob1 = Content.getComponent("left"); Knob1.setControlCallback(onleftControl); inline function onleftControl(component, value) { Panel1.set("text", Math.round(value * 100) + "%"); Panel1.repaint(); DspNet.setAttributeNormalized(DspNet.Left, value); } const Panel1 = Content.getComponent("LeftPanel"); Panel1.setPaintRoutine(function(g) { var a = this.getLocalBounds(0); g.setColour(this.get("textColour")); g.drawAlignedText(this.get("text"), a, "centred"); }); -
@Jeetender said in Knob values displayed as percentage:
it give sout an error fucntion not found..
What is the full error
-
Interface:! Line 30, column 31: function not found {{SW50ZXJmYWNlfHw4NTZ8MzB8MzE=}}
-
@Jeetender What is the function on Line 30?
-
@David-Healey said in Knob values displayed as percentage:
@Jeetender What is the function on Line 30?
const DspNet = Synth.getEffect("Script FX1"); const Knob1 = Content.getComponent("left"); Knob1.setControlCallback(onleftControl); inline function onleftControl(component, value) { Panel1.set("text", Math.round(value * 100) + "%"); Panel1.repaint(); DspNet.setAttributeNormalized(DspNet.Left, value); // line 30 } const Panel1 = Content.getComponent("LeftPanel"); Panel1.setPaintRoutine(function(g) { var a = this.getLocalBounds(0); g.setColour(this.get("textColour")); g.drawAlignedText(this.get("text"), a, "centred"); }); -
@Jeetender
setAttributeNormalizedDo you see this function in the API browser? -
@David-Healey it was written in my notes.. setAttribute was giving an error so i added setattributnormalized as in java, but now it works, the controller are working and the values are displaying.... but now as i set the attribut for the slider, it gives an error
Line 85, column 21: Illegal type: string, expected: number {{SW50ZXJmYWNlfHwyMTAyfDg1fDIx}}
const Knob3 = Content.getComponent("Gain"); Knob3.setControlCallback(onGainControl); inline function onGainControl(component, value) { var dbValue; if (value < 0.567) { dbValue = ((value + 1) / (0.567 + 1)) * 60 - 60; } else { dbValue = ((value - 0.567) / (1 - 0.567)) * 12; } Panel3.set("text", Math.round(dbValue) + " dB"); Panel3.repaint(); DspNet.setAttribute("DspNet.gain", value); // this is line 85 } const Panel3 = Content.getComponent("GainPanel"); Panel3.setPaintRoutine(function(g) { var c = this.getLocalBounds(0); g.setColour(this.get("textColour")); g.drawAlignedText(this.get("text"), c, "centred"); }); -
@Jeetender said in Knob values displayed as percentage:
"DspNet.gain"
You've added quotation marks again
-
@David-Healey
you know what david, my screen time for today is beyond limits, i think i should take a break and continue tomarrow.. too much coding for today.. But thank you the plugin is done.