SortTPASpiralEx

From SCAR Divi Manual
Jump to: navigation, search
The default spiral format is defined as moving in the sequential directions "up, right, down, left" on a bitmap image. This translates to "-y, x, y, -x" in coordinates.

Definition

procedure SortTPASpiralEx(var TPA: TPointArray; const Point: TPoint);

Availability

SCAR Divi 3.38 > Current

Description

Sorts a given TPointArray TPA in a spiral pattern, spiraling out from the origin given by Point, using the fast ShellSort algorithm.

Example

var
  TPA: TPointArray;
  Pt: TPoint;
  
begin   
  TPA := TPAFromBox(Box(0, 0, 2, 2)); 
  Pt := TPACenter(TPA);
  SortTPASpiralEx(TPA, Pt);
  WriteLn(TPAToStr(TPA));              
end.

Output:

(1,1);(1,0);(2,0);(2,1);(2,2);(1,2);(0,2);(0,1);(0,0)

See Also