Share via


float3 結構

具有三個元件的向量。

此類型僅適用于 C++。 其 .NET 對等專案是 System.Numerics.Vector3

建構函式

名稱 描述
float3() 建立未初始化的 float3。
float3(float x, float y, float z) 使用指定的值建立 float3。
float3(float2 value, float z) 使用從 float2 複製的 x 和 y 加上指定的 z 值,建立 float3。
explicit float3(float value) 建立 float3,並將所有元件設定為指定的值。
float3(Microsoft::Graphics::Canvas::Numerics::Vector3 const& value) Microsoft.Graphics.Canvas.Numerics.Vector3 轉換為 float3。

函式

名稱 描述
float length(float3 const& value) 計算向量的長度或 Euclidean 距離。
float length_squared(float3 const& value) 計算向量平方的長度或 Euclidean 距離。
float distance(float3 const& value1, float3 const& value2) 計算兩個向量之間的 Euclidean 距離。
float distance_squared(float3 const& value1, float3 const& value2) 計算兩個向量平方之間的 Euclidean 距離。
float dot(float3 const& vector1, float3 const& vector2) 計算兩個向量的點乘積。
float3 normalize(float3 const& value) 從指定的向量建立單位向量。
float3 cross(float3 const& vector1, float3 const& vector2) 計算兩個向量的叉積。
float3 reflect(float3 const& vector, float3 const& normal) 決定指定向量和正常向量的反映向量。
float3 min(float3 const& value1, float3 const& value2) 傳回一個向量,其中包含每個相符元件配對的最低值。
float3 max(float3 const& value1, float3 const& value2) 傳回一個向量,其中包含每個相符元件配對的最高值。
float3 clamp(float3 const& value1, float3 const& min, float3 const& max) 限制值在指定的範圍內。
float3 lerp(float3 const& value1, float3 const& value2, float amount) 在兩個向量之間執行線性插補。
float3 transform(float3 const& position, float4x4 const& matrix) 依指定的矩陣轉換向量 (x、y、z、1) 。
float3 transform_normal(float3 const& normal, float4x4 const& matrix) 依指定的矩陣轉換標準向量 (x、y、z、0) 。
float3 transform(float3 const& value, quaternion const& rotation) 依指定的四元數轉換 float3。

方法

名稱 描述
static float3 zero() 傳回 float3,其所有元件都設定為零。
static float3 one() 傳回 float3,其所有元件都設定為一個。
static float3 unit_x() 傳回 float3 (1, 0, 0) 。
static float3 unit_y() 傳回 float3 (0、1、0) 。
static float3 unit_z() 傳回 float3 (0、0、1) 。

運算子

名稱 描述
float3 operator+ (float3 const& value1, float3 const& value2) 加入兩個向量。
float3 operator- (float3 const& value1, float3 const& value2) 從向量減去向量。
float3 operator* (float3 const& value1, float3 const& value2) 將兩個向量的元件相乘。
float3 operator* (float3 const& value1, float value2) 將向量乘以純量。
float3 operator* (float value1, float3 const& value2) 將向量乘以純量。
float3 operator/ (float3 const& value1, float3 const& value2) 將向量的元件除以另一個向量的元件。
float3 operator/ (float3 const& value1, float value2) 將向量除以純量值。
float3 operator- (float3 const& value) 傳回指向相反方向的向量。
float3& operator+= (float3& value1, float3 const& value2) 就地新增兩個向量。
float3& operator-= (float3& value1, float3 const& value2) 就地從向量減去向量。
float3& operator*= (float3& value1, float3 const& value2) 就地會將兩個向量的元件相乘。
float3& operator*= (float3& value1, float value2) 就地將向量乘以純量。
float3& operator/= (float3& value1, float3 const& value2) 就地將向量的元件除以另一個向量的元件。
float3& operator/= (float3& value1, float value2) 就地將向量除以純量值。
bool operator== (float3 const& value1, float3 const& value2) 判斷 float3 的兩個實例是否相等。
bool operator!= (float3 const& value1, float3 const& value2) 判斷 float3 的兩個實例是否不相等。
operator Microsoft::?Graphics::?Canvas::?Numerics::?Vector3() const 將 float3 轉換為 Microsoft.Graphics.Canvas.Numerics.Vector3

欄位

名稱 描述
float x 向量的 X 元件。
float y 向量的 Y 元件。
float z 向量的 Z 元件。

規格需求

需求
命名空間 Windows::Foundation::Numerics
標頭
Windowsnumerics.h

另請參閱

windowsnumerics.h API