arsa  2.7
Classes | Typedefs | Functions
SDL_rect.h File Reference
#include "SDL_stdinc.h"
#include "SDL_error.h"
#include "SDL_pixels.h"
#include "SDL_rwops.h"
#include "begin_code.h"
#include "close_code.h"

Go to the source code of this file.

Classes

struct  SDL_Point
 The structure that defines a point (integer) More...
 
struct  SDL_FPoint
 The structure that defines a point (floating point) More...
 
struct  SDL_Rect
 A rectangle, with the origin at the upper left (integer). More...
 
struct  SDL_FRect
 A rectangle, with the origin at the upper left (floating point). More...
 

Typedefs

typedef struct SDL_Point SDL_Point
 The structure that defines a point (integer) More...
 
typedef struct SDL_FPoint SDL_FPoint
 The structure that defines a point (floating point) More...
 
typedef struct SDL_Rect SDL_Rect
 A rectangle, with the origin at the upper left (integer). More...
 
typedef struct SDL_FRect SDL_FRect
 A rectangle, with the origin at the upper left (floating point). More...
 

Functions

SDL_FORCE_INLINE SDL_bool SDL_PointInRect (const SDL_Point *p, const SDL_Rect *r)
 Returns true if point resides inside a rectangle. More...
 
SDL_FORCE_INLINE SDL_bool SDL_RectEmpty (const SDL_Rect *r)
 Returns true if the rectangle has no area. More...
 
SDL_FORCE_INLINE SDL_bool SDL_RectEquals (const SDL_Rect *a, const SDL_Rect *b)
 Returns true if the two rectangles are equal. More...
 
DECLSPEC SDL_bool SDLCALL SDL_HasIntersection (const SDL_Rect *A, const SDL_Rect *B)
 Determine whether two rectangles intersect. More...
 
DECLSPEC SDL_bool SDLCALL SDL_IntersectRect (const SDL_Rect *A, const SDL_Rect *B, SDL_Rect *result)
 Calculate the intersection of two rectangles. More...
 
DECLSPEC void SDLCALL SDL_UnionRect (const SDL_Rect *A, const SDL_Rect *B, SDL_Rect *result)
 Calculate the union of two rectangles. More...
 
DECLSPEC SDL_bool SDLCALL SDL_EnclosePoints (const SDL_Point *points, int count, const SDL_Rect *clip, SDL_Rect *result)
 Calculate a minimal rectangle enclosing a set of points. More...
 
DECLSPEC SDL_bool SDLCALL SDL_IntersectRectAndLine (const SDL_Rect *rect, int *X1, int *Y1, int *X2, int *Y2)
 Calculate the intersection of a rectangle and line segment. More...
 

Detailed Description

Header file for SDL_rect definition and management functions.

Definition in file SDL_rect.h.

Typedef Documentation

◆ SDL_FPoint

typedef struct SDL_FPoint SDL_FPoint

The structure that defines a point (floating point)

See also
SDL_EnclosePoints
SDL_PointInRect

◆ SDL_FRect

typedef struct SDL_FRect SDL_FRect

A rectangle, with the origin at the upper left (floating point).

◆ SDL_Point

typedef struct SDL_Point SDL_Point

The structure that defines a point (integer)

See also
SDL_EnclosePoints
SDL_PointInRect

◆ SDL_Rect

typedef struct SDL_Rect SDL_Rect

A rectangle, with the origin at the upper left (integer).

See also
SDL_RectEmpty
SDL_RectEquals
SDL_HasIntersection
SDL_IntersectRect
SDL_UnionRect
SDL_EnclosePoints

Function Documentation

◆ SDL_EnclosePoints()

DECLSPEC SDL_bool SDLCALL SDL_EnclosePoints ( const SDL_Point points,
int  count,
const SDL_Rect clip,
SDL_Rect result 
)

Calculate a minimal rectangle enclosing a set of points.

Returns
SDL_TRUE if any points were within the clipping rect

◆ SDL_HasIntersection()

DECLSPEC SDL_bool SDLCALL SDL_HasIntersection ( const SDL_Rect A,
const SDL_Rect B 
)

Determine whether two rectangles intersect.

Returns
SDL_TRUE if there is an intersection, SDL_FALSE otherwise.

◆ SDL_IntersectRect()

DECLSPEC SDL_bool SDLCALL SDL_IntersectRect ( const SDL_Rect A,
const SDL_Rect B,
SDL_Rect result 
)

Calculate the intersection of two rectangles.

Returns
SDL_TRUE if there is an intersection, SDL_FALSE otherwise.

◆ SDL_IntersectRectAndLine()

DECLSPEC SDL_bool SDLCALL SDL_IntersectRectAndLine ( const SDL_Rect rect,
int *  X1,
int *  Y1,
int *  X2,
int *  Y2 
)

Calculate the intersection of a rectangle and line segment.

Returns
SDL_TRUE if there is an intersection, SDL_FALSE otherwise.

◆ SDL_PointInRect()

SDL_FORCE_INLINE SDL_bool SDL_PointInRect ( const SDL_Point p,
const SDL_Rect r 
)

Returns true if point resides inside a rectangle.

Definition at line 99 of file SDL_rect.h.

100 {
101  return ( (p->x >= r->x) && (p->x < (r->x + r->w)) &&
102  (p->y >= r->y) && (p->y < (r->y + r->h)) ) ? SDL_TRUE : SDL_FALSE;
103 }
GLdouble GLdouble GLdouble r
Definition: SDL_opengl.h:2079
GLfloat GLfloat p

◆ SDL_RectEmpty()

SDL_FORCE_INLINE SDL_bool SDL_RectEmpty ( const SDL_Rect r)

Returns true if the rectangle has no area.

Definition at line 108 of file SDL_rect.h.

109 {
110  return ((!r) || (r->w <= 0) || (r->h <= 0)) ? SDL_TRUE : SDL_FALSE;
111 }
GLdouble GLdouble GLdouble r
Definition: SDL_opengl.h:2079

◆ SDL_RectEquals()

SDL_FORCE_INLINE SDL_bool SDL_RectEquals ( const SDL_Rect a,
const SDL_Rect b 
)

Returns true if the two rectangles are equal.

Definition at line 116 of file SDL_rect.h.

117 {
118  return (a && b && (a->x == b->x) && (a->y == b->y) &&
119  (a->w == b->w) && (a->h == b->h)) ? SDL_TRUE : SDL_FALSE;
120 }
GLboolean GLboolean GLboolean b
GLboolean GLboolean GLboolean GLboolean a

◆ SDL_UnionRect()

DECLSPEC void SDLCALL SDL_UnionRect ( const SDL_Rect A,
const SDL_Rect B,
SDL_Rect result 
)

Calculate the union of two rectangles.