首页 > 文档 > map() 映射
2017
07-19

map() 映射

名称:map()

 

例子:

size(200, 200);
float value = 25;
float m = map(value, 0, 100, 0, width);
ellipse(m, 200, 10, 10);

float value = 110;
float m = map(value, 0, 100, -20, -10);
println(m);  // Prints "-9.0"

void setup() {
  size(200, 200);
  noStroke();
}

void draw() {
  background(204);
  float  x1 = map(mouseX, 0, width, 50, 150);
  ellipse(x1, 75, 50, 50);  
  float x2 = map(mouseX, 0, width, 0, 200);
  ellipse(x2, 125, 50, 50);  
}

 

描述:

将一个数字重新映射到另一个范围。
在上述第一例中,数字25从0到100的范围被转换成从窗口的左边缘(0)到右边缘(width)的范围。
如第二个示例所示,超出范围的数字不会被钳制到最小和最大参数值之间,因为超出范围值通常是刻意的和有作用的。

 

语法:

map(value, start1, stop1, start2, stop2)

 

参数:

value float: the incoming value to be converted     要转换的输入值
start1 float: lower bound of the value’s current range    值当前范围的下限
stop1 float: upper bound of the value’s current range   值当前范围的上限
start2 float: lower bound of the value’s target range      值目标范围的下限
stop2 float: upper bound of the value’s target range     值目标范围的上限

 

返回:float

 

相关:

norm()
lerp()



最后编辑:
作者:Hewes
这个作者貌似有点懒,什么都没有留下。

map() 映射》有 1 条评论

  1. Pingback 引用通告: norm() 标准化 | Processing编程艺术

留下一个回复

你的email不会被公开。