CyrefJS
CCyrefJS
EN
بازگشت به مستندات
عدد/از نسخه 1.38.0

lerp

بین یک مقدار شروع و پایان با استفاده از ضریب درون‌یابی، به‌صورت خطی درون‌یابی می‌کند.

lerp(start, end, t):number

پارامترها

startnumberالزامی

مقدار شروع.

endnumberالزامی

مقدار پایان.

tnumberالزامی

ضریب درون‌یابی. مقدار 0، start و مقدار 1، end را برمی‌گرداند. مقادیر خارج از این بازه نیز فراتر از نقاط ابتدا و انتها برون‌یابی می‌کنند.

مقدار بازگشتی

number

مقدار درون‌یابی‌شده به‌صورت خطی بین start و end را برمی‌گرداند.

خطاها

اگر start برابر NaN باشد، یک RangeError ایجاد می‌کند.

اگر end برابر NaN باشد، یک RangeError ایجاد می‌کند.

اگر t برابر NaN باشد، یک RangeError ایجاد می‌کند.

مثال‌ها

01

استفاده پایه

در نقطه میانی بین 0 و 100 درون‌یابی می‌کند.

TypeScript
const result = lerp(0, 100, 0.5);

console.log(result);
// 50
02

مقدار شروع

ضریب 0 مقدار شروع را برمی‌گرداند.

TypeScript
console.log(lerp(10, 20, 0));
// 10
03

مقدار پایان

ضریب 1 مقدار پایان را برمی‌گرداند.

TypeScript
console.log(lerp(10, 20, 1));
// 20
04

درون‌یابی یک‌چهارم

ضریب 0.25 مقدار را یک‌چهارم مسیر از start به سمت end حرکت می‌دهد.

TypeScript
console.log(lerp(0, 100, 0.25));
// 25
05

مقادیر منفی

درون‌یابی با مقادیر شروع و پایان منفی نیز کار می‌کند.

TypeScript
console.log(lerp(-100, -20, 0.5));
// -60
06

بازه معکوس

مقدار start می‌تواند از end بزرگ‌تر باشد.

TypeScript
console.log(lerp(100, 0, 0.25));
// 75
07

برون‌یابی

مقادیر t خارج از بازه 0 تا 1، مقدار را فراتر از start و end برون‌یابی می‌کنند.

TypeScript
console.log(lerp(0, 100, 1.5));
// 150

console.log(lerp(0, 100, -0.5));
// -50
08

start برابر NaN

مقدار NaN برای start پذیرفته نمی‌شود.

TypeScript
lerp(NaN, 100, 0.5);
// RangeError: lerp: start must not be NaN
09

end برابر NaN

مقدار NaN برای end پذیرفته نمی‌شود.

TypeScript
lerp(0, NaN, 0.5);
// RangeError: lerp: end must not be NaN
10

t برابر NaN

مقدار NaN برای ضریب t پذیرفته نمی‌شود.

TypeScript
lerp(0, 100, NaN);
// RangeError: lerp: t must not be NaN
ساخته شده با@cyref/js·مستندات رسمی