Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.07.2007, 00:37
mixar вне форума Посмотреть профиль Отправить личное сообщение для mixar Найти все сообщения от mixar
  № 1  
Ответить с цитированием
mixar

Регистрация: Nov 2005
Сообщений: 2
Cool Затухающие колебания шарика

Добрый день!

Хочу сделать чтобы шарик колебался по закону затухающих колебаний (то есть шарик в конечном итоге остановится у начальной точки), пока получилось сделать колебания по маятнику:

y1=28; // сдвиг начала координат по оси y
H=18; // высота, с которой падает мяч
g=9.8; // ускорение свободного падения
t=0; // начальное значение времени
n=1; // параметр, определяющий фазу движения (отскок или падение)
k=1;
dt= 0.2; // шаг по времени

_root.mc_shar.onEnterFrame = function (){
t = t+ dt;
t0 = Math.sqrt(2* H/g);
if(t > 2* t0) t=dt;
if(t < t0 ) n=0;
if (t>= t0) n=1;
_root.mc_shar._y = y1 - (H -g* (2*t0*n -t)*(2*t0*n -t) *0.5);
}

Буду благодарен, если кто-нибудь поможет с формулой затухающих колебаний по оси y.

PS: Flash 8, AS 2.0

Старый 25.07.2007, 02:03
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
mixar, отредактируйте свой пост и оформите код тегами [code][/code].

Старый 25.07.2007, 02:27
AleXNoD GD вне форума Посмотреть профиль Отправить личное сообщение для AleXNoD GD Посетить домашнюю страницу AleXNoD GD Найти все сообщения от AleXNoD GD
  № 3  
Ответить с цитированием
AleXNoD GD
 
Аватар для AleXNoD GD

Регистрация: Jan 2006
Адрес: Минск
Сообщений: 195
Отправить сообщение для AleXNoD GD с помощью ICQ
К чему проблемы? Программирование прекрасно тем, что сложные физические формулы можно заменить простым алгоритмом. Используй SPEED*Math.sin(ID), где ID - это индефикатор синуса (от чего тот берется), а SPEED - скорость (если 0, значит всё 0).
__________________
Русские флеш игры

Старый 25.07.2007, 03:03
Kikasso вне форума Посмотреть профиль Отправить личное сообщение для Kikasso Найти все сообщения от Kikasso
  № 4  
Ответить с цитированием
Kikasso
 
Аватар для Kikasso

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
Я бы посоветовал подставить вместо t0 нормальный 0, dt принять за 1 и упростить формулу.

Старый 25.07.2007, 11:32
Жень Шень вне форума Посмотреть профиль Отправить личное сообщение для Жень Шень Найти все сообщения от Жень Шень
  № 5  
Ответить с цитированием
Жень Шень
 
Аватар для Жень Шень

блогер
Регистрация: Feb 2004
Адрес: Украина
Сообщений: 1,180
Записей в блоге: 3
Отправить сообщение для Жень Шень с помощью ICQ
Привет!
Рисуем шарик на ниточке. Делаем из него Symbol и даем ему же имя Symbol. Заходим в него и устанавливаем мувик концом ниточки в центр клипа.
В первом кадре главной линейки прописываем:
Код:
t = 0;
a = 90;
b = 0;
k = 10
_root.onEnterFrame = function() {
	b = a*(Math.exp(-t/3))*Math.cos(k*t);
	Symbol._rotation = b;
	t += 0.01;
	if (t>10) {
		Symbol._rotation = 0;
		delete this.onEnterFrame;
	}
};
Методом научного тыка меняем параметры.
Или имелся ввиду пружинный маятник?

Создать новую тему Ответ Часовой пояс GMT +4, время: 03:17.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 03:17.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.