永发信息网

速度小于零的时候为什么这样处理??

答案:2  悬赏:30  手机版
解决时间 2021-05-05 13:02

这是一个虚拟机器人的代码

1//计算球在 times 个单位时间后的位置
2private Point2D next(int times)
3{
4 double velocity = getBallVelocity(); // 球当前的速度
5 Point2D location = getBallLocation(); // 球当前的坐标
6 double heading = getBallHeading(); // 球当前的方向
7 double acc = -getBallNegativeAcceleration(); // 球的加速度
8 for (int i = 0; i < times; i++)
9 {
10 if(velocity==0) break;
11 location = MathUtils.nextPoint(location, heading, velocity * 1);
12 // 摩擦减速
13 if (velocity > 0)
14 {
15 velocity += acc * 1;
16 velocity = Math.max(0, velocity);
17 }
18 else if (velocity < 0)
19 {
20 velocity -= acc * 1;
21 velocity = Math.min(0, velocity);
22 }
23 // 撞墙检测
24 if (location.getX() < 0 || location.getX() > getCourtWidth())
25 {
26 heading = Math.PI - heading;
27 modifyInCourt(location, getBallRadius());
28 }
29 if (location.getY() < 0 || location.getY() > getCourtHeight())
30 {
31 heading = -heading;
32 modifyInCourt(location, getBallRadius());
33 }
34 }
35 return location;
36}

速度在什么时候会小于0,第十八行又为什么这样处理?

最佳答案
这里的速度应该是矢量,也就是说带了方向的。为正代表当前指示的前进方向和实际的前进方向相同,为负则是相反。所以18行会判断是否当前速度是否小于0,而小于0的时候因为方向的问题所以在计算下一刻的速度的时候采用了 -= 的算法。
全部回答
如果是网速小于0的话,看一些网页开带动网速就可以了!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
鬼泣3但丁切换风格是什么键
电脑高手进,突然弹出来的,这个要怎么搞定
白度有什么用?
QQ飞车秋名山谁帮我过了
百雀羚的眼霜哪款好用,百雀羚眼霜怎么样,适
物流师考试难不难
&_____怎么样才能追到一个人?
座火车到广州得多少钱
80后为中国5000年来最悲惨的一代?
可以接受他嗎?
请问去北京机场接人坐地铁 是在2号航线下吗
内部控制审计的定义,内部控制是什么意思呢?
玫瑰庄园赠送qq币?
Nightwish一词是什么意思?夜愿为什么起此名?
陆惠商店在什么地方啊,我要过去处理事情
推荐资讯
从成都到昌都的最好路线?
一呼百应游鸿明之后是谁?
出去找工作需要些什么东西??
申请号为HEZL7L664FJ7X14ETDCV1FVJ1APV 求激
夏季饮食问题要特别注意卫生,马虎不得,这其
天津生物工程职业技术学院的通知书迟迟不到,
家长祝老师的祝福语,六十岁生日祝福语
单位获奖祝贺词怎么写,离别的诗句改写成一篇
有关捐献器官的新闻 今日之内有答复 。200字
重庆的朋友们帮帮忙 急~~~
凤卞村我想知道这个在什么地方
1000左右的音乐手机什么最好,控制在1300之内
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?