参考 map()

map()

将一个数值从一个范围重新映射到另一个范围。 例如,调用 map(2, 0, 10, 0, 100) 返回 20。前三个参数设置原始值为 2,原始范围从 0 到 10。最后两个参数设置目标范围从 0 到 100。20 在目标范围 [0, 100] 中的位置与 2 在原始范围 [0, 10] 中的位置成比例。 第六个参数 withinBounds 是可选的。默认情况下,map() 可以返回目标范围之外的值。例如,map(11, 0, 10, 0, 100) 返回 110。将 true 作为第六个参数传递可以将重新映射的值限制在目标范围内。例如,map(11, 0, 10, 0, 100, true) 返回 100。

示例

语法

map(value, start1, stop1, start2, stop2, [withinBounds])

参数

value
数字:

要重新映射的值。

start1
数字:

当前范围的下限值。

stop1
数字:

当前范围的上限值。

start2
数字:

目标范围的下限值。

stop2
数字:

目标范围的上限值。

withinBounds
布尔:

将数值约束在新映射的范围内。

Returns

数字: 重新映射后的数字。
Notice any errors or typos? Please let us know. Please feel free to edit src/math/calculation.js and open a pull request!

相关参考