Subversion Repositories Games.Carmageddon

Rev

Rev 1 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 pmbaty 1
#ifndef _TRIG_H_
2
#define _TRIG_H_
3
 
4
#include "dr_types.h"
5
 
6
extern float gFloat_sine_table[91];
7
extern br_fixed_ls gFixed_sine_table[91];
8
extern br_matrix23 mat23tmp1;
9
extern br_matrix23 mat23tmp2;
10
extern br_matrix34 mattmp1__trig; // suffix added to avoid duplicate symbol
11
extern br_matrix34 mattmp2__trig; // suffix added to avoid duplicate symbol
12
 
13
float FastFloatSin(int pAngle_in_degrees);
14
 
15
float FastFloatCos(int pAngle_in_degrees);
16
 
17
float FastFloatTan(int pAngle_in_degrees);
18
 
19
br_scalar FastScalarSin(int pAngle_in_degrees);
20
 
21
br_scalar FastScalarCos(int pAngle_in_degrees);
22
 
23
br_scalar FastScalarTan(int pAngle_in_degrees);
24
 
25
br_scalar FastScalarSinAngle(br_angle pBR_angle);
26
 
27
br_scalar FastScalarCosAngle(br_angle pBR_angle);
28
 
29
br_scalar FastScalarTanAngle(br_angle pBR_angle);
30
 
31
float FastFloatArcSin(float pValue);
32
 
33
float FastFloatArcCos(float pValue);
34
 
35
br_scalar FastScalarArcSin(br_scalar pValue);
36
 
37
br_scalar FastScalarArcCos(br_scalar pValue);
38
 
39
float FastFloatArcTan2(float pY, float pX);
40
 
41
br_scalar FastScalarArcTan2(br_scalar pY, br_scalar pX);
42
 
43
br_angle FastFloatArcTan2Angle(float pY, float pX);
44
 
45
br_angle FastScalarArcTan2Angle(br_scalar pY, br_scalar pX);
46
 
47
void DRMatrix34RotateX(br_matrix34* mat, br_angle rx);
48
 
49
void DRMatrix34RotateY(br_matrix34* mat, br_angle ry);
50
 
51
void DRMatrix34RotateZ(br_matrix34* mat, br_angle rz);
52
 
53
void DRMatrix34Rotate(br_matrix34* mat, br_angle r, br_vector3* a);
54
 
55
void DRMatrix34PreRotateX(br_matrix34* mat, br_angle rx);
56
 
57
void DRMatrix34PostRotateX(br_matrix34* mat, br_angle rx);
58
 
59
void DRMatrix34PreRotateY(br_matrix34* mat, br_angle ry);
60
 
61
void DRMatrix34PostRotateY(br_matrix34* mat, br_angle ry);
62
 
63
void DRMatrix34PreRotateZ(br_matrix34* mat, br_angle rz);
64
 
65
void DRMatrix34PostRotateZ(br_matrix34* mat, br_angle rz);
66
 
67
void DRMatrix34PreRotate(br_matrix34* mat, br_angle r, br_vector3* axis);
68
 
69
void DRMatrix34PostRotate(br_matrix34* mat, br_angle r, br_vector3* axis);
70
 
71
void DRMatrix23Rotate(br_matrix23* mat, br_angle rz);
72
 
73
void DRMatrix23PreRotate(br_matrix23* mat, br_angle rz);
74
 
75
void DRMatrix23PostRotate(br_matrix23* mat, br_angle rz);
76
 
77
#endif