Показать сообщение отдельно
  #3 (permalink)  
Старый 16.06.2012, 04:20
Новичок на форуме
Отправить личное сообщение для Alex-S Посмотреть профиль Найти все сообщения от Alex-S
 
Регистрация: 14.06.2012
Сообщений: 2

вопрос в траектории полета снаряда - как ее рассчитать и реализовать? на данный момент, есть две функции
/*function Go(){
    var u = power;
    var g = 9.8;
    var xb = 0;
    var yb = 0;
    var t = (u * Math.sin (alph)) / g;
    var ux = u * Math.cos (alph);
    var uy = u * Math.sin (alph);
    var xmax = ((u * u) * (Math.sin (alph) * Math.cos (alph))) / g;
    for (i = 1; i < t; i++){
        x = ux * i;
        y = uy *t;
    xb = 25 + x;
    yb = 770 - y;
    ctx.fillStyle = 'red'; 
    ctx.beginPath();      
    ctx.arc(xb, yb, 3, 0, Math.PI*2, true);            
    ctx.fill();
    }  
}*/

/*function Go() {
    var g = 9.8;
    var x = 0;
    var y = 0;
    var i = 0;
    var vx = power * Math.cos (alph);
    var vy = power * Math.sin (alph);
    var tick = 100, timeTick = tick/1000;
    var dv = vx * timeTick, dvy = g * timeTick;
    var Move = function () {
        x += dx;
        vy -= dvy;
        y -= vy * timeTick;
        ctx.fillStyle = 'red'; 
        ctx.beginPath();      
        ctx.arc(x, y, 3, 0, Math.PI*2);            
        ctx.fill();
        if (i++ > 0 && y <= 0) {
            clearInterval(interval);
            return;
        }
    }
    var interval = setInterval(Move, tick);
}*/


первая лишь на момент показывает снаряд при силе около 40-50 и угле в 45, вторая не работает. нашел подобную задачу тут http://jsfiddle.net/Yeah/JsWWr/1/ но не смог те функции внедрить в свой код.
Ответить с цитированием