Declaration ​
pascal
procedure PolyPolylineFS(Bitmap: TCustomBitmap32; const Points: TArrayOfArrayOfFloatPoint; Color: TColor32; Closed: Boolean = False; StrokeWidth: TFloat = 1.0; JoinStyle: TJoinStyle = jsMiter; EndStyle: TEndStyle = esButt; MiterLimit: TFloat = 4.0; Transformation: TTransformation = nil); overload;
procedure PolyPolylineFS(Bitmap: TCustomBitmap32; const Points: TArrayOfArrayOfFloatPoint; Filler: TCustomPolygonFiller; Closed: Boolean = False; StrokeWidth: TFloat = 1.0; JoinStyle: TJoinStyle = jsMiter; EndStyle: TEndStyle = esButt; MiterLimit: TFloat = 4.0; Transformation: TTransformation = nil); overload;
procedure PolyPolylineXS(Bitmap: TCustomBitmap32; const Points: TArrayOfArrayOfFixedPoint; Color: TColor32; Closed: Boolean = False; StrokeWidth: TFixed = $10000; JoinStyle: TJoinStyle = jsMiter; EndStyle: TEndStyle = esButt; MiterLimit: TFixed = $40000; Transformation: TTransformation = nil); overload;
procedure PolyPolylineXS(Bitmap: TCustomBitmap32; const Points: TArrayOfArrayOfFixedPoint; Filler: TCustomPolygonFiller; Closed: Boolean = False; StrokeWidth: TFixed = $10000; JoinStyle: TJoinStyle = jsMiter; EndStyle: TEndStyle = esButt; MiterLimit: TFixed = $40000; Transformation: TTransformation = nil); overload;Parameters ​
| Parameter | Type | Description |
|---|---|---|
Bitmap | TCustomBitmap32 | Destination bitmap. |
Points | - | Array of polyline contours. |
Color | TColor32 | Solid stroke color. |
Filler | TCustomPolygonFiller | Custom span filler. |
Closed | Boolean | Specifies whether each polyline contour forms a closed loop. |
StrokeWidth | - | Stroke line width. |
JoinStyle | TJoinStyle | Corner join style (jsMiter, jsBevel, jsRound). |
EndStyle | TEndStyle | Line end cap style (esButt, esSquare, esRound). |
MiterLimit | - | Miter limit ratio before beveling sharp miter joins. |
Transformation | TTransformation | Optional coordinate transformation. |
Description ​
The PolyPolyline routines render multiple stroked polyline contours defined by Points onto a destination Bitmap.
Function variants support floating-point (FS) and fixed-point (XS) coordinate inputs as well as solid color or custom span filler rendering. Stroke outlines are generated automatically for all contours according to StrokeWidth, JoinStyle, EndStyle, and MiterLimit.
Variants ​
| Variant | Coordinate Type | Description |
|---|---|---|
PolyPolylineFS | Floating-point | Renders multiple floating-point polyline contours with antialiased stroke outlines. |
PolyPolylineXS | Fixed-point | Renders multiple fixed-point polyline contours with antialiased stroke outlines. |
Example ​
pascal
var
Lines: TArrayOfArrayOfFloatPoint;
begin
SetLength(Lines, 2);
Lines[0] := BuildLine(FloatPoint(10, 10), FloatPoint(100, 10));
Lines[1] := BuildLine(FloatPoint(10, 50), FloatPoint(100, 50));
// Render multiple stroke lines
PolyPolylineFS(Bitmap, Lines, clGreen32, False, 2.5);
end;