共用方式為


XMVectorSelect 函式 (directxmath.h)

在兩個輸入向量之間執行個別元件選取,並傳回產生的向量。

語法

XMVECTOR XM_CALLCONV XMVectorSelect(
  [in] FXMVECTOR V1,
  [in] FXMVECTOR V2,
  [in] FXMVECTOR Control
) noexcept;

參數

[in] V1

要比較的第一個向量。

[in] V2

要比較的第二個向量。

[in] Control

用來從 V1V2選取向量元件的向量遮罩。 如果 Control 的元件為零,傳回的向量對應元件將會是第一個向量的元件。 如果 Control 的元件0xFF,傳回的向量對應元件將會是第二個向量的元件。 如需向量遮罩運作方式的完整詳細資料,請參閱。

一般而言,用於 Control 的向量會是向量比較函式的輸出 (,例如 XMVectorEqualXMVectorLessXMVectorGreater) ,或是它是 XMVectorSelectControl的輸出。

傳回值

傳回每個元件選取的結果。

備註

如果設定任何指定的 Control 位,則會使用 來自 V2 的對應位,否則會使用 來自 V1 的對應位。 下列虛擬程式碼示範函式的作業:

XMVECTOR Result;

Result.u[0] = (V1.u[0] & ~Control.u[0]) | (V2.u[0] & Control.u[0]);
Result.u[1] = (V1.u[1] & ~Control.u[1]) | (V2.u[1] & Control.u[1]);
Result.u[2] = (V1.u[2] & ~Control.u[2]) | (V2.u[2] & Control.u[2]);
Result.u[3] = (V1.u[3] & ~Control.u[3]) | (V2.u[3] & Control.u[3]);

return Result;

不需要手動建構控制向量。 建構適當控制向量的簡單方式有兩種:

平臺需求

Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012 搭配 Windows SDK for Windows 8。 支援 Win32 傳統型應用程式、Windows 市集應用程式和 Windows Phone 8 個應用程式。

需求

   
目標平台 Windows
標頭 directxmath.h (包含 DirectXMath.h)

另請參閱

元件向量函式

XMVectorSelectControl