![](/img/trans.png)
[英]Convert range 0.5->1 to output range 1>0 with javascript
[英]Map percent to a range of 0 to 0.5 to 0
我的值介於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
我該如何實現?
如果其大於0.5,則將其減去Math.Min(x, 1 - x)
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
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.