![]() |
уравнение движения мат. маятника
Здраствуйте, мне нужно сделать математический нитяной маятник. Смоделировать кое-как движение получается, но дело в том, что требуется некая интерактивность - маятник можно будет перемещать, и подвешеный груз, соответственно с этим движением должен будеть совершать колебания, т.е по инерции. Сразу скажу что я не прошу дать мне решения, просто решил спросить у профессионалов какими методами пользоваться. Сначала я хотел выразить колебания напрямую через свойство _rotation, но теперь не уверен. Может лучше через cos и sin а потом зная их, вычислять угол наклона?
|
глянь такую модельку для пружинки (mc -мувик):
Код:
var centerX=200,k=0.01,s=0,vx,mouseX; |
Вложений: 1
Привет!
Смотри фрагмент урока. Может то, что надо... |
Tween.yoyo решает.
|
а как вычислять угол, если, допустим известен косинус и синус угла?
|
Math.atan2(cos,sin);
|
Вложений: 1
Вот тебе архивчик, там маятник с гравитацией. Все качается и наглядно, можно менять гравитацию и пр.
Я запарился и сделал гравитацию и покадрово считал проекции сил, момент инерции и пр. Ошибка, конечно, есть, но чем больше кадров в сек. тем меньше ошибка. Скрипт, сразу говорю, чудовищный, ну так напиши свой! P.S. написано на 5-м В конце концов это вылилось в http://xstein.spb.ru/power/puskin.html. Можно сделать математически точно, по формуле: угол = amp * Math.sin( 2* 3.14 * time/period); где amp = амплитуда колебания(угол), period - период колебания маятника, time соответственно время. Амплитуду хорошо бы понемножку уменьшать, умножая например на .99 Это колебательное уравнение материальной точки, из школьного курса физики, работающий пример в посте Жень Шеня. В этом случае все будет прекрасно, но мышкой в фазу попасть (чтобы раскачать) очень трудно. У меня не получилось. |
| Часовой пояс GMT +4, время: 13:24. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.