From 1171d9cbbf0f4a78288d01e2024a253d6b3ffd58 Mon Sep 17 00:00:00 2001 From: Franklin Wei Date: Fri, 27 Dec 2019 23:03:44 -0500 Subject: Add function to rotate a 2d vector --- src/vec2.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src') diff --git a/src/vec2.cpp b/src/vec2.cpp index 712b440..ca26a08 100644 --- a/src/vec2.cpp +++ b/src/vec2.cpp @@ -71,6 +71,13 @@ namespace fml { scalar vec2::dot(const vec2 &other) const { return v[0] * other.v[0] + v[1] * other.v[1]; } + vec2 vec2::rotateby(scalar angle) { + double s, c; + sincos(angle, &s, c); + return vec2(v[0] * c - v[1] * s, + v[0] * s + v[1] * c); + } + std::ostream &operator<<(std::ostream &output, const vec2 &v) { return output << v[0] << " " << v[1]; } -- cgit v1.1