18.11.2012, 16:23
|
|
Профессор
|
|
Регистрация: 22.02.2012
Сообщений: 212
|
|
Как определить координаты направления движения
задача следующая нужно имея имеются кнопки назад вперед, влево, вправо, последние 2 вращают объект, как двигать объект всегда вперед - относительно того куда объект направлен в данный момент, имея угол поворота объекта?
|
|
18.11.2012, 18:49
|
Профессор
|
|
Регистрация: 25.04.2011
Сообщений: 280
|
|
Эм.. сделать скорость ускорение по осям и каждую долю задержки изменять начальные координаты в зависимости от скорости ?
Я просто не совсем понял ваш вопрос? Вы не можете куб переместить ? Или вращать его до нужно вам значения 7!
|
|
18.11.2012, 21:23
|
|
Профессор
|
|
Регистрация: 22.02.2012
Сообщений: 212
|
|
нужно каждый шаг, получать координаты x2 y1 имея x2 y2 и угол поворота
|
|
18.11.2012, 21:44
|
х.з
|
|
Регистрация: 21.11.2010
Сообщений: 4,588
|
|
Сообщение от Tek
|
нужно каждый шаг, получать координаты x2 y1 имея x2 y2 и угол поворота
|
ну дак, а математика ,школьный курс, для чего?
|
|
18.11.2012, 21:46
|
|
Профессор
|
|
Регистрация: 22.02.2012
Сообщений: 212
|
|
дык было давно, уже даже сформулировать не могу нормально)
|
|
18.11.2012, 21:50
|
х.з
|
|
Регистрация: 21.11.2010
Сообщений: 4,588
|
|
Сообщение от Tek
|
дык было давно, уже даже сформулировать не могу нормально)
|
начерти прямоугольный треугольник и всё вспомнится,если оно было.
Если не вспомниться, или не было, то нех тебе вообще к компьютеру подходить ,кроме как почту посмотреть, да в одноклассниках посидеть.
|
|
18.11.2012, 23:29
|
sinistral
|
|
Регистрация: 28.03.2011
Сообщений: 5,418
|
|
Сообщение от Tek
|
дык было давно, уже даже сформулировать не могу нормально)
|
выдержка из моего скрипта :
{
zeroPoint: {x: 0, y: 0},
interpolateCoords: function (directionRad, moveDelta, moveProgress, fromPoint) {
var x = GameObject.interpolateX(directionRad, moveDelta.x, moveProgress, fromPoint.x);
var y = GameObject.interpolateY(directionRad, moveDelta.y, moveProgress, fromPoint.y);
return { x: x, y: y };
},
interpolateX: function (directionRad, delta, progr, from) {
return Math.cos(directionRad) * delta * progr + from;
},
interpolateY: function (directionRad, delta, progr, from) {
return Math.sin(directionRad) * delta * progr + from;
}
}
|
|
19.11.2012, 18:50
|
sinistral
|
|
Регистрация: 28.03.2011
Сообщений: 5,418
|
|
Сообщение от iMaxmaxmaximus
|
применить перемещение? О_О
|
что это значит:? подорожник приложить?)
|
|
19.11.2012, 21:59
|
|
junior
|
|
Регистрация: 29.11.2011
Сообщений: 3,924
|
|
Сообщение от melky
|
что это значит:? подорожник приложить?)
|
мать-и-мачеху
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
|
|
19.11.2012, 22:30
|
|
сегодня в 12:34|Комментир
|
|
Регистрация: 12.04.2011
Сообщений: 1,180
|
|
достаточно вспомнить, что cos это координата радиус точки в прямоугольном треугольнике, лежащая на окружности, то есть если тело движется под углом 60градусов, то при радиус векторе(гипотенузе, прощеговоря)(ее вы сами выбираете) допустим 10, след координата точки будет 10 * cos(60) = 5. Аналогично с sin, только синус это координата по y
__________________
оляля, ололо
|
|
|
|