forked from PeterS242/YARRH
-
Notifications
You must be signed in to change notification settings - Fork 2
/
gcodeobject.cpp
58 lines (46 loc) · 1.26 KB
/
gcodeobject.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#include "gcodeobject.h"
#include <QtOpenGL>
GCodeObject::GCodeObject(QObject *parent)
{
currentLayer = -1;
}
//destructor
GCodeObject::~GCodeObject()
{
}
void GCodeObject::draw(float scale, int layers, bool show_travel, int current_layer){
int i;
for(i=0; i<=layers-1; i++){
layerList.at(i)->display(scale,i==layers-1, show_travel, current_layer);
}
}
void GCodeObject::addVertex(qreal xpos, qreal ypos, qreal zpos, qreal travel, int layer){
QVector4D vector(xpos,ypos,zpos,travel);
if(this->layerList.size()==0){
currentLayer=0;
this->layerList.append(new Layer(layerList.size(),this));
}
if(layer!=currentLayer){
currentLayer=layer;
this->layerList.append(new Layer(layerList.size(),this));
}
this->layerList.last()->vertexes.append(vector);
}
//setting layer height
void GCodeObject::setLayerHeight(float layerHeight){
this->layerHeight=layerHeight;
}
//get layer height
float GCodeObject::getLayerHeight(){
return this->layerHeight;
}
void GCodeObject::render(float scale){
for(int i=0; i<layerList.size(); i++){
layerList.at(i)->render(scale);
}
}
void GCodeObject::freeLists(){
for(int i=0; i<layerList.size(); i++){
layerList.at(i)->freeLists();
}
}