Function Arguments Reference
Primitives
Polygon
Transform
Surface
Drawing
Palette
Control
Misc
Defines
Extended

Arguments

Index
Credits

SDL_Surface* surface
 - Surface where things are happening

SDL_Surface* source
 - Surface where the data comes from

SDL_Surface* dest
 - Surface where the data goes

Uint32 color
 - 32-bit color value.  Values range from 0x00000000 to 0xFFFFFFFF.  Each pair of digits in the hexidecimal expression represents a color channel (e.g. 'red' or 'alpha').  See Uint8 entries.

Uint8 R, Uint8 G, Uint8 B, Uint8 A
 - 8-bit color value.  Values range from 0x00 (0) to 0xFF (255).  Alpha here is a measure of opacity.

SPG_bool enable
 - Pass either a 1 (true) to enable or 0 (false) to disable.

Uint8 state
 - Alpha-blending state.  One of:
   SPG_DEST_ALPHA
   SPG_SRC_ALPHA
   SPG_COMBINE_ALPHA
   SPG_COPY_NO_ALPHA
   SPG_COPY_SRC_ALPHA, SPG_SRC_MASK
   SPG_COPY_DEST_ALPHA, SPG_DEST_MASK
   SPG_COPY_COMBINE_ALPHA
   SPG_COPY_ALPHA_ONLY
   SPG_COMBINE_ALPHA_ONLY

const char* err
 - Error message to be received by SPG_GetError().

Sint16 x, Sint16 y
 - 2D coordinate integers.  These can be positive or negative and are measured from the top-left corner of the window (client area).

SDL_Rect rect
 - A struct with the fields:
   Sint16 x, y
   Uint16 w, h
   The x and y coordinates usually dictate the positioning within a given surface.  The w and h are the width and height of the rectangular area.

Uint32 *ctab
 - Array of Uint32 color values that makes up a palette table.

void (*blitfn)(SDL_Surface*, SDL_Rect*, SDL_Surface*, SDL_Rect*)
 - User-defined function (pointer) to be used by SPG_Blit().

Uint32 flags
 - A combination of the flags used by SDL_CreateRGBSurface.

Uint8 flags
 - Transformation flags, one of the following:
   SPG_NONE
   SPG_TAA
   SPG_TSAFE
   SPG_TTMAP
   SPG_TCOLORKEY

SDL_PixelFormat* format
 - The format of the pixels.  One such format is 32-bit ARGB, where each color channel gets 8 bits (1 byte) in that order.

void* linearArray
 - An array of pixel data (4x Uint8) in the format of the surface that you are creating with SPG_CreateAlphaSurfaceFrom.

float angle
 - The angle, in degrees, measured from the positive x-axis (horizontal line pointing right) going clockwise.

float xscale, yscale
 - The multiplier to use to create the scaled surface.  A scale of 0.5 will give a surface with half the original surface's dimensions (zoom out).  A scale of 2 will give a surface with double the original surface's dimensions (zoom in).

Uint8 *block
 - Horizontal scanline

Uint16 *block
 - Horizontal scanline

Uint32 *block
 - Horizontal scanline

SPG_bool* pattern
 - An array of ones and zeros that determine where a pixel will be drawn in the SDL_Rect given to SPG_PixelPattern.

Uint32* colors
 - Array of 32-bit colors.

Uint8* pixelAlpha
 - Array of 8-bit alpha values.

void Callback(SDL_Surface *Surf, Sint16 X, Sint16 Y, Uint32 Color)
 - A user-defined function to be called for every pixel considered by the primitive function.

float r
 - The radius of the circle.  Radii with zero tenths (e.g. 4.0) will result in an odd diameter, while radii with five tenths (e.g. 4.5) will result in an even diameter.

float rx, float ry
 - The radius of a particular axis of an ellipse.

Uint16 n
 - Number of points in the polygon.  This is used to access the coordinate arrays.

SPriG v0.94 Documentation by Jonathan Dearborn 2008