From d4cc9853cff96aa1d64092b4e7d812ef7c980021 Mon Sep 17 00:00:00 2001
From: koma <koma@koma.sh>
Date: Tue, 19 Jul 2022 20:39:34 +0200
Subject: [PATCH] add linear interpolation function

---
 utils.cpp | 5 +++++
 utils.h   | 2 ++
 2 files changed, 7 insertions(+)

diff --git a/utils.cpp b/utils.cpp
index 009d78a..93b0675 100644
--- a/utils.cpp
+++ b/utils.cpp
@@ -84,6 +84,11 @@ void init(uint32_t prec)
 //    mpfr::mpreal::set_default_prec(prec);
 }
 
+double Util::linear_interpolate(double v0, double v1, float t)
+{
+    return (1 - t) * v0 + t * v1;
+}
+
 Vec2mp::Vec2mp(mpfr::mpreal x, mpfr::mpreal y)
                : x(x), y(y)
 {
diff --git a/utils.h b/utils.h
index 9f130be..f3b4bb4 100644
--- a/utils.h
+++ b/utils.h
@@ -195,6 +195,8 @@ public:
 
 void init(uint32_t prec);
 
+double linear_interpolate(double v0, double v1, float t);
+
 class Vec2mp {
 public:
     mpfr::mpreal x;