Функция XMPlaneNormalize (directxmath.h)
Нормализует коэффициенты плоскости таким образом, чтобы коэффициенты x, y и z образуют вектор нормы единицы.
Синтаксис
XMVECTOR XM_CALLCONV XMPlaneNormalize(
[in] FXMVECTOR P
) noexcept;
Параметры
[in] P
XMVECTOR , описывающий коэффициенты плоскости (A, B, C, D) для уравнения плоскости
XMVECTOR Result;
float LengthSq = P.x * P.x + P.y * P.y + P.z * P.z;
float ReciprocalLength = 1.0f / sqrt(LengthSq);
Result.x = P.x * ReciprocalLength;
Result.y = P.y * ReciprocalLength;
Result.z = P.z * ReciprocalLength;
Result.w = P.w * ReciprocalLength;
return Result;
.
Возвращаемое значение
Возвращает нормализованную плоскость в виде вектора 4D, компонентами которого являются коэффициенты плоскости (A, B, C, D) для уравнения Ax+By+Cz+D=0
плоскости .
Комментарии
Следующий псевдокод демонстрирует работу функции:
Ax+By+Cz+D=0
Требования к платформе
Microsoft Visual Studio 2010 или Microsoft Visual Studio 2012 с windows SDK для Windows 8. Поддерживается для классических приложений Win32, приложений Магазина Windows и приложений Windows Phone 8.Требования
Целевая платформа | Windows |
Header | directxmath.h |