]> git.localhorst.tv Git - orbi.git/blobdiff - src/graphics/Vector.h
don't reset speed if heading away from a surface
[orbi.git] / src / graphics / Vector.h
index c355091c114e21fd789997ddef53dd4130e67725..6259b97f0cb9a78fab1b389347113b28a94e9a33 100644 (file)
@@ -163,6 +163,22 @@ template<class Scalar>
 constexpr Vector<Scalar> abs(Vector<Scalar> v) {
        return Vector<Scalar>(std::abs(v.x), std::abs(v.y));
 }
+template<class Scalar>
+inline Vector<Scalar> round(Vector<Scalar> v) {
+       return Vector<Scalar>(std::round(v.x), std::round(v.y));
+}
+template<>
+inline Vector<float> round(Vector<float> v) {
+       return Vector<float>(std::roundf(v.x), std::roundf(v.y));
+}
+template<class Scalar>
+constexpr Vector<Scalar> min(Vector<Scalar> lhs, Vector<Scalar> rhs) {
+       return Vector<Scalar>(std::min(lhs.x, rhs.x), std::min(lhs.y, rhs.y));
+}
+template<class Scalar>
+constexpr Vector<Scalar> max(Vector<Scalar> lhs, Vector<Scalar> rhs) {
+       return Vector<Scalar>(std::max(lhs.x, rhs.x), std::max(lhs.y, rhs.y));
+}
 
 
 template<class Scalar>