SortATPAByFirstEx

From SCAR Divi Manual
Jump to: navigation, search

Definition

procedure SortATPAByFirstEx(var ATPA: T2DPointArray; const Point: TPoint);

Availability

SCAR Divi 3.28 > Current

Description

Sorts the given T2DPointArray ATPA by the distance of the first point in every non-empty subarray to the TPoint given in Point using the fast ShellSort algorithm. Empty subarrays are placed at the start of the array.

Example

var
  ATPA: T2DPointArray;
  i: Integer;

begin
  SetLength(ATPA, 3);
  ATPA[0] := [Point(1, 6), Point(5, 4), Point(1, 5)];
  ATPA[1] := [Point(1, 1), Point(2, 2)];
  ATPA[2] := [Point(5, 10)];
  SortATPAByFirstEx(ATPA, Point(5, 5));
  for i := 0 to High(ATPA) do
    WriteLn(TPAToStr(ATPA[i]));
end.

Output:

(1,6);(5,4);(1,5)
(5,10)
(1,1);(2,2)

See Also