Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.20;
Скачать: CL | DM;

Вниз

Бильярд...   Найти похожие ветки 

 
Ricks ©   (2006-06-18 12:32) [0]

... вернее столкновения. Народ, помогите мне разобраться со столкновениями шаров. Шары у меня взаимодействуют нормально, разлетаются куда надо, но проблема вот в чем - ИНОГДА большинство шаров начинают носиться как угорелые по всему столу, это происходит из за неконтролируемого прироста скорости, но откуда он берется неясно.
Вот мой кусочек кода:

для i-ого и j-ого шаров:
sx[.], sy[.] - положение шара
vx[.], vy[.] - скорость шара

  dx:=sx[j] - sx[i];
  dy:=sy[j] - sy[i];
  d:=rad[i] + rad[j];
  u:=sqrt(sqr(dx) + sqr(dy)) - d;
  if u < 0 then begin
   a:=ArcTan2( dy, dx );
   u:=abs(u);
   
   sx[i]:=sx[i] - cos(a) * u;
   sy[i]:=sy[i] - sin(a) * u;
   sx[j]:=sx[j] + cos(a) * u;
   sy[j]:=sy[j] + sin(a) * u;

   v1:=sqrt( sqr( vx[i] ) + sqr( vy[i] ) );
   v2:=sqrt( sqr( vx[j] ) + sqr( vy[j] ) );
   vx[i]:=vx[i] - (v1+v2) * cos(a);
   vy[i]:=vy[i] - (v1+v2) * sin(a);
   vx[j]:=vx[j] + (v1+v2) * cos(a);
   vy[j]:=vy[j] + (v1+v2) * sin(a);

PS: в теории я знаю - закон сохранения количества движения и закон сохранения энергии, но я думаю я их не так реализовал...


 
Ricks ©   (2006-06-18 12:47) [1]

Что из этого выходит можете посмотреть здесь:
http://www.ricks.pisem.net/b.zip


 
Ricks ©   (2006-06-19 00:57) [2]

Все, разобрался - где-то нашел то что нужно,
вот результат моих полудневных стараний:
http://www.ricks.pisem.net/b2.zip


 
Rial ©   (2006-06-19 01:22) [3]

Прикольно.
Только шарики слишком долго едут с очень маленькой скоростью.
Сделай нижний предел больше.
А силу кия наращивай быстрее.


 
Algol   (2006-06-20 13:00) [4]

А вращательное движение шара учитывается ?
А удар "с подскоком" ?


 
Ricks ©   (2006-06-20 14:44) [5]


> Rial ©

Уже сделал, еще что-нибудь придумаю, выложу новую версию

> Algol

Это в планах...



Страницы: 1 вся ветка

Текущий архив: 2007.05.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.044 c
15-1177055145
pavel_guzhanov
2007-04-20 11:45
2007.05.20
Недавно я спрашивал про глюки у DVD-RW


15-1177164438
Raqw
2007-04-21 18:07
2007.05.20
Подключается к интернету, но не загружаются страницы!


1-1174978693
serp
2007-03-27 10:58
2007.05.20
Монитор в режим ожидания


1-1174579137
DelphiLexx
2007-03-22 18:58
2007.05.20
Рассылка сообщений дочерним окнам


1-1173451304
oleg__
2007-03-09 17:41
2007.05.20
TChart