在圆形台球桌上,台球以一定的速度v1与桌子的边界发生碰撞。这种碰撞的检测结果如下:
double s = sqrt( (p.x-a)*(p.x-a) + (p.y-b)*(p.y-b) );
if (s<r) // point lies inside circle
// do nothing
else if (s==r) // point lies on circle
// calculate new velocity
else if (s>r) // point lies outs
我不想这样做(寻求帮助),但我被难住了…
我正在写一个曲棍球台球程序,其中一个功能是为特定台球队的所有球员(守门员和滑冰运动员)计算每周总积分。
我有三张桌子。
**PoolTeams**
PoolTeamID PoolTeamName
---------- ------------
1 Team A
2 Team B
3 Team C
**MondaySkaterStats**
Player Weeknumber PoolTeam PT
我目前正在开发一个使用海龟的圆形台球程序。我的问题是,当球到达圆圈的两边时,我不知道需要给Python什么角度或位置才能让它反弹。下面是我的程序中需要修改的部分:
while nbrebonds>=0:
forward(1)
if (distance(0,y)>rayon): #rayon means radius
print(distance(0,y))
left(2*angleinitial) #I put this angle as a test but it doesn't work
我正试着在Java2ME里移动一个台球。当速度稳定时,这很容易。我根据x和y的速度改变球的x和y坐标。它们都是整数。没问题。然而,一个正常的台球必须先跑得快,然后减速,然后停止。因为球的x和y坐标是整数,所以我不能按百分比减少x和y的速度。我的意思是,如果速度是9,我想把它减少10%,我不能做"9 * 0.1“,因为它必须是一个整数。我知道坐标不可能是两倍。我能做什么?代码:
public void move() {
//... Move the ball at the given velocity.
m_x += m_velocityX; // m_x: x coor