Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 0.0表示一个变换位置,100.0表示另一个变换位置的浮点_C# - Fatal编程技术网

C# 0.0表示一个变换位置,100.0表示另一个变换位置的浮点

C# 0.0表示一个变换位置,100.0表示另一个变换位置的浮点,c#,C#,我有一个带面具的健康酒吧 我需要在Y轴上更换流体 100%的位置为-185.6,而0%的位置为-78.6,我希望能够有一个0.0为-78.6,100.0为-185.6的浮点,当浮点值更改为0到100之间的某个值时,它会更改为-185.6到-78.6之间的相应值。这应该在任何两个特定值之间提供一个线性刻度 float scale(float percent) { float min = -185.6; float max = -78.6; return min + ((max-min)

我有一个带面具的健康酒吧

我需要在Y轴上更换流体


100%的位置为-185.6,而0%的位置为-78.6,我希望能够有一个0.0为-78.6,100.0为-185.6的浮点,当浮点值更改为0到100之间的某个值时,它会更改为-185.6到-78.6之间的相应值。

这应该在任何两个特定值之间提供一个线性刻度

float scale(float percent) {
  float min = -185.6;
  float max = -78.6;
  return min + ((max-min)*percent);
}
一种更普遍的方法是

float scale(float a, float b, float p) {
  return Math.min(a, b) + Math.abs(a - b) * p;
}

你不可以只传入任意两个值,然后在它们之间得到一个%的值吗。不要假设a小于b。

你说的是线性缩放?伙计。R T F M嗨,科林,FWIW OP询问有关游戏引擎Unity的问题。您只需使用
Lerp