Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.javascript > #36108

My logic faile me.

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>

Show all headers | View raw


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


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