Linearly interpolates between this point and another.
Point lerp(Point other, double t) { return Point( x + (other.x - x) * t, y + (other.y - y) * t, ); }