Class TDirectDrawSurface (unit DXDraws)

Inherits from

TDirectX

TDirectDrawSurface

Constructors


constructor Create(ADirectDraw: TDirectDraw);

TDirectDrawSurface


Functions

procedure Assign(Source: TPersistent);


procedure AssignTo(Dest: TPersistent);


function Blt(const DestRect, SrcRect: TRect; Flags: Integer; const DF: DDBLTFX; Source: TDirectDrawSurface): Boolean;


function BltFast(X, Y: Integer; const SrcRect: TRect; Flags: Integer; Source: TDirectDrawSurface): Boolean;


function ColorMatch(Col: TColor): Integer;


function CreateSurface(const SurfaceDesc: DDSURFACEDESC): Boolean;


destructor Destroy;


procedure Draw(X, Y: Integer; SrcRect: TRect; Source: TDirectDrawSurface; Transparent: Boolean);


procedure DrawRotateAdd(X, Y, Width, Height: Integer; SrcRect: TRect; Source: TDirectDrawSurface; CenterX, CenterY: Double; Transparent: Boolean; Angle, Alpha: Integer);


procedure DrawRotateAlpha(X, Y, Width, Height: Integer; SrcRect: TRect; Source: TDirectDrawSurface; CenterX, CenterY: Double; Transparent: Boolean; Angle, Alpha: Integer);

Vertex setting

procedure Fill(Col: Longint);

Vertex setting

procedure FillRect(const Rect: TRect; Col: Longint);


procedure LoadFromDIB(DIB: TDIB);


procedure LoadFromDIBRect(DIB: TDIB; AWidth, AHeight: Integer; const SrcRect: TRect);


procedure LoadFromFile(const FileName: string);


procedure LoadFromGraphic(Graphic: TGraphic);


procedure LoadFromGraphicRect(Graphic: TGraphic; AWidth, AHeight: Integer; const SrcRect: TRect);


procedure LoadFromStream(Stream: TStream);


function Lock(const Rect: TRect; var SurfaceDesc: DDSURFACEDESC): Boolean;


function Restore: Boolean;


procedure SetSize(AWidth, AHeight: Integer);


procedure StretchDraw(const DestRect, SrcRect: TRect; Source: TDirectDrawSurface; Transparent: Boolean);


procedure UnLock(lpSurfaceData: Pointer);


function GetBitCount: Integer;


function GetCanvas: TDirectDrawSurfaceCanvas;


function GetClientRect: TRect;


function GetHeight: Integer;


function GetIDDSurface: IDirectDrawSurface;


function GetISurface: IDirectDrawSurface;


function GetPixel(X, Y: Integer): Longint;


function GetWidth: Integer;


procedure SetClipper(Value: TDirectDrawClipper);


procedure SetColorKey(Flags: Integer; const Value: DDCOLORKEY);


procedure SetIDDSurface(Value: IDirectDrawSurface);


procedure SetPalette(Value: TDirectDrawPalette);


procedure SetPixel(X, Y: Integer; Value: Longint);


procedure SetTransparentColor(Col: Longint);

When the Surface cannot be made, making is attempted to the system memory.

Properties

property BitCount : Integer


property Canvas : TDirectDrawSurfaceCanvas


property ClientRect : TRect


property Clipper : TDirectDrawClipper


property ColorKey : DDCOLORKEY


property DDraw : TDirectDraw


property Height : Integer


property IDDSurface : IDirectDrawSurface


property ISurface : IDirectDrawSurface


property Palette : TDirectDrawPalette


property Pixels : Longint


property SurfaceDesc : DDSURFACEDESC


property SystemMemory : Boolean


property TransparentColor : Longint


property Width : Integer


Events

Variables

FCanvas : TDirectDrawSurfaceCanvas;


FDDraw : TDirectDraw;


FHasClipper : Boolean;


FIDDSurface : IDirectDrawSurface;


FStretchDrawClipper : IDirectDrawClipper;


FSurfaceDesc : DDSURFACEDESC;


FSystemMemory : Boolean;



Constructors


constructor Create(ADirectDraw: TDirectDraw);

TDirectDrawSurface


Functions


procedure Assign(Source: TPersistent);


procedure AssignTo(Dest: TPersistent);


function Blt(const DestRect, SrcRect: TRect; Flags: Integer; const DF: DDBLTFX; Source: TDirectDrawSurface): Boolean;


function BltFast(X, Y: Integer; const SrcRect: TRect; Flags: Integer; Source: TDirectDrawSurface): Boolean;


function ColorMatch(Col: TColor): Integer;


function CreateSurface(const SurfaceDesc: DDSURFACEDESC): Boolean;


destructor Destroy;


procedure Draw(X, Y: Integer; SrcRect: TRect; Source: TDirectDrawSurface; Transparent: Boolean);


procedure DrawRotateAdd(X, Y, Width, Height: Integer; SrcRect: TRect; Source: TDirectDrawSurface; CenterX, CenterY: Double; Transparent: Boolean; Angle, Alpha: Integer);


procedure DrawRotateAlpha(X, Y, Width, Height: Integer; SrcRect: TRect; Source: TDirectDrawSurface; CenterX, CenterY: Double; Transparent: Boolean; Angle, Alpha: Integer);

Vertex setting


procedure Fill(Col: Longint);

Vertex setting


procedure FillRect(const Rect: TRect; Col: Longint);


procedure LoadFromDIB(DIB: TDIB);


procedure LoadFromDIBRect(DIB: TDIB; AWidth, AHeight: Integer; const SrcRect: TRect);


procedure LoadFromFile(const FileName: string);


procedure LoadFromGraphic(Graphic: TGraphic);


procedure LoadFromGraphicRect(Graphic: TGraphic; AWidth, AHeight: Integer; const SrcRect: TRect);


procedure LoadFromStream(Stream: TStream);


function Lock(const Rect: TRect; var SurfaceDesc: DDSURFACEDESC): Boolean;


function Restore: Boolean;


procedure SetSize(AWidth, AHeight: Integer);


procedure StretchDraw(const DestRect, SrcRect: TRect; Source: TDirectDrawSurface; Transparent: Boolean);


procedure UnLock(lpSurfaceData: Pointer);


function GetBitCount: Integer;


function GetCanvas: TDirectDrawSurfaceCanvas;


function GetClientRect: TRect;


function GetHeight: Integer;


function GetIDDSurface: IDirectDrawSurface;


function GetISurface: IDirectDrawSurface;


function GetPixel(X, Y: Integer): Longint;


function GetWidth: Integer;


procedure SetClipper(Value: TDirectDrawClipper);


procedure SetColorKey(Flags: Integer; const Value: DDCOLORKEY);


procedure SetIDDSurface(Value: IDirectDrawSurface);


procedure SetPalette(Value: TDirectDrawPalette);


procedure SetPixel(X, Y: Integer; Value: Longint);


procedure SetTransparentColor(Col: Longint);

When the Surface cannot be made, making is attempted to the system memory.


Properties


property BitCount : Integer


property Canvas : TDirectDrawSurfaceCanvas


property ClientRect : TRect


property Clipper : TDirectDrawClipper


property ColorKey : DDCOLORKEY


property DDraw : TDirectDraw


property Height : Integer


property IDDSurface : IDirectDrawSurface


property ISurface : IDirectDrawSurface


property Palette : TDirectDrawPalette


property Pixels : Longint


property SurfaceDesc : DDSURFACEDESC


property SystemMemory : Boolean


property TransparentColor : Longint


property Width : Integer


Events


Variables


FCanvas : TDirectDrawSurfaceCanvas;


FDDraw : TDirectDraw;


FHasClipper : Boolean;


FIDDSurface : IDirectDrawSurface;


FStretchDrawClipper : IDirectDrawClipper;


FSurfaceDesc : DDSURFACEDESC;


FSystemMemory : Boolean;