Unit BGRAFillInfo

📄 Source code

Description

Generic class to hold a shape to be filled as well as the implementation for basic shapes

Uses

Overview

Structures

Name Description
Class TCustomFillPolyInfo Abstract class to provide fill information for a polygon
Record TCustomPointRecord Base record to describe a point in a polygon to be filled
Class TFillBorderEllipseInfo Fill information for the border of an ellipse
Class TFillBorderRoundRectInfo Fill information for the border of a round rectangle
Class TFillEllipseInfo Fill information for an ellipse
Class TFillPolyInfo Fill information for a polygon
Class TFillRectangleInfo Fill information for rectangle
Class TFillRoundRectangleInfo Fill information for a round rectangle
Class TFillShapeInfo Abstract class to provide fill information for any shape
Class TOnePassFillPolyInfo Fill information for a polygon assuming that queries are always in increasying Y.
Record TOnePassRecord Linked list of coordinates for one-pass drawing
Record TPolySlice Horizontal strip of a polygon being filled
Class TSimpleFillPolyInfo Fill information for a simple polygons

Functions and Procedures

procedure AddDensity(dest: PDensity; start,count: integer; value : word); inline;
function BGRAShapeComputeMinMax(AShape: TBGRACustomFillInfo; out minx, miny, maxx, maxy: integer; bmpDest: TBGRACustomBitmap): boolean; overload;
function BGRAShapeComputeMinMax(AShape: TBGRACustomFillInfo; out minx, miny, maxx, maxy: integer; clip: TRect): boolean; overload;
procedure ComputeAliasedRowBounds(x1,x2: single; minx,maxx: integer; out ix1,ix2: integer);
function DivByAntialiasPrecision(value: UInt32or64): UInt32or64; inline;
function DivByAntialiasPrecision256(value: UInt32or64): UInt32or64; inline;
function DivByAntialiasPrecision65536(value: UInt32or64): UInt32or64; inline;
function IsPointInEllipse(x,y,rx,ry: single; point: TPointF): boolean;
function IsPointInPolygon(const points: ArrayOfTPointF; point: TPointF; windingMode: boolean): boolean;
function IsPointInRectangle(x1, y1, x2, y2: single; point: TPointF): boolean;
function IsPointInRoundRectangle(x1, y1, x2, y2, rx, ry: single; point: TPointF): boolean;

Types

PCustomPointRecord = ˆTCustomPointRecord;
PDensity = ˆTDensity;
POnePassRecord = ˆTOnePassRecord;
TDensity = word;

Constants

AntialiasPrecision = 16;
AntialiasPrecisionShift = 4;

Description

Functions and Procedures

procedure AddDensity(dest: PDensity; start,count: integer; value : word); inline;

This item has no description.

function BGRAShapeComputeMinMax(AShape: TBGRACustomFillInfo; out minx, miny, maxx, maxy: integer; bmpDest: TBGRACustomBitmap): boolean; overload;

This item has no description.

function BGRAShapeComputeMinMax(AShape: TBGRACustomFillInfo; out minx, miny, maxx, maxy: integer; clip: TRect): boolean; overload;

This item has no description.

procedure ComputeAliasedRowBounds(x1,x2: single; minx,maxx: integer; out ix1,ix2: integer);

This item has no description.

function DivByAntialiasPrecision(value: UInt32or64): UInt32or64; inline;

This item has no description.

function DivByAntialiasPrecision256(value: UInt32or64): UInt32or64; inline;

This item has no description.

function DivByAntialiasPrecision65536(value: UInt32or64): UInt32or64; inline;

This item has no description.

function IsPointInEllipse(x,y,rx,ry: single; point: TPointF): boolean;

This item has no description.

function IsPointInPolygon(const points: ArrayOfTPointF; point: TPointF; windingMode: boolean): boolean;

This item has no description.

function IsPointInRectangle(x1, y1, x2, y2: single; point: TPointF): boolean;

This item has no description.

function IsPointInRoundRectangle(x1, y1, x2, y2, rx, ry: single; point: TPointF): boolean;

This item has no description.

Types

PCustomPointRecord = ˆTCustomPointRecord;

This item has no description.

PDensity = ˆTDensity;

This item has no description.

POnePassRecord = ˆTOnePassRecord;

This item has no description.

TDensity = word;

This item has no description.

Constants

AntialiasPrecision = 16;

This item has no description.

AntialiasPrecisionShift = 4;

This item has no description.