Roomba Controller Dashboard 1
A GUI and TCP client application that is used to control a Roomba for Computer Engineering 2880 @ Iowa State
Loading...
Searching...
No Matches
Pillar.cpp
Go to the documentation of this file.
1//
2// Created By Caleb on 10/24/2024
3//
4
5#include "Pillar.hpp"
6
8 this->position = Pose2D(0, 0, 0);
9 this->radius = 0;
10}
11
12Pillar::Pillar(const double x, const double y, const double heading, const double radius) {
13 this->radius = radius;
14 Pose2D pose(x, y, heading);
15 this->position = pose;
16}
17
18Pillar::Pillar(const Pose2D& position, const double radius) {
19 this->position = position;
20 this->radius = radius;
21}
22
23Pillar::Pillar(const double x, const double y, const double radius) {
24 Pose2D pose(x, y);
25 this->position = pose;
26 this->radius = radius;
27}
28
30 return this->position;
31}
32
33double Pillar::getX() {
34 return this->position.getX();
35}
36
37double Pillar::getY() {
38 return this->position.getY();
39}
40
41double Pillar::getRadius() const {
42 return this->radius;
43}
44
45void Pillar::setRadius(double newRadius) {
46 this->radius = newRadius;
47}
48
49
50Pillar Pillar::parseFromStream(std::istringstream& stream) {
51 double x, y, heading, radius;
52 if (stream >> x >> y >> heading >> radius) {
53 return Pillar(x, y, heading, radius);
54 }
55 return Pillar(0, 0, 0);
56}
57
58void Pillar::setPosition(const Pose2D& newPosition) {
59 this->position = newPosition;
60}
61
static Pillar parseFromStream(std::istringstream &stream)
Definition Pillar.cpp:50
double radius
Definition Pillar.hpp:24
double getRadius() const
Definition Pillar.cpp:41
Pose2D & getPose()
Definition Pillar.cpp:29
double getY()
Definition Pillar.cpp:37
Pose2D position
Definition Pillar.hpp:19
void setPosition(const Pose2D &newPosition)
Definition Pillar.cpp:58
Pillar()
Definition Pillar.cpp:7
void setRadius(double newRadius)
Definition Pillar.cpp:45
double getX()
Definition Pillar.cpp:33
double getY() const
Definition Pose2D.cpp:151
double getX() const
Definition Pose2D.cpp:147