Rotate an Image
-
@d-healey is there any way to make a button to stop the rotation and if so what should I add?
Any example? -
@Jay What is your end goal? i.e. why do you want a button to stop the rotation?
-
@d-healey let's say I want to make a plug-in with a bypass button that when I bypass it the rotation stop and when I enable it the rotation start.
I don't know if it make sense.
-
@Jay said in Rotate an Image:
@d-healey let's say I want to make a plug-in with a bypass button that when I bypass it the rotation stop and when I enable it the rotation start.
I don't know if it make sense.
Well, do you understand the script I gave you? If you can see what starts the rotation you should be able to figure out how to stop it. I don't want to give you the answer, I want you to learn so you fully understand how it works.
-
HISE Turntable Tapemachine? -
@Dominik-Mayer yes something like this
-
@Dominik-Mayer can I have the code ?
-
@Dominik-Mayer ???
-
@Jay said in Rotate an Image:
@Dominik-Mayer ???
Have you tried to understand the code I gave you? If so, which part are you struggling with?
-
Here is the script with a little embedded Task ;)
You can surely figure it out.resource:
save as logo_bw.png in the Images Folder of your project.Content.makeFrontInterface(600, 500); const var Panel1 = Content.getComponent("Panel1"); const var Knob1 = Content.getComponent("Knob1"); const var Button1 = Content.getComponent("Button1"); reg angle = 0; reg speed = 0; Panel1.loadImage("{PROJECT_FOLDER}logo_bw.png", "test"); Panel1.setPaintRoutine(function(g){ g.rotate(Math.toRadians(angle), [this.get("width")/2, this.get("height")/2]); g.drawImage("test", [0, 0, this.get("width"), this.get("height")], 0, 0); }); Panel1.setTimerCallback(function(){ angle = (angle + speed) % 360; this.repaint(); }); // Custom Callbacks for Knob1 and Button1 inline function onKnob1Control(component, value) { // TASK: set something to the value of the Knob }; Content.getComponent("Knob1").setControlCallback(onKnob1Control); inline function onButton1Control(component, value) { if (value) { Panel1.startTimer(40); } else { Panel1.stopTimer(); } }; Content.getComponent("Button1").setControlCallback(onButton1Control);
HiseSnippet 1202.3ocsW0saaaCElxIpq1adXEnWrKILv.jwxRTZSyJZwvbiiyfWZRLhyJJvPQ.iDkLQjHEjnZhWP.1ixdT1k6wXOB6MX6PQJK4Fmz3BLcSxg77wy24Gd3wiREdzrLQJxp4ISSnHquvd7TtbR+IDFGMbWj0WYOJhHkTdVBiFQSQ6LMgjkQ8QVVq7SJsrZtJp36e9wcHQDtGsZID5MBlG80rXlrZ0Q81mEEsGwmdBKtl1a0anmf2WDIxAFshsKJg3cNIjdHQoVCaj0CF3yjhzwRhjlgrVcGg+zwSDWv05+FVF6rHpRXSzX3fzKumHxWwX0pn9SXQ9iJ87LDbJiphCqniCO19.lOa150iGpMvUHpGOrZbWzayOQ5YUidqpo2irG6kxRjU6n31maOjKooADHETmVZcQM9qUs6K.M3x0iImS2KEDlgvYaW20vOy0s6Ka2pcKHQjIwumjhGQ3znMw+.tDaHU1WDmH3ffSG81cTnpvrOWb1sCoX2O.wN4Rofe6XL62QytTZHlvCinf9tuTKmkPo9F41szzZ8HAweXLTB4z4pQGezOOn+Imt2Qud2AGecjHTb5YWrdBOryZ3NPBSZNcC1LpbDj1kGKxkLN0IHm6IYBtSX2qZ2BCegqmJToZmCHxIqKEGS7YDdlSA05tF9WkSXYJGwoyELe4jNc23IqgqVbBkENQpV8cJKqOR+TxEFJWvI3XfDiacblCaQG06JTsHId8G5Mpaao8IQQmAWqpbmRuoLfpoO9a0Qzt3uA+zscMzqvfozDUbwolQZ2ZiMv8yyjhXboExvAhxRAB2uLEqTlwifHJtjBXAuPMUpOUD43Ul2WCpMhxoca2xvQvJm7pw6+BL3N3LQLEHDODKE.ynZkwhfBA0IB7Cn2cVEpBLF6NKzLOcJ8vaRZiGc2ztIK.6TJq7gqvX8+n9JyNRRpN+3rkaYsv05+PixnFjK.mHQCqFnqKH7G4dzh8648H0YVycOTHoGA0KstpUyVWeicBBVzVliJRQwatqg62JLGdd7Yzzx.pQOnO37MZsueMZ8zgjZJJ3C4L4QIT9s09EYhiPi3FFRApJKZC+kl1viiX9vSiLna6mYWT5fJ3a8GBQ2FXcHu.bSaS7eAv+kg6RjD0yAFBAjLglJYJ+2ZW56g2Y0ONzzdWZ14PgAXpYYd3oSsYaW9zgp.pvpOzVWLgtrxfecuoUB3dEMblsPO+d51MyV4286gpYplezvyk0e0uxT+QXu3ZiT72I+YL4xZh8jzKkpSYrp0DJSRSFy9MZ8YPxxCBX.FaabpOBcy.vcF2qwqmWmWbike.XYffyGOPm1Ccy2ngIED94vvSyO9fZlIyFPk9buSqdKlmwjSq6OKwLEt26YJtuz8Q1iXRuIKluMV.eU2R9elulIzZaOHHf5IqH6p1681O0wwVBpnGGHDdxOsnN6v73wv.qdTfIb3djpcjUC0EdsrqRVEYFS49EB+K7Y1bSkrkYyMK2DES7REm5o6XnlA7gEq.bhWLJbS6CTx3YMJT7NFFL8TOOUf36.luXDOYoQ7zkFwVKMhmszH1doQ78KMhmeGHT+JfWkCi6nuV.KLZPQCZKqAbBTUUTAh9Ojd9pJF
Greetings,
d -
@Dominik-Mayer Can we make this with animation image strips? It will loop the image strip. I tried but coulsn't figured it out. Please help...
-
@orange said in Rotate an Image:
@Dominik-Mayer Can we make this with animation image strips? It will loop the image strip. I tried but coulsn't figured it out. Please help...
So you don't need a rotate image function, just an amimated picture... isn't it?
-
@ossian1961 Yes, definately.... Because I've allready made a rotated image animation inside the strip. I only need to loop it.
-
I used do that on KSP... I never tried it on Hise, but I think it could be make a looped slider with buttons that handle on and off and fps into java script... @d-healey surely knows how do it ;)
-
@Christoph-Hart @d-healey Is it possible to make an animated image strip loop view? It will loop from first to last frame, over and over again.
-
@orange Almost certainly but I've never done it
-
The
&
operator is your friend here... -
@Christoph-Hart @d-healey Do you mean I should use && operator in an "if else" conditional statement?
-
@orange
&
is not the same as&&
- https://www.w3schools.com/js/js_operators.asp -
Oops, my smart-ass me wrote
&
(logical AND) instead of%
(modulo). To my defense these two are equivalent if the loop length matches the formula(2 ^ x) - 1
:)