共用方式為


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

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

Epsilon

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

Item[Int32]

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

NaN

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

NegativeInfinity

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

NegativeZero

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

One

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

Pi

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

PositiveInfinity

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

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)

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

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)

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

MaxNative(Vector3, Vector3)

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

MaxNumber(Vector3, Vector3)

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

Min(Vector3, Vector3)

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

MinMagnitude(Vector3, Vector3)

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

MinMagnitudeNumber(Vector3, Vector3)

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

MinNative(Vector3, Vector3)

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

MinNumber(Vector3, Vector3)

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

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)

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

適用於