GroupTPAEx
From SCAR Divi Manual
Definition
function GroupTPAEx(const TPA: TPointArray; const XMax, YMax: Integer): T2DPointArray;
Availability
SCAR Divi 3.28 > Current
- Contained a bug 3.26-3.27 that caused the initial element in every subarray of the result to be duplicated inside of that subarray.
Aliases
- TPAGroupEx (SCAR Divi 3.26 > Current)
Description
This function splits a given TPointArray TPA into separate TPointArrays, one for every element in TPA which is also the first element of every subarray. Next it adds every point that is within the given distance from that first point to the subarray. The distance is given separately for the x and y components of the points in XDist and YDist. The function returns a T2DPointArray containing all the resulting TPointArrays.
Example
var TPA: TPointArray; ATPA: T2DPointArray; i: Integer; begin ClearDebug; TPA := [Point(2, 5), Point(6, 9), Point(0, 0), Point(5, 5), Point(1, 1), Point(5, 7), Point(-2, 0)]; ATPA := GroupTPAEx(TPA, 2, 1); for i := 0 to High(ATPA) do WriteLn(TPAToStr(ATPA[i])); end.
Output:
(2,5) (6,9) (0,0);(1,1);(-2,0) (5,5) (1,1);(0,0) (5,7) (-2,0);(0,0)