为了账号安全,请及时绑定邮箱和手机立即绑定

小球出界问题

if( balls[i].x + RADIUS > 0 && balls[i].x -RADIUS < WINDOW_WIDTH )

            balls[cnt++] = balls[i]

这个怎么判断?还是不懂老师的意思

正在回答

5 回答

  0<x<X轴长度,在这个范围内,小球就能看得到

0 回复 有任何疑惑可以回复我~

balls[i].x是彩色小圆圆心的x坐标,balls[i].x+RADIUS(圆半径)是彩色圆最右边那个点x的坐标,如果圆在画布左边出界,那圆最右边的点的x坐标应该小于画布最左边的边缘,不出界就大于;右边同理

0 回复 有任何疑惑可以回复我~

首先你要先了解网页的坐标系统,横向页面有一个宽度。小球不能超过左右边界,所以需要获取小球圆心位置,通过这个位置加上小球自身半径来判断出界问题

0 回复 有任何疑惑可以回复我~

balls[i].x + RADIUS > 0 :小球左侧未出画布;

balls[i].x -RADIUS < WINDOW_WIDTH :小球右侧未出画布

0 回复 有任何疑惑可以回复我~

 balls[i].x + RADIUS > 0 :小球的圆心位置加半径>0

就是指小球还在画布内但是边缘超出了画布的边(擦边)

balls[i].x -RADIUS < WINDOW_WIDTH :小球的圆心位置-半径<画布的宽

就是指小球的圆心位置在画布外面

0 回复 有任何疑惑可以回复我~
#1

Kuopa

手一哆嗦,点出去了,这是我的理解,可能有不对的地方
2017-04-01 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

小球出界问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信