heavy restructuring with smart pointers, not finished
This commit is contained in:
+10
-7
@@ -75,7 +75,10 @@ class Vec2D{
|
||||
};
|
||||
|
||||
Vec2D norm() { return *this / length();};
|
||||
|
||||
|
||||
Vec2D center(Vec2D v){
|
||||
return Vec2D<T>{x,y} + (Vec2D<T>{x,y} - v)*0.5f;
|
||||
}
|
||||
|
||||
Vec2D& operator=(const Vec2D& vec){
|
||||
if (this == &vec){
|
||||
@@ -125,32 +128,32 @@ class Vec2D{
|
||||
};
|
||||
|
||||
template<typename T>
|
||||
Vec2D<T> operator+(const Vec2D<T>& left, const Vec2D<T>& right){
|
||||
Vec2D<T> operator+(const Vec2D<T> left, const Vec2D<T> right){
|
||||
return Vec2D<T>(left.x + right.x, left.y + right.y);
|
||||
};
|
||||
|
||||
template<typename T>
|
||||
Vec2D<T> operator-(const Vec2D<T>& left, const Vec2D<T>& right){
|
||||
Vec2D<T> operator-(const Vec2D<T> left, const Vec2D<T> right){
|
||||
return Vec2D<T>(left.x - right.x, left.y - right.y);
|
||||
};
|
||||
|
||||
template<typename T>
|
||||
Vec2D<T> operator*(const Vec2D<T>& left, const Vec2D<T>& right){
|
||||
Vec2D<T> operator*(const Vec2D<T> left, const Vec2D<T> right){
|
||||
return Vec2D<T>(left.x * right.x, left.y * right.y);
|
||||
};
|
||||
|
||||
template<typename T>
|
||||
Vec2D<T> operator/(const Vec2D<T>& left, const Vec2D<T>& right){
|
||||
Vec2D<T> operator/(const Vec2D<T> left, const Vec2D<T> right){
|
||||
return Vec2D<T>(left.x / right.x, left.y / right.y);
|
||||
};
|
||||
|
||||
template<typename T>
|
||||
Vec2D<T> operator/(const Vec2D<T>& left, T scalar){
|
||||
Vec2D<T> operator/(const Vec2D<T> left, T scalar){
|
||||
return Vec2D<T>(left.x / scalar, left.y / scalar);
|
||||
};
|
||||
|
||||
template<typename T>
|
||||
Vec2D<T> operator*(const Vec2D<T>& left, T scalar){
|
||||
Vec2D<T> operator*(const Vec2D<T> left, T scalar){
|
||||
return Vec2D<T>(left.x * scalar, left.y * scalar);
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user