将百分比映射到0到0.5到0的范围

Sim*_*old 1 javascript math

我的值介于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

请注意:

  • 该列表从[0,1]大约0.5镜像
  • 每行有两个数字,超过中间点的每一行加1.

这就是Math.Min工作的原因.输入,输出,它都是一样的.你只想要两个数字中的最小值.所以说你开始吧0.1.这与镜像相反0.9,并且这两个值都映射回来0.1.