Wzc(讨论 | 贡献)2020年5月18日 (一) 10:09的版本 
 (差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
 
								Template:Needs Translation/ 
| 函数名
 | 
| Function: rotation llAxisAngle2Rot( vector axis, float angle );
 | 
| 返回绕轴生成的角度的旋转
 | 
| •矢量轴
 •浮动角度-以弧度表示。
轴不需要标准化,只有方向是重要的。
角度必须介于0<angle<PI(高于PI的值会导致2*PI角度)之间,因为旋转不是真正的旋转(更像是刚性运动/镜像),最终目的地是旋转。(换句话说:不管你是向左旋转90度还是向右旋转270度,它都会返回相同的旋转)
 
 | 
| 示例
 | 
default
{
    state_entry()
    {
        vector axis = <0.0, 0.0, 1.0>;
        float angle = 90.0 * DEG_TO_RAD;
        rotation rot = llAxisAngle2Rot(axis, angle);
        vector euler = llRot2Euler(rot) * RAD_TO_DEG;
 
        llOwnerSay((string) euler);
        //Says <0.0, 0.0, 90.0> since it is rotating 90 degrees on the Z axis caused by the 1.0 placed in the Z vector spot. 
    }
}
 | 
| 相关事件
 | 
| rotation llAxisAngle2Rot( vector axis, float angle )
 {
 
   axis = llVecNorm( axis ) * llSin( angle/2 );
   return <axis.x, axis.y, axis.z, llCos( angle/2 )>;
 
}
 
 |