SortTPASpiralEx

From SCAR Divi Manual
Revision as of 17:49, 25 November 2012 by Freddy (talk | contribs) (Created page with "[[File:SpiralFormat.png|thumb|right|The default spiral format is defined as moving in the sequential directions "up, right, down, left" on a bitmap image. This translates to "...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
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. An extended function with additional functionality is available as SortTPASpiralEx.

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