TBLPath
2D vector path.
Definition
Unit: Blend2D
Properties
Name | Description |
---|---|
BoundingBox | Bounding box of all on-path vertices and curve extrema. |
Capacity | Path capacity (number of allocated vertices). |
CommandData | Path's command data (read-only). |
CommandDataEnd | The end of path's command data (read-only). |
ControlBox | Bounding box of all vertices and control points to. |
FigureRanges | The ranges describing a figure at the given AIndex . |
InfoFlags | Update a path information if necessary. |
IsEmpty | Whether the path is empty, which means its size equals to zero. |
LastVertex | The last vertex of the path. If the very last command of the path is TBLPathCmd.Close then the path will be iterated in reverse order to match the initial vertex of the last figure. |
Size | Path size (number of vertices used). |
VertexData | Path's vertex data (read-only). |
VertexDataEnd | The end of path's vertex data (read-only). |
Constructors
Name | Description |
---|---|
Assign | Copy constructor. |
Finalize | Destroys the path. |
Initialize | Creates a default constructed path. |
Operators
Name | Description |
---|---|
Equal(TBLPath, TBLPath) | Returns True if two paths are equal (have the same contents). |
Equal(TBLPath, Pointer) | Used to compare against nil (empty path). |
NotEqual(TBLPath, TBLPath) | Returns True if two paths are not equal (do not have the same contents). |
NotEqual(TBLPath, Pointer) | Used to compare against nil (empty path). |
Methods
Property Descriptions
BoundingBox
Bounding box of all on-path vertices and curve extrema.
The bounding box could be smaller than a bounding box obtained by ControlBox
as it's calculated by merging only start/end points and curves at their extrema (not control points). The resulting bounding box represents a visual bounds of the path.
property BoundingBox: TBLBox read GetBoundingBox
Type: TBLBox
Exceptions
EBlend2DError
: Raised on failure.
See Also
Capacity
Path capacity (number of allocated vertices).
property Capacity: NativeInt read GetCapacity
Type: NativeInt
CommandData
Path's command data (read-only).
property CommandData: PByte read GetCommandData
Type: PByte
CommandDataEnd
The end of path's command data (read-only).
property CommandDataEnd: PByte read GetCommandDataEnd
Type: PByte
ControlBox
Bounding box of all vertices and control points to.
Control box is simply bounds of all vertices the path has without further processing. It contains both on-path and off-path points. Consider using BoundingBox
if you need a visual bounding box.
property ControlBox: TBLBox read GetControlBox
Type: TBLBox
Exceptions
EBlend2DError
: Raised on failure.
See Also
FigureRanges
The ranges describing a figure at the given AIndex
.
property FigureRanges[const AIndex: Integer]: TBLRange read GetFigureRange
Type: TBLRange
Exceptions
EBlend2DError
: Raised on failure.
InfoFlags
Update a path information if necessary.
property InfoFlags: TBLPathFlags read GetInfoFlags
Type: TBLPathFlags
Exceptions
EBlend2DError
: Raised on failure.
IsEmpty
Whether the path is empty, which means its size equals to zero.
property IsEmpty: Boolean read GetIsEmpty
Type: Boolean
LastVertex
The last vertex of the path. If the very last command of the path is TBLPathCmd.Close
then the path will be iterated in reverse order to match the initial vertex of the last figure.
property LastVertex: TBLPoint read GetLastVertex
Type: TBLPoint
Exceptions
EBlend2DError
: Raised on failure.
Size
Path size (number of vertices used).
property Size: NativeInt read GetSize
Type: NativeInt
VertexData
Path's vertex data (read-only).
property VertexData: PBLPoint read GetVertexData
Type: PBLPoint
VertexDataEnd
The end of path's vertex data (read-only).
property VertexDataEnd: PBLPoint read GetVertexDataEnd
Type: PBLPoint
Constructor Descriptions
Assign
Copy constructor.
Creates a weak-copy of the ASrc
path by increasing it's internal reference counter. This path and ASrc
would point to the same data and would be otherwise identical. Any change to ASrc
would also affect this path.
constructor Assign(var ADest: TBLPath; const ASrc: TBLPath); inline
Parameters
ADest
: TBLPath
ASrc
: TBLPath
Exceptions
EBlend2DError
: Raised on failure.
Finalize
Destroys the path.
destructor Finalize(var ADest: TBLPath)
Parameters
ADest
: TBLPath
Exceptions
EBlend2DError
: Raised on failure.
Initialize
Creates a default constructed path.
constructor Initialize(out ADest: TBLPath)
Parameters
ADest
: TBLPath
Exceptions
EBlend2DError
: Raised on failure.
Operator Descriptions
Equal(TBLPath, TBLPath)
Returns True if two paths are equal (have the same contents).
class operator Equal(const ALeft, ARight: TBLPath): Boolean; inline; static
Parameters
ALeft
: TBLPath
ARight
: TBLPath
Returns
Boolean
See Also
Equal(TBLPath, Pointer)
Used to compare against nil
(empty path).
class operator Equal(const ALeft: TBLPath; const ARight: Pointer): Boolean; inline; static
Parameters
ALeft
: TBLPath
ARight
: Pointer
Returns
Boolean
NotEqual(TBLPath, TBLPath)
Returns True if two paths are not equal (do not have the same contents).
class operator NotEqual(const ALeft, ARight: TBLPath): Boolean; inline; static
Parameters
ALeft
: TBLPath
ARight
: TBLPath
Returns
Boolean
See Also
NotEqual(TBLPath, Pointer)
Used to compare against nil
(empty path).
class operator NotEqual(const ALeft: TBLPath; const ARight: Pointer): Boolean; inline; static
Parameters
ALeft
: TBLPath
ARight
: Pointer
Returns
Boolean
Method Descriptions
AddArc(TBLArc, TBLMatrix2D, TBLGeometryDirection)
Adds an unclosed arc to the path.
procedure AddArc(const AArc: TBLArc; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArc
: TBLArc
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddArc(TBLArc, TBLGeometryDirection)
Adds an unclosed arc to the path.
procedure AddArc(const AArc: TBLArc; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArc
: TBLArc
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBox(Double, Double, Double, Double, TBLGeometryDirection)
Adds a closed rectangle to the path specified by [AX0, AY0, AX1, AY1]
.
procedure AddBox(const AX0, AY0, AX1, AY1: Double; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AX0
: Double
AY0
: Double
AX1
: Double
AY1
: Double
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBox(TBLBox, TBLGeometryDirection)
Adds a closed rectangle to the path specified by ABox
.
procedure AddBox(const ABox: TBLBox; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ABox
: TBLBox
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBox(TBLBoxI, TBLGeometryDirection)
Adds a closed rectangle to the path specified by ABox
.
procedure AddBox(const ABox: TBLBoxI; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ABox
: TBLBoxI
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBoxArray(PBLBox, NativeInt, TBLMatrix2D, TBLGeometryDirection)
Adds an array of closed boxes.
procedure AddBoxArray(const AArray: PBLBox; const ACount: NativeInt; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: PBLBox
ACount
: NativeInt
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBoxArray(PBLBox, NativeInt, TBLGeometryDirection)
Adds an array of closed boxes.
procedure AddBoxArray(const AArray: PBLBox; const ACount: NativeInt; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: PBLBox
ACount
: NativeInt
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBoxArray(TArray<TBLBox>, TBLMatrix2D, TBLGeometryDirection)
Adds an array of closed boxes.
procedure AddBoxArray(const AArray: TArray<TBLBox>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TArray<TBLBox>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBoxArray(TArray<TBLBox>, TBLGeometryDirection)
Adds an array of closed boxes.
procedure AddBoxArray(const AArray: TArray<TBLBox>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TArray<TBLBox>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBoxArray(TBLArrayView<TBLBox>, TBLMatrix2D, TBLGeometryDirection)
Adds an array of closed boxes.
procedure AddBoxArray(const AArray: TBLArrayView<TBLBox>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TBLArrayView<TBLBox>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBoxArray(TBLArrayView<TBLBox>, TBLGeometryDirection)
Adds an array of closed boxes.
procedure AddBoxArray(const AArray: TBLArrayView<TBLBox>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TBLArrayView<TBLBox>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBoxArray(PBLBoxI, NativeInt, TBLMatrix2D, TBLGeometryDirection)
Adds an array of closed boxes.
procedure AddBoxArray(const AArray: PBLBoxI; const ACount: NativeInt; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: PBLBoxI
ACount
: NativeInt
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBoxArray(PBLBoxI, NativeInt, TBLGeometryDirection)
Adds an array of closed boxes.
procedure AddBoxArray(const AArray: PBLBoxI; const ACount: NativeInt; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: PBLBoxI
ACount
: NativeInt
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBoxArray(TArray<TBLBoxI>, TBLMatrix2D, TBLGeometryDirection)
Adds an array of closed boxes.
procedure AddBoxArray(const AArray: TArray<TBLBoxI>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TArray<TBLBoxI>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBoxArray(TArray<TBLBoxI>, TBLGeometryDirection)
Adds an array of closed boxes.
procedure AddBoxArray(const AArray: TArray<TBLBoxI>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TArray<TBLBoxI>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBoxArray(TBLArrayView<TBLBoxI>, TBLMatrix2D, TBLGeometryDirection)
Adds an array of closed boxes.
procedure AddBoxArray(const AArray: TBLArrayView<TBLBoxI>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TBLArrayView<TBLBoxI>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddBoxArray(TBLArrayView<TBLBoxI>, TBLGeometryDirection)
Adds an array of closed boxes.
procedure AddBoxArray(const AArray: TBLArrayView<TBLBoxI>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TBLArrayView<TBLBoxI>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddChord(TBLArc, TBLMatrix2D, TBLGeometryDirection)
Adds a closed chord to the path.
procedure AddChord(const AChord: TBLArc; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AChord
: TBLArc
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddChord(TBLArc, TBLGeometryDirection)
Adds a closed chord to the path.
procedure AddChord(const AChord: TBLArc; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AChord
: TBLArc
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddCircle(TBLCircle, TBLMatrix2D, TBLGeometryDirection)
Adds a closed circle to the path.
procedure AddCircle(const ACircle: TBLCircle; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ACircle
: TBLCircle
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddCircle(TBLCircle, TBLGeometryDirection)
Adds a closed circle to the path.
procedure AddCircle(const ACircle: TBLCircle; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ACircle
: TBLCircle
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddCubicToSegments(PBLPoint, NativeInt)
Adds multiple CubicTo segments to the path. Provides high-performance path building in case that the user knows the segments that will be added to the path in advance.
procedure AddCubicToSegments(const APoints: PBLPoint; const ASegmentCount: NativeInt); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoints
: PBLPoint
ASegmentCount
: NativeInt
Remarks
The APoints array contains triples of points (P0, P1, P2). ASegmentCount contains the number of segments (triples), not the number of points.
AddCubicToSegments(TArray<TBLPoint>)
Adds multiple CubicTo segments to the path. Provides high-performance path building in case that the user knows the segments that will be added to the path in advance.
procedure AddCubicToSegments(const APoints: TArray<TBLPoint>); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoints
: TArray<TBLPoint>
Remarks
The APoints array contains triples of points (P0, P1, P2). Thus the length of the array must be a multiple of 3.
AddEllipse(TBLEllipse, TBLMatrix2D, TBLGeometryDirection)
Adds a closed ellipse to the path.
procedure AddEllipse(const AEllipse: TBLEllipse; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AEllipse
: TBLEllipse
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddEllipse(TBLEllipse, TBLGeometryDirection)
Adds a closed ellipse to the path.
procedure AddEllipse(const AEllipse: TBLEllipse; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AEllipse
: TBLEllipse
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddGeometry(TBLGeometryType, Pointer, TBLMatrix2D, TBLGeometryDirection)
Adds a geometry to the path.
procedure AddGeometry(const AGeometryType: TBLGeometryType; const AGeometryData: Pointer; const AMatrix: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AGeometryType
: TBLGeometryType
AGeometryData
: Pointer
AMatrix
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddGeometry(TBLGeometryType, Pointer, TBLGeometryDirection)
Adds a geometry to the path.
procedure AddGeometry(const AGeometryType: TBLGeometryType; const AGeometryData: Pointer; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AGeometryType
: TBLGeometryType
AGeometryData
: Pointer
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddLine(TBLLine, TBLMatrix2D, TBLGeometryDirection)
Adds an unclosed line to the path.
procedure AddLine(const ALine: TBLLine; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ALine
: TBLLine
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddLine(TBLLine, TBLGeometryDirection)
Adds an unclosed line to the path.
procedure AddLine(const ALine: TBLLine; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ALine
: TBLLine
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddLineToSegments(PBLPoint, NativeInt)
Adds multiple LineTo segments to the path. Provides high-performance path building in case that the user knows the segments that will be added to the path in advance.
procedure AddLineToSegments(const APoints: PBLPoint; const ACount: NativeInt); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoints
: PBLPoint
ACount
: NativeInt
AddLineToSegments(TArray<TBLPoint>)
Adds multiple LineTo segments to the path. Provides high-performance path building in case that the user knows the segments that will be added to the path in advance.
procedure AddLineToSegments(const APoints: TArray<TBLPoint>); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoints
: TArray<TBLPoint>
AddPath(TBLPath, TBLRange, TBLMatrix2D)
Adds other APath
transformed by ATransform
and sliced by the given ARange
to this path.
procedure AddPath(const APath: TBLPath; const ARange: TBLRange; const ATransform: TBLMatrix2D); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APath
: TBLPath
ARange
: TBLRange
ATransform
: TBLMatrix2D
AddPath(TBLPath, TBLMatrix2D)
Adds other APath
transformed by ATransform
to this path.
procedure AddPath(const APath: TBLPath; const ATransform: TBLMatrix2D); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APath
: TBLPath
ATransform
: TBLMatrix2D
AddPath(TBLPath, TBLRange, TBLPoint)
Adds other APath
translated by AP
and sliced by the given ARange
to this path.
procedure AddPath(const APath: TBLPath; const ARange: TBLRange; const AP: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APath
: TBLPath
ARange
: TBLRange
AP
: TBLPoint
AddPath(TBLPath, TBLPoint)
Adds other APath
translated by AP
to this path.
procedure AddPath(const APath: TBLPath; const AP: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APath
: TBLPath
AP
: TBLPoint
AddPath(TBLPath, TBLRange)
Adds other APath
sliced by the given ARange
to this path.
procedure AddPath(const APath: TBLPath; const ARange: TBLRange); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APath
: TBLPath
ARange
: TBLRange
AddPath(TBLPath)
Adds other APath
to this path.
procedure AddPath(const APath: TBLPath); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APath
: TBLPath
AddPie(TBLArc, TBLMatrix2D, TBLGeometryDirection)
Adds a closed pie to the path.
procedure AddPie(const APie: TBLArc; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APie
: TBLArc
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPie(TBLArc, TBLGeometryDirection)
Adds a closed pie to the path.
procedure AddPie(const APie: TBLArc; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APie
: TBLArc
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolygon(PBLPoint, NativeInt, TBLGeometryDirection)
Adds a polygon.
procedure AddPolygon(const APoly: PBLPoint; const ACount: NativeInt; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: PBLPoint
ACount
: NativeInt
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolygon(PBLPoint, NativeInt, TBLMatrix2D, TBLGeometryDirection)
Adds a polygon.
procedure AddPolygon(const APoly: PBLPoint; const ACount: NativeInt; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: PBLPoint
ACount
: NativeInt
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolygon(TArray<TBLPoint>, TBLGeometryDirection)
Adds a polygon.
procedure AddPolygon(const APoly: TArray<TBLPoint>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TArray<TBLPoint>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolygon(TArray<TBLPoint>, TBLMatrix2D, TBLGeometryDirection)
Adds a polygon.
procedure AddPolygon(const APoly: TArray<TBLPoint>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TArray<TBLPoint>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolygon(TBLArrayView<TBLPoint>, TBLGeometryDirection)
Adds a polygon.
procedure AddPolygon(const APoly: TBLArrayView<TBLPoint>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TBLArrayView<TBLPoint>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolygon(TBLArrayView<TBLPoint>, TBLMatrix2D, TBLGeometryDirection)
Adds a polygon.
procedure AddPolygon(const APoly: TBLArrayView<TBLPoint>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TBLArrayView<TBLPoint>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolygon(PBLPointI, NativeInt, TBLGeometryDirection)
Adds a polygon.
procedure AddPolygon(const APoly: PBLPointI; const ACount: NativeInt; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: PBLPointI
ACount
: NativeInt
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolygon(PBLPointI, NativeInt, TBLMatrix2D, TBLGeometryDirection)
Adds a polygon.
procedure AddPolygon(const APoly: PBLPointI; const ACount: NativeInt; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: PBLPointI
ACount
: NativeInt
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolygon(TArray<TBLPointI>, TBLGeometryDirection)
Adds a polygon.
procedure AddPolygon(const APoly: TArray<TBLPointI>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TArray<TBLPointI>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolygon(TArray<TBLPointI>, TBLMatrix2D, TBLGeometryDirection)
Adds a polygon.
procedure AddPolygon(const APoly: TArray<TBLPointI>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TArray<TBLPointI>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolygon(TBLArrayView<TBLPointI>, TBLGeometryDirection)
Adds a polygon.
procedure AddPolygon(const APoly: TBLArrayView<TBLPointI>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TBLArrayView<TBLPointI>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolygon(TBLArrayView<TBLPointI>, TBLMatrix2D, TBLGeometryDirection)
Adds a polygon.
procedure AddPolygon(const APoly: TBLArrayView<TBLPointI>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TBLArrayView<TBLPointI>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolyline(PBLPoint, NativeInt, TBLGeometryDirection)
Adds a polyline.
procedure AddPolyline(const APoly: PBLPoint; const ACount: NativeInt; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: PBLPoint
ACount
: NativeInt
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolyline(PBLPoint, NativeInt, TBLMatrix2D, TBLGeometryDirection)
Adds a polyline.
procedure AddPolyline(const APoly: PBLPoint; const ACount: NativeInt; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: PBLPoint
ACount
: NativeInt
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolyline(TArray<TBLPoint>, TBLGeometryDirection)
Adds a polyline.
procedure AddPolyline(const APoly: TArray<TBLPoint>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TArray<TBLPoint>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolyline(TArray<TBLPoint>, TBLMatrix2D, TBLGeometryDirection)
Adds a polyline.
procedure AddPolyline(const APoly: TArray<TBLPoint>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TArray<TBLPoint>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolyline(TBLArrayView<TBLPoint>, TBLGeometryDirection)
Adds a polyline.
procedure AddPolyline(const APoly: TBLArrayView<TBLPoint>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TBLArrayView<TBLPoint>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolyline(TBLArrayView<TBLPoint>, TBLMatrix2D, TBLGeometryDirection)
Adds a polyline.
procedure AddPolyline(const APoly: TBLArrayView<TBLPoint>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TBLArrayView<TBLPoint>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolyline(PBLPointI, NativeInt, TBLGeometryDirection)
Adds a polyline.
procedure AddPolyline(const APoly: PBLPointI; const ACount: NativeInt; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: PBLPointI
ACount
: NativeInt
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolyline(PBLPointI, NativeInt, TBLMatrix2D, TBLGeometryDirection)
Adds a polyline.
procedure AddPolyline(const APoly: PBLPointI; const ACount: NativeInt; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: PBLPointI
ACount
: NativeInt
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolyline(TArray<TBLPointI>, TBLGeometryDirection)
Adds a polyline.
procedure AddPolyline(const APoly: TArray<TBLPointI>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TArray<TBLPointI>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolyline(TArray<TBLPointI>, TBLMatrix2D, TBLGeometryDirection)
Adds a polyline.
procedure AddPolyline(const APoly: TArray<TBLPointI>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TArray<TBLPointI>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolyline(TBLArrayView<TBLPointI>, TBLGeometryDirection)
Adds a polyline.
procedure AddPolyline(const APoly: TBLArrayView<TBLPointI>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TBLArrayView<TBLPointI>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddPolyline(TBLArrayView<TBLPointI>, TBLMatrix2D, TBLGeometryDirection)
Adds a polyline.
procedure AddPolyline(const APoly: TBLArrayView<TBLPointI>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TBLArrayView<TBLPointI>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddQuadToSegments(PBLPoint, NativeInt)
Adds multiple QuadTo segments to the path. Provides high-performance path building in case that the user knows the segments that will be added to the path in advance.
procedure AddQuadToSegments(const APoints: PBLPoint; const ASegmentCount: NativeInt); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoints
: PBLPoint
ASegmentCount
: NativeInt
Remarks
The APoints array contains pairs of points (P0, P1). ASegmentCount contains the number of segments (pairs), not the number of points.
AddQuadToSegments(TArray<TBLPoint>)
Adds multiple QuadTo segments to the path. Provides high-performance path building in case that the user knows the segments that will be added to the path in advance.
procedure AddQuadToSegments(const APoints: TArray<TBLPoint>); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoints
: TArray<TBLPoint>
Remarks
The APoints array contains pairs of points (P0, P1). Thus the length of the array must be even.
AddRect(Double, Double, Double, Double, TBLGeometryDirection)
Adds a closed rectangle to the path specified by [AX, AY, AW, AH]
.
procedure AddRect(const AX, AY, AW, AH: Double; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AX
: Double
AY
: Double
AW
: Double
AH
: Double
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRect(TBLRect, TBLGeometryDirection)
Adds a closed rectangle to the path specified by ARect
.
procedure AddRect(const ARect: TBLRect; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ARect
: TBLRect
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRect(TBLRectI, TBLGeometryDirection)
Adds a closed rectangle to the path specified by ARect
.
procedure AddRect(const ARect: TBLRectI; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ARect
: TBLRectI
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRectArray(PBLRect, NativeInt, TBLMatrix2D, TBLGeometryDirection)
Adds an array of closed rectangles.
procedure AddRectArray(const AArray: PBLRect; const ACount: NativeInt; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: PBLRect
ACount
: NativeInt
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRectArray(PBLRect, NativeInt, TBLGeometryDirection)
Adds an array of closed rectangles.
procedure AddRectArray(const AArray: PBLRect; const ACount: NativeInt; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: PBLRect
ACount
: NativeInt
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRectArray(TArray<TBLRect>, TBLMatrix2D, TBLGeometryDirection)
Adds an array of closed rectangles.
procedure AddRectArray(const AArray: TArray<TBLRect>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TArray<TBLRect>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRectArray(TArray<TBLRect>, TBLGeometryDirection)
Adds an array of closed rectangles.
procedure AddRectArray(const AArray: TArray<TBLRect>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TArray<TBLRect>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRectArray(TBLArrayView<TBLRect>, TBLMatrix2D, TBLGeometryDirection)
Adds an array of closed rectangles.
procedure AddRectArray(const AArray: TBLArrayView<TBLRect>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TBLArrayView<TBLRect>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRectArray(TBLArrayView<TBLRect>, TBLGeometryDirection)
Adds an array of closed rectangles.
procedure AddRectArray(const AArray: TBLArrayView<TBLRect>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TBLArrayView<TBLRect>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRectArray(PBLRectI, NativeInt, TBLMatrix2D, TBLGeometryDirection)
Adds an array of closed rectangles.
procedure AddRectArray(const AArray: PBLRectI; const ACount: NativeInt; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: PBLRectI
ACount
: NativeInt
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRectArray(PBLRectI, NativeInt, TBLGeometryDirection)
Adds an array of closed rectangles.
procedure AddRectArray(const AArray: PBLRectI; const ACount: NativeInt; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: PBLRectI
ACount
: NativeInt
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRectArray(TArray<TBLRectI>, TBLMatrix2D, TBLGeometryDirection)
Adds an array of closed rectangles.
procedure AddRectArray(const AArray: TArray<TBLRectI>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TArray<TBLRectI>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRectArray(TArray<TBLRectI>, TBLGeometryDirection)
Adds an array of closed rectangles.
procedure AddRectArray(const AArray: TArray<TBLRectI>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TArray<TBLRectI>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRectArray(TBLArrayView<TBLRectI>, TBLMatrix2D, TBLGeometryDirection)
Adds an array of closed rectangles.
procedure AddRectArray(const AArray: TBLArrayView<TBLRectI>; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TBLArrayView<TBLRectI>
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRectArray(TBLArrayView<TBLRectI>, TBLGeometryDirection)
Adds an array of closed rectangles.
procedure AddRectArray(const AArray: TBLArrayView<TBLRectI>; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AArray
: TBLArrayView<TBLRectI>
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddReversedPath(TBLPath, TBLRange, TBLPathReverseMode)
Adds other APath
, but reversed.
procedure AddReversedPath(const APath: TBLPath; const ARange: TBLRange; const AReverseMode: TBLPathReverseMode); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APath
: TBLPath
ARange
: TBLRange
AReverseMode
: TBLPathReverseMode
AddReversedPath(TBLPath, TBLPathReverseMode)
Adds other APath
, but reversed.
procedure AddReversedPath(const APath: TBLPath; const AReverseMode: TBLPathReverseMode); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APath
: TBLPath
AReverseMode
: TBLPathReverseMode
AddRoundRect(TBLRoundRect, TBLMatrix2D, TBLGeometryDirection)
Adds a closed rounded rectangle to the path.
procedure AddRoundRect(const ARR: TBLRoundRect; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ARR
: TBLRoundRect
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddRoundRect(TBLRoundRect, TBLGeometryDirection)
Adds a closed rounded rectangle to the path.
procedure AddRoundRect(const ARR: TBLRoundRect; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ARR
: TBLRoundRect
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddStrokedPath(TBLPath, TBLRange, TBLStrokeOptions, TBLApproximationOptions)
Adds a stroke of APath
to this path.
procedure AddStrokedPath(const APath: TBLPath; const ARange: TBLRange; const AStrokeOptions: TBLStrokeOptions; const AApproximationOptions: TBLApproximationOptions); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APath
: TBLPath
ARange
: TBLRange
AStrokeOptions
: TBLStrokeOptions
AApproximationOptions
: TBLApproximationOptions
AddStrokedPath(TBLPath, TBLStrokeOptions, TBLApproximationOptions)
Adds a stroke of APath
to this path.
procedure AddStrokedPath(const APath: TBLPath; const AStrokeOptions: TBLStrokeOptions; const AApproximationOptions: TBLApproximationOptions); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APath
: TBLPath
AStrokeOptions
: TBLStrokeOptions
AApproximationOptions
: TBLApproximationOptions
AddTriangle(TBLTriangle, TBLMatrix2D, TBLGeometryDirection)
Adds a closed triangle.
procedure AddTriangle(const ATriangle: TBLTriangle; const ATransform: TBLMatrix2D; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ATriangle
: TBLTriangle
ATransform
: TBLMatrix2D
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
AddTriangle(TBLTriangle, TBLGeometryDirection)
Adds a closed triangle.
procedure AddTriangle(const ATriangle: TBLTriangle; const ADir: TBLGeometryDirection = TBLGeometryDirection.CW); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ATriangle
: TBLTriangle
ADir
: TBLGeometryDirection = TBLGeometryDirection.CW
ArcQuadrantTo(Double, Double, Double, Double)
Adds an arc quadrant (90deg) to the path. The first point [AX1, AY1]
specifies the quadrant corner and the last point [AX2, AY2]
specifies the end point.
procedure ArcQuadrantTo(const AX1, AY1, AX2, AY2: Double); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AX1
: Double
AY1
: Double
AX2
: Double
AY2
: Double
ArcQuadrantTo(TBLPoint, TBLPoint)
Adds an arc quadrant (90deg) to the path. The first point AP1
specifies the quadrant corner and the last point AP2
specifies the end point.
procedure ArcQuadrantTo(const AP1, AP2: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AP1
: TBLPoint
AP2
: TBLPoint
ArcTo(Double, Double, Double, Double, Double, Double, Boolean)
Adds an arc to the path.
The center of the arc is specified by [ACX, ACY]
and radius by [ARX, ARY]
. Both AStart
and ASweep
angles are in radians. If the last vertex doesn't match the start of the arc then a LineTo
would be emitted before adding the arc. Pass True
in AForceMoveTo
to always emit MoveTo
at the beginning of the arc, which starts a new figure.
procedure ArcTo(const ACX, ACY, ARX, ARY, AStart, ASweep: Double; const AForceMoveTo: Boolean = False); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ACX
: Double
ACY
: Double
ARX
: Double
ARY
: Double
AStart
: Double
ASweep
: Double
AForceMoveTo
: Boolean = False
ArcTo(TBLPoint, TBLPoint, Double, Double, Boolean)
Adds an arc to the path.
The center of the arc is specified by AC
and radius by AR
. Both AStart
and ASweep
angles are in radians. If the last vertex doesn't match the start of the arc then a LineTo
would be emitted before adding the arc. Pass True
in AForceMoveTo
to always emit MoveTo
at the beginning of the arc, which starts a new figure.
procedure ArcTo(const AC, AR: TBLPoint; const AStart, ASweep: Double; const AForceMoveTo: Boolean = False); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AC
: TBLPoint
AR
: TBLPoint
AStart
: Double
ASweep
: Double
AForceMoveTo
: Boolean = False
AssignDeep(TBLPath)
procedure AssignDeep(const AOther: TBLPath); inline
Parameters
AOther
: TBLPath
Clear
Clears the content of the path.
procedure Clear; inline
Exceptions
EBlend2DError
: Raised on failure.
Close
Closes the current figure.
Appends TBLPathCmd.Close
to the path.
Matches SVG 'Z' path command.
procedure Close; inline
Exceptions
EBlend2DError
: Raised on failure.
ConicTo(Double, Double, Double, Double, Double)
procedure ConicTo(const AX1, AY1, AX2, AY2, AWeight: Double); overload; inline
Parameters
AX1
: Double
AY1
: Double
AX2
: Double
AY2
: Double
AWeight
: Double
ConicTo(TBLPoint, TBLPoint, Double)
procedure ConicTo(const AP1, AP2: TBLPoint; const AWeight: Double); overload; inline
Parameters
AP1
: TBLPoint
AP2
: TBLPoint
AWeight
: Double
CubicTo(Double, Double, Double, Double, Double, Double)
Adds a cubic curve to [AX1, AY1]
, [AX2, AY2]
, and [AX3, AY3]
.
Appends the following commands to the path:
- TBLPathCmd.Cubic[AX1, AY1]
- TBLPathCmd.Cubic[AX2, AY2]
- TBLPathCmd.On[AX3, AY3]
Matches SVG 'C' path command.
procedure CubicTo(const AX1, AY1, AX2, AY2, AX3, AY3: Double); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AX1
: Double
AY1
: Double
AX2
: Double
AY2
: Double
AX3
: Double
AY3
: Double
CubicTo(TBLPoint, TBLPoint, TBLPoint)
Adds a cubic curve to AP1
, AP2
, and AP3
.
Appends the following commands to the path:
- TBLPathCmd.Cubic[AP1]
- TBLPathCmd.Cubic[AP2]
- TBLPathCmd.On[AP3]
Matches SVG 'C' path command.
procedure CubicTo(const AP1, AP2, AP3: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AP1
: TBLPoint
AP2
: TBLPoint
AP3
: TBLPoint
EllipticArcTo(Double, Double, Double, Boolean, Boolean, Double, Double)
Adds an elliptic arc to the path that follows the SVG specification.
Matches SVG 'A' path command.
procedure EllipticArcTo(const ARX, ARY, AXAxisRotation: Double; const ALargeArcFlag, ASweepFlag: Boolean; const AX1, AY1: Double); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ARX
: Double
ARY
: Double
AXAxisRotation
: Double
ALargeArcFlag
: Boolean
ASweepFlag
: Boolean
AX1
: Double
AY1
: Double
EllipticArcTo(TBLPoint, Double, Boolean, Boolean, TBLPoint)
Adds an elliptic arc to the path that follows the SVG specification.
Matches SVG 'A' path command.
procedure EllipticArcTo(const ARP: TBLPoint; const AXAxisRotation: Double; const ALargeArcFlag, ASweepFlag: Boolean; const AP1: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ARP
: TBLPoint
AXAxisRotation
: Double
ALargeArcFlag
: Boolean
ASweepFlag
: Boolean
AP1
: TBLPoint
Equals(TBLPath)
Tests whether this path and the AOther
path are equal.
The equality check is deep. The data of both paths is examined and binary compared (thus a slight difference like -0 and +0 would make the equality check to fail).
function Equals(const AOther: TBLPath): Boolean; inline
Parameters
AOther
: TBLPath
Returns
Boolean
FitTo(TBLRange, TBLRect)
Fits a part of the path specified by the given ARange
into the given ARect
.
procedure FitTo(const ARange: TBLRange; const ARect: TBLRect); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ARange
: TBLRange
ARect
: TBLRect
FitTo(TBLRect)
Fits the whole path into the given ARect
.
procedure FitTo(const ARect: TBLRect); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ARect
: TBLRect
GetClosestVertex(TBLPoint, Double, Double)
function GetClosestVertex(const AP: TBLPoint; const AMaxDistance: Double; out ADistanceOut: Double): NativeInt; overload; inline
Parameters
AP
: TBLPoint
AMaxDistance
: Double
ADistanceOut
: Double
Returns
NativeInt
GetClosestVertex(TBLPoint, Double)
function GetClosestVertex(const AP: TBLPoint; const AMaxDistance: Double): NativeInt; overload; inline
Parameters
AP
: TBLPoint
AMaxDistance
: Double
Returns
NativeInt
HitTest(TBLPoint, TBLFillRule)
Hit tests the given point AP
by respecting the given AFillRule
.
function HitTest(const AP: TBLPoint; const AFillRule: TBLFillRule): TBLHitTest; inline
Parameters
AP
: TBLPoint
AFillRule
: TBLFillRule
Returns
LineTo(Double, Double)
Adds line to [AX1, AY1]
.
Appends TBLPathCmd.OnPath[AX1, AY1]
command to the path.
procedure LineTo(const AX1, AY1: Double); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AX1
: Double
AY1
: Double
LineTo(TBLPoint)
Adds line to AP1
.
Appends TBLPathCmd.OnPath[AP1]
command to the path.
procedure LineTo(const AP1: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AP1
: TBLPoint
ModifyOp(TBLModifyOp, NativeInt, PByte, PBLPoint)
procedure ModifyOp(const AOp: TBLModifyOp; const ASize: NativeInt; out ACmdDataOut: PByte; out AVertexDataOut: PBLPoint); inline
Parameters
AOp
: TBLModifyOp
ASize
: NativeInt
ACmdDataOut
: PByte
AVertexDataOut
: PBLPoint
MoveTo(Double, Double)
Moves to [AX0, AY0]
.
Appends TBLPathCmd.Move[AX0, AY0]
command to the path.
procedure MoveTo(const AX0, AY0: Double); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AX0
: Double
AY0
: Double
MoveTo(TBLPoint)
Moves to AP0
.
Appends TBLPathCmd.Move[AP0]
command to the path.
procedure MoveTo(const AP0: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AP0
: TBLPoint
PolyTo(TArray<TBLPoint>)
Adds a polyline (LineTo) of the given APoly
array.
Appends multiple TBLPathCmd.OnPath[AX[I], AY[I]]
commands to the path depending on the length of the APoly
array.
procedure PolyTo(const APoly: TArray<TBLPoint>); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: TArray<TBLPoint>
PolyTo(PBLPoint, NativeInt)
Adds a polyline (LineTo) of the given APoly
array of size ACount
.
Appends multiple TBLPathCmd.OnPath[AX[I], AY[I]]
commands to the path depending on ACount
parameter.
procedure PolyTo(const APoly: PBLPoint; const ACount: NativeInt); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
APoly
: PBLPoint
ACount
: NativeInt
QuadTo(Double, Double, Double, Double)
Adds a quadratic curve to [AX1, AY1]
and [AX2, AY2]
.
Appends the following commands to the path:
- TBLPathCmd.Quad[AX1, AY1]
- TBLPathCmd.OnPath[AX2, AY2]
Matches SVG 'Q' path command.
procedure QuadTo(const AX1, AY1, AX2, AY2: Double); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AX1
: Double
AY1
: Double
AX2
: Double
AY2
: Double
QuadTo(TBLPoint, TBLPoint)
Adds a quadratic curve to AP1
and AP2
.
Appends the following commands to the path:
- TBLPathCmd.Quad[AP1]
- TBLPathCmd.OnPath[AP2]
Matches SVG 'Q' path command.
procedure QuadTo(const AP1, AP2: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AP1
: TBLPoint
AP2
: TBLPoint
RemoveRange(TBLRange)
procedure RemoveRange(const ARange: TBLRange); inline
Parameters
ARange
: TBLRange
Reserve(NativeInt)
Reserves the capacity of the path for at least AMinCapacity
vertices and commands.
procedure Reserve(const AMinCapacity: NativeInt); inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AMinCapacity
: NativeInt
Reset
procedure Reset; inline
SetVertexAt(NativeInt, TBLPathCmd, Double, Double)
Sets vertex at AIndex
to ACmd
and [AX, AY]
.
Pass TBLPathCmd.Preserve
in ACmd
to preserve the current command.
procedure SetVertexAt(const AIndex: NativeInt; const ACmd: TBLPathCmd; const AX, AY: Double); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AIndex
: NativeInt
ACmd
: TBLPathCmd
AX
: Double
AY
: Double
SetVertexAt(NativeInt, TBLPathCmd, TBLPoint)
Sets vertex at AIndex
to ACmd
and APt
.
Pass TBLPathCmd.Preserve
in ACmd
to preserve the current command.
procedure SetVertexAt(const AIndex: NativeInt; const ACmd: TBLPathCmd; const APt: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AIndex
: NativeInt
ACmd
: TBLPathCmd
APt
: TBLPoint
Shrink
Shrinks the capacity of the path to fit the current usage.
procedure Shrink; inline
Exceptions
EBlend2DError
: Raised on failure.
SmoothCubicTo(Double, Double, Double, Double)
Adds a smooth cubic curve to [AX2, AY2]
and [AX3, AY3]
, calculating [AX1, AY1]
from last points.
Appends the following commands to the path:
- TBLPathCmd.Cubic[Calculated]
- TBLPathCmd.Cubic[AX2, AY2]
- TBLPathCmd.OnPath[AX3, AY3]
Matches SVG 'S' path command.
procedure SmoothCubicTo(const AX2, AY2, AX3, AY3: Double); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AX2
: Double
AY2
: Double
AX3
: Double
AY3
: Double
SmoothCubicTo(TBLPoint, TBLPoint)
Adds a smooth cubic curve to AP2
and AP3
, calculating AP1
from last points.
Appends the following commands to the path:
- TBLPathCmd.Cubic[Calculated]
- TBLPathCmd.Cubic[AP2]
- TBLPathCmd.OnPath[AP3]
Matches SVG 'S' path command.
procedure SmoothCubicTo(const AP2, AP3: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AP2
: TBLPoint
AP3
: TBLPoint
SmoothQuadTo(Double, Double)
Adds a smooth quadratic curve to [AX2, AY2]
, calculating [AX1, AY1]
from last points.
Appends the following commands to the path:
- TBLPathCmd.Quad[Calculated]
- TBLPathCmd.OnPath[AX2, AY2]
Matches SVG 'T' path command.
procedure SmoothQuadTo(const AX2, AY2: Double); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AX2
: Double
AY2
: Double
SmoothQuadTo(TBLPoint)
Adds a smooth quadratic curve to AP2
, calculating AP1
from last points.
Appends the following commands to the path:
- TBLPathCmd.Quad[Calculated]
- TBLPathCmd.OnPath[AP2]
Matches SVG 'T' path command.
procedure SmoothQuadTo(const AP2: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AP2
: TBLPoint
Swap(TBLPath)
procedure Swap(var AOther: TBLPath); inline
Parameters
AOther
: TBLPath
Transform(TBLRange, TBLMatrix2D)
Transforms a part of the path specified by the given ARange
by matrix AM
.
procedure Transform(const ARange: TBLRange; const AM: TBLMatrix2D); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ARange
: TBLRange
AM
: TBLMatrix2D
Transform(TBLMatrix2D)
Transforms the whole path by matrix AM
.
procedure Transform(const AM: TBLMatrix2D); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AM
: TBLMatrix2D
Translate(TBLRange, TBLPoint)
Translates a part of the path specified by the given ARange
by AP
.
procedure Translate(const ARange: TBLRange; const AP: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
ARange
: TBLRange
AP
: TBLPoint
Translate(TBLPoint)
Translates the whole path by AP
.
procedure Translate(const AP: TBLPoint); overload; inline
Exceptions
EBlend2DError
: Raised on failure.
Parameters
AP
: TBLPoint
View
Returns a read-only path data as TBLPathView
.
function View: TBLPathView; inline