RoboDK插件接口gydF4y2Ba
robodktypes.hgydF4y2Ba
1gydF4y2Ba 的ifndef ROBODKTYPES_HgydF4y2Ba
2gydF4y2Ba #定义ROBODKTYPES_HgydF4y2Ba
3.gydF4y2Ba
4gydF4y2Ba
5gydF4y2Ba # include < QString >gydF4y2Ba
6gydF4y2Ba # include < QtGui / QMatrix4x4 >gydF4y2Ba
7gydF4y2Ba # include < QDebug >gydF4y2Ba
8gydF4y2Ba
9gydF4y2Ba
10gydF4y2Ba 的ifndef M_PIgydF4y2Ba
11gydF4y2Ba #定义M_PI 3.14159265358979323846264338327950288gydF4y2Ba
12gydF4y2Ba # endifgydF4y2Ba
13gydF4y2Ba
14gydF4y2Ba
15gydF4y2Ba 类gydF4y2Ba IItemgydF4y2Ba;gydF4y2Ba
16gydF4y2Ba 类gydF4y2Ba IRoboDKgydF4y2Ba;gydF4y2Ba
17gydF4y2Ba 类型定义gydF4y2Ba IItemgydF4y2Ba*gydF4y2Ba项gydF4y2Ba;gydF4y2Ba
18gydF4y2Ba 类型定义gydF4y2Ba IRoboDKgydF4y2Ba RoboDKgydF4y2Ba;gydF4y2Ba
19gydF4y2Ba
20.gydF4y2Ba
21gydF4y2Ba
22gydF4y2Ba
24gydF4y2Ba #define RDK_SIZE_JOINTS_MAXgydF4y2Ba
25gydF4y2Ba / /重要! !不改变这个值gydF4y2Ba
26gydF4y2Ba
28gydF4y2Ba #define RDK_SIZE_MAX_CONFIGgydF4y2Ba
29gydF4y2Ba / /重要! !不改变这个值gydF4y2Ba
30.gydF4y2Ba
31gydF4y2Ba
36gydF4y2Ba 类型定义gydF4y2Ba 双gydF4y2BatXYZWPR [6];gydF4y2Ba
37gydF4y2Ba
39gydF4y2Ba 类型定义gydF4y2Ba 双gydF4y2BatXYZ [3];gydF4y2Ba
40gydF4y2Ba
41gydF4y2Ba
56gydF4y2Ba 类型定义gydF4y2Ba 双gydF4y2BatConfig [RDK_SIZE_MAX_CONFIG];gydF4y2Ba
57gydF4y2Ba
58gydF4y2Ba
59gydF4y2Ba
61gydF4y2Ba #定义点(v, q) ((v) [0] * (q) [0] + (v) [1] * (q) [1] + (v) [2] * (q) [2])gydF4y2Ba
62gydF4y2Ba
64gydF4y2Ba #定义规范(v)(√(v) [0] * (v) [0] + (v) [1] * (v) [1] + (v) [2] * (v) [2]))gydF4y2Ba
65gydF4y2Ba
67gydF4y2Ba #定义(inout){\正常化gydF4y2Ba
68gydF4y2Ba 双重标准;\gydF4y2Ba
69gydF4y2Ba 规范=√(inout) [0] * (inout) [0] + (inout) [1] * (inout) [1] + (inout) [2] * (inout) [2]); \gydF4y2Ba
70gydF4y2Ba (inout)[0] = (inout)[0]/normgydF4y2Ba
71gydF4y2Ba (inout)[1] = (inout)[1]/normgydF4y2Ba
72gydF4y2Ba (inout)[2] = (inout)[2]/norm;}gydF4y2Ba
73gydF4y2Ba
75gydF4y2Ba #define CROSS(out,a,b) \gydF4y2Ba
76gydF4y2Ba (out)[0] = (a)[1]*(b)[2] - (b)[1]*(a)[2];\gydF4y2Ba
77gydF4y2Ba (out)[1] = (a)[2]*(b)[0] - (b)[2]*(a)[0];\gydF4y2Ba
78gydF4y2Ba (out)[2] = (a)[0]*(b)[1] - (b)[0]*(a)[1]gydF4y2Ba
79gydF4y2Ba
81gydF4y2Ba #定义COPY3 \(在)gydF4y2Ba
82gydF4y2Ba (出)[0]= ()[0];\gydF4y2Ba
83gydF4y2Ba (出)[1]= ()[1];\gydF4y2Ba
84gydF4y2Ba (出)[2]= ()[2];gydF4y2Ba
85gydF4y2Ba
87gydF4y2Ba #定义MULT_MAT(艾娜,烟草制品\gydF4y2Ba
88gydF4y2Ba (出)[0]= (inA)[0] *(号)[0]+ (inA)[4] *(号)[1]+ (inA)[8] *(号)[2];\gydF4y2Ba
89gydF4y2Ba (出)[1]= (inA)[1] *(号)[0]+ (inA)[5] *(号)[1]+ (inA)[9] *(号)[2];\gydF4y2Ba
90gydF4y2Ba (出)[2]= (inA)[2] *(号)[0]+ (inA)[6] *(号)[1]+ (inA)[10] *(号)[2];\gydF4y2Ba
91gydF4y2Ba (out)[3] = 0gydF4y2Ba
92gydF4y2Ba (出)[4]= (inA)[0] *(号)[4]+ (inA)[4] *(号)[5]+ (inA)[8] *(号)[6];\gydF4y2Ba
93gydF4y2Ba (出)[5]= (inA)[1] *(号)[4]+ (inA)[5] *(号)[5]+ (inA)[9] *(号)[6];\gydF4y2Ba
94gydF4y2Ba (出)[6]= (inA)[2] *(号)[4]+ (inA)[6] *(号)[5]+ (inA)[10] *(号)[6];\gydF4y2Ba
95gydF4y2Ba (out)[7] = 0gydF4y2Ba
96gydF4y2Ba (出)[8]= (inA)[0] *(号)[8]+ (inA)[4] *(号)[9]+ (inA)[8] *(号)[10];\gydF4y2Ba
97gydF4y2Ba (出)[9]= (inA)[1] *(号)[8]+ (inA)[5] *(号)[9]+ (inA)[9] *(号)[10];\gydF4y2Ba
98gydF4y2Ba (出)[10]= (inA)[2] *(号)[8]+ (inA)[6] *(号)[9]+ (inA)[10] *(号)[10];\gydF4y2Ba
99gydF4y2Ba (out)[11] = 0gydF4y2Ba
One hundred.gydF4y2Ba (出)[12]= (inA)[0] *(号)[12]+ (inA)[4] *(号)[13]+ (inA)[8] *(号)[14]+ [12](inA); \gydF4y2Ba
101gydF4y2Ba (出)[13]= (inA)[1] *(号)[12]+ (inA)[5] *(号)[13]+ (inA)[9] *(号)[14]+ [13](inA); \gydF4y2Ba
102gydF4y2Ba (出)[14]= (inA)[2] *(号)[12]+ (inA)[6] *(号)[13]+ (inA)[10] *(号)[14]+ [14](inA); \gydF4y2Ba
103gydF4y2Ba (out)[15] = 1;gydF4y2Ba
104gydF4y2Ba
106gydF4y2Ba #定义MULT_MAT_VECTOR \ (p, H)gydF4y2Ba
107gydF4y2Ba (出)[0]= (H) [0] * (p) [0] + (H) [4] * (p) [1] + [8] (H) * (p) [2]; \gydF4y2Ba
108gydF4y2Ba (出)[1]= (H) [1] * (p) [0] + [5] (H) * (p) [1] + [9] (H) * (p) [2]; \gydF4y2Ba
109gydF4y2Ba (出)[2]= (H) [2] * (p) [0] + [6] (H) * (p) [1] + (H) [10] * (p) [2];gydF4y2Ba
110gydF4y2Ba
112gydF4y2Ba #定义MULT_MAT_POINT \ (p, H)gydF4y2Ba
113gydF4y2Ba (出)[0]= (H) [0] * (p) [0] + (H) [4] * (p) [1] + [8] (H) * (p) [2] + (H) [12]; \gydF4y2Ba
114gydF4y2Ba (出)[1]= (H) [1] * (p) [0] + [5] (H) * (p) [1] + [9] (H) * (p) [2] + (H) [13]; \gydF4y2Ba
115gydF4y2Ba (出)[2]= (H) [2] * (p) [0] + [6] (H) * (p) [1] + (H) [10] * (p) [2] + (H) [14];gydF4y2Ba
116gydF4y2Ba
117gydF4y2Ba
118gydF4y2Ba
120gydF4y2Ba 结构体gydF4y2Ba tColorgydF4y2Ba{gydF4y2Ba
122gydF4y2Ba 浮动gydF4y2Ba rgydF4y2Ba;gydF4y2Ba
123gydF4y2Ba
125gydF4y2Ba 浮动gydF4y2Ba ggydF4y2Ba;gydF4y2Ba
126gydF4y2Ba
128gydF4y2Ba 浮动gydF4y2Ba bgydF4y2Ba;gydF4y2Ba
129gydF4y2Ba
131gydF4y2Ba 浮动gydF4y2Ba 一个gydF4y2Ba;gydF4y2Ba
132gydF4y2Ba};gydF4y2Ba
133gydF4y2Ba
134gydF4y2Ba
135gydF4y2Ba
136gydF4y2Ba
137gydF4y2Ba
138gydF4y2Ba
139gydF4y2Ba //------------------------------------------------------------------------------------------------------------gydF4y2Ba
140gydF4y2Ba
141gydF4y2Ba
142gydF4y2Ba
145gydF4y2Ba 结构体gydF4y2Ba tMatrix2DgydF4y2Ba{gydF4y2Ba
147gydF4y2Ba 双gydF4y2Ba*gydF4y2Ba数据gydF4y2Ba;gydF4y2Ba
148gydF4y2Ba
150gydF4y2Ba intgydF4y2Ba*gydF4y2Ba大小gydF4y2Ba;gydF4y2Ba
151gydF4y2Ba
153gydF4y2Ba intgydF4y2Ba allocatedSizegydF4y2Ba;gydF4y2Ba
154gydF4y2Ba
156gydF4y2Ba intgydF4y2Ba numDimensionsgydF4y2Ba;gydF4y2Ba
157gydF4y2Ba
158gydF4y2Ba 保龄球gydF4y2BacanFreeData;gydF4y2Ba
159gydF4y2Ba};gydF4y2Ba
160gydF4y2Ba
161gydF4y2Ba
162gydF4y2Ba
163gydF4y2Ba
164gydF4y2Ba // -------------------------------------------gydF4y2Ba
165gydF4y2Ba
166gydF4y2Ba
169gydF4y2Ba tMatrix2DgydF4y2Ba* Matrix2D_Create ();gydF4y2Ba
170gydF4y2Ba
173gydF4y2Ba 无效gydF4y2BaMatrix2D_Delete (gydF4y2BatMatrix2DgydF4y2Ba* *垫);gydF4y2Ba
174gydF4y2Ba
179gydF4y2Ba 无效gydF4y2BaMatrix2D_Set_Size (gydF4y2BatMatrix2DgydF4y2Ba*垫,gydF4y2BaintgydF4y2Ba行,gydF4y2BaintgydF4y2Ba峡路);gydF4y2Ba
180gydF4y2Ba
184gydF4y2Ba intgydF4y2BaMatrix2D_Size (gydF4y2Ba常量gydF4y2Ba tMatrix2DgydF4y2Ba*垫,gydF4y2BaintgydF4y2Ba昏暗的);gydF4y2Ba
185gydF4y2Ba
189gydF4y2Ba intgydF4y2BaMatrix2D_Get_ncols (gydF4y2Ba常量gydF4y2Ba tMatrix2DgydF4y2Ba* var);gydF4y2Ba
190gydF4y2Ba
194gydF4y2Ba intgydF4y2BaMatrix2D_Get_nrows (gydF4y2Ba常量gydF4y2Ba tMatrix2DgydF4y2Ba* var);gydF4y2Ba
195gydF4y2Ba
199gydF4y2Ba 双gydF4y2BaMatrix2D_Get_ij (gydF4y2Ba常量gydF4y2Ba tMatrix2DgydF4y2Ba* var,gydF4y2BaintgydF4y2Ba我,gydF4y2BaintgydF4y2Baj);gydF4y2Ba
200gydF4y2Ba
206gydF4y2Ba 无效gydF4y2BaMatrix2D_Set_ij (gydF4y2Ba常量gydF4y2Ba tMatrix2DgydF4y2Ba* var,gydF4y2BaintgydF4y2Ba我,gydF4y2BaintgydF4y2Baj,gydF4y2Ba双gydF4y2Ba值);gydF4y2Ba
207gydF4y2Ba
213gydF4y2Ba 双gydF4y2Ba* Matrix2D_Get_col (gydF4y2Ba常量gydF4y2Ba tMatrix2DgydF4y2Ba* var,gydF4y2BaintgydF4y2Ba上校);gydF4y2Ba
214gydF4y2Ba
216gydF4y2Ba 保龄球gydF4y2BaMatrix2D_Copy (gydF4y2Ba常量gydF4y2Ba tMatrix2DgydF4y2Ba*,gydF4y2BatMatrix2DgydF4y2Ba*);gydF4y2Ba
217gydF4y2Ba
220gydF4y2Ba 无效gydF4y2BaDebug_Array (gydF4y2Ba常量gydF4y2Ba 双gydF4y2Ba*数组,gydF4y2BaintgydF4y2Baarraysize);gydF4y2Ba
221gydF4y2Ba
224gydF4y2Ba 无效gydF4y2BaDebug_Matrix2D (gydF4y2Ba常量gydF4y2Ba tMatrix2DgydF4y2Ba*垫);gydF4y2Ba
225gydF4y2Ba
227gydF4y2Ba 无效gydF4y2BaMatrix2D_Save (QDataStream * st,gydF4y2BatMatrix2DgydF4y2Ba* emx);gydF4y2Ba
228gydF4y2Ba
230gydF4y2Ba 无效gydF4y2BaMatrix2D_Save (QTextStream * st,gydF4y2BatMatrix2DgydF4y2Ba* emx,gydF4y2Ba保龄球gydF4y2Bacsv =gydF4y2Ba假gydF4y2Ba);gydF4y2Ba
231gydF4y2Ba
233gydF4y2Ba 无效gydF4y2BaMatrix2D_Load (QDataStream * st,gydF4y2BatMatrix2DgydF4y2Ba* * emx);gydF4y2Ba
234gydF4y2Ba
235gydF4y2Ba
236gydF4y2Ba //--------------------- 关节类 -----------------------gydF4y2Ba
237gydF4y2Ba
239gydF4y2Ba 类gydF4y2Ba tJointsgydF4y2Ba{gydF4y2Ba
240gydF4y2Ba
241gydF4y2Ba 公共gydF4y2Ba:gydF4y2Ba
244gydF4y2Ba tJointsgydF4y2Ba(gydF4y2BaintgydF4y2BaNdofs = 0;gydF4y2Ba
245gydF4y2Ba
249gydF4y2Ba tJointsgydF4y2Ba(gydF4y2Ba常量gydF4y2Ba 双gydF4y2Ba*关节,gydF4y2BaintgydF4y2BaNdofs = 0;gydF4y2Ba
250gydF4y2Ba
254gydF4y2Ba tJointsgydF4y2Ba(gydF4y2Ba常量gydF4y2Ba 浮动gydF4y2Ba*关节,gydF4y2BaintgydF4y2BaNdofs = 0;gydF4y2Ba
255gydF4y2Ba
258gydF4y2Ba tJointsgydF4y2Ba(gydF4y2Ba常量gydF4y2Ba tJointsgydF4y2Ba&jnts);gydF4y2Ba
259gydF4y2Ba
264gydF4y2Ba tJointsgydF4y2Ba(gydF4y2Ba常量gydF4y2Ba tMatrix2DgydF4y2Ba* mat2d,gydF4y2BaintgydF4y2Ba列= 0,gydF4y2BaintgydF4y2Bandofs = 1);gydF4y2Ba
265gydF4y2Ba
268gydF4y2Ba tJointsgydF4y2Ba(gydF4y2Ba常量gydF4y2BaQString str);gydF4y2Ba
269gydF4y2Ba
271gydF4y2Ba 操作符gydF4y2BaQString ()gydF4y2Ba常量gydF4y2Ba{gydF4y2Ba返回gydF4y2Ba ToStringgydF4y2Ba();}gydF4y2Ba
272gydF4y2Ba
275gydF4y2Ba 常量gydF4y2Ba 双gydF4y2Ba*gydF4y2Ba礼乐祭祀gydF4y2Ba()gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
276gydF4y2Ba
279gydF4y2Ba 常量gydF4y2Ba 浮动gydF4y2Ba*gydF4y2BaValuesFgydF4y2Ba()gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
280gydF4y2Ba
281gydF4y2Ba # ifdef ROBODK_API_FLOATSgydF4y2Ba
284gydF4y2Ba 常量gydF4y2Ba 浮动gydF4y2Ba*gydF4y2Ba值gydF4y2Ba()gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
285gydF4y2Ba 其他#gydF4y2Ba
288gydF4y2Ba 常量gydF4y2Ba 双gydF4y2Ba*gydF4y2Ba值gydF4y2Ba()gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
289gydF4y2Ba # endifgydF4y2Ba
290gydF4y2Ba
291gydF4y2Ba
292gydF4y2Ba
293gydF4y2Ba 双gydF4y2Ba比较(gydF4y2Ba常量gydF4y2Ba tJointsgydF4y2Ba及其他)gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
294gydF4y2Ba
297gydF4y2Ba 双gydF4y2Ba*gydF4y2Ba数据gydF4y2Ba();gydF4y2Ba
298gydF4y2Ba
301gydF4y2Ba intgydF4y2Ba 长度gydF4y2Ba()gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
302gydF4y2Ba
304gydF4y2Ba 无效gydF4y2Ba setLengthgydF4y2Ba(gydF4y2BaintgydF4y2Banew_length);gydF4y2Ba
305gydF4y2Ba
309gydF4y2Ba 保龄球gydF4y2Ba 有效的gydF4y2Ba();gydF4y2Ba
310gydF4y2Ba
314gydF4y2Ba intgydF4y2Ba getvaluegydF4y2Ba(gydF4y2Ba双gydF4y2Ba*关节);gydF4y2Ba
315gydF4y2Ba
319gydF4y2Ba 无效gydF4y2Ba setvaluegydF4y2Ba(gydF4y2Ba常量gydF4y2Ba 双gydF4y2Ba*关节,gydF4y2BaintgydF4y2BaNdofs = -1);gydF4y2Ba
320gydF4y2Ba
324gydF4y2Ba 无效gydF4y2Ba setvaluegydF4y2Ba(gydF4y2Ba常量gydF4y2Ba 浮动gydF4y2Ba*关节,gydF4y2BaintgydF4y2BaNdofs = -1);gydF4y2Ba
325gydF4y2Ba
330gydF4y2BaQStringgydF4y2BaToStringgydF4y2Ba(gydF4y2Ba常量gydF4y2BaQString分离器=gydF4y2Ba”、“gydF4y2Ba,gydF4y2BaintgydF4y2Ba精度= 3)gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
331gydF4y2Ba
335gydF4y2Ba 保龄球gydF4y2Ba FromStringgydF4y2Ba(gydF4y2Ba常量gydF4y2BaQString str);gydF4y2Ba
336gydF4y2Ba
337gydF4y2Ba
338gydF4y2Ba 公共gydF4y2Ba:gydF4y2Ba
340gydF4y2Ba intgydF4y2Ba _nDOFsgydF4y2Ba;gydF4y2Ba
341gydF4y2Ba
343gydF4y2Ba 双gydF4y2Ba _ValuesgydF4y2Ba[RDK_SIZE_JOINTS_MAX];gydF4y2Ba
344gydF4y2Ba
346gydF4y2Ba 浮动gydF4y2Ba _ValuesFgydF4y2Ba[RDK_SIZE_JOINTS_MAX];gydF4y2Ba
347gydF4y2Ba};gydF4y2Ba
348gydF4y2Ba
349gydF4y2Ba
350gydF4y2Ba
351gydF4y2Ba
361gydF4y2Ba 类gydF4y2Ba 垫gydF4y2Ba:gydF4y2Ba公共gydF4y2BaQMatrix4x4 {gydF4y2Ba
362gydF4y2Ba
363gydF4y2Ba 公共gydF4y2Ba:gydF4y2Ba
364gydF4y2Ba
366gydF4y2Ba 垫gydF4y2Ba();gydF4y2Ba
367gydF4y2Ba
369gydF4y2Ba 垫gydF4y2Ba(gydF4y2Ba保龄球gydF4y2Ba有效);gydF4y2Ba
370gydF4y2Ba
372gydF4y2Ba 垫gydF4y2Ba(gydF4y2Ba常量gydF4y2BaQMatrix4x4矩阵);gydF4y2Ba
373gydF4y2Ba
376gydF4y2Ba 垫gydF4y2Ba(gydF4y2Ba常量gydF4y2Ba 垫gydF4y2Ba矩阵);gydF4y2Ba
377gydF4y2Ba
398gydF4y2Ba 垫gydF4y2Ba(gydF4y2Ba双gydF4y2Banx,gydF4y2Ba双gydF4y2Ba牛,gydF4y2Ba双gydF4y2Baax,gydF4y2Ba双gydF4y2Batx,gydF4y2Ba双gydF4y2Ba纽约,gydF4y2Ba双gydF4y2Ba哦gydF4y2Ba双gydF4y2Ba哦,gydF4y2Ba双gydF4y2Ba泰,gydF4y2Ba双gydF4y2Ba新西兰,gydF4y2Ba双gydF4y2Ba盎司,gydF4y2Ba双gydF4y2Ba阿兹,gydF4y2Ba双gydF4y2Batz);gydF4y2Ba
399gydF4y2Ba
407gydF4y2Ba 垫gydF4y2Ba(gydF4y2Ba常量gydF4y2Ba 双gydF4y2Ba值[16]);gydF4y2Ba
408gydF4y2Ba
417gydF4y2Ba 垫gydF4y2Ba(gydF4y2Ba常量gydF4y2Ba 浮动gydF4y2Ba值[16]);gydF4y2Ba
418gydF4y2Ba
432gydF4y2Ba 垫gydF4y2Ba(gydF4y2Ba双gydF4y2Bax,gydF4y2Ba双gydF4y2Bay,gydF4y2Ba双gydF4y2Baz);gydF4y2Ba
433gydF4y2Ba
434gydF4y2Ba ~垫gydF4y2Ba();gydF4y2Ba
435gydF4y2Ba
437gydF4y2Ba 操作符gydF4y2BaQString ()gydF4y2Ba常量gydF4y2Ba{gydF4y2Ba返回gydF4y2Ba ToStringgydF4y2Ba();}gydF4y2Ba
438gydF4y2Ba
440gydF4y2Ba 无效gydF4y2Ba setVXgydF4y2Ba(gydF4y2Ba双gydF4y2Bax,gydF4y2Ba双gydF4y2Bay,gydF4y2Ba双gydF4y2Baz);gydF4y2Ba
441gydF4y2Ba
443gydF4y2Ba 无效gydF4y2Ba setVYgydF4y2Ba(gydF4y2Ba双gydF4y2Bax,gydF4y2Ba双gydF4y2Bay,gydF4y2Ba双gydF4y2Baz);gydF4y2Ba
444gydF4y2Ba
446gydF4y2Ba 无效gydF4y2Ba setVZgydF4y2Ba(gydF4y2Ba双gydF4y2Bax,gydF4y2Ba双gydF4y2Bay,gydF4y2Ba双gydF4y2Baz);gydF4y2Ba
447gydF4y2Ba
449gydF4y2Ba 无效gydF4y2Ba setPosgydF4y2Ba(gydF4y2Ba双gydF4y2Bax,gydF4y2Ba双gydF4y2Bay,gydF4y2Ba双gydF4y2Baz);gydF4y2Ba
450gydF4y2Ba
452gydF4y2Ba 无效gydF4y2Ba setVXgydF4y2Ba(gydF4y2Ba双gydF4y2Baxyz [3]);gydF4y2Ba
453gydF4y2Ba
455gydF4y2Ba 无效gydF4y2Ba setVYgydF4y2Ba(gydF4y2Ba双gydF4y2Baxyz [3]);gydF4y2Ba
456gydF4y2Ba
458gydF4y2Ba 无效gydF4y2Ba setVZgydF4y2Ba(gydF4y2Ba双gydF4y2Baxyz [3]);gydF4y2Ba
459gydF4y2Ba
461gydF4y2Ba 无效gydF4y2Ba setPosgydF4y2Ba(gydF4y2Ba双gydF4y2Baxyz [3]);gydF4y2Ba
462gydF4y2Ba
464gydF4y2Ba 无效gydF4y2Ba setvaluegydF4y2Ba(gydF4y2Ba双gydF4y2Ba造成[16]);gydF4y2Ba
465gydF4y2Ba
467gydF4y2Ba 无效gydF4y2Ba VXgydF4y2Ba(tXYZ xyz)gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
468gydF4y2Ba
470gydF4y2Ba 无效gydF4y2Ba vgydF4y2Ba(tXYZ xyz)gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
471gydF4y2Ba
473gydF4y2Ba 无效gydF4y2Ba VZgydF4y2Ba(tXYZ xyz)gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
474gydF4y2Ba
476gydF4y2Ba 无效gydF4y2Ba PosgydF4y2Ba(tXYZ xyz)gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
477gydF4y2Ba
482gydF4y2Ba 无效gydF4y2Ba 集gydF4y2Ba(gydF4y2BaintgydF4y2Bar,gydF4y2BaintgydF4y2Bac,gydF4y2Ba双gydF4y2Ba值);gydF4y2Ba
483gydF4y2Ba
488gydF4y2Ba 双gydF4y2Ba 得到gydF4y2Ba(gydF4y2BaintgydF4y2Bar,gydF4y2BaintgydF4y2Bac)gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
489gydF4y2Ba
491gydF4y2Ba 垫gydF4y2Ba 发票gydF4y2Ba()gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
492gydF4y2Ba
494gydF4y2Ba 保龄球gydF4y2Ba isHomogeneousgydF4y2Ba()gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
495gydF4y2Ba
497gydF4y2Ba 保龄球gydF4y2Ba MakeHomogeneousgydF4y2Ba();gydF4y2Ba
498gydF4y2Ba
499gydF4y2Ba / /——对xyzrpw和xyzrpw姿势 ------------gydF4y2Ba
500gydF4y2Ba
507gydF4y2Ba 无效gydF4y2Ba ToXYZRPWgydF4y2Ba(tXYZWPR xyzwpr)gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
508gydF4y2Ba
514gydF4y2BaQStringgydF4y2BaToStringgydF4y2Ba(gydF4y2Ba常量gydF4y2BaQString分离器=gydF4y2Ba”、“gydF4y2Ba,gydF4y2BaintgydF4y2Ba精度= 3,gydF4y2Ba保龄球gydF4y2Baxyzrpw_only =gydF4y2Ba假gydF4y2Ba)gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
515gydF4y2Ba
517gydF4y2Ba 保龄球gydF4y2Ba FromStringgydF4y2Ba(gydF4y2Ba常量gydF4y2BaQString str);gydF4y2Ba
518gydF4y2Ba
526gydF4y2Ba 无效gydF4y2Ba FromXYZRPWgydF4y2Ba(tXYZWPR xyzwpr);gydF4y2Ba
527gydF4y2Ba
535gydF4y2Ba 静态gydF4y2Ba 垫gydF4y2Ba XYZRPW_2_MatgydF4y2Ba(gydF4y2Ba双gydF4y2Bax,gydF4y2Ba双gydF4y2Bay,gydF4y2Ba双gydF4y2Baz,gydF4y2Ba双gydF4y2Bar,gydF4y2Ba双gydF4y2Bap,gydF4y2Ba双gydF4y2Baw);gydF4y2Ba
536gydF4y2Ba 静态gydF4y2Ba 垫gydF4y2Ba XYZRPW_2_MatgydF4y2Ba(tXYZWPR xyzwpr);gydF4y2Ba
537gydF4y2Ba
539gydF4y2Ba 常量gydF4y2Ba 双gydF4y2Ba*gydF4y2Ba礼乐祭祀gydF4y2Ba()gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
540gydF4y2Ba
542gydF4y2Ba 常量gydF4y2Ba 浮动gydF4y2Ba*gydF4y2BaValuesFgydF4y2Ba()gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
543gydF4y2Ba
544gydF4y2Ba # ifdef ROBODK_API_FLOATSgydF4y2Ba
546gydF4y2Ba 常量gydF4y2Ba 浮动gydF4y2Ba*gydF4y2Ba值gydF4y2Ba()gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
547gydF4y2Ba 其他#gydF4y2Ba
549gydF4y2Ba 常量gydF4y2Ba 双gydF4y2Ba*gydF4y2Ba值gydF4y2Ba()gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
550gydF4y2Ba # endifgydF4y2Ba
551gydF4y2Ba
553gydF4y2Ba 无效gydF4y2Ba 值gydF4y2Ba(gydF4y2Ba双gydF4y2Ba值[16])gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
554gydF4y2Ba
556gydF4y2Ba 无效gydF4y2Ba 值gydF4y2Ba(gydF4y2Ba浮动gydF4y2Ba值[16])gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
557gydF4y2Ba
559gydF4y2Ba 保龄球gydF4y2Ba 有效的gydF4y2Ba()gydF4y2Ba常量gydF4y2Ba;gydF4y2Ba
560gydF4y2Ba
574gydF4y2Ba 静态gydF4y2Ba 垫gydF4y2Ba translgydF4y2Ba(gydF4y2Ba双gydF4y2Bax,gydF4y2Ba双gydF4y2Bay,gydF4y2Ba双gydF4y2Baz);gydF4y2Ba
575gydF4y2Ba
587gydF4y2Ba 静态gydF4y2Ba 垫gydF4y2Ba rotxgydF4y2Ba(gydF4y2Ba双gydF4y2Barx);gydF4y2Ba
588gydF4y2Ba
600gydF4y2Ba 静态gydF4y2Ba 垫gydF4y2Ba rotygydF4y2Ba(gydF4y2Ba双gydF4y2Ba一);gydF4y2Ba
601gydF4y2Ba
613gydF4y2Ba 静态gydF4y2Ba 垫gydF4y2Ba rotzgydF4y2Ba(gydF4y2Ba双gydF4y2Barz);gydF4y2Ba
614gydF4y2Ba
615gydF4y2Ba 私人gydF4y2Ba:gydF4y2Ba
617gydF4y2Ba 双gydF4y2Ba _validgydF4y2Ba;gydF4y2Ba
618gydF4y2Ba
619gydF4y2Ba //这是一个虚拟变量,可以很容易地获得一个指向16双精度数组的指针,用于矩阵乘法gydF4y2Ba
620gydF4y2Ba 私人gydF4y2Ba:gydF4y2Ba
622gydF4y2Ba 双gydF4y2Ba _ddata16gydF4y2Ba[16];gydF4y2Ba
623gydF4y2Ba
624gydF4y2Ba};gydF4y2Ba
625gydF4y2Ba
627gydF4y2Ba 垫gydF4y2Batransl (gydF4y2Ba双gydF4y2Bax,gydF4y2Ba双gydF4y2Bay,gydF4y2Ba双gydF4y2Baz);gydF4y2Ba
628gydF4y2Ba
630gydF4y2Ba 垫gydF4y2Barotx (gydF4y2Ba双gydF4y2Barx);gydF4y2Ba
631gydF4y2Ba
633gydF4y2Ba 垫gydF4y2Baroty (gydF4y2Ba双gydF4y2Ba一);gydF4y2Ba
634gydF4y2Ba
636gydF4y2Ba 垫gydF4y2Barotz (gydF4y2Ba双gydF4y2Barz);gydF4y2Ba
637gydF4y2Ba
638gydF4y2Ba //QDataStream &operator<<(QDataStream &data, const QMatrix4x4 &);gydF4y2Ba
639gydF4y2Ba 内联gydF4y2BaQDebug操作符<<(QDebug dbg,gydF4y2Ba常量gydF4y2Ba 垫gydF4y2Baa&m) {gydF4y2Ba返回gydF4y2BaDbg.noquote () << m。gydF4y2BaToStringgydF4y2Ba();}gydF4y2Ba
640gydF4y2Ba 内联gydF4y2BaQDebug操作符<<(QDebug dbg,gydF4y2Ba常量gydF4y2Ba tJointsgydF4y2Ba&jnts) {gydF4y2Ba返回gydF4y2BaDbg.noquote () << jnts。gydF4y2BaToStringgydF4y2Ba();}gydF4y2Ba
641gydF4y2Ba
642gydF4y2Ba 内联gydF4y2BaQDebug操作符<<(QDebug dbg,gydF4y2Ba常量gydF4y2Ba 垫gydF4y2Ba*米){gydF4y2Ba返回gydF4y2BaDbg.noquote () << (m ==gydF4y2BanullptrgydF4y2Ba?gydF4y2Ba“垫(null)”gydF4y2Ba: m - >gydF4y2BaToStringgydF4y2Ba());}gydF4y2Ba
643gydF4y2Ba 内联gydF4y2BaQDebug操作符<<(QDebug dbg,gydF4y2Ba常量gydF4y2Ba tJointsgydF4y2Ba* jnts) {gydF4y2Ba返回gydF4y2BaDbg.noquote () << (jnts ==)gydF4y2BanullptrgydF4y2Ba?gydF4y2Ba“tJoints (null)”gydF4y2Ba: jnts - >gydF4y2BaToStringgydF4y2Ba());}gydF4y2Ba
644gydF4y2Ba
645gydF4y2Ba
646gydF4y2Ba
647gydF4y2Ba # endifgydF4y2Ba / / ROBODKTYPES_HgydF4y2Ba
Item类表示RoboDK站中的一个项目。一个物品可以是一个机器人、一个框架……gydF4y2Ba
定义:gydF4y2Ba iitem.h: 14gydF4y2Ba
这个类是RoboDK API的接口。使用RoboDK API,您可以自动执行某些任务和…gydF4y2Ba
定义:gydF4y2Ba irobodk.h: 14gydF4y2Ba
Mat类表示4x4姿态矩阵。这个对象的主要目的是表示一个姿势在…gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 361gydF4y2Ba
QString ToString(const QString &separator=", ", int precision=3, bool xyzrpw_only=falsegydF4y2Ba
检索姿势的字符串表示形式。gydF4y2Ba
垫()gydF4y2Ba
创建单位矩阵。gydF4y2Ba
void VX(tXYZ) constgydF4y2Ba
得到X向量(N向量)gydF4y2Ba
void setVX(双x,双y,双z)gydF4y2Ba
设置X矢量值(N矢量)gydF4y2Ba
从xyzrpw (tXYZWPR xyzwpr)gydF4y2Ba
从位置和欧拉角([x,y,z,r,p,w]向量)计算姿态,结果是一样的…gydF4y2Ba
void VY(tXYZ) constgydF4y2Ba
得到Y向量(O向量)gydF4y2Ba
静态Mat transl(双x,双y,双z)gydF4y2Ba
返回一个平移矩阵。gydF4y2Ba
void xyxyzrpw (xyxyzwpr) constgydF4y2Ba
计算给定姿态的等效位置和欧拉角([x,y,z,r,p,w]矢量)gydF4y2Ba
void setVZ(双x,双y,双z)gydF4y2Ba
设置Z矢量值(A矢量)gydF4y2Ba
double Get(int r, int cgydF4y2Ba
得到一个矩阵值。gydF4y2Ba
bool Valid() constgydF4y2Ba
检查矩阵是否有效。gydF4y2Ba
void setVY(双x,双y,双z)gydF4y2Ba
设置Y向量值(O向量)gydF4y2Ba
静垫(双垫)gydF4y2Ba
返回一个y轴旋转矩阵gydF4y2Ba
const . double * Values(gydF4y2Ba
获取指向16位数组的指针(如果定义了ROBODK_API_FLOATS,则为双精度或浮点数)。gydF4y2Ba
void setValues(double pose[16])gydF4y2Ba
设置姿态值。gydF4y2Ba
void Pos(tXYZ) constgydF4y2Ba
获取位置(T位置),单位为mm。gydF4y2Ba
bool MakeHomogeneous ()gydF4y2Ba
强制4x4矩阵是齐次的(vx,vy,vz必须是酉向量,并且尊重:vx x vy = vz)....gydF4y2Ba
静态马特罗兹(双rz)gydF4y2Ba
返回一个z轴旋转矩阵。gydF4y2Ba
const double * ValuesD(gydF4y2Ba
获取指向16位双精度数组的指针。gydF4y2Ba
双_ddata16 [16]gydF4y2Ba
将数据复制为双精度数组。gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 622gydF4y2Ba
bool FromString(const QString &str)gydF4y2Ba
设置给定XYZRPW字符串数组的矩阵(6个值)gydF4y2Ba
双_validgydF4y2Ba
如果矩阵无效则标记。gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 617gydF4y2Ba
Mat inv() constgydF4y2Ba
反位姿(假设齐次矩阵)gydF4y2Ba
void setPos(double x, double y, double z)gydF4y2Ba
设置位置(T位置),单位为mm。gydF4y2Ba
void VZ(tXYZ) constgydF4y2Ba
得到Z向量(A向量)gydF4y2Ba
bool isomohomogeneous () constgydF4y2Ba
如果矩阵是齐次的则返回true,否则返回false。gydF4y2Ba
float * ValuesF(gydF4y2Ba
获取指向16位数组的指针作为浮点数数组。gydF4y2Ba
void Set(int r, int c, double value)gydF4y2Ba
设置矩阵值。gydF4y2Ba
静态Mat rox(双rx)gydF4y2Ba
返回x轴旋转矩阵。gydF4y2Ba
(双x,双y,双z,双r,双p,双w)gydF4y2Ba
从位置和欧拉角([x,y,z,r,p,w]向量)计算姿态,结果是一样的…gydF4y2Ba
tjoint类表示机器人的关节位置(机器人轴)。gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 239gydF4y2Ba
int GetValues(双*关节)gydF4y2Ba
getvalue。gydF4y2Ba
定义:gydF4y2Ba robodktypes.cpp: 95gydF4y2Ba
tJoints (int ndofs = 0)gydF4y2Ba
tJointsgydF4y2Ba
定义:gydF4y2Ba robodktypes.cpp: 8gydF4y2Ba
QString ToString(QString &separator=", ", int precision=3gydF4y2Ba
检索关节值的字符串表示形式。gydF4y2Ba
int Length() constgydF4y2Ba
机器人关节轴数(或自由度)gydF4y2Ba
const . double * Values(gydF4y2Ba
共同的价值观。gydF4y2Ba
定义:gydF4y2Ba robodktypes.cpp: 60gydF4y2Ba
bool有效()gydF4y2Ba
检查关节是否有效。例如,当我们要求逆运动学时,没有so…gydF4y2Ba
int _nDOFsgydF4y2Ba
自由度的数目gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 340gydF4y2Ba
double * Data()gydF4y2Ba
定义:gydF4y2Ba robodktypes.cpp: 73gydF4y2Ba
const double * ValuesD(gydF4y2Ba
共同的价值观。gydF4y2Ba
定义:gydF4y2Ba robodktypes.cpp: 46gydF4y2Ba
双_Values [RDK_SIZE_JOINTS_MAX]gydF4y2Ba
关节值(双精度,用于存储关节值)gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 343gydF4y2Ba
bool FromString(const QString &str)gydF4y2Ba
设置给定逗号分隔字符串的联合值。也允许使用制表符和空格。gydF4y2Ba
void setLength(int new_length)gydF4y2Ba
设置数组的长度(只允许收缩数组)gydF4y2Ba
浮动_ValuesF [RDK_SIZE_JOINTS_MAX]gydF4y2Ba
联合值(浮点数,用于返回作为浮点指针的副本)gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 346gydF4y2Ba
float * ValuesF(gydF4y2Ba
共同的价值观。gydF4y2Ba
定义:gydF4y2Ba robodktypes.cpp: 49gydF4y2Ba
void SetValues(const double *joint, int ndofs=-1)gydF4y2Ba
设置关节值在度或毫米。你也可以重要地提供自由度的数量(6…gydF4y2Ba
定义:gydF4y2Ba robodktypes.cpp: 78gydF4y2Ba
Color结构体表示RGBA颜色(每个颜色组件应该在[0-1]范围内)gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 120gydF4y2Ba
浮动rgydF4y2Ba
红色的颜色。gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 122gydF4y2Ba
一个浮动gydF4y2Ba
Alpha值(0 = transparent;1 =不透明)gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 131gydF4y2Ba
浮动bgydF4y2Ba
蓝色的颜色。gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 128gydF4y2Ba
浮动ggydF4y2Ba
绿色的颜色。gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 125gydF4y2Ba
tMatrix2D结构体表示一个可变大小的2d矩阵。使用Matrix2D_…函数来操作…gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 145gydF4y2Ba
双*数据gydF4y2Ba
指向数据的指针。gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 147gydF4y2Ba
Int * sizegydF4y2Ba
指向大小数组的指针。gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 150gydF4y2Ba
int allocatedSizegydF4y2Ba
分配的大小。gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 153gydF4y2Ba
int numDimensionsgydF4y2Ba
维度数(通常为2)gydF4y2Ba
定义:gydF4y2Ba robodktypes.h: 156gydF4y2Ba