summaryrefslogtreecommitdiffstats
path: root/core/math/vector2.cpp
diff options
context:
space:
mode:
authorAaron Franke <arnfranke@yahoo.com>2018-08-11 00:32:45 -0500
committerAaron Franke <arnfranke@yahoo.com>2018-08-11 00:33:01 -0500
commit14fe7230f4db402fba1efb74a1a17ce8a4dd20bb (patch)
tree116fdbdc9b57409b975a10f622fc0f2bc70f27f4 /core/math/vector2.cpp
parent2eb8a9749ea005325e6918288a1b6f1be311eebf (diff)
downloadredot-engine-14fe7230f4db402fba1efb74a1a17ce8a4dd20bb.tar.gz
[Core] Move Vector2i and Rect2i out of math_2d.h
Diffstat (limited to 'core/math/vector2.cpp')
-rw-r--r--core/math/vector2.cpp66
1 files changed, 66 insertions, 0 deletions
diff --git a/core/math/vector2.cpp b/core/math/vector2.cpp
index 8e59ddbd07..441e7d8907 100644
--- a/core/math/vector2.cpp
+++ b/core/math/vector2.cpp
@@ -185,3 +185,69 @@ Vector2 Vector2::reflect(const Vector2 &p_normal) const {
#endif
return 2.0 * p_normal * this->dot(p_normal) - *this;
}
+
+/* Vector2i */
+
+Vector2i Vector2i::operator+(const Vector2i &p_v) const {
+
+ return Vector2i(x + p_v.x, y + p_v.y);
+}
+void Vector2i::operator+=(const Vector2i &p_v) {
+
+ x += p_v.x;
+ y += p_v.y;
+}
+Vector2i Vector2i::operator-(const Vector2i &p_v) const {
+
+ return Vector2i(x - p_v.x, y - p_v.y);
+}
+void Vector2i::operator-=(const Vector2i &p_v) {
+
+ x -= p_v.x;
+ y -= p_v.y;
+}
+
+Vector2i Vector2i::operator*(const Vector2i &p_v1) const {
+
+ return Vector2i(x * p_v1.x, y * p_v1.y);
+};
+
+Vector2i Vector2i::operator*(const int &rvalue) const {
+
+ return Vector2i(x * rvalue, y * rvalue);
+};
+void Vector2i::operator*=(const int &rvalue) {
+
+ x *= rvalue;
+ y *= rvalue;
+};
+
+Vector2i Vector2i::operator/(const Vector2i &p_v1) const {
+
+ return Vector2i(x / p_v1.x, y / p_v1.y);
+};
+
+Vector2i Vector2i::operator/(const int &rvalue) const {
+
+ return Vector2i(x / rvalue, y / rvalue);
+};
+
+void Vector2i::operator/=(const int &rvalue) {
+
+ x /= rvalue;
+ y /= rvalue;
+};
+
+Vector2i Vector2i::operator-() const {
+
+ return Vector2i(-x, -y);
+}
+
+bool Vector2i::operator==(const Vector2i &p_vec2) const {
+
+ return x == p_vec2.x && y == p_vec2.y;
+}
+bool Vector2i::operator!=(const Vector2i &p_vec2) const {
+
+ return x != p_vec2.x || y != p_vec2.y;
+}