FixD

From SCAR Divi Manual
Jump to: navigation, search

Definition

function FixD(Degrees: Extended): Extended;

Source

function FixD(Degrees: Extended): Extended;
var
  t: Integer;
begin
  if Degrees < 0 then t := -1 else t := 1;
  Result := Abs(Degrees);
  Result := (Floor(Result) mod 360 + DecRet(Result)) * t;
  if Result < 0 then Result := Result + 360;
end;

Availability

SCAR Divi 3.00 > Current

Description

Fixes an angle specified by Degrees in degrees by adding/subtracting 360 until the value is part of the range [0,360[.

Example

begin
  WriteLn(FixD(180));
  WriteLn(FixD(-180));
  WriteLn(FixD(360));
  WriteLn(FixD(540));
end.

Output:

180
180
0
180

See Also