p2p网站开发,软件开发工具的发展趋势是,什么是响应网站设计,集团网站建设特点助君Quaternion又称为四元数#xff0c;由x、y、z和w这4个分量组成#xff0c;属于struct类型。 在Unity中#xff0c;用Quaternion来存储和表示对象的旋转角度。
Quaternion类实例属性
在Quaternion类中#xff0c;涉及的实例属性主要有eulerAngles
eulerAngles属性#x…Quaternion又称为四元数由x、y、z和w这4个分量组成属于struct类型。 在Unity中用Quaternion来存储和表示对象的旋转角度。
Quaternion类实例属性
在Quaternion类中涉及的实例属性主要有eulerAngles
eulerAngles属性欧拉角
基本语法
public Vector3 eulerAngles{ get; set; }功能说明此属性用来返回或设置Transform实例对应的欧拉角 1、对GameObject对象的Transform进行欧拉加的变换次序先绕z轴旋转相应的角度再绕x轴旋转相应的角度最后再绕y轴旋转相应的角度。 2、对GameObject对象的旋转角进行赋值的方式通常有两种第一种是将Quaternion实例赋值给transform的rotation第二种是将三维向量代表的欧拉角直接赋值给transform的eulerAngles。
Quaternion类实例方法
在Quaternion类中涉及的实例方法有SetFromToRotation方法、SetLookRotation方法和ToAngleAxis方法。
SetFromToRotation方法创建rotation实例
基本语法
public void SetFromToRotation(Vector3 fromDirection ,Vector3 toDirection);功能说明此方法用于创建一个从fromDirection到toDirection的rotation。
SetLookRotation方法设置Quaternion实例的朝向。
基本语法
1、public void SetLookRotation(Vector3 view);
2、public void SetLookRotation(Vector3 view , Vector3 up);功能说明此方法的功能是对一个Quaternion实例的朝向进行设置。
ToAngleAxis方法Quaternion实例的角轴表示
基本语法
public void ToAngleAxis(out float angle ,out Vector3 axis);
其中参数angle为旋转角参数axis为轴向量功能说明 此方法用于将Quaternion实例转换角轴表示。
Quaternion类静态方法
在Quaternion类中涉及的静态方法有Angle方法、Dot方法、Euler方法、FromToRotation方法、Inverse方法、Lerp方法、LookRotation方法、RotateTowards方法和Slerp方法。
Angle方法Quaternion实例间夹角
基本语法
public static float Angle(Quaternion a ,Quaternion b);功能说明 此方法用于返回从参数a到参数b变换的夹角。
Dot方法点乘
基本语法
public static float Dot(Quaternion a,Quaternion b);功能说明 此方法用于求参数a和b的点乘
Euler方法欧拉角对应的四元数
基本语法
1、public static Quaternion Euler(Vector3 euler);
2、public static Quaternion Euler(float x,float y,float z);功能说明 此方法用于返回欧拉角Vector3(x,y,z)对应的四元数Quaternion实例。
FromToRotation方法Quaternion变换
基本语法
public static Quaternion FromToRotation(Vector3 fromDirection ,Vector3 toDirection);功能说明 此方法用来创建一个从参数fromDirection到toDirection的Quaternion变换。
Inverse方法逆向Quaternion值
基本语法
public static Quaternion Inverse(Quaternion rotation);功能说明 此方法用于返回参数rotation的逆向Quaternion值。
Lerp方法线性插值
基本语法
public static Quaternion Lerp(Quaternion from ,Quaternion to , float t);功能说明 此方法用于返回从参数from到to的线性插值
LookRotation方法设置Quaternion的朝向
基本语法
1、public static Quaternion LookRotation(Vector3 forward);
2、public static Quaternion LookRotation(Vector3 forward ,Vector3 upwards);
其中参数forward为返回Quaternion的forward朝向功能说明 此方法用于返回一个Quaternion实例使GameObject对象的z轴朝向参数forward方向。
RotateTowards方法Quaternion插值
基本语法
public static Quaternion RotateTowards(Quaternion from ,Quaternion to , float maxDegreesDelta);
其中参数from为起始Quaternion参数to为结束Quaternion参数maxDegreesDelta为每帧最大角度值功能说明 此方法用于返回从参数from到to的插值且返回值的最大角度不超过maxDegreesDelta。
Slerp方法球面插值
基本语法
public static Quaternion Slerp(Quaternion from ,Quaternion to ,float t);功能说明 此方法用于返回从参数from到to的球面插值
Quaternion类运算符
在Quaternion类中涉及的运算符运算有两个Quaternion实例相乘的运算一个Quaternion实例和一个Vector3相乘的元素
operator *(lhs : Quaternion , rhs: Quaternion)
功能说明 此运算符用于返回两个Quaternion实例相乘后的结果
operator *(rotation : Quaternion , point : Vector3)
功能说明 此运算符的作用是对参数坐标点point进行rotation变换