#include <Producer/Export>#include <Producer/Types>#include <math.h>#include <iostream>#include <algorithm>Namespaces | |
| namespace | Producer |
Classes | |
| class | Producer::Vec3 |
| class | Producer::Matrix |
Defines | |
| #define | PRODUCER_MATH_H 1 |
| #define | M_PI 3.14159265358979323846 |
| #define | M_PIF 3.14159265358979323846f |
| #define | SET_ROW(row, v1, v2, v3, v4) |
| #define | INNER_PRODUCT(a, b, r, c) |
| #define | QX fv[0] |
| #define | QY fv[1] |
| #define | QZ fv[2] |
| #define | QW fv[3] |
| #define | SGL_SWAP(a, b, temp) ((temp)=(a),(a)=(b),(b)=(temp)) |
Functions | |
| template<typename T> | |
| T | Producer::deg2rad (const T x) |
| template<typename T> | |
| T | Producer::rad2deg (const T x) |
| template<typename T> | |
| T | Producer::sqr (const T x) |
| Vec3 | Producer::operator * (const Vec3 &v, const Matrix &m) |
| std::ostream & | Producer::operator<< (std::ostream &output, const Vec3 &vec) |
| std::ostream & | Producer::operator<< (std::ostream &os, const Matrix &m) |
| #define INNER_PRODUCT | ( | a, | |||
| b, | |||||
| r, | |||||
| c | ) |
Value:
((a)._mat[r][0] * (b)._mat[0][c]) \
+((a)._mat[r][1] * (b)._mat[1][c]) \
+((a)._mat[r][2] * (b)._mat[2][c]) \
+((a)._mat[r][3] * (b)._mat[3][c])
| #define M_PI 3.14159265358979323846 |
| #define M_PIF 3.14159265358979323846f |
| #define PRODUCER_MATH_H 1 |
| #define QW fv[3] |
| #define QX fv[0] |
| #define QY fv[1] |
| #define QZ fv[2] |
| #define SET_ROW | ( | row, | |||
| v1, | |||||
| v2, | |||||
| v3, | |||||
| v4 | ) |
Value:
_mat[(row)][0] = (v1); \
_mat[(row)][1] = (v2); \
_mat[(row)][2] = (v3); \
_mat[(row)][3] = (v4);
| #define SGL_SWAP | ( | a, | |||
| b, | |||||
| temp | ) | ((temp)=(a),(a)=(b),(b)=(temp)) |
1.5.2