-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcorrector.cpp
More file actions
89 lines (82 loc) · 1.75 KB
/
Copy pathcorrector.cpp
File metadata and controls
89 lines (82 loc) · 1.75 KB
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include "corrector.h"
#include <iostream>
corrector::corrector() {}
void corrector::setdtt(int dtt)
{
this->dtt = dtt;
}
void corrector::setrtt(int rtt)
{
this->rtt = rtt;
}
void corrector::setrefD1(int refD)
{
refD1 = refD*1000;
}
void corrector::setrefD2(int refD)
{
refD2 = refD*1000;
}
void corrector::setrefD3(int refD)
{
refD3 = refD*1000;
}
void corrector::setdD1(int dD)
{
dD1 = dD;
}
void corrector::setdD2(int dD)
{
dD2 = dD;
}
void corrector::setdD3(int dD)
{
dD3 = dD;
}
void corrector::setdd1(int dd)
{
dd1 = dd;
}
void corrector::setdd2(int dd)
{
dd2 = dd;
}
void corrector::setdd3(int dd)
{
dd3 = dd;
}
int corrector::getResultdD()
{
return qRound(resultdD);
}
int corrector::getResultdd()
{
return qRound(resultdd);
}
int corrector::getResultDTR()
{
return resultDTR;
}
int corrector::getResultRTR()
{
return resultRTR;
}
void corrector::calculate()
{
int D1 = refD1 - dD1;
int D2 = refD2 - dD2;
int D3 = refD3 - dD3;
std::cout << "D1=" << D1 <<"\t D2=" << D2 << "\t D3=" << D3 << std::endl;
if ((dtt <= D2)&&((D2-D1)!=0)) {
resultdD = ((float)(dtt - D1) / (D2 - D1)) * (dD2 - dD1) + dD1;
resultdd = ((float)(dtt - D1) / (D2 - D1)) * (dd2 - dd1) + dd1;
std::cout << "resultdD1=" << resultdD << "\t resultdd1=" << resultdd << std::endl;
} else if((D3-D2)!=0) {
resultdD = ((float)(dtt - D2) / (D3 - D2)) * (dD3 - dD2) + dD2;
resultdd = ((float)(dtt - D2) / (D3 - D2)) * (dd3 - dd2) + dd2;
std::cout << "resultdD2=" << resultdD << "\t resultdd2=" << resultdd << std::endl;
}
resultDTR = dtt + resultdD;
resultRTR = rtt + resultdd;
std::cout << " resultDTR=" << resultDTR << "\t resultRTR=" << resultRTR << std::endl;
}