Home | GR32_Polygons | TPolygon32 |
TPolygon32.Outline
function Outline: TPolygon32;
Description
This functions takes each contour (polyline) and constructs a new TPolygon32 object by outlining each contour.
The operation is similar to using morphological edge detection filter for bitmaps, but it operates over polygon vertices.
When outlining a closed polygon, this function actually returns two contours for each initial closed contour. In case of polylines (Closed property is False), it returns a single contour (see image below).
Note, this technique produces good results only for antialiased polygons.
This function is essential for thick line drawing, all you have to do, is to take an original polygon, build its outline and grow it to get the desired thickness:
var P, Outline: TPolygon32;
begin
Outline := P.Outline; // create an outline
Outline.Grow(Fixed(1), 1); // make it 2-pixel wide outline (it grows in both directions)
Outline.DrawFill(DstBitmap, clBlack32);
end;
See Also
Copyright ©2000-2007 Alex Denisov and Contributors - Graphics32 v1.8.3 - Build on 4-March-2007