1
嗨,我想將特定範圍的數字映射到iPad應用程序的目標C中的不同範圍。Objective c將一個數字範圍映射到另一個數字範圍
例如,我可能有一個輸入值在0-255範圍內,但我想要輸出的範圍是0.5-1。例如,127.5的輸入將導致0.75的輸出。
提前歡呼。
嗨,我想將特定範圍的數字映射到iPad應用程序的目標C中的不同範圍。Objective c將一個數字範圍映射到另一個數字範圍
例如,我可能有一個輸入值在0-255範圍內,但我想要輸出的範圍是0.5-1。例如,127.5的輸入將導致0.75的輸出。
提前歡呼。
這裏的一般的解決方案(其應該適用於範圍和輸入值的任何組合):
CGFloat const inMin = 0.0;
CGFloat const inMax = 255.0;
CGFloat const outMin = 0.5;
CGFloat const outMax = 1.0;
CGFloat in = 127.5;
CGFloat out = outMin + (outMax - outMin) * (in - inMin)/(inMax - inMin);
計算第一比值,並將其應用到所述第二的範圍:
CGFloat result = ((127.5/255) * 0.5) + 0.5;