gpt4 book ai didi

javascript - 如何在 JavaScript 中将任何数字范围缩放到 0 到 1 之间的值

转载 作者:行者123 更新时间:2023-12-05 03:14:49 24 4
gpt4 key购买 nike

我正在使用网络音频 API 做这个小实验,我希望垂直轴影响振荡器的增益值(参见下面的 fiddle )。我需要将 Canvas 顶部与 Canvas 底部之间的值缩放到 0 和 1 之间的值,以便 Y 轴上的 mousemove 事件可以听得见地影响增益。我认为这是一个可以应用于任何数字范围的一般数学问题,但我只是不知道该怎么做。

http://jsfiddle.net/63Y54/

var audioContext = new webkitAudioContext();



oscillator = undefined ;

$("#myCanvas").mousedown(function() {
var osc = audioContext.createOscillator();
gainNode = audioContext.createGainNode();
oscillator = osc;
oscillator.start(0);

});


$("#myCanvas").mouseup(function() {
oscillator.stop();
});



$("#myCanvas").mousemove(function(event) {
console.log(event.pageX);
console.log(event.pageY);
oscillator.type = "sawtooth";
gainNode.gain.value = (event.pageX);
oscillator.connect(gainNode);
gainNode.connect(audioContext.destination);
oscillator.frequency.value = event.pageX;


});

最佳答案

您将您的值(value)除以可能的最大值。

假设您的值为 50,值的范围为 0 到 100,则 50/100 = 0.5。

同样,如果您的值为 0,则 0/100=0。

如果您的值为 100,则 100/100=1。

关于javascript - 如何在 JavaScript 中将任何数字范围缩放到 0 到 1 之间的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22123736/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com