Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.javascript > #36108
| Newsgroups | comp.lang.javascript |
|---|---|
| Date | 2019-03-12 18:05 -0700 |
| Message-ID | <f5576c4a-e163-4fbe-9d23-58a2e214fab6@googlegroups.com> (permalink) |
| Subject | My logic faile me. |
| From | Jonas Thörnvall <jonas.thornvall@gmail.com> |
Using the metronome.
https://midisequenser.000webhostapp.com
I've tried to understand how following code can lead to that after the keyreleased the front of the keyed scrollbar raise/extend faster while the backend stay correct "in sync". One could think/imagine xFrontStart=scrollBarPos-FRONTOFFSET; done more then once, but how could it, the keyrelease is true only in that part of code???
var FRONTOFFSET=0;
var xKeylength=0;
var xFrontStart=0;
var xBackEnd=0;
var keyreleased=false;
function pianoSCROLL(){
if(mess.data[0]==NOTE_ON && keyreleased==false){
xBackEnd=keylength;
ctm.fillStyle = "magenta";
ctm.fillRect(xBackEnd,(PistartX+keyHeight*88)-(keyHeight*(mess.data[1]-8)), xFrontStart, keyHeight);
if(FRONTOFFSET==0) {FRONTOFFSET=scrollBarPos;}
xFrontStart=scrollBarPos-FRONTOFFSET;
} else if(mess.data[0]==NOTE_OFF && keyreleased==false){
console.log("keyreleased!");
keyreleased=true;
xBarLength=Math.round(xFrontStart-xBackEnd);
ctm.fillStyle = "black";
ctm.fillRect(keylength, (PistartX+keyHeight*88)-(keyHeight*(mess.data[1]-8)), Mwidth, keyHeight+2);
}
if (keyreleased) {
//console.log("timebar backend moving");
ctm.fillStyle = "black";
ctm.fillRect(keylength, (PistartX+keyHeight*88)-(keyHeight*(mess.data[1]-8)), Mwidth, keyHeight+2);
ctm.fillStyle = "orange";
ctm.fillRect(xBackEnd,(PistartX+keyHeight*88)-(keyHeight*(mess.data[1]-8)),xFrontStart, keyHeight);
xFrontStart=scrollBarPos-FRONTOFFSET;
xBackEnd=Math.round(xFrontStart-xBarLength);
console.log("xBackEnd="+xBackEnd+" xBarLength="+xBarLength+" xFrontStart="+xFrontStart);
}
}
Back to comp.lang.javascript | Previous | Next — Next in thread | Find similar | Unroll thread
My logic faile me. Jonas Thörnvall <jonas.thornvall@gmail.com> - 2019-03-12 18:05 -0700
Re: My logic faile me. Jonas Thörnvall <jonas.thornvall@gmail.com> - 2019-03-12 18:09 -0700
Re: My logic faile me. Jonas Thörnvall <jonas.thornvall@gmail.com> - 2019-03-13 10:32 -0700
Re: My logic faile me. Jonas Thörnvall <jonas.thornvall@gmail.com> - 2019-03-13 10:38 -0700
Re: My logic faile me. Jonas Thörnvall <jonas.thornvall@gmail.com> - 2019-03-14 00:20 -0700
Re: My logic faile me. Jonas Thörnvall <jonas.thornvall@gmail.com> - 2019-03-14 10:49 -0700
csiph-web