今天在群里有人问了个问题:请教下啊,群里能有高手讲讲norm(), lerp(), map()么,英文的实在是没看懂呀?
鉴于很多人初学Processing都没弄明白这3个函数的用法,我这里简单介绍一下。
首先,这三个函数都是和值域处理有关的。
什么是值域呢,简单的说,有上下限、有最大值和最小值的一个数值范围就是值域,例如:0-100
我们分别来看看这3者对值域的处理。
1. map()的作用是改变一个变量的值域并返回该变量在新值域中的值
size(200,200);
float x = 0;
float y = map(x, 0,width, 0,100);
当x = 100的时候,y = 50
2. lerp()的作用是对一个值域进行等分并返回每一份的值
flaot x = 0;
float y = lerp(0,100,0.1);
此时y = 10,这里的0.1相当于10%
3. norm()的作用是将某个变量放到一个值域中去并返回该变量在新值域中的值
float x = 20;
float y = norm(x,0,100);
此时y = 0.2