getLineIntersection method

bool getLineIntersection(
  1. Pointer<Int32> x1,
  2. Pointer<Int32> y1,
  3. Pointer<Int32> x2,
  4. Pointer<Int32> y2,
)

Calculate the intersection of a rectangle and line segment.

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_Rect 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.

\since This function is available since SDL 3.1.3.

extern SDL_DECLSPEC bool SDLCALL SDL_GetRectAndLineIntersection(const SDL_Rect *rect, int *X1, int *Y1, int *X2, int *Y2)

Implementation

bool getLineIntersection(Pointer<Int32> x1, Pointer<Int32> y1,
    Pointer<Int32> x2, Pointer<Int32> y2) {
  return sdlGetRectAndLineIntersection(this, x1, y1, x2, y2);
}