Прыгающий мяч от круговой границы
Это формула я выяснил:
г = v - [2 (п · V)]
Это, как я применил
//Calculating normal
nx = 350 - SmileyReds[i].xpos ;
ny = 350 - SmileyReds[i].ypos ;
//new calc
v_newx = SmileyReds[i].xspeed - (2 *(nx * SmileyReds[i].xspeed + ny * SmileyReds[i].yspeed)) * nx;
v_newy = SmileyReds[i].yspeed - (2 *(nx * SmileyReds[i].xspeed + ny * SmileyReds[i].yspeed)) * ny;
SmileyReds[i].xspeed = v_newx;
SmileyReds[i].yspeed = v_newy;
Но вместо того, подпрыгивая, шары исчезают, когда они попали на границу:
Полный src и просмотр http://jsfiddle.net/gj4Q7/4/
Благодарим за внимание, что любые советы приветствуются!
Я не исправил все это, но я исправил несколько вещи http://jsfiddle.net/gj4Q7/3/ Почему так много циклов кстати? Я удалил большинство из них. – plalx
@plalx Большое спасибо, я знаю, что петли не нужны, но я собирался их комбинировать в конце, когда отскок работал правильно, в вашей версии красные смайлики выходят из круга :(знаете ли вы, почему ? – Anarkie
Да, вот почему я сказал «исправил несколько вещей». Возможно, если вы скажете мне, где вы нашли формулу, и где это объясняется, я мог бы помочь. – plalx