1.38.0lerp
بین یک مقدار شروع و پایان با استفاده از ضریب درونیابی، بهصورت خطی درونیابی میکند.
lerp(start, end, t):numberپارامترها
startnumberالزامیمقدار شروع.
endnumberالزامیمقدار پایان.
tnumberالزامیضریب درونیابی. مقدار 0، start و مقدار 1، end را برمیگرداند. مقادیر خارج از این بازه نیز فراتر از نقاط ابتدا و انتها برونیابی میکنند.
مقدار بازگشتی
numberمقدار درونیابیشده بهصورت خطی بین start و end را برمیگرداند.
خطاها
اگر start برابر NaN باشد، یک RangeError ایجاد میکند.
اگر end برابر NaN باشد، یک RangeError ایجاد میکند.
اگر t برابر NaN باشد، یک RangeError ایجاد میکند.
مثالها
استفاده پایه
در نقطه میانی بین 0 و 100 درونیابی میکند.
const result = lerp(0, 100, 0.5);
console.log(result);
// 50مقدار شروع
ضریب 0 مقدار شروع را برمیگرداند.
console.log(lerp(10, 20, 0));
// 10مقدار پایان
ضریب 1 مقدار پایان را برمیگرداند.
console.log(lerp(10, 20, 1));
// 20درونیابی یکچهارم
ضریب 0.25 مقدار را یکچهارم مسیر از start به سمت end حرکت میدهد.
console.log(lerp(0, 100, 0.25));
// 25مقادیر منفی
درونیابی با مقادیر شروع و پایان منفی نیز کار میکند.
console.log(lerp(-100, -20, 0.5));
// -60بازه معکوس
مقدار start میتواند از end بزرگتر باشد.
console.log(lerp(100, 0, 0.25));
// 75برونیابی
مقادیر t خارج از بازه 0 تا 1، مقدار را فراتر از start و end برونیابی میکنند.
console.log(lerp(0, 100, 1.5));
// 150
console.log(lerp(0, 100, -0.5));
// -50start برابر NaN
مقدار NaN برای start پذیرفته نمیشود.
lerp(NaN, 100, 0.5);
// RangeError: lerp: start must not be NaNend برابر NaN
مقدار NaN برای end پذیرفته نمیشود.
lerp(0, NaN, 0.5);
// RangeError: lerp: end must not be NaNt برابر NaN
مقدار NaN برای ضریب t پذیرفته نمیشود.
lerp(0, 100, NaN);
// RangeError: lerp: t must not be NaN