RIT VEXU Core API
Loading...
Searching...
No Matches
vector2d.h
1#pragma once
2
3#include "../core/include/utils/geometry.h"
4#include <cmath>
5
6#ifndef PI
7#define PI 3.141592654
8#endif
14class Vector2D {
15public:
22 Vector2D(double dir, double mag);
23
30
38 double get_dir() const;
39
43 double get_mag() const;
44
48 double get_x() const;
49
53 double get_y() const;
54
60
65 point_t point();
66
72 Vector2D operator*(const double &x);
79 Vector2D operator+(const Vector2D &other);
86 Vector2D operator-(const Vector2D &other);
87
88private:
89 double dir, mag;
90};
91
97double deg2rad(double deg);
98
105double rad2deg(double r);
Definition vector2d.h:14
Vector2D operator*(const double &x)
Definition vector2d.cpp:87
Vector2D operator-(const Vector2D &other)
Definition vector2d.cpp:77
Vector2D normalize()
Definition vector2d.cpp:47
double get_x() const
Definition vector2d.cpp:37
Vector2D operator+(const Vector2D &other)
Definition vector2d.cpp:65
double get_mag() const
Definition vector2d.cpp:32
double get_dir() const
Definition vector2d.cpp:27
double get_y() const
Definition vector2d.cpp:42
Vector2D(double dir, double mag)
Definition vector2d.cpp:9
point_t point()
Definition vector2d.cpp:53
Definition geometry.h:7