用C#编写窗口类小球碰撞程序怎么写啊。就是3个小球在窗口里碰撞点击小球开始运动,小球碰到小球原路返回

用C#编写窗口类小球碰撞程序怎么写啊。就是3个小球在窗口里碰撞点击小球开始运动,小球碰到小球原路返回,第1张

如标题所示

相互碰悄档撞的小槐运樱球交换相互速度(完全d性碰撞)

鼠标拖拽窗口 随着窗口的增大或减小 小球的大小和速度(速度的模)随机变化

下面是我写的铅丛一个函数 请问如何实现上述要求 谢谢 //x,y分别表示小球水平和竖直的速度

bool collision(TShape* sh1, TShape* sh2) {

float x1 = sh1->Left + sh1->Width/2.0

float y1 = sh1->Top + sh1->Height/2.0

float x2 = sh2->Left + sh2->Width/2.0

float y2 = sh2->Top + sh2->Height/2.0

if (sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)) <= sh1->Width/2.0 + sh2->Width/2.0)

return true

else

return false

}

只说思路。

给小球添加一个含耐水平速度属性,然后写一个While(true)循环,里面将小球的水平坐标+=速度,并且当小球的水平拿稿坐标距离窗体边缘距离小于等于消老孝小球半径的时候速度*=-1。

easy~~~~

--------------------

int n

scanf("%d",&n)

for (int j=0j<nj++)

{

for(i=0i<185i++)

{

putimage(70+i, 170, buf, COPY_PUT)/*左悔或边球向右运动*/

putimage(500-i, 170, buf, COPY_PUT)/*右边球向左运敏前宽桥亮动*/

}

for(i=0i<185i++)

{

putimage(255-i, 170, buf, COPY_PUT)

putimage(315+i, 170, buf, COPY_PUT)

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12326055.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存