![]() |
|
||||||||||
|
|||||
|
Цитата:
|
|
|||||
|
да не все так просто... дело ведь вот в чем: столкновение шаров можно, перейдя в систему отсчета, связанную с одним из шаров, рассматривать как центральный удар - это важно! т.е. сложно представить столкновение шаров так чтоб это не был центральный удар (читать: невозможно). дело тут в том, что центры масс и точка соприкосновения лежат для шара всегда на одной линии. для тела произвольной формы это не так, и это очень сильно усложняет задачу
для иллюстрации: у тебя есть два шарика, соединенные невесомым прутиком и еще одна такая же пара. они сталкиваются (один шар из первой пары налетает на второй шар из второй пары). рассчитай скорости их центров масс и угловые скорости - зае*ешься! ![]() |
|
|||||
|
Регистрация: Aug 2004
Адрес: Россия Санкт Петербург
Сообщений: 10
|
кхм!
я создавал такую же тему еще в начале лета...у катафалкера рейтинг выше... у меня вопрос: как обнаружить точку соприкосновения двух мувейклипов?можно такое сделать?я знаю лишь супергромоздкий способ.ща буду проверять его |
|
|||||
|
Цитата:
В кратце - я создавал процедУрку addAnchors, которая раз и навсегда проходила мувик с шагом в несколько градусов (радиальная система координат) и через хиттест отлавливала все дырки и границы мувика и создавала массив ключевых точек, а потом и интерполировала (пока линейная интерполяция)... |
|
|||||
|
Регистрация: Jun 2004
Адрес: Москва
Сообщений: 475
|
2k.a.t.a.f.a.l.k.e.r
блин я с этим парюсь, очень плохо выходит |
|
|||||
|
Регистрация: Aug 2004
Адрес: Россия Санкт Петербург
Сообщений: 10
|
2k.a.t.a.f.a.l.k.e.r
это типа вот этого? выложи свое. Я так понимаю весь принцип этого физдвижка в том, что центр тяжести тела должен установится над точкой опоры да? а еще проблема,как провернуть тело вокруг не-точки-регистрации, ты этого случайно не сделал? |
|
|||||
|
Регистрация: Aug 2004
Адрес: Россия Санкт Петербург
Сообщений: 10
|
ой! вот
|
|
|||||
|
Цитата:
Почти... Только, наверное, не совсем... Похоже на то что здесь реальный хиттест, а я хиттест как раз не использую (точнее, использую - но лишь раз, при инициализации объекта)... Вращение вокруг произвольной точки - ну, это в принципе не вопрос... Вкратце: пускай точка (x,y) - та, вокруг которой надо вращать... Тады, (сокращенно!) пишем че-то типа r=Math.sqrt((x-_x)*(x-_x)+(y-_y)*(y-_y)); a++; _x=x+r*Math.sin(a*0.17); _y=y-r*Math.cos(a*0.17); _rotation = a + dA; где dA - че-то типа начального угла поворота... Не тестил, но должно сработать ![]() хотя это все не надо - любое движение тела есть суперпозиция движения центра масс (по прямой) + вращение вокруг центра масс... |
![]() |
![]() |
Часовой пояс GMT +4, время: 22:09. |
|
|
« Предыдущая тема | Следующая тема » |
|
|