2D (Crystal Space 2.0 Public API Reference)

| ## Public API Reference

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

Classes | Namespaces | Defines | Typedefs | Enumerations
2D
Graphics

## Classes
struct | csBitmapMetrics
| Metrics for a glyph that are dependent from whether a simple or antialiased image is used. More...
struct | csGlyphMetrics
| Metrics for a glyph that are independent from whether a simple or antialiased image is used. More...
struct | csImageIOFileFormatDescription
| Description for a file format supported by an image loader. More...
struct | csPixelCoord
| Simple 2D pixel coordinate. More...
struct | iAnimatedImage
| If an image file has animation capabilities, then this interface is exhibited. More...
struct | iFont
| A font object. More...
struct | iFontDeleteNotify
| Called before a font is deleted. More...
struct | iFontServer
| A font server interface. More...
struct | iGraphics2D
| This is the interface for 2D renderer. More...
struct | iImage
| The iImage interface is used to work with image objects. More...
struct | iImageIO
| The iImageIO interface is used to save and load graphic files. More...
struct | iNativeWindow
| This interface represents a native window. More...
struct | iNativeWindowManager
| This interface represents the native window manager system. More...
## Namespaces
namespace | CS
| Main namespace for CrystalSpace.
## Defines
#define | CS_FONT_DEFAULT_GLYPH 0xffff
| The default char, drawn in case a glyph wasn't present in the font.
## Typedefs
typedef csArray < csImageIOFileFormatDescription const * > | csImageIOFileFormatDescriptions
| Description for the array of file formats.
typedef enum _csMouseCursorID | csMouseCursorID
| Standard mouse cursor IDs.
## Enumerations
enum | { CS_WRITE_BASELINE = (1 << 0), CS_WRITE_NOANTIALIAS = (1 << 1) }
| iGraphics2D::Write() flags. More...
enum | _csMouseCursorID { csmcNone = -1, csmcArrow = 0, csmcLens, csmcCross, csmcPen, csmcMove, csmcSizeNWSE, csmcSizeNESW, csmcSizeNS, csmcSizeEW, csmcStop, csmcWait }
| Standard mouse cursor IDs. More...
enum | csImageType { csimg2D = 0, csimg3D, csimgCube }
| Type of an image. More...
## Image format masks
We can request csImageLoader to load an image in several formats. The format we should use depends on what we want to do with the image; usually if we're going to use the image as a texture, the format we should use is determined by querying the 3D rasterizer for the preferred image format.
#define | CS_IMGFMT_MASK (0x0000ffff)
| The mask to separate the image format apart.
#define | CS_IMGFMT_NONE (0x00000000)
| We don't want the pixels at all, just (possibly) the alphamap.
#define | CS_IMGFMT_TRUECOLOR (0x00000001)
| Truecolor format (r/g/b/unused resp.
#define | CS_IMGFMT_PALETTED8 (0x00000002)
| 8-bit indexed paletted image
#define | CS_IMGFMT_ANY (CS_IMGFMT_MASK)
| Autodetect: use whatever format the file is in. Use ONLY for loading.
#define | CS_IMGFMT_ALPHA (0x00010000)
| Do we need alpha channel or not.
#define | CS_IMGFMT_INVALID (0x80000000)
| This flag indicates an invalid image format.
## Basic fonts alias names
Any font server should provide these fonts, since most programs expect they to be available. Other fonts may or may be not available but these should be always available. Default font names always start with "*" to avoid confusion with real file names.
#define | CSFONT_LARGE "*large"
| Thick and relatively large font.
#define | CSFONT_ITALIC "*italic"
| Thick italic relatively large font.
#define | CSFONT_COURIER "*courier"
| Thin courier-like relatively large font.
#define | CSFONT_SMALL "*small"
| Very small font (smallest font that is still readable)
## Alert types
#define | CS_ALERT_ERROR 1
| Display an error.
#define | CS_ALERT_WARNING 2
| Display a warning.
#define | CS_ALERT_NOTE 3
| Display a note.

## Define Documentation

#define CS_ALERT_ERROR 1

Display an error.

Definition at line 37 of file natwin.h.

#define CS_ALERT_NOTE 3

Display a note.

Definition at line 41 of file natwin.h.

#define CS_ALERT_WARNING 2

Display a warning.

Definition at line 39 of file natwin.h.

#define CS_FONT_DEFAULT_GLYPH 0xffff

The default char, drawn in case a glyph wasn't present in the font.

The Unicode standard says that this will never be a valid code point - so we just take as the "replacer" char.

Definition at line 56 of file fontserv.h.

#define CS_IMGFMT_ALPHA (0x00010000)

Do we need alpha channel or not.

Definition at line 57 of file image.h.

#define CS_IMGFMT_ANY (CS_IMGFMT_MASK)

Autodetect: use whatever format the file is in. Use ONLY for loading.

Definition at line 55 of file image.h.

#define CS_IMGFMT_INVALID (0x80000000)

This flag indicates an invalid image format.

No image may have this set, and you may not load images with this flag set.

Definition at line 62 of file image.h.

#define CS_IMGFMT_MASK (0x0000ffff)

The mask to separate the image format apart.

Definition at line 44 of file image.h.

#define CS_IMGFMT_NONE (0x00000000)

We don't want the pixels at all, just (possibly) the alphamap.

Definition at line 46 of file image.h.

#define CS_IMGFMT_PALETTED8 (0x00000002)

8-bit indexed paletted image

Definition at line 53 of file image.h.

#define CS_IMGFMT_TRUECOLOR (0x00000001)

Truecolor format (r/g/b/unused resp.

r/g/b/a per each pixel, depending on the presence of the CS_IMGFMT_ALPHA flag).

Definition at line 51 of file image.h.

#define CSFONT_COURIER "*courier"

Thin courier-like relatively large font.

Definition at line 46 of file fontserv.h.

#define CSFONT_ITALIC "*italic"

Thick italic relatively large font.

Definition at line 44 of file fontserv.h.

#define CSFONT_LARGE "*large"

Thick and relatively large font.

Definition at line 42 of file fontserv.h.

#define CSFONT_SMALL "*small"

Very small font (smallest font that is still readable)

Definition at line 48 of file fontserv.h.

## Typedef Documentation

typedef csArray<csImageIOFileFormatDescription const*> csImageIOFileFormatDescriptions

Description for the array of file formats.

Definition at line 59 of file imageio.h.

typedef enum _csMouseCursorID csMouseCursorID

Standard mouse cursor IDs.

## Enumeration Type Documentation

anonymous enum

iGraphics2D::Write() flags.

Enumerator:

  CS_WRITE_BASELINE | Write by baseline, `x` and `y` are treated as the pen position on a baseline.
  CS_WRITE_NOANTIALIAS | Don't use anti-aliased glyphs.

Definition at line 52 of file graph2d.h.

enum _csMouseCursorID

Standard mouse cursor IDs.

Enumerator:

  csmcNone | No cursor.
  csmcArrow | Arrow cursor.
  csmcLens | Lens cursor.
  csmcCross | Cross-hatch cursor.
  csmcPen | Pen cursor.
  csmcMove | Window move cursor.
  csmcSizeNWSE | Diagonal (\) resizing cursor.
  csmcSizeNESW | Diagonal (/) resizing cursor.
  csmcSizeNS | Vertical sizing cursor.
  csmcSizeEW | Horizontal sizing cursor.
  csmcStop | Invalid operation cursor.
  csmcWait | Wait (longplay operation) cursor.

Definition at line 40 of file cursor.h.

enum csImageType

Type of an image.

Enumerator:

  csimg2D | 2D image. Nothing special.
  csimg3D | 3D image. The depth slices are arranged consecutively.
  csimgCube | Cube map. The cube faces are stored as sub images, the indices are the CS_TEXTURE_CUBE_XXX values. See also: CS_TEXTURE_CUBE_POS_X

Definition at line 66 of file image.h.