我的值介于0和1之间,但我需要将此值映射到0到0.5到0的范围.
例如,0.4将给出0.4,但0.8也会给出0.2.
0.1 = 0.1,0.2
=
0.2,0.3 =
0.3,0.4 = 0.4,0.5
=
0.5,0.6 =
0.4,0.7 =
0.3,0.8 =
0.2,0.9 = 0.1
如何实现这一目标?
Amy*_*Amy 10
如果它大于0.5,则从1中减去它.1 - 0.9 = 0.1要摆脱条件,请使用Math.Min(x, 1 - x).这是因为:
0.1 = 0.1,0.2
=
0.2,0.3 =
0.3,0.4 = 0.4,0.5
=
0.5,0.6 =
0.4,0.7 =
0.3,0.8 =
0.2,0.9 = 0.1
请注意:
这就是Math.Min工作的原因.输入,输出,它都是一样的.你只想要两个数字中的最小值.所以说你开始吧0.1.这与镜像相反0.9,并且这两个值都映射回来0.1.