matrix-react-sdk
Version:
SDK for matrix.org using React
30 lines (27 loc) • 2.63 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.lerp = lerp;
var _lodash = require("lodash");
/*
Copyright 2024 New Vector Ltd.
Copyright 2021 Šimon Brandner <simon.bra.ag@gmail.com>
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only
Please see LICENSE files in the repository root for full details.
*/
/**
* This method linearly interpolates between two points (start, end). This is
* most commonly used to find a point some fraction of the way along a line
* between two endpoints (e.g. to move an object gradually between those
* points).
* @param {number} start the starting point
* @param {number} end the ending point
* @param {number} amt the interpolant
* @returns
*/
function lerp(start, end, amt) {
amt = (0, _lodash.clamp)(amt, 0, 1);
return (1 - amt) * start + amt * end;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwicmVxdWlyZSIsImxlcnAiLCJzdGFydCIsImVuZCIsImFtdCIsImNsYW1wIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL0FuaW1hdGlvblV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5Db3B5cmlnaHQgMjAyNCBOZXcgVmVjdG9yIEx0ZC5cbkNvcHlyaWdodCAyMDIxIMWgaW1vbiBCcmFuZG5lciA8c2ltb24uYnJhLmFnQGdtYWlsLmNvbT5cblxuU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFHUEwtMy4wLW9ubHkgT1IgR1BMLTMuMC1vbmx5XG5QbGVhc2Ugc2VlIExJQ0VOU0UgZmlsZXMgaW4gdGhlIHJlcG9zaXRvcnkgcm9vdCBmb3IgZnVsbCBkZXRhaWxzLlxuKi9cblxuaW1wb3J0IHsgY2xhbXAgfSBmcm9tIFwibG9kYXNoXCI7XG5cbi8qKlxuICogVGhpcyBtZXRob2QgbGluZWFybHkgaW50ZXJwb2xhdGVzIGJldHdlZW4gdHdvIHBvaW50cyAoc3RhcnQsIGVuZCkuIFRoaXMgaXNcbiAqIG1vc3QgY29tbW9ubHkgdXNlZCB0byBmaW5kIGEgcG9pbnQgc29tZSBmcmFjdGlvbiBvZiB0aGUgd2F5IGFsb25nIGEgbGluZVxuICogYmV0d2VlbiB0d28gZW5kcG9pbnRzIChlLmcuIHRvIG1vdmUgYW4gb2JqZWN0IGdyYWR1YWxseSBiZXR3ZWVuIHRob3NlXG4gKiBwb2ludHMpLlxuICogQHBhcmFtIHtudW1iZXJ9IHN0YXJ0IHRoZSBzdGFydGluZyBwb2ludFxuICogQHBhcmFtIHtudW1iZXJ9IGVuZCB0aGUgZW5kaW5nIHBvaW50XG4gKiBAcGFyYW0ge251bWJlcn0gYW10IHRoZSBpbnRlcnBvbGFudFxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGxlcnAoc3RhcnQ6IG51bWJlciwgZW5kOiBudW1iZXIsIGFtdDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBhbXQgPSBjbGFtcChhbXQsIDAsIDEpO1xuICAgIHJldHVybiAoMSAtIGFtdCkgKiBzdGFydCArIGFtdCAqIGVuZDtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBUUEsSUFBQUEsT0FBQSxHQUFBQyxPQUFBO0FBUkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBSUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxTQUFTQyxJQUFJQSxDQUFDQyxLQUFhLEVBQUVDLEdBQVcsRUFBRUMsR0FBVyxFQUFVO0VBQ2xFQSxHQUFHLEdBQUcsSUFBQUMsYUFBSyxFQUFDRCxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztFQUN0QixPQUFPLENBQUMsQ0FBQyxHQUFHQSxHQUFHLElBQUlGLEtBQUssR0FBR0UsR0FBRyxHQUFHRCxHQUFHO0FBQ3hDIiwiaWdub3JlTGlzdCI6W119