共用方式為


Vector3 結構

定義

表示具有三個單精度浮點值的向量。

public value class Vector3 : IEquatable<System::Numerics::Vector3>, IFormattable
public struct Vector3 : IEquatable<System.Numerics.Vector3>, IFormattable
type Vector3 = struct
    interface IFormattable
Public Structure Vector3
Implements IEquatable(Of Vector3), IFormattable
繼承
Vector3
實作

備註

Vector3 結構提供硬體加速的支援。

針對矩陣轉換,Vector2Vector3Vector4 實例會以數據列表示:矩陣 v 的向量會由具有 vM 乘法的矩陣 M 轉換。

建構函式

Vector3(ReadOnlySpan<Single>)

從指定的 ReadOnlySpan<T>建構向量。 範圍必須至少包含3個專案。

Vector3(Single)

建立新的 Vector3 物件,其三個元素具有相同的值。

Vector3(Single, Single, Single)

建立具有指定值的向量。

Vector3(Vector2, Single)

從指定的 Vector2 物件和指定的值建立新的 Vector3 物件。

欄位

X

向量的 X 元件。

Y

向量的 Y 元件。

Z

向量的 Z 元件。

屬性

E

取得向量,其專案等於 E

Epsilon

取得向量,其專案等於 Epsilon

Item[Int32]

取得或設定位於指定索引處的專案。

NaN

取得向量,其專案等於 NaN

NegativeInfinity

取得向量,其專案等於 NegativeInfinity

NegativeZero

取得向量,其專案等於 NegativeZero

One

取得向量,其 3 個專案等於一個。

Pi

取得向量,其專案等於 Pi

PositiveInfinity

取得向量,其專案等於 PositiveInfinity

Tau

取得向量,其專案等於 Tau

UnitX

取得向量 (1,0,0)。

UnitY

取得向量 (0,1,0)。

UnitZ

取得向量 (0,0,1)。

Zero

取得向量,其 3 個專案等於零。

方法

Abs(Vector3)

傳回向量,其專案是每個指定向量項目的絕對值。

Add(Vector3, Vector3)

將兩個向量相加。

Clamp(Vector3, Vector3, Vector3)

限制最小值與最大值之間的向量。

ClampNative(Vector3, Vector3, Vector3)

使用 NaNNegativeZero的平臺特定行為,限制最小值與最大值之間的向量。

CopySign(Vector3, Vector3)

將向量的個別項目符號複製到另一個向量的個別項目符號。

CopyTo(Single[])

將向量的項目複製到指定的陣列。

CopyTo(Single[], Int32)

從指定的索引位置開始,將向量的項目複製到指定的陣列。

CopyTo(Span<Single>)

將向量複製到指定的 Span<T>。 目的地範圍的長度必須至少為 3。

Cos(Vector3)

表示具有三個單精度浮點值的向量。

Create(ReadOnlySpan<Single>)

從指定的 ReadOnlySpan<T>建構向量。 範圍必須至少包含3個專案。

Create(Single)

建立新的 Vector3 物件,其三個元素具有相同的值。

Create(Single, Single, Single)

建立具有指定值的向量。

Create(Vector2, Single)

從指定的 Vector2 物件和 Z 元件建立新的 Vector3 物件。

Cross(Vector3, Vector3)

計算兩個向量的交叉乘積。

DegreesToRadians(Vector3)

表示具有三個單精度浮點值的向量。

Distance(Vector3, Vector3)

計算兩個指定點之間的 Euclidean 距離。

DistanceSquared(Vector3, Vector3)

傳回兩個指定點之間的 Euclidean 距離平方。

Divide(Vector3, Single)

將指定的向量除以指定的純量值。

Divide(Vector3, Vector3)

將第一個向量除以第二個。

Dot(Vector3, Vector3)

傳回兩個向量的點乘積。

Equals(Object)

傳回值,這個值表示這個實例和指定的物件是否相等。

Equals(Vector3)

傳回值,這個值表示這個實例和另一個向量是否相等。

Exp(Vector3)

表示具有三個單精度浮點值的向量。

FusedMultiplyAdd(Vector3, Vector3, Vector3)

表示具有三個單精度浮點值的向量。

GetHashCode()

傳回這個實例的哈希碼。

Hypot(Vector3, Vector3)

表示具有三個單精度浮點值的向量。

Length()

傳回這個向量對象的長度。

LengthSquared()

傳回向量平方的長度。

Lerp(Vector3, Vector3, Single)

根據指定的加權,在兩個向量之間執行線性插補。

Lerp(Vector3, Vector3, Vector3)

表示具有三個單精度浮點值的向量。

Log(Vector3)

表示具有三個單精度浮點值的向量。

Log2(Vector3)

表示具有三個單精度浮點值的向量。

Max(Vector3, Vector3)

傳回向量,其專案是兩個指定向量中每個元素組的最大值。

MaxMagnitude(Vector3, Vector3)

比較兩個向量與計算,其具有每個元素的較大大小。

MaxMagnitudeNumber(Vector3, Vector3)

比較每個元素的兩個向量,以計算,如果輸入是 NaN,則計算其大小更大,並傳回另一個值。

MaxNative(Vector3, Vector3)

比較兩個向量,以判斷每個元素使用平臺特定行為來判斷 NaNNegativeZero

MaxNumber(Vector3, Vector3)

比較每個元素的兩個向量,以計算如果專案是 NaN,則會傳回另一個值。

Min(Vector3, Vector3)

傳回向量,其專案是兩個指定向量中每個元素組的最小值。

MinMagnitude(Vector3, Vector3)

比較兩個向量與計算,其每個元素的大小較小。

MinMagnitudeNumber(Vector3, Vector3)

比較每個元素的兩個向量,以計算,如果輸入是 NaN,則計算其大小較小,並傳回另一個值。

MinNative(Vector3, Vector3)

比較兩個向量,以根據每個元素判斷哪一個向量,使用平臺特定行為來判斷 NaNNegativeZero

MinNumber(Vector3, Vector3)

比較每個元素的兩個向量,以計算哪一個向量較小,並在專案 NaN時傳回另一個值。

Multiply(Single, Vector3)

將純量值乘以指定的向量。

Multiply(Vector3, Single)

將向量乘以指定的純量。

Multiply(Vector3, Vector3)

傳回新的向量,其值是兩個指定向量中每個專案組的乘積。

MultiplyAddEstimate(Vector3, Vector3, Vector3)

表示具有三個單精度浮點值的向量。

Negate(Vector3)

否定指定的向量。

Normalize(Vector3)

傳回向量,其方向與指定的向量相同,但長度為一。

RadiansToDegrees(Vector3)

表示具有三個單精度浮點值的向量。

Reflect(Vector3, Vector3)

傳回具有指定法線之表面的向量反射。

Round(Vector3)

表示具有三個單精度浮點值的向量。

Round(Vector3, MidpointRounding)

表示具有三個單精度浮點值的向量。

Sin(Vector3)

表示具有三個單精度浮點值的向量。

SinCos(Vector3)

表示具有三個單精度浮點值的向量。

SquareRoot(Vector3)

傳回向量,其專案是每個指定向量專案的平方根。

Subtract(Vector3, Vector3)

從第一個減去第二個向量。

ToString()

使用預設格式傳回目前實例的字串表示。

ToString(String)

使用指定的格式字串來格式化個別項目,傳回目前 實例的字串表示。

ToString(String, IFormatProvider)

傳回目前實例的字串表示,使用指定的格式字串來格式化個別專案,以及定義特定文化特性格式的指定格式提供者。

Transform(Vector3, Matrix4x4)

依指定的 4x4 矩陣轉換向量。

Transform(Vector3, Quaternion)

依指定的四元數旋轉值轉換向量。

TransformNormal(Vector3, Matrix4x4)

依指定的 4x4 矩陣轉換向量常態。

Truncate(Vector3)

表示具有三個單精度浮點值的向量。

TryCopyTo(Span<Single>)

嘗試將向量複製到指定的 Span<T>。 目的地範圍的長度必須至少為 3。

運算子

Addition(Vector3, Vector3)

將兩個向量相加。

Division(Vector3, Single)

將指定的向量除以指定的純量值。

Division(Vector3, Vector3)

將第一個向量除以第二個。

Equality(Vector3, Vector3)

傳回值,這個值表示兩個指定向量中的每個專案組是否相等。

Inequality(Vector3, Vector3)

傳回值,這個值表示兩個指定的向量是否不相等。

Multiply(Single, Vector3)

依指定的向量,將純量值倍數。

Multiply(Vector3, Single)

將指定的向量乘以指定的純量值。

Multiply(Vector3, Vector3)

傳回新的向量,其值是兩個指定向量中每個專案組的乘積。

Subtraction(Vector3, Vector3)

從第一個減去第二個向量。

UnaryNegation(Vector3)

否定指定的向量。

擴充方法

AsVector4(Vector3)

Vector3 轉換成新的 Vector4,並將新元素設為零。

AsVector4Unsafe(Vector3)

使用未定義的新元素,將 Vector3 轉換成新的 Vector4

AsVector128(Vector3)

Vector3 重新解譯為新的 Vector128<T>

AsVector128Unsafe(Vector3)

Vector3 重新解譯為新的 Vector128<T>,讓新元素保持未定義。

適用於