GroupTPA

From SCAR Divi Manual
Revision as of 21:07, 19 October 2011 by Freddy (talk | contribs) (Created page with "==Definition== <source lang="scar" lines="false"> function GroupTPA(const TPA: TPointArray; const Dist: Integer): T2DPointArray; </source> ==Availability== SCAR Divi 3.28 > Curr...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Definition

function GroupTPA(const TPA: TPointArray; const Dist: 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

  • TPAGroup (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 Dist from that first point to the subarray. 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 := TPAGroup(TPA, 2);
  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);(5,7)
(1,1);(0,0)
(5,7);(5,5)
(-2,0);(0,0)

See Also