Difference between revisions of "SortATPAByFirst"

From SCAR Divi Manual
Jump to: navigation, search
(Created page with "==Definition== <source lang="scar" lines="false"> procedure SortATPAByFirst(var ATPA: T2DPointArray); </source> ==Availability== SCAR Divi 3.28 > Current ==Description== Sorts ...")
 
(No difference)

Latest revision as of 11:02, 24 October 2011

Definition

procedure SortATPAByFirst(var ATPA: T2DPointArray);

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 origin (0,0) using the fast ShellSort algorithm. Empty subarrays are placed at the start of the array. An extended function with additional functionality is available as SortATPAByFirstEx.

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)];
  SortATPAByFirst(ATPA);
  for i := 0 to High(ATPA) do
    WriteLn(TPAToStr(ATPA[i]));
end.

Output:

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

See Also