На этом уроке мы добавим таймер и реализуем полёт снаряда через функцию его события. Для этого в функцию таймера нужно будет разместить внутренности цикла, а также добавить проверки на начало и окончание полёта снаряда. Потом мы оформим полёт снаряда в ту клетку моря, по которой был щелчёк мышки.
Дата отправки отчёта:
12 августа 2015 г.
Задание выполнено: за
30 мин.
Чему научился:
Делать анимацию по таймеру.
Что было сложным:
Определить формулу, чтобы снаряд летел в центр клетки
Комментарии:
Интересно, будем ли в дальнейшем переделывать анимацию снаряда так, чтобы он последние несколько кадров взрыва были уже в центре клетки. А то пока что получается, что снаряд взрывается в воздухе =)
Нет, не замирать =) ну он летит, потом попадает в корабль и взрывается =) просто думал самому сделать, но не знаю как это повлияет на дальнейшую совместную разработку.
Денис, так все ж отлично, он летит, это ж только снаряд, попадает в корабль, а дальше уже выход анимации корабля, который и взорвется, ведь не снаряд взрывается, а то куда он попадает! :)
Научился: Использование Math.sqrt, динамический расчет времени анимации в зависимости от скорости снаряда и расстояния полета. Трудности: Сложностей не было. В моем случае нет таймера, анимация встроена в сам язык QML и мне достаточно задать начальное, конечное значение переменной и время анимации; удобный подход. Меня не устраивало то, что снаряд двигается с разными скоростями в зависимости от требуемого расстояния, то есть время анимации жестко задано и период срабатывания "таймера" управляет скоростью снаряда. Кроме того, предложенный в уроке способ подбора значений для сокращения чисел в формулах это конечно круто, магия и все дела, но в данном случае движение снаряда описывается обычными физическими законами - кинематикой. Как известно, координаты объекта в случае равномерного движения вычисляются по простой формуле, s = s0 + vt. Необходимо выразить t и установить в качестве времени анимации, остальные переменные известны.
Научился: Узнал как поставить таймер для анимации. Повторил определения координат клика мыши. Тяжело пока с формулами... ) Трудности: формулы... сам бы не допёр. без