Thunderbots Project
Loading...
Searching...
No Matches
polynomial2d.h
1#pragma once
2
3#include "software/geom/point.h"
4#include "software/geom/polynomial1d.h"
5
10{
11 public:
17
27
39 explicit Polynomial2d(const std::vector<Point> &points);
40
52 Polynomial2d(std::initializer_list<Point> points);
53
61 Point getValueAt(double val) const;
62
67 const Polynomial1d &getPolyX() const;
68
73 const Polynomial1d &getPolyY() const;
74
75 private:
76 Polynomial1d poly_x;
77 Polynomial1d poly_y;
78};
79
88Polynomial2d operator+(const Polynomial2d &p1, const Polynomial2d &p2);
89
98Polynomial2d operator-(const Polynomial2d &p1, const Polynomial2d &p2);
99
108Polynomial2d &operator+=(Polynomial2d &p1, const Polynomial2d &p2);
109
118Polynomial2d &operator-=(Polynomial2d &p1, const Polynomial2d &p2);
119
130bool operator==(const Polynomial2d &p1, const Polynomial2d &p2);
Definition point.h:14
Definition polynomial1d.h:11
Definition polynomial2d.h:10
Point getValueAt(double val) const
Definition polynomial2d.cpp:48
const Polynomial1d & getPolyY() const
Definition polynomial2d.cpp:58
Polynomial2d()
Definition polynomial2d.cpp:3
const Polynomial1d & getPolyX() const
Definition polynomial2d.cpp:53