Swiftray  1.0
preview-generator.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <sstream>
5 
6 /*
7 Generator for the preview
8 */
10 public:
11  class Path {
12  public:
13  Path(QPointF target, double speed, double power) : target_(target), speed_(speed), power_(power) {}
14 
15  double power_;
16  double speed_;
17  QPointF target_;
18  };
19 
21  }
22 
23  void moveTo(float x, float y, float speed, float power) override {
24  if (x_ == x && y_ == y && speed_ == speed && power_ == power)
25  return;
26  if (x_ != x) {
27  x_ = x;
28  }
29  if (y_ != y) {
30  y_ = y;
31  }
32  if (speed_ != speed) {
33  speed_ = speed;
34  }
35  if (power_ != power) {
36  power_ = power;
37  }
38  paths_ << Path(QPointF(x_, y_), speed_, power_);
39  str_stream_ << std::endl;
40  }
41 
42  void setLaserPower(float power) override {
43  power_ = power;
44  }
45 
46  void turnOffLaser() override {
47  power_ = 0;
48  }
49 
50  void turnOnLaser() override {
51  power_ = 1;
52  }
53 
54  void useAbsolutePositioning() override {
55  }
56 
57  void useRelativePositioning() override {
58  }
59 
60  void home() override {
61  x_ = 0;
62  y_ = 0;
63  paths_ << Path(QPointF(x_, y_), speed_, power_);
64  }
65 
66  const QList<Path> &paths() const {
67  return paths_;
68  }
69 
70  QList<Path> paths_;
71 };
Definition: base-generator.h:8
float y_
Definition: base-generator.h:77
std::stringstream str_stream_
Definition: base-generator.h:75
float x_
Definition: base-generator.h:76
float x()
Definition: base-generator.h:68
float y()
Definition: base-generator.h:70
float power_
Definition: base-generator.h:78
float power()
Definition: base-generator.h:66
float speed()
Definition: base-generator.h:72
float speed_
Definition: base-generator.h:79
Definition: preview-generator.h:11
Path(QPointF target, double speed, double power)
Definition: preview-generator.h:13
double power_
Definition: preview-generator.h:15
double speed_
Definition: preview-generator.h:16
QPointF target_
Definition: preview-generator.h:17
Definition: preview-generator.h:9
void setLaserPower(float power) override
Definition: preview-generator.h:42
void turnOffLaser() override
Definition: preview-generator.h:46
void turnOnLaser() override
Definition: preview-generator.h:50
const QList< Path > & paths() const
Definition: preview-generator.h:66
QList< Path > paths_
Definition: preview-generator.h:70
void moveTo(float x, float y, float speed, float power) override
Definition: preview-generator.h:23
void useAbsolutePositioning() override
Definition: preview-generator.h:54
PreviewGenerator()
Definition: preview-generator.h:20
void home() override
Definition: preview-generator.h:60
void useRelativePositioning() override
Definition: preview-generator.h:57