作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个角度,比如 60deg,想要在 [-120,120] 区间内生成随机角度,其中区间以 60deg 为中心,现在是 [-60,180]
我有下面的代码:
http://www.cs.princeton.edu/introcs/22library/StdRandom.java.html
我很困惑,因为据说高斯分布在 [0,1] 范围内。
我怎样才能通过范围[-120,120]?
60°角是物体的相对旋转,生成的随机角度是其下一个位置的预测
在测试代码时,我有角度,比如 65 ,55,如果我直接使用这个角度,它会执行奇怪的操作,所以我取差值 65-60 ,55-60。
这个想法正确吗?
最佳答案
如果您有一个范围为 0 到 1 的随机数,则可以使用以下方法将其转换为 -120 到 120:
rand_num*240 - 120
更一般地说,将范围 [A,B] 内的任何数字转换为范围 [C,D] 涉及:
num * (D-C)/(B-A) + C
不过,我不确定你所说的保持刻薄是什么意思。
<小时/>如果您想要一个从 60 开始向每个方向延伸 120 的范围,您可以执行上述操作并添加 60,或者使用范围 [60-120,60+120]
= [-60,180]
从这个意义上说,你会
rand_num * 240 - 60
根据上面给出的公式得出
关于c# - 随机角度发生器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3160923/
我是一名优秀的程序员,十分优秀!