SortATPAByMean

From SCAR Divi Manual
Revision as of 18:05, 22 November 2012 by Freddy (talk | contribs) (Created page with "==Definition== <source lang="scar" lines="false"> procedure SortATPAByMean(var ATPA: T2DPointArray); </source> ==Availability== SCAR Divi 3.38 > Current ===Aliases=== *SortA...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Definition

procedure SortATPAByMean(var ATPA: T2DPointArray);

Availability

SCAR Divi 3.38 > Current

Aliases

  • SortATPAByMiddle (SCAR Divi 3.28 > 3.37)

Description

Sorts the given T2DPointArray ATPA by the distance of the arithmetic mean of the points of every non-empty subarray calculated with TPAMiddle 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 SortATPAByMeanEx.

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)];
  SortATPAByMean(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