Vector3 類簡介
1、Vector3三維向量:表示3D的向量和點。包含位置、方向(朝向)、尤拉角的資訊,也包含做些普通向量運算的函式。
2、Quaternion四元數,用於表示旋轉,Unity內使用Quaternion表示所有旋轉。在電腦圖形學中用於表示物體的旋轉,在unity中由x,y,z,w 表示四個值。四元數不會產生萬向節死鎖並且能夠很容易被插值。
在Unity裡,tranform元件有一個變數名為rotation,它的型別就是四元數。
3、尤拉角:用來確定定點轉動剛體位置的3個一組獨立角參量,用來表示旋轉角度。
宣告四元數:
Quaternion q1= this.transform.rotatiion;
q1 = this.transform.rotation;
宣告Vector :
Vector v1 =new Vector3(0,0,0);
v1 = this.transform.eulerAngles; //Vector3的尤拉角
Vector v2 =new Vector3(0,0,0);
v2 = this.transform.position; //Vector3的位置;
Vector3.normalized 規範化
非靜態屬性; 返回值型別vector3 ; 返回向量與原向量方向相同的單位向量,若原向量太小則返回零向量;
Vector3.Normalize() 規範化
靜態函式; 返回值型別void; 返回向量與原向量方向相同的單位向量,若原向量太小則返回零向量;
Vector3 v1 = this.transform.position.normalized;
Vector3 v2 = Vector3.Normalize(this.transform.position);
v1,v2是等價的。
vector3.magniude向量的長度
返回向量的長度,只有大小,沒有方向,返回值型別為float 其實三維空間中的向量長度就是根號下(x*x+y*y+z*z)
Vector3.SqrMagnitude 向量的長度平方
常用於用於向量的比較,因為計算機求平方和開方比較消耗記憶體和時間。
Vector3 : Static Variables 靜態變數
back Shorthand for writing Vector3(0, 0, -1).
寫Vector3(0, 0, -1)的簡碼。
down Shorthand for writing Vector3(0, -1, 0).
寫Vector3(0, -1, 0)的簡碼。
forward Shorthand for writing Vector3(0, 0, 1).
寫Vector3(0, 0, 1)的簡碼,也就是向z軸。
left Shorthand for writing Vector3(-1, 0, 0).
寫Vector3(-1, 0, 0)的簡碼。
one Shorthand for writing Vector3(1, 1, 1).
寫Vector3(1, 1, 1)的簡碼。
right Shorthand for writing Vector3(1, 0, 0).
寫Vector3(1, 0, 0)的簡碼,也就是向x軸。
up Shorthand for writing Vector3(0, 1, 0).
寫Vector3(0, 1, 0)的簡碼,也就是向y軸
zero Shorthand for writing Vector3(0, 0, 0).
寫Vector3(0, 0, 0)的簡碼。
Vector3.Distance() 距離
返回a和b之間的距離。
引數是兩個 Vector3 型別
返回值型別 : float
Vector3.Distance(a,b) 等同於(a-b).magnitude.
Vecter3.Dot 點乘
兩個向量的點乘積。 (向量數量積) 點積是一個浮點數的值:兩個向量的長度(模)相乘再乘以他們之間夾角的餘弦值.(即:|a|*|b|*cos<a,b>)
如果點乘的結果等於0,那麼兩個向量互相垂直。
如果結果大於0,那麼兩個向量的夾角小於90度,方向基本相同;
如果結果小於0,那麼兩個向量的夾角大於90度,方向基本相反。
Vector3.Cross 叉乘
兩個向量的交叉乘積(外積)
它的結果是一個向量。我們通常需要的是它的方向(Vector3.Cross(a.b).normalized)
得到一個分別垂直於這兩個向量的向量
---------------------
作者:Czhenya
來源:CSDN
原文:https://blog.csdn.net/czhenya/article/details/76581118
版權宣告:本文為博主原創文章,轉載請附上博文連結!
相關文章
- TS類,介面,泛型的簡介泛型
- 大資料分類和架構簡介大資料架構
- rxjs Observable 兩大類操作符簡介JS
- three.js 數學方法之Vector3JS
- 簡要介紹Linux網路服務的種類Linux
- 大資料簡介,技術體系分類整理大資料
- 部分聚類演算法簡介及優缺點分析聚類演算法
- 簡介
- Jira使用簡介 HP ALM使用簡介
- 簡單介紹C#使用物件序列化類庫MessasgePackC#物件
- BookKeeper 介紹(1)--簡介
- loadsh簡介
- Knative 簡介
- Javascript 簡介JavaScript
- JanusGraph -- 簡介
- Linux簡介Linux
- CSS 簡介CSS
- 反射簡介反射
- CSS簡介CSS
- JUC簡介
- sass簡介
- APIGateway 簡介APIGateway
- Feign簡介
- Django簡介Django
- Virgilio 簡介
- 簡介JSXJS
- LVM : 簡介LVM
- Linux——簡介Linux
- Apache簡介Apache
- JAVA簡介Java
- NATS簡介
- Mybatis簡介MyBatis
- pwa簡介
- SVG簡介SVG
- kafka 簡介Kafka
- AOP簡介
- MySQLInnodbPurge簡介MySql
- Bootstrap 簡介boot