import type { EaseFn } from '../core/easing';
import type { Vec2 } from '../math/Vec2';
/**
* Чистая математика перемещений кат-сцен: интерполяция точки по easing.
* Общая для cameraMove и moveView — движение камеры и вьюх считается одинаково.
*/
/** Точка на кривой from→to в доле k (0..1), прошедшей через ease. */
export function applyEase(from: Vec2, to: Vec2, k: number, ease: EaseFn): Vec2 {
const e = ease(Math.min(1, Math.max(0, k)));
return { x: from.x + (to.x - from.x) * e, y: from.y + (to.y - from.y) * e };
}