sdlxGetRectUnion function rect

SdlxRect? sdlxGetRectUnion(
  1. SdlxRect a,
  2. SdlxRect b
)

Calculate the union of two rectangles.

\param A an SDL_Rect structure representing the first rectangle. \param B an SDL_Rect structure representing the second rectangle. \param result an SDL_Rect structure filled in with the union of rectangles A and B. \returns true on success or false on failure; call SDL_GetError() for more information.

\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_GetRectUnion(const SDL_Rect *A, const SDL_Rect *B, SDL_Rect *result)

See also:

Implementation

SdlxRect? sdlxGetRectUnion(SdlxRect a, SdlxRect b) => ffi.using((arena) {
  final aPointer = arena<SdlRect>()
    ..ref.x = a.x
    ..ref.y = a.y
    ..ref.w = a.w
    ..ref.h = a.h;

  final bPointer = arena<SdlRect>()
    ..ref.x = b.x
    ..ref.y = b.y
    ..ref.w = b.w
    ..ref.h = b.h;

  final resultPointer = arena<SdlRect>();

  final result = sdlGetRectUnion(aPointer, bPointer, resultPointer);

  if (!result) {
    return null;
  }

  return SdlxRect.fromPointer(resultPointer);
});