XMVectorInBoundsR

Tests whether the components of a given vector are within certain bounds and sets a comparison value that can be examined using functions such as XMComparisonAllTrue.

Syntax

XMVECTOR XMVectorInBoundsR(
         UINT *pCR,
         XMVECTOR V,
         XMVECTOR Bounds
)

Parameters

  • pCR
    [out] Pointer to a UINT comparison value that can be examined using functions such as XMComparisonAllInBounds. The XMComparisonXXXX functions may be used to further test the number of components that passed the comparison.
  • V
    [in] Vector to test.
  • Bounds
    [in] Vector that determines the bounds.

Return Value

Returns a vector containing the results of each component test.

Remarks

The following pseudocode demonstrates the comparison operation of the function:

XMVECTOR Control;

Control.x = (V.x <= Bounds.x && V.x >= -Bounds.x) ? 0xFFFFFFFF : 0;
Control.y = (V.y <= Bounds.y && V.y >= -Bounds.y) ? 0xFFFFFFFF : 0;
Control.z = (V.z <= Bounds.z && V.z >= -Bounds.z) ? 0xFFFFFFFF : 0;
Control.w = (V.w <= Bounds.w && V.w >= -Bounds.w) ? 0xFFFFFFFF : 0;

return Control;

Requirements

Header: Declared in xnamath.h.

See Also

XMVectorInBounds