| 20 | 
  | 
#define FMASK           0x1fff | 
| 21 | 
  | 
 | 
| 22 | 
  | 
int32 | 
| 23 | 
< | 
encodedir(dv)           /* encode a normalized direction vector */ | 
| 24 | 
< | 
FVECT   dv; | 
| 23 | 
> | 
encodedir(FVECT dv)             /* encode a normalized direction vector */ | 
| 24 | 
  | 
{ | 
| 25 | 
< | 
        register int32  dc = 0; | 
| 25 | 
> | 
        int32   dc = 0; | 
| 26 | 
  | 
        int     cd[3], cm; | 
| 27 | 
< | 
        register int    i; | 
| 27 | 
> | 
        int     i; | 
| 28 | 
  | 
 | 
| 29 | 
  | 
        for (i = 0; i < 3; i++) | 
| 30 | 
  | 
                if (dv[i] < 0.) { | 
| 52 | 
  | 
 | 
| 53 | 
  | 
 | 
| 54 | 
  | 
void | 
| 55 | 
< | 
decodedir(dv, dc)       /* decode a normalized direction vector */ | 
| 57 | 
< | 
register FVECT  dv;     /* returned */ | 
| 58 | 
< | 
register int32  dc; | 
| 55 | 
> | 
decodedir(FVECT dv, int32 dc)   /* decode a normalized direction vector */ | 
| 56 | 
  | 
{ | 
| 57 | 
  | 
        double  d1, d2, der; | 
| 58 | 
  | 
 | 
| 79 | 
  | 
 | 
| 80 | 
  | 
 | 
| 81 | 
  | 
double | 
| 82 | 
< | 
dir2diff(dc1, dc2)              /* approx. radians^2 between directions */ | 
| 86 | 
< | 
int32   dc1, dc2; | 
| 82 | 
> | 
dir2diff(int32 dc1, int32 dc2)  /* approx. radians^2 between directions */ | 
| 83 | 
  | 
{ | 
| 84 | 
  | 
        FVECT   v1, v2; | 
| 85 | 
  | 
 | 
| 91 | 
  | 
 | 
| 92 | 
  | 
 | 
| 93 | 
  | 
double | 
| 94 | 
< | 
fdir2diff(dc1, v2)              /* approx. radians^2 between directions */ | 
| 99 | 
< | 
int32   dc1; | 
| 100 | 
< | 
register FVECT  v2; | 
| 94 | 
> | 
fdir2diff(int32 dc1, FVECT v2)  /* approx. radians^2 between directions */ | 
| 95 | 
  | 
{ | 
| 96 | 
  | 
        FVECT   v1; | 
| 97 | 
  | 
 |