Class TBGRAMultishapeFiller

Unit

Declaration

type TBGRAMultishapeFiller = class(TObject)

Description

Class that fills multiple shapes at once, joining them smoothly

Hierarchy

Overview

Fields

Public AliasingIncludeBottomRight: Boolean;
Public Antialiasing: Boolean;
Public FillMode: TFillMode;
Protected nbShapes: integer;
Public PolygonOrder: TPolygonOrder;
Protected shapes: array of record info: TBGRACustomFillInfo; internalInfo: boolean; texture: IBGRAScanner; internalTexture: TObject; color: TExpandedPixel; bounds: TRect; fillMode: TFillMode; fillModeOverride: boolean; end;

Methods

Public constructor Create;
Public destructor Destroy; override;
Public function AddEllipse(x, y, rx, ry: single; AColor: TBGRAPixel): integer; overload;
Public function AddEllipse(x, y, rx, ry: single; ATexture: IBGRAScanner): integer; overload;
Public function AddEllipseBorder(x, y, rx, ry, w: single; ATexture: IBGRAScanner): integer; overload;
Public function AddEllipseBorder(x, y, rx, ry, w: single; AColor: TBGRAPixel): integer; overload;
Public function AddPathFill(APath: TBGRAPath; AMatrix: TAffineMatrix; ATexture: IBGRAScanner): integer; overload;
Public function AddPathFill(APath: TBGRAPath; ATexture: IBGRAScanner): integer; overload;
Public function AddPathFill(APath: TBGRAPath; AColor: TBGRAPixel): integer; overload;
Public function AddPathFill(APath: TBGRAPath; AMatrix: TAffineMatrix; AColor: TBGRAPixel): integer; overload;
Public function AddPolygon(const points: array of TPointF; AColor: TBGRAPixel): integer; overload;
Public function AddPolygon(const points: array of TPointF; ATexture: IBGRAScanner): integer; overload;
Public function AddPolygonStroke(const points: array of TPointF; ATexture: IBGRAScanner; AWidth: single; AStroker: TBGRACustomPenStroker): integer; overload;
Public function AddPolygonStroke(const points: array of TPointF; AColor: TBGRAPixel; AWidth: single; AStroker: TBGRACustomPenStroker): integer; overload;
Public function AddPolylineStroke(const points: array of TPointF; AColor: TBGRAPixel; AWidth: single; AStroker: TBGRACustomPenStroker): integer; overload;
Public function AddPolylineStroke(const points: array of TPointF; ATexture: IBGRAScanner; AWidth: single; AStroker: TBGRACustomPenStroker): integer; overload;
Public function AddRectangle(x1, y1, x2, y2: single; AColor: TBGRAPixel): integer; overload;
Public function AddRectangle(x1, y1, x2, y2: single; ATexture: IBGRAScanner): integer; overload;
Public function AddRectangleBorder(x1, y1, x2, y2, w: single; ATexture: IBGRAScanner): integer; overload;
Public function AddRectangleBorder(x1, y1, x2, y2, w: single; AColor: TBGRAPixel): integer; overload;
Public function AddRoundRectangle(x1, y1, x2, y2, rx, ry: single; ATexture: IBGRAScanner; options: TRoundRectangleOptions= []): integer; overload;
Public function AddRoundRectangle(x1, y1, x2, y2, rx, ry: single; AColor: TBGRAPixel; options: TRoundRectangleOptions= []): integer; overload;
Public function AddRoundRectangleBorder(x1, y1, x2, y2, rx, ry, w: single; ATexture: IBGRAScanner; options: TRoundRectangleOptions= []): integer; overload;
Public function AddRoundRectangleBorder(x1, y1, x2, y2, rx, ry, w: single; AColor: TBGRAPixel; options: TRoundRectangleOptions= []): integer; overload;
Public function AddShape(AShape: TBGRACustomFillInfo; AColor: TBGRAPixel): integer; overload;
Public function AddShape(AShape: TBGRACustomFillInfo; ATexture: IBGRAScanner): integer; overload;
Public function AddTriangleLinearColor(pt1, pt2, pt3: TPointF; c1, c2, c3: TBGRAPixel): integer;
Public function AddTriangleLinearMapping(pt1, pt2, pt3: TPointF; texture: IBGRAScanner; tex1, tex2, tex3: TPointF): integer;
Protected function AddShape(AInfo: TBGRACustomFillInfo; AInternalInfo: boolean; ATexture: IBGRAScanner; AInternalTexture: TObject; AColor: TBGRAPixel): integer; overload;
Protected function CheckRectangleBorderBounds(var x1, y1, x2, y2: single; w: single): boolean;
Public procedure AddPathStroke(APath: TBGRAPath; AMatrix: TAffineMatrix; AColor: TBGRAPixel; AWidth: single; AStroker: TBGRACustomPenStroker); overload;
Public procedure AddPathStroke(APath: TBGRAPath; AColor: TBGRAPixel; AWidth: single; AStroker: TBGRACustomPenStroker); overload;
Public procedure AddPathStroke(APath: TBGRAPath; ATexture: IBGRAScanner; AWidth: single; AStroker: TBGRACustomPenStroker); overload;
Public procedure AddPathStroke(APath: TBGRAPath; AMatrix: TAffineMatrix; ATexture: IBGRAScanner; AWidth: single; AStroker: TBGRACustomPenStroker); overload;
Public procedure AddQuadLinearColor(pt1, pt2, pt3, pt4: TPointF; c1, c2, c3, c4: TBGRAPixel);
Public procedure AddQuadLinearMapping(pt1, pt2, pt3, pt4: TPointF; texture: IBGRAScanner; tex1, tex2, tex3, tex4: TPointF; ACulling: TFaceCulling = fcNone);
Public procedure AddQuadPerspectiveMapping(pt1, pt2, pt3, pt4: TPointF; texture: IBGRAScanner; tex1, tex2, tex3, tex4: TPointF);
Public procedure Draw(dest: TBGRACustomBitmap; ADrawMode: TDrawMode = dmDrawWithTransparency);
Public procedure OverrideFillMode(AShapeIndex: integer; AFillMode: TFillMode);
Protected procedure InternalAddStroke(const APoints: array of TPointF; AClosed: boolean; AData: Pointer);

Properties

Public property ShapeCount: integer read nbShapes;

Description

Fields

Public AliasingIncludeBottomRight: Boolean;

This item has no description.

Public Antialiasing: Boolean;

This item has no description.

Public FillMode: TFillMode;

This item has no description.

Protected nbShapes: integer;

This item has no description.

Public PolygonOrder: TPolygonOrder;

This item has no description.

Protected shapes: array of record info: TBGRACustomFillInfo; internalInfo: boolean; texture: IBGRAScanner; internalTexture: TObject; color: TExpandedPixel; bounds: TRect; fillMode: TFillMode; fillModeOverride: boolean; end;

This item has no description.

Methods

Public constructor Create;

This item has no description.

Public destructor Destroy; override;

This item has no description.

Public function AddEllipse(x, y, rx, ry: single; AColor: TBGRAPixel): integer; overload;

This item has no description.

Public function AddEllipse(x, y, rx, ry: single; ATexture: IBGRAScanner): integer; overload;

This item has no description.

Public function AddEllipseBorder(x, y, rx, ry, w: single; ATexture: IBGRAScanner): integer; overload;

This item has no description.

Public function AddEllipseBorder(x, y, rx, ry, w: single; AColor: TBGRAPixel): integer; overload;

This item has no description.

Public function AddPathFill(APath: TBGRAPath; AMatrix: TAffineMatrix; ATexture: IBGRAScanner): integer; overload;

This item has no description.

Public function AddPathFill(APath: TBGRAPath; ATexture: IBGRAScanner): integer; overload;

This item has no description.

Public function AddPathFill(APath: TBGRAPath; AColor: TBGRAPixel): integer; overload;

This item has no description.

Public function AddPathFill(APath: TBGRAPath; AMatrix: TAffineMatrix; AColor: TBGRAPixel): integer; overload;

This item has no description.

Public function AddPolygon(const points: array of TPointF; AColor: TBGRAPixel): integer; overload;

This item has no description.

Public function AddPolygon(const points: array of TPointF; ATexture: IBGRAScanner): integer; overload;

This item has no description.

Public function AddPolygonStroke(const points: array of TPointF; ATexture: IBGRAScanner; AWidth: single; AStroker: TBGRACustomPenStroker): integer; overload;

This item has no description.

Public function AddPolygonStroke(const points: array of TPointF; AColor: TBGRAPixel; AWidth: single; AStroker: TBGRACustomPenStroker): integer; overload;

This item has no description.

Public function AddPolylineStroke(const points: array of TPointF; AColor: TBGRAPixel; AWidth: single; AStroker: TBGRACustomPenStroker): integer; overload;

This item has no description.

Public function AddPolylineStroke(const points: array of TPointF; ATexture: IBGRAScanner; AWidth: single; AStroker: TBGRACustomPenStroker): integer; overload;

This item has no description.

Public function AddRectangle(x1, y1, x2, y2: single; AColor: TBGRAPixel): integer; overload;

This item has no description.

Public function AddRectangle(x1, y1, x2, y2: single; ATexture: IBGRAScanner): integer; overload;

This item has no description.

Public function AddRectangleBorder(x1, y1, x2, y2, w: single; ATexture: IBGRAScanner): integer; overload;

This item has no description.

Public function AddRectangleBorder(x1, y1, x2, y2, w: single; AColor: TBGRAPixel): integer; overload;

This item has no description.

Public function AddRoundRectangle(x1, y1, x2, y2, rx, ry: single; ATexture: IBGRAScanner; options: TRoundRectangleOptions= []): integer; overload;

This item has no description.

Public function AddRoundRectangle(x1, y1, x2, y2, rx, ry: single; AColor: TBGRAPixel; options: TRoundRectangleOptions= []): integer; overload;

This item has no description.

Public function AddRoundRectangleBorder(x1, y1, x2, y2, rx, ry, w: single; ATexture: IBGRAScanner; options: TRoundRectangleOptions= []): integer; overload;

This item has no description.

Public function AddRoundRectangleBorder(x1, y1, x2, y2, rx, ry, w: single; AColor: TBGRAPixel; options: TRoundRectangleOptions= []): integer; overload;

This item has no description.

Public function AddShape(AShape: TBGRACustomFillInfo; AColor: TBGRAPixel): integer; overload;

This item has no description.

Public function AddShape(AShape: TBGRACustomFillInfo; ATexture: IBGRAScanner): integer; overload;

This item has no description.

Public function AddTriangleLinearColor(pt1, pt2, pt3: TPointF; c1, c2, c3: TBGRAPixel): integer;

This item has no description.

Public function AddTriangleLinearMapping(pt1, pt2, pt3: TPointF; texture: IBGRAScanner; tex1, tex2, tex3: TPointF): integer;

This item has no description.

Protected function AddShape(AInfo: TBGRACustomFillInfo; AInternalInfo: boolean; ATexture: IBGRAScanner; AInternalTexture: TObject; AColor: TBGRAPixel): integer; overload;

This item has no description.

Protected function CheckRectangleBorderBounds(var x1, y1, x2, y2: single; w: single): boolean;

This item has no description.

Public procedure AddPathStroke(APath: TBGRAPath; AMatrix: TAffineMatrix; AColor: TBGRAPixel; AWidth: single; AStroker: TBGRACustomPenStroker); overload;

This item has no description.

Public procedure AddPathStroke(APath: TBGRAPath; AColor: TBGRAPixel; AWidth: single; AStroker: TBGRACustomPenStroker); overload;

This item has no description.

Public procedure AddPathStroke(APath: TBGRAPath; ATexture: IBGRAScanner; AWidth: single; AStroker: TBGRACustomPenStroker); overload;

This item has no description.

Public procedure AddPathStroke(APath: TBGRAPath; AMatrix: TAffineMatrix; ATexture: IBGRAScanner; AWidth: single; AStroker: TBGRACustomPenStroker); overload;

This item has no description.

Public procedure AddQuadLinearColor(pt1, pt2, pt3, pt4: TPointF; c1, c2, c3, c4: TBGRAPixel);

This item has no description.

Public procedure AddQuadLinearMapping(pt1, pt2, pt3, pt4: TPointF; texture: IBGRAScanner; tex1, tex2, tex3, tex4: TPointF; ACulling: TFaceCulling = fcNone);

This item has no description.

Public procedure AddQuadPerspectiveMapping(pt1, pt2, pt3, pt4: TPointF; texture: IBGRAScanner; tex1, tex2, tex3, tex4: TPointF);

This item has no description.

Public procedure Draw(dest: TBGRACustomBitmap; ADrawMode: TDrawMode = dmDrawWithTransparency);

This item has no description.

Public procedure OverrideFillMode(AShapeIndex: integer; AFillMode: TFillMode);

This item has no description.

Protected procedure InternalAddStroke(const APoints: array of TPointF; AClosed: boolean; AData: Pointer);

This item has no description.

Properties

Public property ShapeCount: integer read nbShapes;

This item has no description.