表示3D的向量和点。
这个结构用于在Unity传递3D位置和方向。它也包含做些普通向量运算的函数。
除了下面列出的函数,其他类用于处理向量和点。例如Quaternion和Matrix4x4类用于旋转或变换向量和点。
1、Vector3.this[int] 操作索引
使用[0], [1], [2]分别访问组件x, y, z组件。简单来说就是用索引号代替x, y, z组件。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
public Vector3 p;
void Example() {
p[1] = 5;
}
}
API详解
A、Vector3类实例属性
1、normalized:单位化向量
public Vector3 normalized{ get; }
此属性用来获取Vector3实例的单位向量,即返回向量的方向与原方向相同,而模长变为1。
此属性和实例方法Normalized( )的区别:
设A、C均为Vector3实例,则:
执行代码C=A.normalized后只是将向量A的单位向量赋给向量C,而向量A自身未变
执行代码A=Normalize()便会将向量A进行单位化处理,使得原向量A变成了单位向量
执行代码C=Vector3.Normalize(A)的结果与执行代码C=A.normalized的相同,即只是将A的单位向量赋给了向量C,而向量A未被改变,因此编程中常用代码C=A.normalized代替。
2、sqrMagnitude:模长平方
public float sqrMagnitude{ get; }
此属性用于返回Vector3实例模长的平方值,由于计算开方值比较消耗资源,在非必要情况下,可以考虑用
sqrMagnitude代替属性magnitude,例如比较两个向量长度的大小
B、Vector3类实例方法
1、Scale:向量放缩
public void Scale(Ve