@DanH I have this one if you are able to scrap it for your purposes 
It work's best when the dimesnsions of the slider are square*
HiseSnippet 2007.3ocuXstbiaaElz6psYUaSSloO.X7zsCkWFtTTV9R1YGe2odVeQijSlMiG2MPjPhnlhPCIjjUR1+02j9Hz2k9BzWf9+8GoG.vKP1xWy1xYrEv4F9vAmyAWZkv7IoorDCypmNcHwv72UoyzXd3NgXZrwA6ZX94UNBmxIIHEosmNDmlRBLLMex2HHX97mZH+9OarMNBG6SJIYX7cLpO4P5.JujZqMeKMJZeb.4T5.MoWdyC7Yw6vhXi.77jJtFCw9Wf6SNFKDagJF+EbZng4RU5V22kznqOF2EuNYs0Z1c40VccLodP8Uatx5McWu6JMWcEeCymsW.kyR5vwbRpg4S2lELsSHaRrZ.9NZJsaDQzotQGXjUj2mEEHlhBpF6DRiBZk6nRM.qzpzs8Dka6OV4HZ.sfdo66KjLPkZn6.MWXV38jYfW8aBdyARlZP5oJH8kU53mPGxK4HvyusxAwvpYOLrNoCEkrFKP+CU1gARDycFfufreBzoPCKOWWaD7uZutZUXsJkiFiSPQ3du+hXVWOzaP4J6mPf4zgLebzgL1EaEGrOgDYAJVp2aAcpqoSeBeG1fgrXni0hRtKdME7tUE7DJTUppSJgeswu.pfXR4uSop9pWgdy79DLd6wmr8Wi5r0QsNbOzd6dvomz9lkuvpNIj9TQN09ih84TVr0hAI3IsYbbxzNQz.Rxh1nd4L6aiXc+a0p9SUQvGX95NnswoDz.BOg5mh9ynti50ijH4K7SXvGAp3fgEAazDnG9LuysQgxVMN+0ERtKP4HLOzY.M1ZBHQsRdI.ucQKgbcZ7Zwv1ljR+Qxq5.NKRgP9WJso64nWhl7JOaj+TIg5BBgK45rL3ByvsmCZ2D1PTZHNfMovDAzTePm1DeNNteDwBr4WgRjlR9axRdx+ogMkItV7VKXp.wXYrcvAA6EEQGlRrDCRl98cDdaAR5HEChwGHUToksDP1HUgnTmITd3VQCCwV4T5FA0krA+x5MqI.lqSSazYtpldmWqbF2vA0YT7EjXTBMteI5UzdibjbHWNDGC0arRTNa2BbBwleSBNfBSv8gRlVmIoK9tufSMRvxSQy5maeOrR+DxTgQ7.afJsBrll01S2hkjanYcdxHUbx4ESndvrHeEQoglyZYGzIiD6zzk7ijnBmkr2M3q79D4qbgoobbjdJUq6mipvD00LA3OTM8zrVAwGfORpflKpoCZqD+YClvI9mFR8unHa00605LaiCfNuAI7X0cbaNKSHoSv7LYNmR5rDu7NpeEof4szpezsu.OR6O+LQo.hDQ3GqrAzF8UdhTF3eqpu9o7oVW2YKpkQ4jAJN0kqXqUalzY43IGLazO8A6BuhVMiw3HEXuArVHHINXKjZRI.Jrv4431XIn4RBj.1YD4XVx.bDTOLHWunaZhtlszh2qYpbpFxFSR94eVzzOBlCjfZafthO.80Wghmc843QTv5Ztj73oUbj6ohDatCaiDR6GFA+wS+UjTMID.UdFwUJkeKpKlMc6qnaKBTUZ+xLseot12QViVsdwxY+HVZZdAjDRvH+h5GtM+UU+nbpJp0JGGYADUq6WAjBaHlvE1.lupldZlqf3CnBhTAMmQWx3xpoWwYr5mFmAjZZqFmrpoie3UScapYCYkywEkSGWVNc7cWNUjJTVNETvFkMcWVKQXUGzAwATeLbZbT.iWVizUVGPdFoVG.6uuJT3BWWijmimdM039B4A0dIxBjCpi5VCFuaovALfsKpPCwRZzemjtLMPNb9rTKXDpsj3jFqAFOnslzeuR5o4RmBmoatR++kZP5QgmE7N3XUeO7WawFIh+qeLo0bP6PDWx.0OgACbYpqr67CWaz7Syd+KKRckiiJ2U07Al7VW2Hh7TUaOcCVR9gj+J0PyWstC5PbWHGlStrLLkGJV5CUGJpLjfikatikyr7CkCAB7P3ZA1vOZakyujCxZoshqV9kQB0Jvq3aCU7UBaTbfUQjcMv3hNovkQnWNiBp.EAh0Vx1mIt01IWNsOIFtuScu4rCYtZptyjTuErSULI3TfqEfcX1.20YQeHF.hSDWC7CBuV07qQgXwGy3jShsD2j54U+PUzUY0q2b4INrPBKJhjLW1hGwH41TzJdzftDXaLkWJWP3h5yd6+mc+t8uu5rKZBxhOHlxOYHIq+s+7EFYG9wvvbgLDBhxkuYvmm8lApKgZPAi7apHuMsgD7YOVyOzq2+ZCi6sxdyn7lMZ7u2v3aOXWLGKd4hL3.PbHIgSEdBycIio9D06X77J6RRufyFJwa1s8ML+r6DwWp+zRSK67m1bBMfGZXVw7RnaHQbhm7dkEy.Ed1G+3G+mBUxOXhfFz8ak14A.FOcv7W0.yl+PIX7lALdWCL+8ew3ebUv7hW7BEXt96+7EUNhELJRril9yQIdztLFPT5LuAj3cdhSo7o5Op2C3Mpbu02n59BwurRKJ2Ob9Xbg4fQQf7+CvX1K686qrWudvY4KA3Sqr+6drOi2cL7sYi3vc6fpqITHhoxwiFzAVo8IvnGGShREQFKHh8T8cE8EdfNvMLjc9E3KiYcQeyLl0yYZL.6mvduuJ4U71geljBfoX46r97JGI5ilMkW9MfFPeuu+rl5ZJ58XUrwiUwkerJ17wp3JOVEW8wp3Z2shhWZdqQb1.UZigwQs1SVk0zbuXLDAJiVM9uvq3As0
Content.makeFrontInterface(200, 200);
const var laf_knob2 = Content.createLocalLookAndFeel();
const var Knob1 = Content.getComponent("Knob1");
const var Knob2 = Content.getComponent("Knob2");
Knob1.setLocalLookAndFeel(laf_knob2);
Knob2.setLocalLookAndFeel(laf_knob2);
// =====================
// KNOB: SAMPLE EDITOR
// =====================
laf_knob2.registerFunction("drawRotarySlider", function(g, obj)
{
// 1. Base metrics & buffer
var a = obj.area, w = a[2], h = a[3];
var D = Math.min(w, h);
var r = D * 0.3; // Resize/Scale
var cx = a[0] + w/2, cy = a[1] + h*0.4;
// 2. Drop shadow
var disc = Rectangle(cx - r, cy - r, r*2, r*2);
var shadow = Content.createPath(); shadow.addEllipse(disc);
g.drawDropShadowFromPath(shadow, disc, Colours.withAlpha(Colours.black, 0.95), r*0.5, [0, r*0.2]);
// 3. Sunken ring
var sunken = disc.expanded(r * 0.30);
g.setGradientFill([
Colours.withAlpha(Colours.black, 0.95), sunken[0], sunken[1],
Colours.withAlpha(Colours.grey, 0.2), sunken[0] + sunken[2], sunken[1] + sunken[3],
true
]);
g.fillEllipse(sunken);
// 4. Outer bezel
var bezel = disc.expanded(r * 0.20);
g.setGradientFill([
Colours.withAlpha(Colours.black, 0.0), bezel[0], bezel[1],
Colours.withAlpha(Colours.black, 0.1), bezel[0] + bezel[2], bezel[1] + bezel[3],
true
]);
g.fillEllipse(bezel);
// 5. Arc ring
var arcThick = D * 0.02;
var arcRad = r * 1.05;
var arcRect = [cx - arcRad, cy - arcRad, arcRad*2, arcRad*2];
var bgArc = Content.createPath(); bgArc.addArc(arcRect, -2.5, 2.57);
g.setColour(Colours.withAlpha(obj.itemColour1, 0.08));
g.drawPath(bgArc, {}, arcThick);
var valArc = Content.createPath();
var endA = -2.5 + 2.03*2.5*obj.valueNormalized;
valArc.addArc(arcRect, -2.58, endA);
g.setColour(Colours.withAlpha((obj.hover||obj.clicked)? obj.itemColour1 : obj.itemColour2,1));
g.drawPath(valArc, {}, arcThick);
// 6. Knob face & highlights
g.setGradientFill([
Colours.withAlpha(Colours.white, 0.1), cx - r, cy - r,
Colours.withAlpha(obj.bgColour, 1.0), cx + r, cy + r,
true
]);
g.fillEllipse(disc);
var gloss = disc.reduced(r * 0.05);
g.setGradientFill([
Colours.withAlpha(Colours.white, 0.15), gloss[0], gloss[1],
Colours.withAlpha(Colours.white, 0.0), gloss[0] + gloss[2], gloss[1] + gloss[3],
true
]);
g.fillEllipse(gloss);
var bevel = disc.reduced(r * 0.07);
g.setGradientFill([
Colours.withAlpha(Colours.white, 0.08), bevel[0], bevel[1],
Colours.withAlpha(Colours.black, 0.05), bevel[0] + bevel[2], bevel[1] + bevel[3],
true
]);
g.drawEllipse(bevel, r * 0.04);
// 7. Indicator dot
var a0 = Math.PI*0.75, a1 = Math.PI*2.25;
var ang = a0 + (a1 - a0) * obj.valueNormalized;
var dR = r * 0.1;
var dX = cx + Math.cos(ang)*r*0.8 - dR;
var dY = cy + Math.sin(ang)*r*0.8 - dR;
g.setColour(Colours.withAlpha((obj.hover||obj.clicked)? obj.itemColour1 : obj.itemColour2,1));
g.fillEllipse([dX, dY, dR*2, dR*2]);
// 8. Center groove
var groove = disc.reduced(r * 0.35);
g.setGradientFill([
Colours.withAlpha(Colours.black, 0.4), groove[0], groove[1],
Colours.withAlpha(Colours.white, 0.1), groove[0] + groove[2], groove[1] + groove[3],
true
]);
g.fillEllipse(groove);
// 9. Label text
var th = h * 0.2;
var ta = [a[0], a[1] + h - th, w, th];
var txt = (obj.clicked||obj.hover)
? Math.round(obj.value) + obj.suffix
: obj.text;
g.setFont("Oxygen", 12);
g.setColour(obj.textColour);
g.drawAlignedText(txt, ta, "centred");
});