GoPxL SDK

- Home
- Files
- Namespace

GoGdpTransform.h
Go to the documentation of this file.
1
9 #ifndef GO_PXL_SDK_GOGDPTRANSFORM_H
10 #define GO_PXL_SDK_GOGDPTRANSFORM_H
11
12 #include <GoApi/GoApi.h>
13 #include <kApi/Io/kSerializer.h>
14 #include <GoPxLSdk/GoGdpMsg/GoGdpMsgDef.h>
15
16 class GoGdpMsgTests;
17
18 namespace GoPxLSdk
19 {
20
21 /*
22 This class represents a 3D transformation matrix
23
24 [ xx xy xz xt ]
25 [ yx yy yz yt ]
26 [ zx zy zz zt ]
27 [ 0 0 0 1 ]
28 */
29
30 class GoPxLSdkClass GoGdpTransform
31 {
32
33 friend class ::GoGdpMsgTests;
34
35 public:
42 GoGdpTransform() = default;
43
52 void Deserialize(kSerializer serializer);
53
61 const k64f XX() const;
62
70 const k64f XY() const;
71
79 const k64f XZ() const;
80
88 const k64f XT() const;
89
97 const k64f YX() const;
98
106 const k64f YY() const;
107
115 const k64f YZ() const;
116
124 const k64f YT() const;
125
133 const k64f ZX() const;
134
142 const k64f ZY() const;
143
151 const k64f ZZ() const;
152
160 const k64f ZT() const;
161
162 private:
163 k64f xx = 1.0;
164 k64f xy = 0.0;
165 k64f xz = 0.0;
166 k64f xt = 0.0;
167
168 k64f yx = 0.0;
169 k64f yy = 1.0;
170 k64f yz = 0.0;
171 k64f yt = 0.0;
172
173 k64f zx = 0.0;
174 k64f zy = 0.0;
175 k64f zz = 1.0;
176 k64f zt = 0.0;
177
178 };
179 }
180
181 #endif
GoPxLSdkClass
#define GoPxLSdkClass
Definition: Def.h:35
GoGdpMsgDef.h
GoPxLSdk::GoGdpTransform
Definition: GoGdpTransform.h:30
GoPxLSdk
Definition: Def.h:46