忍受我一分钟。根据输入增加或减少固定值的优雅方式
我有一个方法,应该增加或减少一个固定值,取决于给定的输入。
我知道我的最大值是1.0f
,最小值是0.0f
。固定值是0.1f
。
现在,如果输入值为1.0f
,则方法应减去,直到值为0f
。如果输入值为0f
,则方法应添加0.1f
,直到值为1.0f
。
所以对于0f
到1f
工作方法是:
void Foo(float input) {
float step = .1f;
for (float i=0f; i<=1f; i += step) {
input = i;
}
}
很显然,我可以有一个if语句检查输入的值,但是有另一种方法一种方法内实现这一目标?我觉得我只是在这里错过了一个非常基本的算术操作。
所以,你要定义一系列的'input'参数,以确保它的0f'和'1f'之间'? –
你是否正在努力完成某些事情(例如,在Unity中从a到b的lerp),还是这是纯粹的学术活动? (一个有趣的问题,顺便说一句) –
你想要优雅,还是你想效率? ;) –