quat_rotate_point_3d T_quat_rotate_point_3d QuatRotatePoint3d QuatRotatePoint3d quat_rotate_point_3d (算子)
名称
quat_rotate_point_3d T_quat_rotate_point_3d QuatRotatePoint3d QuatRotatePoint3d quat_rotate_point_3d — 按单位四元数执行旋转。
签名
Herror T_quat_rotate_point_3d (const Htuple Quaternion , const Htuple Px , const Htuple Py , const Htuple Pz , Htuple* Qx , Htuple* Qy , Htuple* Qz )
void QuatRotatePoint3d (const HTuple& Quaternion , const HTuple& Px , const HTuple& Py , const HTuple& Pz , HTuple* Qx , HTuple* Qy , HTuple* Qz )
double HQuaternion ::QuatRotatePoint3d (double Px , double Py , double Pz , double* Qy , double* Qz ) const
static void HOperatorSet .QuatRotatePoint3d (HTuple quaternion , HTuple px , HTuple py , HTuple pz , out HTuple qx , out HTuple qy , out HTuple qz )
double HQuaternion .QuatRotatePoint3d (double px , double py , double pz , out double qy , out double qz )
def quat_rotate_point_3d (quaternion : Sequence[float], px : float, py : float, pz : float) -> Tuple[float, float, float]
描述
Given a rotation quaternion (e.g., generated by axis_angle_to_quat axis_angle_to_quat AxisAngleToQuat AxisAngleToQuat AxisAngleToQuat axis_angle_to_quat ),
the operator quat_rotate_point_3d quat_rotate_point_3d QuatRotatePoint3d QuatRotatePoint3d QuatRotatePoint3d quat_rotate_point_3d can be used to rotate a 3D point
(Px Px Px Px px px , Py Py Py Py py py , Pz Pz Pz Pz pz pz ). The rotated point is returned in
(Qx Qx Qx Qx qx qx , Qy Qy Qy Qy qy qy , Qz Qz Qz Qz qz qz ).
The rotation of a point x by an unit quaternion q is given by
corresponds to the conjugation of a quaternion q
(see quat_conjugate quat_conjugate QuatConjugate QuatConjugate QuatConjugate quat_conjugate ). Note that x will be transformed
into quaternion form to perform the rotation. This is done by setting the
real part to zero and the three imaginary components to the three
components of x.
注意
算子 quat_rotate_point_3d quat_rotate_point_3d QuatRotatePoint3d QuatRotatePoint3d QuatRotatePoint3d quat_rotate_point_3d does not check whether
Quaternion Quaternion Quaternion Quaternion quaternion quaternion is a unit quaternion. If Quaternion Quaternion Quaternion Quaternion quaternion quaternion is not
a unit quaternion, the result of this operator is not defined.
执行信息
多线程类型:可重入(与非独占算子并行运行)。
多线程作用域:全局(可从任何线程调用)。
未采用并行化处理。
参数
Quaternion Quaternion Quaternion Quaternion quaternion quaternion (输入控制) quaternion → HQuaternion , HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
旋转四元数。
Px Px Px Px px px (输入控制) real → HTuple float HTuple Htuple (real) (double ) (double ) (double )
X coordinate of the point to be rotated.
Py Py Py Py py py (输入控制) real → HTuple float HTuple Htuple (real) (double ) (double ) (double )
Y coordinate of the point to be rotated.
Pz Pz Pz Pz pz pz (输入控制) real → HTuple float HTuple Htuple (real) (double ) (double ) (double )
Z coordinate of the point to be rotated.
Qx Qx Qx Qx qx qx (输出控制) real → HTuple float HTuple Htuple (real) (double ) (double ) (double )
X coordinate of the rotated point.
Qy Qy Qy Qy qy qy (输出控制) real → HTuple float HTuple Htuple (real) (double ) (double ) (double )
Y coordinate of the rotated point.
Qz Qz Qz Qz qz qz (输出控制) real → HTuple float HTuple Htuple (real) (double ) (double ) (double )
Z coordinate of the rotated point.
可能的前趋
axis_angle_to_quat axis_angle_to_quat AxisAngleToQuat AxisAngleToQuat AxisAngleToQuat axis_angle_to_quat
另见
axis_angle_to_quat axis_angle_to_quat AxisAngleToQuat AxisAngleToQuat AxisAngleToQuat axis_angle_to_quat ,
quat_to_hom_mat3d quat_to_hom_mat3d QuatToHomMat3d QuatToHomMat3d QuatToHomMat3d quat_to_hom_mat3d ,
quat_compose quat_compose QuatCompose QuatCompose QuatCompose quat_compose ,
quat_normalize quat_normalize QuatNormalize QuatNormalize QuatNormalize quat_normalize ,
quat_conjugate quat_conjugate QuatConjugate QuatConjugate QuatConjugate quat_conjugate ,
quat_interpolate quat_interpolate QuatInterpolate QuatInterpolate QuatInterpolate quat_interpolate ,
dual_quat_trans_point_3d dual_quat_trans_point_3d DualQuatTransPoint3d DualQuatTransPoint3d DualQuatTransPoint3d dual_quat_trans_point_3d ,
dual_quat_trans_line_3d dual_quat_trans_line_3d DualQuatTransLine3d DualQuatTransLine3d DualQuatTransLine3d dual_quat_trans_line_3d
模块
基础