的垫类表示4x4姿态矩阵。该对象的主要目的是表示3D空间中的姿态(位置和方向)。换句话说,姿态是一个4x4矩阵,表示一个参考框架相对于另一个参考框架在3D空间中的位置和方向。姿势通常用于机器人中放置物体、参考框架和目标。
\ (transl (x, y, z) rotx (r) roty (p) rotz (w) = \ \ \ {bmatrix}开始n_x & o_x & a_x & x \ \ n_y & o_y &得+ & y \ \ n_z & o_z z \ \ & a_z & 0 & 0 & 0 & 1 \ {bmatrix} \)结束。更多…
# include <robodktypes.h>
公共成员功能 |
|
垫() | |
创建单位矩阵。更多… |
|
垫(bool有效) | |
创建一个有效或无效的矩阵。更多… |
|
垫(const QMatrix4x4 &matrix) | |
创建一个矩阵的副本。更多… |
|
垫(常量垫矩阵) | |
创建一个矩阵的副本。更多… |
|
垫(双nx,双ox,双ax,双tx,双ny,双y,双ay,双ty,双nz,双oz,双az,双tz) | |
给定N, O, a, T向量的4x4齐次矩阵的矩阵类构造函数更多… |
|
垫(const双精度值[16]) | |
给定一个一维16值数组(双精度),创建一个齐次矩阵更多… |
|
垫(const float values[16]) | |
给定一个一维16值数组(浮点数),创建一个齐次矩阵更多… |
|
垫(双x,双y,双z) | |
创建一个转换矩阵。更多… |
|
运营商QString()常量 | |
To String操作符(与qDebug()一起使用)<<tJoints”。更多… |
|
无效 | setVX(双x,双y,双z) |
设置X矢量值(N矢量)更多… |
|
无效 | setVY(双x,双y,双z) |
设置Y向量值(O向量)更多… |
|
无效 | setVZ(双x,双y,双z) |
设置Z矢量值(A矢量)更多… |
|
无效 | setPos(双x,双y,双z) |
设置位置(T位置),单位为mm。更多… |
|
无效 | setVX(双xyz [3]) |
设置X矢量值(N矢量)更多… |
|
无效 | setVY(双xyz [3]) |
设置Y向量值(O向量)更多… |
|
无效 | setVZ(双xyz [3]) |
设置Z矢量值(A矢量)更多… |
|
无效 | setPos(双xyz [3]) |
设置位置(T位置),单位为mm。更多… |
|
无效 | setvalue(双构成[16]) |
设置姿态值。更多… |
|
无效 | VX(tXYZ) const |
得到X向量(N向量)更多… |
|
无效 | v(tXYZ) const |
得到Y向量(O向量)更多… |
|
无效 | VZ(tXYZ) const |
得到Z向量(A向量)更多… |
|
无效 | Pos(tXYZ) const |
获取位置(T位置),单位为mm。更多… |
|
无效 | 集(int r, int c, double value) |
设置矩阵值。更多… |
|
双 | 得到(int r, int c |
得到一个矩阵值。更多… |
|
垫 | 发票()常量 |
反位姿(假设齐次矩阵)更多… |
|
保龄球 | isHomogeneous()常量 |
如果矩阵是齐次的则返回true,否则返回false。更多… |
|
保龄球 | MakeHomogeneous() |
强制4x4矩阵是齐次的(vx,vy,vz必须是酉向量,并且尊重:vx x vy = vz)。如果矩阵不是齐次的,并且它被修改为齐次,则返回True。更多… |
|
无效 | ToXYZRPW(xyzwpr xyzwpr |
计算给定姿态的等效位置和欧拉角([x,y,z,r,p,w]矢量)注:transl(x,y,z)*rotz(w*pi/180)*roty(p*pi/180)*rotx(r*pi/180)参见:FromXYZRPW ()更多… |
|
QString | ToString(const QString &separator=", ", int precision=3, bool xyzrpw_only=false |
检索姿势的字符串表示形式。更多… |
|
保龄球 | FromString(const QString &str) |
设置给定XYZRPW字符串数组的矩阵(6个值)更多… |
|
无效 | FromXYZRPW(tXYZWPR xyzwpr) |
从位置和欧拉角([x,y,z,r,p,w]向量)计算姿态,结果与: H = transl (x, y, z) * rotz (w *π/ 180)* roty (p *π/ 180)* rotx (r *π/ 180)更多… |
|
Const double * | 礼乐祭祀()常量 |
获取指向16位双精度数组的指针。更多… |
|
Const float * | ValuesF()常量 |
获取指向16位数组的指针作为浮点数数组。更多… |
|
Const double * | 值()常量 |
获取指向16位数组的指针(如果定义了ROBODK_API_FLOATS,则为双精度或浮点数)。更多… |
|
无效 | 值(双精度值[16] |
将4x4矩阵的16个值复制到双数组中。更多… |
|
无效 | 值(浮点值[16] |
将4x4矩阵的16个值复制到双数组中。更多… |
|
保龄球 | 有效的()常量 |
检查矩阵是否有效。更多… |
|
静态公共成员函数 |
|
静态垫 | XYZRPW_2_Mat(双x,双y,双z,双r,双p,双w) |
从位置和欧拉角([x,y,z,r,p,w]向量)计算姿态,结果与: H = transl (x, y, z) * rotz (w *π/ 180)* roty (p *π/ 180)* rotx (r *π/ 180)更多… |
|
静态垫 | XYZRPW_2_Mat(tXYZWPR xyzwpr) |
静态垫 | transl(双x,双y,双z) |
返回一个平移矩阵。更多… |
|
静态垫 | rotx(双rx) |
返回x轴旋转矩阵。更多… |
|
静态垫 | roty(双)一块 |
返回一个y轴旋转矩阵更多… |
|
静态垫 | rotz(双rz) |
返回一个z轴旋转矩阵。更多… |
|
私有属性 |
|
双 | _valid |
如果矩阵无效则标记。更多… |
|
双 | _ddata16[16] |
将数据复制为双精度数组。更多… |
|
的垫类表示4x4姿态矩阵。该对象的主要目的是表示3D空间中的姿态(位置和方向)。换句话说,姿态是一个4x4矩阵,表示一个参考框架相对于另一个参考框架在3D空间中的位置和方向。姿势通常用于机器人中放置物体、参考框架和目标。
\ (transl (x, y, z) rotx (r) roty (p) rotz (w) = \ \ \ {bmatrix}开始n_x & o_x & a_x & x \ \ n_y & o_y &得+ & y \ \ n_z & o_z z \ \ & a_z & 0 & 0 & 0 & 1 \ {bmatrix} \)结束。
行定义361的文件robodktypes.h.
垫 | ( | ) |
创建单位矩阵。
行定义158的文件robodktypes.cpp.
垫 | ( | 保龄球 | 有效的 | ) |
创建一个有效或无效的矩阵。
行定义162的文件robodktypes.cpp.
垫 | ( | QMatrix4x4 & | 矩阵 | ) |
创建一个矩阵的副本。
行定义167的文件robodktypes.cpp.
垫 | ( | 双 | nx, |
双 | 牛, | ||
双 | 斧头, | ||
双 | tx, | ||
双 | 纽约, | ||
双 | oy, | ||
双 | 唉, | ||
双 | 泰, | ||
双 | 新西兰, | ||
双 | 盎司, | ||
双 | 阿兹, | ||
双 | tz | ||
) |
给定N, O, a, T向量的4x4齐次矩阵的矩阵类构造函数
nx | 矩阵(0,0) |
牛 | 矩阵[0,1] |
斧头 | 矩阵(0,2) |
tx | 矩阵[0,3] |
纽约 | 矩阵(1,0) |
oy | 矩阵[1] |
唉 | 矩阵[1,2] |
泰 | 矩阵[1,3] |
新西兰 | 矩阵(2,0) |
盎司 | 矩阵(2,1) |
阿兹 | 矩阵(2,2) |
tz | 矩阵(2、3) |
行定义176的文件robodktypes.cpp.
垫 | ( | const双 | 值[16] | ) |
给定一个一维16值数组(双精度),创建一个齐次矩阵
值 | [nx,ny,nz,0, ox, y,oz,0, ax,ay,az,0, tx,ty,tz,1]
|
行定义181的文件robodktypes.cpp.
垫 | ( | const浮动 | 值[16] | ) |
给定一个一维16值数组(浮点数),创建一个齐次矩阵
值 | [nx,ny,nz,0, ox, y,oz,0, ax,ay,az,0, tx,ty,tz,1]
|
行定义186的文件robodktypes.cpp.
垫 | ( | 双 | x, |
双 | y, | ||
双 | z | ||
) |
创建一个转换矩阵。
x | 沿X方向平移量(mm) |
y | 沿Y方向的平移(mm) |
z | 沿Z方向平移(mm) |
行定义192的文件robodktypes.cpp.
~垫 | ( | ) |
行定义199的文件robodktypes.cpp.
bool FromString | ( | QString & | str | ) |
设置给定XYZRPW字符串数组的矩阵(6个值)
行定义440的文件robodktypes.cpp.
空白FromXYZRPW | ( | tXYZWPR | xyzwpr | ) |
从位置和欧拉角([x,y,z,r,p,w]向量)计算姿态,结果与:
H = transl (x, y, z) * rotz (w *π/ 180)* roty (p *π/ 180)* rotx (r *π/ 180)
行定义475的文件robodktypes.cpp.
双得到 | ( | int | r, |
int | c | ||
) | 常量 |
垫发票 | ( | ) | 常量 |
反位姿(假设齐次矩阵)
行定义305的文件robodktypes.cpp.
bool isHomogeneous | ( | ) | 常量 |
如果矩阵是齐次的则返回true,否则返回false。
行定义310的文件robodktypes.cpp.
bool MakeHomogeneous | ( | ) |
强制4x4矩阵是齐次的(vx,vy,vz必须是酉向量,并且尊重:vx x vy = vz)。如果矩阵不是齐次的,并且它被修改为齐次,则返回True。
行定义351的文件robodktypes.cpp.
|
内联 |
To String操作符(与qDebug()一起使用)<<tJoints”。
行定义437的文件robodktypes.h.
空白Pos | ( | tXYZ | xyz | ) | 常量 |
获取位置(T位置),单位为mm。
行定义218的文件robodktypes.cpp.
|
静态 |
返回x轴旋转矩阵。
处方 | 绕X轴旋转(以弧度为单位)。 |
行定义529的文件robodktypes.cpp.
|
静态 |
返回一个y轴旋转矩阵
变化中 | 绕Y轴旋转(以弧度为单位) |
行定义535的文件robodktypes.cpp.
|
静态 |
返回一个z轴旋转矩阵。
rz | 绕Z轴旋转(以弧度计) |
行定义541的文件robodktypes.cpp.
空集 | ( | int | r, |
int | c, | ||
双 | 价值 | ||
) |
空白setPos | ( | 双 | x, |
双 | y, | ||
双 | z | ||
) |
设置位置(T位置),单位为mm。
行定义239的文件robodktypes.cpp.
空白setPos | ( | 双 | xyz[3] | ) |
设置位置(T位置),单位为mm。
行定义260的文件robodktypes.cpp.
空白setvalue | ( | 双 | 构成[16] | ) |
设置姿态值。
行定义267的文件robodktypes.cpp.
空白setVX | ( | 双 | x, |
双 | y, | ||
双 | z | ||
) |
设置X矢量值(N矢量)
行定义224的文件robodktypes.cpp.
空白setVX | ( | 双 | xyz[3] | ) |
设置X矢量值(N矢量)
行定义245的文件robodktypes.cpp.
空白setVY | ( | 双 | x, |
双 | y, | ||
双 | z | ||
) |
设置Y向量值(O向量)
行定义229的文件robodktypes.cpp.
空白setVY | ( | 双 | xyz[3] | ) |
设置Y向量值(O向量)
行定义250的文件robodktypes.cpp.
空白setVZ | ( | 双 | x, |
双 | y, | ||
双 | z | ||
) |
设置Z矢量值(A矢量)
行定义234的文件robodktypes.cpp.
空白setVZ | ( | 双 | xyz[3] | ) |
设置Z矢量值(A矢量)
行定义255的文件robodktypes.cpp.
QString ToString | ( | QString & | 分隔符=”、“ , |
int | 精度=3. , |
||
保龄球 | xyzrpw_only=假 |
||
) | 常量 |
检索姿势的字符串表示形式。
分隔符 | 字符串分隔符 |
精度 | 小数点数 |
in_xyzwpr | 如果设置为true(默认),姿态将使用xyyzrpw表示为XYZWPR 6维数组 |
行定义405的文件robodktypes.cpp.
空白ToXYZRPW | ( | tXYZWPR | xyzwpr | ) | 常量 |
计算给定姿态的等效位置和欧拉角([x,y,z,r,p,w]矢量)注:transl(x,y,z)*rotz(w*pi/180)*roty(p*pi/180)*rotx(r*pi/180)参见:FromXYZRPW ()
行定义380的文件robodktypes.cpp.
|
静态 |
返回一个平移矩阵。
x | 沿X方向平移量(mm) |
y | 沿Y方向的平移(mm) |
z | 沿Z方向平移(mm) |
行定义522的文件robodktypes.cpp.
bool有效 | ( | ) | 常量 |
检查矩阵是否有效。
行定义518的文件robodktypes.cpp.
const double * Values | ( | ) | 常量 |
获取指向16位数组的指针(如果定义了ROBODK_API_FLOATS,则为双精度或浮点数)。
行定义500的文件robodktypes.cpp.
无效的值 | ( | 双 | 值[16] | ) | 常量 |
将4x4矩阵的16个值复制到双数组中。
行定义508的文件robodktypes.cpp.
无效的值 | ( | 浮动 | 值[16] | ) | 常量 |
将4x4矩阵的16个值复制到双数组中。
行定义513的文件robodktypes.cpp.
const double * ValuesD | ( | ) | 常量 |
获取指向16位双精度数组的指针。
行定义484的文件robodktypes.cpp.
const float * ValuesF | ( | ) | 常量 |
获取指向16位数组的指针作为浮点数数组。
行定义491的文件robodktypes.cpp.
空白VX | ( | tXYZ | xyz | ) | 常量 |
得到X向量(N向量)
行定义203的文件robodktypes.cpp.
空白v | ( | tXYZ | xyz | ) | 常量 |
得到Y向量(O向量)
行定义208的文件robodktypes.cpp.
空白之后 | ( | tXYZ | xyz | ) | 常量 |
得到Z向量(A向量)
行定义213的文件robodktypes.cpp.
|
静态 |
从位置和欧拉角([x,y,z,r,p,w]向量)计算姿态,结果与:
H = transl (x, y, z) * rotz (w *π/ 180)* roty (p *π/ 180)* rotx (r *π/ 180)
行定义459的文件robodktypes.cpp.
|
静态 |
行定义471的文件robodktypes.cpp.
|
私人 |
将数据复制为双精度数组。
行定义622的文件robodktypes.h.
|
私人 |
如果矩阵无效则标记。
行定义617的文件robodktypes.h.