|
BIMHome v1.0.0
BIMHome接口文档说明
|
Placement 类,表示三维空间中的位置和旋转 更多...
#include <Placement.h>
Public 成员函数 | |
| void | fromMatrix (const Matrix4D &m) |
| 从 4x4 变换矩阵提取位置和旋转 | |
| const Vector3d & | getPosition () const |
| 获取当前位置 | |
| const Rotation & | getRotation () const |
| 获取当前旋转 | |
| Placement | inverse () const |
| 获取逆变换 | |
| void | invert () |
| 计算逆变换 | |
| bool | isIdentity () const |
| 检查是否为单位 Placement | |
| void | move (const Vector3d &MovVec) |
| 移动 Placement 对象 | |
| void | multVec (const Vector3d &src, Vector3d &dst) const |
| 将 Placement 对象应用于向量 | |
| bool | operator!= (const Placement &that) const |
| 重载 != 运算符,比较两个 Placement 对象是否不相等 | |
| Placement | operator* (const Placement &p) const |
| 重载 * 运算符,组合两个 Placement 对象 | |
| Placement & | operator*= (const Placement &p) |
| 重载 *= 运算符,组合两个 Placement 对象 | |
| Placement & | operator= (const Placement &) |
| 重载 = 运算符 | |
| bool | operator== (const Placement &that) const |
| 重载 == 运算符,比较两个 Placement 对象是否相等 | |
| Placement () | |
| 默认构造函数 | |
| Placement (const Base::Matrix4D &matrix) | |
| 从 4x4 变换矩阵创建 Placement 对象 | |
| Placement (const Placement &) | |
| 拷贝构造函数 | |
| Placement (const Vector3d &Pos, const Rotation &Rot) | |
| 从位置和旋转创建 Placement 对象 | |
| Placement (const Vector3d &Pos, const Rotation &Rot, const Vector3d &Cnt) | |
| 从位置、旋转和参考点创建 Placement 对象 | |
| Placement | pow (double t, bool shorten=true) const |
| 计算 Placement 对象的幂 | |
| void | setPosition (const Vector3d &Pos) |
| 设置位置 | |
| void | setRotation (const Rotation &Rot) |
| 设置旋转 | |
| DualQuat | toDualQuaternion () const |
| 将 Placement 对象转换为对偶四元数 | |
| Matrix4D | toMatrix () const |
| 将 Placement 对象转换为 4x4 变换矩阵 | |
| ~Placement () | |
| 析构函数 | |
静态 Public 成员函数 | |
| static Placement | fromDualQuaternion (DualQuat qq) |
| 从对偶四元数创建 Placement 对象 | |
| static Placement | sclerp (const Placement &p0, const Placement &p1, double t, bool shorten=true) |
| 在两个 Placement 对象之间进行球面线性插值(SLERP),可选缩短路径 | |
| static Placement | slerp (const Placement &p0, const Placement &p1, double t) |
| 在两个 Placement 对象之间进行球面线性插值(SLERP) | |
Protected 属性 | |
| Vector3< double > | m_Pos |
| 位置 | |
| Base::Rotation | m_Rot |
| 旋转 | |
Placement 类,表示三维空间中的位置和旋转
该类用于表示和操作三维空间中的位置和旋转,支持从矩阵、四元数等多种方式构造,并提供插值、变换等操作。