RIT VEXU Core API
Loading...
Searching...
No Matches
twist2d.h
1#pragma once
2
3#include "math/eigen_interface.h"
4
5#include <cmath>
6#include <iostream>
7#include <vector>
8
19class Twist2d {
20 public:
24 constexpr Twist2d();
25
33 Twist2d(const double &dx, const double &dy, const double &dtheta);
34
40 Twist2d(const Eigen::Vector3d &twist_vector);
41
47 double dx() const;
48
54 double dy() const;
55
61 double dtheta() const;
62
70 bool operator==(const Twist2d &other) const;
71
77 Twist2d operator*(const double &scalar) const;
78
84 Twist2d operator/(const double &scalar) const;
85
93 friend std::ostream &operator<<(std::ostream &os, const Twist2d &twist);
94
95 private:
96 double m_dx;
97 double m_dy;
98 double m_dtheta;
99};
friend std::ostream & operator<<(std::ostream &os, const Twist2d &twist)
Definition twist2d.cpp:86
double dtheta() const
Definition twist2d.cpp:49
constexpr Twist2d()
Definition twist2d.cpp:11
double dy() const
Definition twist2d.cpp:42
double dx() const
Definition twist2d.cpp:35
bool operator==(const Twist2d &other) const
Definition twist2d.cpp:58
Twist2d operator*(const double &scalar) const
Definition twist2d.cpp:68
Twist2d operator/(const double &scalar) const
Definition twist2d.cpp:77