Difference between revisions of "SortATPAByMean"
From SCAR Divi Manual
(Created page with "==Definition== <source lang="scar" lines="false"> procedure SortATPAByMean(var ATPA: T2DPointArray); </source> ==Availability== SCAR Divi 3.38 > Current ===Aliases=== *SortA...") |
|||
Line 11: | Line 11: | ||
==Description== | ==Description== | ||
− | Sorts the given [[T2DPointArray]] '''ATPA''' by the distance of the arithmetic mean of the points of every non-empty subarray calculated with [[ | + | Sorts the given [[T2DPointArray]] '''ATPA''' by the distance of the arithmetic mean of the points of every non-empty subarray calculated with [[TPAMean]] to the origin (0,0) using the fast [http://en.wikipedia.org/wiki/Shell_sort ShellSort] algorithm. Empty subarrays are placed at the start of the array. An extended function with additional functionality is available as [[SortATPAByMeanEx]]. |
==Example== | ==Example== |
Latest revision as of 18:07, 22 November 2012
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 TPAMean 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)