D3DXSHEvalDirection 函式 (D3DX10.h)

注意

D3DX (D3DX 9、D3DX 10 和 D3DX 11) 公用程式程式庫已被取代,且不支援 Windows 市集應用程式。

注意

建議您不要使用此函式,而是建議使用 球面調色數學 程式庫函式 XMSHEvalDirection

從輸入方向向量評估球面調色 (SH) 基礎函式。

語法

FLOAT* D3DXSHEvalDirection(
  _In_       FLOAT       *pOut,
  _In_       UINT        Order,
  _In_ const D3DXVECTOR3 *pDir
);

參數

pOut [in]

類型: FLOAT*

球面調色 (SH) 輸出係數的指標。 評估會產生 Order¹ 係數。 請參閱<備註>。

順序 [in]

類型: UINT

SH 評估的順序。 必須位於D3DXSH_MINORDER範圍中,才能D3DXSH_MAXORDER包含。 評估會產生 Order¹ 係數。 評估的程度為 Order - 1。

pDir [in]

類型:const D3DXVECTOR3*

(x、y、z) 方向向量,用來評估 SH 基礎函式。 必須正規化。 請參閱<備註>。

傳回值

類型: FLOAT*

SH 輸出係數的指標。 請參閱<備註>。

備註

基礎函式 Ylm 的每個係數都會儲存在記憶體位置 l Ctrl + m + l,其中:

  • l 是基礎函式的程度。
  • m 是指定 l 值的基礎函式索引,範圍從 -l 到 l,包含。

在具有單位半徑的球體上,如下圖所示,只要使用 theta 指定方向、右手方向的 Z 軸角度,以及從 z 的角度來指定。

具有單位半徑的球體圖例

下列方程式顯示笛卡兒 (x、y、z) 和球面 (ta、phi) 座標在單位球體上的關聯性。 the angle theta 會隨著 0 到 2 pi 的範圍而有所不同,而 phi 則從 0 到 pi。

笛卡兒與球面座標之間關聯性的方程式

規格需求

需求
標頭
D3DX10.h
程式庫
D3DX10.lib

另請參閱

數學函式