sdlGetRectAndLineIntersectionFloat function rect
Calculate the intersection of a rectangle and line segment with float precision.
This function is used to clip a line segment to a rectangle. A line segment
contained entirely within the rectangle or that does not intersect will
remain unchanged. A line segment that crosses the rectangle at either or
both ends will be clipped to the boundary of the rectangle and the new
coordinates saved in X1, Y1, X2, and/or Y2 as necessary.
\param rect an SDL_FRect structure representing the rectangle to intersect. \param X1 a pointer to the starting X-coordinate of the line. \param Y1 a pointer to the starting Y-coordinate of the line. \param X2 a pointer to the ending X-coordinate of the line. \param Y2 a pointer to the ending Y-coordinate of the line. \returns true if there is an intersection, false otherwise.
\threadsafety It is safe to call this function from any thread.
\since This function is available since SDL 3.2.0.
extern SDL_DECLSPEC bool SDLCALL SDL_GetRectAndLineIntersectionFloat(const SDL_FRect *rect, float *X1, float *Y1, float *X2, float *Y2)
Implementation
bool sdlGetRectAndLineIntersectionFloat(
Pointer<SdlFRect> rect,
Pointer<Float> x1,
Pointer<Float> y1,
Pointer<Float> x2,
Pointer<Float> y2,
) {
final sdlGetRectAndLineIntersectionFloatLookupFunction = _libSdl
.lookupFunction<
Uint8 Function(
Pointer<SdlFRect> rect,
Pointer<Float> x1,
Pointer<Float> y1,
Pointer<Float> x2,
Pointer<Float> y2,
),
int Function(
Pointer<SdlFRect> rect,
Pointer<Float> x1,
Pointer<Float> y1,
Pointer<Float> x2,
Pointer<Float> y2,
)
>('SDL_GetRectAndLineIntersectionFloat');
return sdlGetRectAndLineIntersectionFloatLookupFunction(
rect,
x1,
y1,
x2,
y2,
) ==
1;
}