LibreCAD
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
equation.h
Go to the documentation of this file.
1 //
2 // Created by gagan on 5/14/16.
3 //
4 
5 #pragma once
6 
7 #include <Eigen/Dense>
8 #include <vector>
10 #include "lcmath.h"
11 
12 namespace lc {
13  namespace maths {
14  class Equation {
15  public:
16  Equation();
17 
18  Equation &operator=(const Equation qm);
19 
20  Equation(Eigen::Matrix3d &mat);
21 
31  Equation(double a, double b, double c, double d,
32  double e, double f);
33 
38  Equation(const std::vector<double> &vec);
39 
44  const std::vector<double> Coefficients() const;
45 
51  const Equation move(const geo::Coordinate &v) const ;
52 
58  const Equation rotate(double angle) const;
59 
65  const Equation rotate(const geo::Coordinate &center,
66  double angle) const;
67 
72  const Eigen::Matrix3d Matrix() const;
73 
78  const Equation flipXY() const;
79 
85  static Eigen::Matrix3d rotationMatrix(double angle);
86 
92  static Eigen::Matrix3d translateMatrix(const geo::Coordinate &v);
93 
94  private:
95  Eigen::Matrix3d matrix_;
96  };
97  }
98 }
Equation & operator=(const Equation qm)
Definition: equation.cpp:18
const Eigen::Matrix3d Matrix() const
Matrix Returns matrix of equation.
Definition: equation.cpp:76
Eigen::Matrix3d matrix_
Definition: equation.h:95
const std::vector< double > Coefficients() const
Coefficients of the equation.
Definition: equation.cpp:40
const Equation flipXY() const
flipXY Flips the matrix values
Definition: equation.cpp:88
Definition: cadentity.h:12
static Eigen::Matrix3d translateMatrix(const geo::Coordinate &v)
translateMatrix Translates the matrix by some coordinate value
Definition: equation.cpp:80
const Equation move(const geo::Coordinate &v) const
move the quadratic equation by value V
Definition: equation.cpp:48
static Eigen::Matrix3d rotationMatrix(double angle)
rotationMatrix Rotates the matrix by an angle
Definition: equation.cpp:68
const Equation rotate(double angle) const
rotate the quadratic equation by value V
Definition: equation.cpp:54