Функция D3DXSHMultiply2 (D3DX10Math.h)
Примечание
Библиотека служебных программ D3DX (D3DX 9, D3DX 10 и D3DX 11) устарела и не поддерживается для приложений Магазина Windows.
Примечание
Вместо этой функции рекомендуется использовать функцию XMSHMultiply2 библиотеки "Математика сферических гармоник".
Вычисляет произведение двух сферических функций гармоник (f и g). Обе функции имеют порядок N = 2.
Синтаксис
FLOAT* D3DXSHMultiply2(
_In_ FLOAT *pOut,
_In_ const FLOAT *pF,
_In_ const FLOAT *pG
);
Параметры
-
pOut [in]
-
Тип: FLOAT*
Указатель на выходные коэффициенты SH — базисная функция Ylm хранится в l² + m + l. Порядок N определяет длину массива, где всегда должны быть коэффициенты N².
-
pF [in]
-
Тип: const FLOAT*
Входные коэффициенты SH для первой функции.
-
pG [in]
-
Тип: const FLOAT*
Второй набор входных коэффициентов SH.
Возвращаемое значение
Тип: FLOAT*
Указатель на выходные коэффициенты SH.
Комментарии
Произведение двух функций SH порядка N = 2 создает функцию SH порядка 2 × N - 1 = 3, но результаты усекаются. Это означает, что продукт коммутирует ( f × g = g × f ), но не связывает ( f × (g × h) ≠ ( f × g) × h ).
Эта функция использует следующее уравнение:
pOut[i] = int(y_i(s) * f(s) * g(s))
где y_i является базисной функцией ith SH, а где f(s) и g(s) используют следующую функцию SH:
sum_i(y_i(s)*c_i)
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|
См. также раздел