Class TBGRACustomPath

Unit

Declaration

type TBGRACustomPath = class(IBGRAPath)

Description

Generic class representing a path, providing methods for creation and exploration

Hierarchy

Overview

Methods

Public constructor Create; virtual; abstract;
Protected function getCursor: TBGRACustomPathCursor; virtual; abstract;
Protected function getLength: single; virtual; abstract;
Protected function getPoints(AMatrix: TAffineMatrix): ArrayOfTPointF; overload; virtual; abstract;
Protected function getPoints: ArrayOfTPointF; overload; virtual; abstract;
Protected function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall;
Protected function _AddRef: Integer; stdcall;
Protected function _Release: Integer; stdcall;
Public procedure arc(constref arcDef: TArcDef); virtual; abstract;
Public procedure beginPath; virtual; abstract;
Public procedure bezierCurveTo(constref cp1, cp2, pt: TPointF); virtual; abstract;
Public procedure closedSpline(const pts: array of TPointF; style: TSplineStyle); virtual; abstract;
Public procedure closePath; virtual; abstract;
Public procedure copyTo(dest: IBGRAPath); virtual; abstract;
Public procedure lineTo(constref pt: TPointF); virtual; abstract;
Public procedure moveTo(constref pt: TPointF); virtual; abstract;
Public procedure openedSpline(const pts: array of TPointF; style: TSplineStyle); virtual; abstract;
Public procedure polylineTo(const pts: array of TPointF); virtual; abstract;
Public procedure quadraticCurveTo(constref cp, pt: TPointF); virtual; abstract;
Protected procedure fill(AFillProc: TBGRAPathFillProc; AData: pointer); overload; virtual; abstract;
Protected procedure fill(AFillProc: TBGRAPathFillProc; const AMatrix: TAffineMatrix; AData: pointer); overload; virtual; abstract;
Protected procedure stroke(ADrawProc: TBGRAPathDrawProc; AData: pointer); overload; virtual; abstract;
Protected procedure stroke(ADrawProc: TBGRAPathDrawProc; const AMatrix: TAffineMatrix; AData: pointer); overload; virtual; abstract;

Description

Methods

Public constructor Create; virtual; abstract;

Constructor to create a custom path. Must be overridden in subclasses

Protected function getCursor: TBGRACustomPathCursor; virtual; abstract;

Retrieves a cursor for navigating the path

Protected function getLength: single; virtual; abstract;

Retrieves the length of the path

Protected function getPoints(AMatrix: TAffineMatrix): ArrayOfTPointF; overload; virtual; abstract;

Retrieves the points of the path, transformed by a specified matrix

Protected function getPoints: ArrayOfTPointF; overload; virtual; abstract;

Retrieves the points of the path

Protected function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall;

This item has no description.

Protected function _AddRef: Integer; stdcall;

This item has no description.

Protected function _Release: Integer; stdcall;

This item has no description.

Public procedure arc(constref arcDef: TArcDef); virtual; abstract;

Adds an arc to the path based on an arc definition

Public procedure beginPath; virtual; abstract;

Begins a new path

Public procedure bezierCurveTo(constref cp1, cp2, pt: TPointF); virtual; abstract;

Adds a cubic Bézier curve to the path

Public procedure closedSpline(const pts: array of TPointF; style: TSplineStyle); virtual; abstract;

Adds a closed spline to the path based on a series of points and a spline style

Public procedure closePath; virtual; abstract;

Closes the current path

Public procedure copyTo(dest: IBGRAPath); virtual; abstract;

Copies the path to another path object

Public procedure lineTo(constref pt: TPointF); virtual; abstract;

Adds a line from the current point to a specified point

Public procedure moveTo(constref pt: TPointF); virtual; abstract;

Moves the current point to a specified location, starting a new sub-path

Public procedure openedSpline(const pts: array of TPointF; style: TSplineStyle); virtual; abstract;

Adds an open spline to the path based on a series of points and a spline style

Public procedure polylineTo(const pts: array of TPointF); virtual; abstract;

Adds a series of lines to the path based on an array of points

Public procedure quadraticCurveTo(constref cp, pt: TPointF); virtual; abstract;

Adds a quadratic Bézier curve to the path

Protected procedure fill(AFillProc: TBGRAPathFillProc; AData: pointer); overload; virtual; abstract;

Fills the path with a specified filling procedure

Protected procedure fill(AFillProc: TBGRAPathFillProc; const AMatrix: TAffineMatrix; AData: pointer); overload; virtual; abstract;

Fills the path with a specified filling procedure and transformation matrix

Protected procedure stroke(ADrawProc: TBGRAPathDrawProc; AData: pointer); overload; virtual; abstract;

Strokes the path with a specified drawing procedure

Protected procedure stroke(ADrawProc: TBGRAPathDrawProc; const AMatrix: TAffineMatrix; AData: pointer); overload; virtual; abstract;

Strokes the path with a specified drawing procedure and transformation matrix