All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
fpoint.cpp File Reference
#include "const.h"
#include "fpoint.h"
#include <stdio.h>
#include <math.h>

Go to the source code of this file.

Functions

FLOAT32 DistanceBetween (FPOINT A, FPOINT B)
 
FLOAT32 NormalizedAngleFrom (FPOINT *Point1, FPOINT *Point2, FLOAT32 FullScale)
 

Function Documentation

FLOAT32 DistanceBetween ( FPOINT  A,
FPOINT  B 
)

Definition at line 30 of file fpoint.cpp.

30  {
31  double xd = XDelta(A, B);
32  double yd = YDelta(A, B);
33  return sqrt(static_cast<double>(xd * xd + yd * yd));
34 }
#define YDelta(A, B)
Definition: fpoint.h:40
#define XDelta(A, B)
Definition: fpoint.h:39
FLOAT32 NormalizedAngleFrom ( FPOINT Point1,
FPOINT Point2,
FLOAT32  FullScale 
)

Return the angle from Point1 to Point2 normalized to lie in the range 0 to FullScale (where FullScale corresponds to 2*pi or 360 degrees).

Parameters
Point1points to compute angle between
Point2points to compute angle between
FullScalevalue to associate with 2*pi
Returns
none
Note
Globals: none
Exceptions: none
History: Wed Mar 28 14:27:25 1990, DSJ, Created.

Definition at line 48 of file fpoint.cpp.

50  {
51  FLOAT32 Angle;
52  FLOAT32 NumRadsInCircle = 2.0 * PI;
53 
54  Angle = AngleFrom (*Point1, *Point2);
55  if (Angle < 0.0)
56  Angle += NumRadsInCircle;
57  Angle *= FullScale / NumRadsInCircle;
58  if (Angle < 0.0 || Angle >= FullScale)
59  Angle = 0.0;
60  return (Angle);
61 
62 }
float FLOAT32
Definition: host.h:111
#define AngleFrom(A, B)
Definition: fpoint.h:42
#define PI
Definition: const.h:19