Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
triangular.h
Go to the documentation of this file.
1#ifndef NW4HBM_MATH_TRIANGULAR_H
2#define NW4HBM_MATH_TRIANGULAR_H
3
4#include <cmath>
5#include <cmath>
6
7#include <revolution/types.h>
8
9#include "constants.h"
10
11namespace nw4hbm {
12 namespace math {
13 f32 SinFIdx(f32 fidx);
14 f32 CosFIdx(f32 fidx);
15 void SinCosFIdx(f32* s, f32* c, f32 fidx);
16
19
20 inline f32 TanFIdx(f32 fidx) {
21 // They were just like "Ah fuck it we already got too many tables" haha lol
22 return std::tanf(fidx * convert::FIdx2Rad);
23 }
24
25 inline f32 CosRad(f32 rad) {
26 return CosFIdx(rad * convert::Rad2FIdx);
27 }
28
29 inline f32 SinDeg(f32 deg) {
30 return SinFIdx(deg * convert::Deg2FIdx);
31 }
32
33 inline f32 CosDeg(f32 deg) {
34 return CosFIdx(deg * convert::Deg2FIdx);
35 }
36
37 inline f32 TanDeg(f32 deg) {
38 return TanFIdx(deg * convert::Deg2FIdx);
39 }
40
41 inline f32 Atan2Deg(f32 y, f32 x) {
42 return Atan2FIdx(y, x) * convert::FIdx2Deg;
43 }
44 } // namespace math
45} // namespace nw4hbm
46
47#endif // NW4HBM_MATH_TRIANGULAR_H
Ordon Goat.
s
Definition e_acos.c:99
double x double x
Definition e_atan2.c:58
double x double y
Definition e_atan2.c:58
float f32
Definition types.h:25
static f32 const FIdx2Deg
Definition constants.h:17
static f32 const Deg2FIdx
Definition constants.h:16
static f32 const Rad2FIdx
Definition constants.h:19
static f32 const FIdx2Rad
Definition constants.h:20
f32 SinDeg(f32 deg)
Definition triangular.h:29
f32 Atan2FIdx(f32 y, f32 x)
Definition math_triangular.cpp:357
f32 CosRad(f32 rad)
Definition triangular.h:25
f32 CosFIdx(f32 fidx)
Definition math_triangular.cpp:334
f32 AtanFIdx(f32 x)
f32 TanDeg(f32 deg)
Definition triangular.h:37
f32 CosDeg(f32 deg)
Definition triangular.h:33
f32 TanFIdx(f32 fidx)
Definition triangular.h:20
void SinCosFIdx(f32 *s, f32 *c, f32 fidx)
f32 Atan2Deg(f32 y, f32 x)
Definition triangular.h:41
f32 SinFIdx(f32 fidx)
Definition math_triangular.cpp:315
Definition HBMAnmController.h:6