-- ここではマウスポインターの x 軸方向の加速度を取得してみる。 -- 確認しやすいよう、更新速度は遅めにする。 local step = 0.5 timer.start(step) local pos2TickAgo = 0 local pos1TickAgo = 0 local posCurrent = 0 local speed1TickAgo = 0 local speedCurrent = 0 local accel = 0 function on.paint(gc) gc:drawString("pos2TickAgo: "..pos2TickAgo.." [pixel]",10,10) gc:drawString("pos1TickAgo: "..pos1TickAgo.." [pixel]",10,30) gc:drawString("posCurrent: "..posCurrent.." [pixel]",10,50) gc:drawString("speed1TickAgo: "..speed1TickAgo.." [pixels/sec]",10,70) gc:drawString("speedCurrent: "..speedCurrent.." [pixels/sec]",10,90) gc:drawString("acceleration: " ..accel.." [pixels/sec"..string.uchar(0x00B2).."]",10,110) platform.window:invalidate() end function on.mouseMove(x, y) posCurrent = x platform.window:invalidate() end function on.timer() speed1TickAgo = (pos1TickAgo - pos2TickAgo)/step speedCurrent = (posCurrent - pos1TickAgo)/step accel = (speedCurrent - speed1TickAgo)/step pos2TickAgo = pos1TickAgo pos1TickAgo = posCurrent platform.window:invalidate() end