17 |
|
|
18 |
|
#include <string.h> |
19 |
|
|
20 |
+ |
#include "color.h" |
21 |
+ |
|
22 |
|
#include "mgf_parser.h" |
23 |
|
|
24 |
|
#include "lookup.h" |
31 |
|
|
32 |
|
#define VERTFMT "%+16.9e %+16.9e %+16.9e\n%+6.3f %+6.3f %+6.3f" |
33 |
|
#define VZVECT "+0.000 +0.000 +0.000" |
34 |
< |
#define VFLEN 72 /* total vertex string length */ |
34 |
> |
#define VFLEN 92 /* total vertex string length */ |
35 |
|
#define MAXVERT 10240 /* maximum cached vertices */ |
36 |
|
|
37 |
|
#define setvkey(k,v) sprintf(k,VERTFMT,(v)->p[0],(v)->p[1],(v)->p[2],\ |
488 |
|
va[0] = v2->p[0] - v1->p[0]; |
489 |
|
va[1] = v2->p[1] - v1->p[1]; |
490 |
|
va[2] = v2->p[2] - v1->p[2]; |
491 |
< |
length = sqrt(DOT(va,va)); |
492 |
< |
if (va[1] >= length) |
491 |
< |
angle = 0.; |
492 |
< |
else if (va[1] <= -length) |
493 |
< |
angle = PI; |
494 |
< |
else |
495 |
< |
angle = acos(va[1]/length); |
491 |
> |
length = VLEN(va); |
492 |
> |
angle = Acos(va[1]/length); |
493 |
|
printf("%sTranslation { translation %13.9g %13.9g %13.9g }\n", tabs, |
494 |
|
.5*(v1->p[0]+v2->p[0]), .5*(v1->p[1]+v2->p[1]), |
495 |
|
.5*(v1->p[2]+v2->p[2])); |