diff --git a/Doxygen/.gitignore b/Doxygen/.gitignore
new file mode 100644
index 0000000..567609b
--- /dev/null
+++ b/Doxygen/.gitignore
@@ -0,0 +1 @@
+build/
diff --git a/Doxygen/build/Collider_8cpp.html b/Doxygen/build/Collider_8cpp.html
deleted file mode 100644
index b84bff0..0000000
--- a/Doxygen/build/Collider_8cpp.html
+++ /dev/null
@@ -1,108 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Collider.cpp File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-
-
-
diff --git a/Doxygen/build/Collider_8cpp__incl.map b/Doxygen/build/Collider_8cpp__incl.map
deleted file mode 100644
index c94adde..0000000
--- a/Doxygen/build/Collider_8cpp__incl.map
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Collider_8cpp__incl.md5 b/Doxygen/build/Collider_8cpp__incl.md5
deleted file mode 100644
index 0f1a642..0000000
--- a/Doxygen/build/Collider_8cpp__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-a0ca2d0389b8e053b94a9d04c38298d1
\ No newline at end of file
diff --git a/Doxygen/build/Collider_8cpp__incl.png b/Doxygen/build/Collider_8cpp__incl.png
deleted file mode 100644
index 9d9cbfd..0000000
Binary files a/Doxygen/build/Collider_8cpp__incl.png and /dev/null differ
diff --git a/Doxygen/build/Collider_8cpp_source.html b/Doxygen/build/Collider_8cpp_source.html
deleted file mode 100644
index 7d6ade8..0000000
--- a/Doxygen/build/Collider_8cpp_source.html
+++ /dev/null
@@ -1,90 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Collider.cpp Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Collider_8h.html b/Doxygen/build/Collider_8h.html
deleted file mode 100644
index d275e5d..0000000
--- a/Doxygen/build/Collider_8h.html
+++ /dev/null
@@ -1,133 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Collider.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-
-
-
-
diff --git a/Doxygen/build/Collider_8h__dep__incl.map b/Doxygen/build/Collider_8h__dep__incl.map
deleted file mode 100644
index f7be80a..0000000
--- a/Doxygen/build/Collider_8h__dep__incl.map
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
diff --git a/Doxygen/build/Collider_8h__dep__incl.md5 b/Doxygen/build/Collider_8h__dep__incl.md5
deleted file mode 100644
index 69ad73f..0000000
--- a/Doxygen/build/Collider_8h__dep__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-a3862d315002f8b279d1429df3698c3b
\ No newline at end of file
diff --git a/Doxygen/build/Collider_8h__dep__incl.png b/Doxygen/build/Collider_8h__dep__incl.png
deleted file mode 100644
index b321190..0000000
Binary files a/Doxygen/build/Collider_8h__dep__incl.png and /dev/null differ
diff --git a/Doxygen/build/Collider_8h__incl.map b/Doxygen/build/Collider_8h__incl.map
deleted file mode 100644
index 050531c..0000000
--- a/Doxygen/build/Collider_8h__incl.map
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Collider_8h__incl.md5 b/Doxygen/build/Collider_8h__incl.md5
deleted file mode 100644
index 87b8976..0000000
--- a/Doxygen/build/Collider_8h__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-9948039f41f85f1963fada39f6f03f97
\ No newline at end of file
diff --git a/Doxygen/build/Collider_8h__incl.png b/Doxygen/build/Collider_8h__incl.png
deleted file mode 100644
index 27e8cfd..0000000
Binary files a/Doxygen/build/Collider_8h__incl.png and /dev/null differ
diff --git a/Doxygen/build/Collider_8h_source.html b/Doxygen/build/Collider_8h_source.html
deleted file mode 100644
index bb7cafb..0000000
--- a/Doxygen/build/Collider_8h_source.html
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Collider.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Abstract class of a collider domain.
-
-virtual bool Contains(const Vector3d &point) const =0
Tests, if this Collider contains a point.
-
-
-
-
-
-
diff --git a/Doxygen/build/Constants_8h.html b/Doxygen/build/Constants_8h.html
deleted file mode 100644
index 61c611f..0000000
--- a/Doxygen/build/Constants_8h.html
+++ /dev/null
@@ -1,223 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Constants.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-static constexpr double PI = 3.14159265358979323846264338327950288419716939937510
- Pi up to 50 decimal places. More...
-
-static constexpr double HALF_PI = 1.57079632679489661923132169163975144209858469968755
- Pi divided by two. More...
-
-static constexpr double Deg2Rad = 0.0174532925199432957692369076848861271344287188854172222222222222
- Factor to convert degrees to radians. More...
-
-static constexpr double Rad2Deg = 57.295779513082320876798154814105170332405472466564427711013084788
- Factor to convert radians to degrees. More...
-
-
-
-
-
◆ Deg2Rad
-
-
-
-
-
-
-
-
- constexpr double Deg2Rad = 0.0174532925199432957692369076848861271344287188854172222222222222
-
-
-
-
-static constexpr
-
-
-
-
-
Factor to convert degrees to radians.
-
-
Definition at line 12 of file Constants.h .
-
-
-
-
-
◆ HALF_PI
-
-
-
-
-
-
-
-
- constexpr double HALF_PI = 1.57079632679489661923132169163975144209858469968755
-
-
-
-
-static constexpr
-
-
-
-
-
Pi divided by two.
-
-
Definition at line 9 of file Constants.h .
-
-
-
-
-
◆ PI
-
-
-
-
-
-
-
-
- constexpr double PI = 3.14159265358979323846264338327950288419716939937510
-
-
-
-
-static constexpr
-
-
-
-
-
Pi up to 50 decimal places.
-
-
Definition at line 6 of file Constants.h .
-
-
-
-
-
◆ Rad2Deg
-
-
-
-
-
-
-
-
- constexpr double Rad2Deg = 57.295779513082320876798154814105170332405472466564427711013084788
-
-
-
-
-static constexpr
-
-
-
-
-
Factor to convert radians to degrees.
-
-
Definition at line 15 of file Constants.h .
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Constants_8h__dep__incl.map b/Doxygen/build/Constants_8h__dep__incl.map
deleted file mode 100644
index fd16cfe..0000000
--- a/Doxygen/build/Constants_8h__dep__incl.map
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
diff --git a/Doxygen/build/Constants_8h__dep__incl.md5 b/Doxygen/build/Constants_8h__dep__incl.md5
deleted file mode 100644
index 9f34a03..0000000
--- a/Doxygen/build/Constants_8h__dep__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-b7f0f6fcf28de72df643fef9d219e14d
\ No newline at end of file
diff --git a/Doxygen/build/Constants_8h__dep__incl.png b/Doxygen/build/Constants_8h__dep__incl.png
deleted file mode 100644
index beb6f19..0000000
Binary files a/Doxygen/build/Constants_8h__dep__incl.png and /dev/null differ
diff --git a/Doxygen/build/Constants_8h_source.html b/Doxygen/build/Constants_8h_source.html
deleted file mode 100644
index 6c4cbef..0000000
--- a/Doxygen/build/Constants_8h_source.html
+++ /dev/null
@@ -1,103 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Constants.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
6 static constexpr
double PI = 3.14159265358979323846264338327950288419716939937510;
-
-
9 static constexpr
double HALF_PI = 1.57079632679489661923132169163975144209858469968755;
-
-
12 static constexpr
double Deg2Rad = 0.0174532925199432957692369076848861271344287188854172222222222222;
-
-
15 static constexpr
double Rad2Deg = 57.295779513082320876798154814105170332405472466564427711013084788;
-
-static constexpr double PI
Pi up to 50 decimal places.
-static constexpr double Deg2Rad
Factor to convert degrees to radians.
-static constexpr double Rad2Deg
Factor to convert radians to degrees.
-static constexpr double HALF_PI
Pi divided by two.
-
-
-
-
diff --git a/Doxygen/build/Debug_2Eule_8vcxproj_8FileListAbsolute_8txt.html b/Doxygen/build/Debug_2Eule_8vcxproj_8FileListAbsolute_8txt.html
deleted file mode 100644
index 257f8b8..0000000
--- a/Doxygen/build/Debug_2Eule_8vcxproj_8FileListAbsolute_8txt.html
+++ /dev/null
@@ -1,84 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Debug/Eule.vcxproj.FileListAbsolute.txt File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Math_8cpp.html b/Doxygen/build/Math_8cpp.html
deleted file mode 100644
index 1737852..0000000
--- a/Doxygen/build/Math_8cpp.html
+++ /dev/null
@@ -1,131 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Math.cpp File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include "Math.h "
-
#include "Constants.h "
-
#include <array>
-
-
Go to the source code of this file.
-
-
-
-
◆ MAKE_SURE_RNG_IS_INITIALIZED
-
-
-
-
-
- #define MAKE_SURE_RNG_IS_INITIALIZED if (!isRngInitialized) InitRng();
-
-
-
-
-
Definition at line 8 of file Math.cpp .
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Math_8cpp__incl.map b/Doxygen/build/Math_8cpp__incl.map
deleted file mode 100644
index bf72fb5..0000000
--- a/Doxygen/build/Math_8cpp__incl.map
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Math_8cpp__incl.md5 b/Doxygen/build/Math_8cpp__incl.md5
deleted file mode 100644
index a0793aa..0000000
--- a/Doxygen/build/Math_8cpp__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-64f48b056a74ba18f5f53630c99b02b9
\ No newline at end of file
diff --git a/Doxygen/build/Math_8cpp__incl.png b/Doxygen/build/Math_8cpp__incl.png
deleted file mode 100644
index 8a08b15..0000000
Binary files a/Doxygen/build/Math_8cpp__incl.png and /dev/null differ
diff --git a/Doxygen/build/Math_8cpp_source.html b/Doxygen/build/Math_8cpp_source.html
deleted file mode 100644
index 6cb8c05..0000000
--- a/Doxygen/build/Math_8cpp_source.html
+++ /dev/null
@@ -1,200 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Math.cpp Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
8 #define MAKE_SURE_RNG_IS_INITIALIZED if (!isRngInitialized) InitRng();
-
-
-
-
-
13 std::random_device randomSource;
-
-
-
16 std::array<int, std::mt19937::state_size> seedValues;
-
17 std::generate_n(seedValues.data(), seedValues.size(), std::ref(randomSource));
-
18 std::seed_seq seedSequence(seedValues.begin(), seedValues.end());
-
-
-
21 rng = std::mt19937(seedSequence);
-
-
23 isRngInitialized =
true ;
-
-
-
-
-
-
-
-
-
-
33 return (rng() % 694206942069ll) / 694206942069.0;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
58 return (
Random () * (max - min)) + min;
-
-
-
-
-
-
-
65 return (rng() % (max + 1 - min)) + min;
-
-
-
68 double Math::Oscillate (
const double a,
const double b,
const double counter,
const double speed)
-
-
70 return (sin(counter * speed *
PI -
HALF_PI ) * 0.5 + 0.5) * (b-a) + a;
-
-
-
-
-
-
-
-
78 int Math::Mod (
const int numerator,
const int denominator)
-
-
-
81 throw std::logic_error(
"Divide by zero" );
-
-
-
-
-
-
-
-
-
90 if (denominator > 0 && numerator > 0)
-
91 return numerator % denominator;
-
-
-
94 return (denominator + (numerator % denominator)) % denominator;
-
-
-
97 std::mt19937 Math::rng;
-
98 bool Math::isRngInitialized =
true ;
-
-#define MAKE_SURE_RNG_IS_INITIALIZED
-static bool RandomChance(const double chance)
Will 'roll' a dice, returning true percent of the time.
-static constexpr double PI
Pi up to 50 decimal places.
-static double RandomRange(const double min, const double max)
Will return a random double within a range These bounds are INCLUSIVE!
-static int Mod(const int numerator, const int denominator)
Will compute the actual modulo of a fraction.
-
-static unsigned int RandomInt()
Will return a random integer.
-
-static int RandomIntRange(const int max, const int min)
Will return a random integer within a range.
-static double Random()
Will return a random double between 0 and 1
-static unsigned int RandomUint()
Will return a random unsigned integer.
-static constexpr double HALF_PI
Pi divided by two.
-
-static double Oscillate(const double a, const double b, const double counter, const double speed)
Kind of like , but it oscillates over instead of , by a given speed.
-
-
-
-
diff --git a/Doxygen/build/Math_8h.html b/Doxygen/build/Math_8h.html
deleted file mode 100644
index 1ba7b05..0000000
--- a/Doxygen/build/Math_8h.html
+++ /dev/null
@@ -1,130 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Math.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include <random>
-#include <stdexcept>
-
-
Go to the source code of this file.
-
-
-
-
-
-
diff --git a/Doxygen/build/Math_8h__dep__incl.map b/Doxygen/build/Math_8h__dep__incl.map
deleted file mode 100644
index 0305d75..0000000
--- a/Doxygen/build/Math_8h__dep__incl.map
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Math_8h__dep__incl.md5 b/Doxygen/build/Math_8h__dep__incl.md5
deleted file mode 100644
index 439b315..0000000
--- a/Doxygen/build/Math_8h__dep__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-73207d65ad51e6c8ebeaac070e30ef55
\ No newline at end of file
diff --git a/Doxygen/build/Math_8h__dep__incl.png b/Doxygen/build/Math_8h__dep__incl.png
deleted file mode 100644
index aa88a7f..0000000
Binary files a/Doxygen/build/Math_8h__dep__incl.png and /dev/null differ
diff --git a/Doxygen/build/Math_8h__incl.map b/Doxygen/build/Math_8h__incl.map
deleted file mode 100644
index ab15bad..0000000
--- a/Doxygen/build/Math_8h__incl.map
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
diff --git a/Doxygen/build/Math_8h__incl.md5 b/Doxygen/build/Math_8h__incl.md5
deleted file mode 100644
index a77a0ab..0000000
--- a/Doxygen/build/Math_8h__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-30e3340847668dd6d0fcf574a3f1e946
\ No newline at end of file
diff --git a/Doxygen/build/Math_8h__incl.png b/Doxygen/build/Math_8h__incl.png
deleted file mode 100644
index f3cbb31..0000000
Binary files a/Doxygen/build/Math_8h__incl.png and /dev/null differ
diff --git a/Doxygen/build/Math_8h_source.html b/Doxygen/build/Math_8h_source.html
deleted file mode 100644
index 410a0a1..0000000
--- a/Doxygen/build/Math_8h_source.html
+++ /dev/null
@@ -1,187 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Math.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
-
-
13 [[nodiscard]]
static constexpr
double Max (
const double a,
const double b);
-
-
16 [[nodiscard]]
static constexpr
double Min (
const double a,
const double b);
-
-
19 [[nodiscard]]
static constexpr
double Clamp (
const double v,
const double min,
const double max);
-
-
22 [[nodiscard]]
static constexpr
double Lerp (
double a,
double b,
double t);
-
-
25 [[nodiscard]]
static constexpr
double Abs (
const double a);
-
-
28 [[nodiscard]]
static constexpr
bool Similar (
const double a,
const double b,
const double epsilon = 0.00001);
-
-
32 [[nodiscard]]
static int Mod (
const int numerator,
const int denominator);
-
-
-
-
-
-
-
-
45 static double RandomRange (
const double min,
const double max);
-
-
-
-
-
-
58 static double Oscillate (
const double a,
const double b,
const double counter,
const double speed);
-
-
-
62 static void InitRng();
-
-
64 static std::mt19937 rng;
-
65 static bool isRngInitialized;
-
-
-
-
-
-
-
-
-
-
-
76 constexpr
inline double Math::Max (
double a,
double b)
-
-
78 return (a > b) ? a : b;
-
-
-
81 constexpr
inline double Math::Min (
double a,
double b)
-
-
83 return (a < b) ? a : b;
-
-
-
86 constexpr
inline double Math::Clamp (
double v,
double min,
double max)
-
-
88 return Max (
Min (v, max), min);
-
-
-
91 constexpr
inline double Math::Lerp (
double a,
double b,
double t)
-
-
93 const double it = 1.0 - t;
-
94 return (a * it) + (b * t);
-
-
-
-
-
99 return (a > 0.0) ? a : -a;
-
-
-
102 constexpr
inline bool Math::Similar (
const double a,
const double b,
const double epsilon)
-
-
104 return Abs (a - b) <= epsilon;
-
-
-
-static bool RandomChance(const double chance)
Will 'roll' a dice, returning true percent of the time.
-static constexpr double Abs(const double a)
Will return the absolute value of a
-static double RandomRange(const double min, const double max)
Will return a random double within a range These bounds are INCLUSIVE!
-static constexpr double Lerp(double a, double b, double t)
Will return the linear interpolation between a and b by t
-static int Mod(const int numerator, const int denominator)
Will compute the actual modulo of a fraction.
-static unsigned int RandomInt()
Will return a random integer.
-static constexpr double Max(const double a, const double b)
Will return the bigger of two values.
-Math utility class containing basic functions.
-static constexpr double Clamp(const double v, const double min, const double max)
Will return v, but at least min, and at most max
-static constexpr double Min(const double a, const double b)
Will return the smaller of two values.
-static int RandomIntRange(const int max, const int min)
Will return a random integer within a range.
-static constexpr bool Similar(const double a, const double b, const double epsilon=0.00001)
Compares two double values with a given accuracy.
-static double Random()
Will return a random double between 0 and 1
-static unsigned int RandomUint()
Will return a random unsigned integer.
-
-static double Oscillate(const double a, const double b, const double counter, const double speed)
Kind of like , but it oscillates over instead of , by a given speed.
-
-
-
-
diff --git a/Doxygen/build/Matrix4x4_8cpp.html b/Doxygen/build/Matrix4x4_8cpp.html
deleted file mode 100644
index 1501ab2..0000000
--- a/Doxygen/build/Matrix4x4_8cpp.html
+++ /dev/null
@@ -1,130 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Matrix4x4.cpp File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include "Matrix4x4.h "
-
#include "Vector3.h "
-
#include "Math.h "
-
#include <immintrin.h>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-
-
-
-
diff --git a/Doxygen/build/Matrix4x4_8cpp__incl.map b/Doxygen/build/Matrix4x4_8cpp__incl.map
deleted file mode 100644
index c1238c4..0000000
--- a/Doxygen/build/Matrix4x4_8cpp__incl.map
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Matrix4x4_8cpp__incl.md5 b/Doxygen/build/Matrix4x4_8cpp__incl.md5
deleted file mode 100644
index 3ea338d..0000000
--- a/Doxygen/build/Matrix4x4_8cpp__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-249160e44e952572df002a88ede6eb16
\ No newline at end of file
diff --git a/Doxygen/build/Matrix4x4_8cpp__incl.png b/Doxygen/build/Matrix4x4_8cpp__incl.png
deleted file mode 100644
index 811988b..0000000
Binary files a/Doxygen/build/Matrix4x4_8cpp__incl.png and /dev/null differ
diff --git a/Doxygen/build/Matrix4x4_8cpp_source.html b/Doxygen/build/Matrix4x4_8cpp_source.html
deleted file mode 100644
index dde9492..0000000
--- a/Doxygen/build/Matrix4x4_8cpp_source.html
+++ /dev/null
@@ -1,786 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Matrix4x4.cpp Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
6 #ifndef _EULE_NO_INTRINSICS_
-
-
-
-
-
-
-
-
-
15 for (std::size_t
i = 0;
i < 4;
i ++)
-
16 for (std::size_t
j = 0;
j < 4;
j ++)
-
17 v [
i ][
j ] =
double (
i ==
j );
-
-
-
-
-
-
-
-
-
-
-
-
-
30 v = std::move(other.v);
-
-
-
-
-
-
-
-
-
39 #ifndef _EULE_NO_INTRINSICS_
-
-
-
-
-
-
45 __m256d __va1 = _mm256_set_pd(
v [0][0],
v [0][0],
v [0][0],
v [1][0]);
-
46 __m256d __va2 = _mm256_set_pd(
v [1][0],
v [1][0],
v [2][0],
v [2][0]);
-
-
48 __m256d __oa1 = _mm256_set_pd(other[0][0], other[0][1], other[0][2], other[0][0]);
-
49 __m256d __oa2 = _mm256_set_pd(other[0][1], other[0][2], other[0][0], other[0][1]);
-
-
51 __m256d __vb1 = _mm256_set_pd(
v [0][1],
v [0][1],
v [0][1],
v [1][1]);
-
52 __m256d __vb2 = _mm256_set_pd(
v [1][1],
v [1][1],
v [2][1],
v [2][1]);
-
-
54 __m256d __ob1 = _mm256_set_pd(other[1][0], other[1][1], other[1][2], other[1][0]);
-
55 __m256d __ob2 = _mm256_set_pd(other[1][1], other[1][2], other[1][0], other[1][1]);
-
-
57 __m256d __vc1 = _mm256_set_pd(
v [0][2],
v [0][2],
v [0][2],
v [1][2]);
-
58 __m256d __vc2 = _mm256_set_pd(
v [1][2],
v [1][2],
v [2][2],
v [2][2]);
-
-
60 __m256d __oc1 = _mm256_set_pd(other[2][0], other[2][1], other[2][2], other[2][0]);
-
61 __m256d __oc2 = _mm256_set_pd(other[2][1], other[2][2], other[2][0], other[2][1]);
-
-
-
64 __m256d __sum1 = _mm256_set1_pd(0);
-
65 __m256d __sum2 = _mm256_set1_pd(0);
-
-
-
-
69 __sum1 = _mm256_fmadd_pd(__va1, __oa1, __sum1);
-
70 __sum1 = _mm256_fmadd_pd(__vb1, __ob1, __sum1);
-
71 __sum1 = _mm256_fmadd_pd(__vc1, __oc1, __sum1);
-
-
-
74 __sum2 = _mm256_fmadd_pd(__va2, __oa2, __sum2);
-
75 __sum2 = _mm256_fmadd_pd(__vb2, __ob2, __sum2);
-
76 __sum2 = _mm256_fmadd_pd(__vc2, __oc2, __sum2);
-
-
-
-
-
-
82 _mm256_storeu_pd(sum1, __sum1);
-
83 _mm256_storeu_pd(sum2, __sum2);
-
-
-
-
87 newMatrix[0][0] = sum1[3];
-
88 newMatrix[0][1] = sum1[2];
-
89 newMatrix[0][2] = sum1[1];
-
90 newMatrix[1][0] = sum1[0];
-
-
-
93 newMatrix[1][1] = sum2[3];
-
94 newMatrix[1][2] = sum2[2];
-
95 newMatrix[2][0] = sum2[1];
-
96 newMatrix[2][1] = sum2[0];
-
-
-
99 newMatrix[2][2] = (
v [2][0] * other[0][2]) + (
v [2][1] * other[1][2]) + (
v [2][2] * other[2][2]);
-
-
-
-
-
-
105 __m256d __transSelf = _mm256_set_pd(0,
l ,
h ,
d );
-
106 __m256d __transOther = _mm256_set_pd(0, other.l, other.h, other.d);
-
-
-
109 __m256d __sum = _mm256_add_pd(__transSelf, __transOther);
-
-
-
-
113 _mm256_storeu_pd(sum, __sum);
-
-
-
116 newMatrix.
d = sum[0];
-
117 newMatrix.
h = sum[1];
-
118 newMatrix.
l = sum[2];
-
-
-
-
-
-
124 newMatrix[0][0] = (
v [0][0] * other[0][0]) + (
v [0][1] * other[1][0]) + (
v [0][2] * other[2][0]);
-
125 newMatrix[0][1] = (
v [0][0] * other[0][1]) + (
v [0][1] * other[1][1]) + (
v [0][2] * other[2][1]);
-
126 newMatrix[0][2] = (
v [0][0] * other[0][2]) + (
v [0][1] * other[1][2]) + (
v [0][2] * other[2][2]);
-
-
128 newMatrix[1][0] = (
v [1][0] * other[0][0]) + (
v [1][1] * other[1][0]) + (
v [1][2] * other[2][0]);
-
129 newMatrix[1][1] = (
v [1][0] * other[0][1]) + (
v [1][1] * other[1][1]) + (
v [1][2] * other[2][1]);
-
130 newMatrix[1][2] = (
v [1][0] * other[0][2]) + (
v [1][1] * other[1][2]) + (
v [1][2] * other[2][2]);
-
-
132 newMatrix[2][0] = (
v [2][0] * other[0][0]) + (
v [2][1] * other[1][0]) + (
v [2][2] * other[2][0]);
-
133 newMatrix[2][1] = (
v [2][0] * other[0][1]) + (
v [2][1] * other[1][1]) + (
v [2][2] * other[2][1]);
-
134 newMatrix[2][2] = (
v [2][0] * other[0][2]) + (
v [2][1] * other[1][2]) + (
v [2][2] * other[2][2]);
-
-
-
-
138 newMatrix[0][3] =
v [0][3] + other[0][3];
-
139 newMatrix[1][3] =
v [1][3] + other[1][3];
-
140 newMatrix[2][3] =
v [2][3] + other[2][3];
-
-
-
-
-
-
-
-
-
149 *
this = *
this * other;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
168 #ifndef _EULE_NO_INTRINSICS_
-
-
-
171 __m256d __row0 = _mm256_set_pd(
v [0][3],
v [0][2],
v [0][1],
v [0][0]);
-
172 __m256d __row1 = _mm256_set_pd(
v [1][3],
v [1][2],
v [1][1],
v [1][0]);
-
173 __m256d __row2 = _mm256_set_pd(
v [2][3],
v [2][2],
v [2][1],
v [2][0]);
-
174 __m256d __row3 = _mm256_set_pd(
v [3][3],
v [3][2],
v [3][1],
v [3][0]);
-
-
-
177 __m256d __scalar = _mm256_set1_pd(scalar);
-
-
-
180 __m256d __sr0 = _mm256_mul_pd(__row0, __scalar);
-
181 __m256d __sr1 = _mm256_mul_pd(__row1, __scalar);
-
182 __m256d __sr2 = _mm256_mul_pd(__row2, __scalar);
-
183 __m256d __sr3 = _mm256_mul_pd(__row3, __scalar);
-
-
-
186 _mm256_storeu_pd(
m .v[0].data(), __sr0);
-
187 _mm256_storeu_pd(
m .v[1].data(), __sr1);
-
188 _mm256_storeu_pd(
m .v[2].data(), __sr2);
-
189 _mm256_storeu_pd(
m .v[3].data(), __sr3);
-
-
-
-
193 for (std::size_t x = 0; x < 4; x++)
-
194 for (std::size_t y = 0; y < 4; y++)
-
195 m [x][y] =
v [x][y] * scalar;
-
-
-
-
-
-
-
-
-
204 *
this = *
this * scalar;
-
-
-
-
-
-
210 const double precomputeDivision = 1.0 / denominator;
-
-
212 return *
this * precomputeDivision;
-
-
-
-
-
217 *
this = *
this / denominator;
-
-
-
-
-
-
-
-
225 #ifndef _EULE_NO_INTRINSICS_
-
-
-
228 __m256d __row0a = _mm256_set_pd(
v [0][3],
v [0][2],
v [0][1],
v [0][0]);
-
229 __m256d __row1a = _mm256_set_pd(
v [1][3],
v [1][2],
v [1][1],
v [1][0]);
-
230 __m256d __row2a = _mm256_set_pd(
v [2][3],
v [2][2],
v [2][1],
v [2][0]);
-
231 __m256d __row3a = _mm256_set_pd(
v [3][3],
v [3][2],
v [3][1],
v [3][0]);
-
-
233 __m256d __row0b = _mm256_set_pd(other[0][3], other[0][2], other[0][1], other[0][0]);
-
234 __m256d __row1b = _mm256_set_pd(other[1][3], other[1][2], other[1][1], other[1][0]);
-
235 __m256d __row2b = _mm256_set_pd(other[2][3], other[2][2], other[2][1], other[2][0]);
-
236 __m256d __row3b = _mm256_set_pd(other[3][3], other[3][2], other[3][1], other[3][0]);
-
-
-
239 __m256d __sr0 = _mm256_add_pd(__row0a, __row0b);
-
240 __m256d __sr1 = _mm256_add_pd(__row1a, __row1b);
-
241 __m256d __sr2 = _mm256_add_pd(__row2a, __row2b);
-
242 __m256d __sr3 = _mm256_add_pd(__row3a, __row3b);
-
-
-
245 _mm256_storeu_pd(
m .v[0].data(), __sr0);
-
246 _mm256_storeu_pd(
m .v[1].data(), __sr1);
-
247 _mm256_storeu_pd(
m .v[2].data(), __sr2);
-
248 _mm256_storeu_pd(
m .v[3].data(), __sr3);
-
-
-
-
252 for (std::size_t x = 0; x < 4; x++)
-
253 for (std::size_t y = 0; y < 4; y++)
-
254 m [x][y] =
v [x][y] + other[x][y];
-
-
-
-
-
-
-
-
-
263 #ifndef _EULE_NO_INTRINSICS_
-
-
-
-
267 __m256d __row0a = _mm256_set_pd(
v [0][3],
v [0][2],
v [0][1],
v [0][0]);
-
268 __m256d __row1a = _mm256_set_pd(
v [1][3],
v [1][2],
v [1][1],
v [1][0]);
-
269 __m256d __row2a = _mm256_set_pd(
v [2][3],
v [2][2],
v [2][1],
v [2][0]);
-
270 __m256d __row3a = _mm256_set_pd(
v [3][3],
v [3][2],
v [3][1],
v [3][0]);
-
-
272 __m256d __row0b = _mm256_set_pd(other[0][3], other[0][2], other[0][1], other[0][0]);
-
273 __m256d __row1b = _mm256_set_pd(other[1][3], other[1][2], other[1][1], other[1][0]);
-
274 __m256d __row2b = _mm256_set_pd(other[2][3], other[2][2], other[2][1], other[2][0]);
-
275 __m256d __row3b = _mm256_set_pd(other[3][3], other[3][2], other[3][1], other[3][0]);
-
-
-
278 __m256d __sr0 = _mm256_add_pd(__row0a, __row0b);
-
279 __m256d __sr1 = _mm256_add_pd(__row1a, __row1b);
-
280 __m256d __sr2 = _mm256_add_pd(__row2a, __row2b);
-
281 __m256d __sr3 = _mm256_add_pd(__row3a, __row3b);
-
-
-
284 _mm256_storeu_pd(
v [0].data(), __sr0);
-
285 _mm256_storeu_pd(
v [1].data(), __sr1);
-
286 _mm256_storeu_pd(
v [2].data(), __sr2);
-
287 _mm256_storeu_pd(
v [3].data(), __sr3);
-
-
-
-
291 *
this = *
this + other;
-
-
-
-
-
-
-
-
-
-
-
302 #ifndef _EULE_NO_INTRINSICS_
-
-
-
305 __m256d __row0a = _mm256_set_pd(
v [0][3],
v [0][2],
v [0][1],
v [0][0]);
-
306 __m256d __row1a = _mm256_set_pd(
v [1][3],
v [1][2],
v [1][1],
v [1][0]);
-
307 __m256d __row2a = _mm256_set_pd(
v [2][3],
v [2][2],
v [2][1],
v [2][0]);
-
308 __m256d __row3a = _mm256_set_pd(
v [3][3],
v [3][2],
v [3][1],
v [3][0]);
-
-
310 __m256d __row0b = _mm256_set_pd(other[0][3], other[0][2], other[0][1], other[0][0]);
-
311 __m256d __row1b = _mm256_set_pd(other[1][3], other[1][2], other[1][1], other[1][0]);
-
312 __m256d __row2b = _mm256_set_pd(other[2][3], other[2][2], other[2][1], other[2][0]);
-
313 __m256d __row3b = _mm256_set_pd(other[3][3], other[3][2], other[3][1], other[3][0]);
-
-
-
316 __m256d __sr0 = _mm256_sub_pd(__row0a, __row0b);
-
317 __m256d __sr1 = _mm256_sub_pd(__row1a, __row1b);
-
318 __m256d __sr2 = _mm256_sub_pd(__row2a, __row2b);
-
319 __m256d __sr3 = _mm256_sub_pd(__row3a, __row3b);
-
-
-
322 _mm256_storeu_pd(
m .v[0].data(), __sr0);
-
323 _mm256_storeu_pd(
m .v[1].data(), __sr1);
-
324 _mm256_storeu_pd(
m .v[2].data(), __sr2);
-
325 _mm256_storeu_pd(
m .v[3].data(), __sr3);
-
-
-
-
329 for (std::size_t x = 0; x < 4; x++)
-
330 for (std::size_t y = 0; y < 4; y++)
-
331 m [x][y] =
v [x][y] - other[x][y];
-
-
-
-
-
-
-
-
-
340 #ifndef _EULE_NO_INTRINSICS_
-
-
-
-
344 __m256d __row0a = _mm256_set_pd(
v [0][3],
v [0][2],
v [0][1],
v [0][0]);
-
345 __m256d __row1a = _mm256_set_pd(
v [1][3],
v [1][2],
v [1][1],
v [1][0]);
-
346 __m256d __row2a = _mm256_set_pd(
v [2][3],
v [2][2],
v [2][1],
v [2][0]);
-
347 __m256d __row3a = _mm256_set_pd(
v [3][3],
v [3][2],
v [3][1],
v [3][0]);
-
-
349 __m256d __row0b = _mm256_set_pd(other[0][3], other[0][2], other[0][1], other[0][0]);
-
350 __m256d __row1b = _mm256_set_pd(other[1][3], other[1][2], other[1][1], other[1][0]);
-
351 __m256d __row2b = _mm256_set_pd(other[2][3], other[2][2], other[2][1], other[2][0]);
-
352 __m256d __row3b = _mm256_set_pd(other[3][3], other[3][2], other[3][1], other[3][0]);
-
-
-
355 __m256d __sr0 = _mm256_sub_pd(__row0a, __row0b);
-
356 __m256d __sr1 = _mm256_sub_pd(__row1a, __row1b);
-
357 __m256d __sr2 = _mm256_sub_pd(__row2a, __row2b);
-
358 __m256d __sr3 = _mm256_sub_pd(__row3a, __row3b);
-
-
-
361 _mm256_storeu_pd(
v [0].data(), __sr0);
-
362 _mm256_storeu_pd(
v [1].data(), __sr1);
-
363 _mm256_storeu_pd(
v [2].data(), __sr2);
-
364 _mm256_storeu_pd(
v [3].data(), __sr3);
-
-
-
-
368 *
this = *
this - other;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
393 v = std::move(other.v);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
433 for (std::size_t
i = 0;
i < 3;
i ++)
-
434 for (std::size_t
j = 0;
j < 3;
j ++)
-
435 trans[
j ][
i ] =
v [
i ][
j ];
-
-
-
-
-
-
-
-
-
444 for (std::size_t
i = 0;
i < 4;
i ++)
-
445 for (std::size_t
j = 0;
j < 4;
j ++)
-
446 trans[
j ][
i ] =
v [
i ][
j ];
-
-
-
-
-
-
-
-
-
455 m [0][0] = (
v [0][0]*
o [0][0]) + (
v [0][1]*
o [1][0]) + (
v [0][2]*
o [2][0]) + (
v [0][3]*
o [3][0]);
-
456 m [0][1] = (
v [0][0]*
o [0][1]) + (
v [0][1]*
o [1][1]) + (
v [0][2]*
o [2][1]) + (
v [0][3]*
o [3][1]);
-
457 m [0][2] = (
v [0][0]*
o [0][2]) + (
v [0][1]*
o [1][2]) + (
v [0][2]*
o [2][2]) + (
v [0][3]*
o [3][2]);
-
458 m [0][3] = (
v [0][0]*
o [0][3]) + (
v [0][1]*
o [1][3]) + (
v [0][2]*
o [2][3]) + (
v [0][3]*
o [3][3]);
-
-
460 m [1][0] = (
v [1][0]*
o [0][0]) + (
v [1][1]*
o [1][0]) + (
v [1][2]*
o [2][0]) + (
v [1][3]*
o [3][0]);
-
461 m [1][1] = (
v [1][0]*
o [0][1]) + (
v [1][1]*
o [1][1]) + (
v [1][2]*
o [2][1]) + (
v [1][3]*
o [3][1]);
-
462 m [1][2] = (
v [1][0]*
o [0][2]) + (
v [1][1]*
o [1][2]) + (
v [1][2]*
o [2][2]) + (
v [1][3]*
o [3][2]);
-
463 m [1][3] = (
v [1][0]*
o [0][3]) + (
v [1][1]*
o [1][3]) + (
v [1][2]*
o [2][3]) + (
v [1][3]*
o [3][3]);
-
-
465 m [2][0] = (
v [2][0]*
o [0][0]) + (
v [2][1]*
o [1][0]) + (
v [2][2]*
o [2][0]) + (
v [2][3]*
o [3][0]);
-
466 m [2][1] = (
v [2][0]*
o [0][1]) + (
v [2][1]*
o [1][1]) + (
v [2][2]*
o [2][1]) + (
v [2][3]*
o [3][1]);
-
467 m [2][2] = (
v [2][0]*
o [0][2]) + (
v [2][1]*
o [1][2]) + (
v [2][2]*
o [2][2]) + (
v [2][3]*
o [3][2]);
-
468 m [2][3] = (
v [2][0]*
o [0][3]) + (
v [2][1]*
o [1][3]) + (
v [2][2]*
o [2][3]) + (
v [2][3]*
o [3][3]);
-
-
470 m [3][0] = (
v [3][0]*
o [0][0]) + (
v [3][1]*
o [1][0]) + (
v [3][2]*
o [2][0]) + (
v [3][3]*
o [3][0]);
-
471 m [3][1] = (
v [3][0]*
o [0][1]) + (
v [3][1]*
o [1][1]) + (
v [3][2]*
o [2][1]) + (
v [3][3]*
o [3][1]);
-
472 m [3][2] = (
v [3][0]*
o [0][2]) + (
v [3][1]*
o [1][2]) + (
v [3][2]*
o [2][2]) + (
v [3][3]*
o [3][2]);
-
473 m [3][3] = (
v [3][0]*
o [0][3]) + (
v [3][1]*
o [1][3]) + (
v [3][2]*
o [2][3]) + (
v [3][3]*
o [3][3]);
-
-
-
-
-
-
-
-
481 throw std::runtime_error(
"Dimension out of range! 0 <= n <= 4" );
-
-
-
-
-
-
-
488 for (std::size_t y = 0; y <
n ; y++)
-
489 for (std::size_t x = 0; x <
n ; x++)
-
-
491 if ((y !=
p ) && (x != q))
-
-
493 cofs[
i ][
j ] =
v [y][x];
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
514 throw std::runtime_error(
"Dimension out of range! 0 <= n <= 4" );
-
-
-
-
-
-
-
-
522 for (std::size_t x = 0; x <
n ; x++)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
536 throw std::runtime_error(
"Dimension out of range! 0 <= n <= 4" );
-
-
-
-
-
541 for (std::size_t
i = 0;
i <
n ;
i ++)
-
542 for (std::size_t
j = 0;
j <
n ;
j ++)
-
-
-
-
-
-
548 sign = ((
i +
j ) % 2 == 0) ? 1 : -1;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
564 throw std::runtime_error(
"Matrix3x3 not inversible!" );
-
-
-
-
568 for (std::size_t
i = 0;
i < 3;
i ++)
-
569 for (std::size_t
j = 0;
j < 3;
j ++)
-
570 inv[
i ][
j ] = adj[
i ][
j ] / det;
-
-
-
-
-
-
-
-
-
-
-
-
-
583 throw std::runtime_error(
"Matrix4x4 not inversible!" );
-
-
-
-
587 for (std::size_t
i = 0;
i < 4;
i ++)
-
588 for (std::size_t
j = 0;
j < 4;
j ++)
-
589 inv[
i ][
j ] = adj[
i ][
j ] / det;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
610 for (std::size_t
i = 0;
i < 4;
i ++)
-
611 for (std::size_t
j = 0;
j < 4;
j ++)
-
-
-
-
-
-
-
-
-
-
-
-
-
624 for (std::size_t y = 0; y < 4; y++)
-
-
626 for (std::size_t x = 0; x < 4; x++)
-
627 os <<
" | " << m[y][x];
-
-
629 os <<
" |" << std::endl;
-
-
-
-
-
-
-
-
-
-
639 for (std::size_t y = 0; y < 4; y++)
-
-
641 for (std::size_t x = 0; x < 4; x++)
-
642 os << L
" | " << m[y][x];
-
-
644 os << L
" |" << std::endl;
-
-
-
-
-
-
-
-Matrix4x4 Inverse4x4() const
Will return the full 4x4-inverse of this matrix.
-Matrix4x4 Adjoint(std::size_t n) const
Will return the adjoint of this matrix, by dimension n.
-bool operator==(const Matrix4x4 &other)
-Matrix4x4 operator+(const Matrix4x4 &other) const
Cellwise addition.
-
-void operator-=(const Matrix4x4 &other)
Cellwise subtraction.
-Matrix4x4 Transpose4x4() const
Will return the 4x4 transpose of this matrix.
-bool operator!=(const Matrix4x4 &other)
-
-std::array< double, 4 > & operator[](std::size_t y)
-Matrix4x4 DropTranslationComponents() const
Will return this Matrix4x4 with d,h,l being set to 0.
-void operator*=(const Matrix4x4 &other)
-Matrix4x4 Inverse3x3() const
Will return the 3x3-inverse of this matrix.
-Matrix4x4 operator/(const Matrix4x4 &other) const
-std::array< std::array< double, 4 >, 4 > v
Array holding the matrices values.
-Matrix4x4 operator*(const Matrix4x4 &other) const
-
-Vector3< double > Vector3d
-
-void operator=(const Matrix4x4 &other)
-
-A matrix 4x4 class representing a 3d transformation.
-bool IsInversible4x4() const
Will check if the entire matrix is inversible.
-bool Similar(const Matrix4x4 &other, double epsilon=0.00001) const
Will compare if two matrices are similar to a certain epsilon value.
-void operator/=(const Matrix4x4 &other)
-
-
-static constexpr bool Similar(const double a, const double b, const double epsilon=0.00001)
Compares two double values with a given accuracy.
-bool IsInversible3x3() const
Will check if the 3x3-component is inversible.
-Matrix4x4 Transpose3x3() const
Will return the 3x3 transpose of this matrix.
-std::ostream & operator<<(std::ostream &os, const Matrix4x4 &m)
-
-Matrix4x4 operator-(const Matrix4x4 &other) const
Cellwise subtraction.
-double Determinant(std::size_t n) const
Will return the determinant, by dimension n.
-
-void operator+=(const Matrix4x4 &other)
Cellwise addition.
-
-void SetTranslationComponent(const Vector3d &trans)
Will set d,h,l from a Vector3d(x,y,z)
-Matrix4x4 Multiply4x4(const Matrix4x4 &o) const
Will return the Matrix4x4 of an actual 4x4 multiplication. operator* only does a 3x3.
-
-
-Matrix4x4 GetCofactors(std::size_t p, std::size_t q, std::size_t n) const
Will return the cofactors of this matrix, by dimension n.
-const Vector3d GetTranslationComponent() const
Will return d,h,l as a Vector3d(x,y,z)
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Matrix4x4_8h.html b/Doxygen/build/Matrix4x4_8h.html
deleted file mode 100644
index 5028ec7..0000000
--- a/Doxygen/build/Matrix4x4_8h.html
+++ /dev/null
@@ -1,148 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Matrix4x4.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include <cstring>
-#include <array>
-#include <ostream>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-
-
-
-
diff --git a/Doxygen/build/Matrix4x4_8h__dep__incl.map b/Doxygen/build/Matrix4x4_8h__dep__incl.map
deleted file mode 100644
index 702c3aa..0000000
--- a/Doxygen/build/Matrix4x4_8h__dep__incl.map
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Matrix4x4_8h__dep__incl.md5 b/Doxygen/build/Matrix4x4_8h__dep__incl.md5
deleted file mode 100644
index 3a01bcf..0000000
--- a/Doxygen/build/Matrix4x4_8h__dep__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-5154dfffad2d15709c7dfb374c8ae661
\ No newline at end of file
diff --git a/Doxygen/build/Matrix4x4_8h__dep__incl.png b/Doxygen/build/Matrix4x4_8h__dep__incl.png
deleted file mode 100644
index c4d2384..0000000
Binary files a/Doxygen/build/Matrix4x4_8h__dep__incl.png and /dev/null differ
diff --git a/Doxygen/build/Matrix4x4_8h__incl.map b/Doxygen/build/Matrix4x4_8h__incl.map
deleted file mode 100644
index fdee30a..0000000
--- a/Doxygen/build/Matrix4x4_8h__incl.map
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
diff --git a/Doxygen/build/Matrix4x4_8h__incl.md5 b/Doxygen/build/Matrix4x4_8h__incl.md5
deleted file mode 100644
index 0c4deeb..0000000
--- a/Doxygen/build/Matrix4x4_8h__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-ab989368f6dcbdc7dd60a9f3b05fea6e
\ No newline at end of file
diff --git a/Doxygen/build/Matrix4x4_8h__incl.png b/Doxygen/build/Matrix4x4_8h__incl.png
deleted file mode 100644
index 3627873..0000000
Binary files a/Doxygen/build/Matrix4x4_8h__incl.png and /dev/null differ
diff --git a/Doxygen/build/Matrix4x4_8h_source.html b/Doxygen/build/Matrix4x4_8h_source.html
deleted file mode 100644
index 8358bcd..0000000
--- a/Doxygen/build/Matrix4x4_8h_source.html
+++ /dev/null
@@ -1,234 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Matrix4x4.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
44 std::array<std::array<double, 4>, 4>
v ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
73 std::array<double, 4>&
operator[] (std::size_t y);
-
74 const std::array<double, 4>&
operator[] (std::size_t y)
const ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Matrix4x4 Inverse4x4() const
Will return the full 4x4-inverse of this matrix.
-Matrix4x4 Adjoint(std::size_t n) const
Will return the adjoint of this matrix, by dimension n.
-bool operator==(const Matrix4x4 &other)
-Matrix4x4 operator+(const Matrix4x4 &other) const
Cellwise addition.
-
-void operator-=(const Matrix4x4 &other)
Cellwise subtraction.
-Matrix4x4 Transpose4x4() const
Will return the 4x4 transpose of this matrix.
-bool operator!=(const Matrix4x4 &other)
-Representation of a 3d vector.
-std::array< double, 4 > & operator[](std::size_t y)
-Matrix4x4 DropTranslationComponents() const
Will return this Matrix4x4 with d,h,l being set to 0.
-
-
-void operator*=(const Matrix4x4 &other)
-Matrix4x4 Inverse3x3() const
Will return the 3x3-inverse of this matrix.
-
-Matrix4x4 operator/(const Matrix4x4 &other) const
-std::array< std::array< double, 4 >, 4 > v
Array holding the matrices values.
-Matrix4x4 operator*(const Matrix4x4 &other) const
-Vector3< double > Vector3d
-void operator=(const Matrix4x4 &other)
-A matrix 4x4 class representing a 3d transformation.
-bool IsInversible4x4() const
Will check if the entire matrix is inversible.
-
-bool Similar(const Matrix4x4 &other, double epsilon=0.00001) const
Will compare if two matrices are similar to a certain epsilon value.
-
-void operator/=(const Matrix4x4 &other)
-friend std::ostream & operator<<(std::ostream &os, const Matrix4x4 &m)
-
-bool IsInversible3x3() const
Will check if the 3x3-component is inversible.
-Matrix4x4 Transpose3x3() const
Will return the 3x3 transpose of this matrix.
-
-Matrix4x4 operator-(const Matrix4x4 &other) const
Cellwise subtraction.
-double Determinant(std::size_t n) const
Will return the determinant, by dimension n.
-void operator+=(const Matrix4x4 &other)
Cellwise addition.
-
-void SetTranslationComponent(const Vector3d &trans)
Will set d,h,l from a Vector3d(x,y,z)
-
-Matrix4x4 Multiply4x4(const Matrix4x4 &o) const
Will return the Matrix4x4 of an actual 4x4 multiplication. operator* only does a 3x3.
-
-
-
-Matrix4x4 GetCofactors(std::size_t p, std::size_t q, std::size_t n) const
Will return the cofactors of this matrix, by dimension n.
-const Vector3d GetTranslationComponent() const
Will return d,h,l as a Vector3d(x,y,z)
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Quaternion_8cpp.html b/Doxygen/build/Quaternion_8cpp.html
deleted file mode 100644
index 2ef11a9..0000000
--- a/Doxygen/build/Quaternion_8cpp.html
+++ /dev/null
@@ -1,129 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Quaternion.cpp File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include "Quaternion.h "
-
#include "Constants.h "
-
#include <immintrin.h>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-
-
-
-
diff --git a/Doxygen/build/Quaternion_8cpp__incl.map b/Doxygen/build/Quaternion_8cpp__incl.map
deleted file mode 100644
index e2e3f3a..0000000
--- a/Doxygen/build/Quaternion_8cpp__incl.map
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Quaternion_8cpp__incl.md5 b/Doxygen/build/Quaternion_8cpp__incl.md5
deleted file mode 100644
index 292eb8c..0000000
--- a/Doxygen/build/Quaternion_8cpp__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-57d3a0062141f1640bb90bcf0db84cb2
\ No newline at end of file
diff --git a/Doxygen/build/Quaternion_8cpp__incl.png b/Doxygen/build/Quaternion_8cpp__incl.png
deleted file mode 100644
index 2d003b8..0000000
Binary files a/Doxygen/build/Quaternion_8cpp__incl.png and /dev/null differ
diff --git a/Doxygen/build/Quaternion_8cpp_source.html b/Doxygen/build/Quaternion_8cpp_source.html
deleted file mode 100644
index 6768fa0..0000000
--- a/Doxygen/build/Quaternion_8cpp_source.html
+++ /dev/null
@@ -1,476 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Quaternion.cpp Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
5 #ifndef _EULE_NO_INTRINSICS_
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
33 #ifndef _EULE_NO_INTRINSICS_
-
-
-
36 __m256d __vec = _mm256_set_pd(0, eulerRad.
z , eulerRad.
y , eulerRad.
x );
-
37 __vec = _mm256_mul_pd(__vec, _mm256_set1_pd(0.5));
-
-
39 __m256d __sin = _mm256_sincos_pd(&__cos, __vec);
-
-
-
-
-
-
45 _mm256_storeu_pd(sin, __sin);
-
46 _mm256_storeu_pd(cos, __cos);
-
-
48 __m256d __a = _mm256_set_pd(cos[0], cos[0], sin[0], cos[0]);
-
49 __m256d __b = _mm256_set_pd(cos[1], sin[1], cos[1], cos[1]);
-
50 __m256d __c = _mm256_set_pd(sin[2], cos[2], cos[2], cos[2]);
-
-
52 __m256d __d = _mm256_set_pd(sin[0], sin[0], cos[0], sin[0]);
-
53 __m256d __e = _mm256_set_pd(sin[1], cos[1], sin[1], sin[1]);
-
54 __m256d __f = _mm256_set_pd(cos[2], sin[2], sin[2], sin[2]);
-
-
-
-
58 __abc = _mm256_mul_pd(__a, __b);
-
59 __abc = _mm256_mul_pd(__abc, __c);
-
-
-
62 __def = _mm256_mul_pd(__d, __e);
-
63 __def = _mm256_mul_pd(__def, __f);
-
-
-
-
-
-
69 _mm256_storeu_pd(abc, __abc);
-
70 _mm256_storeu_pd(def, __def);
-
-
-
73 v.
w = abc[0] + def[0];
-
74 v.
x = abc[1] - def[1];
-
75 v.
y = abc[2] + def[2];
-
76 v.
z = abc[3] - def[3];
-
-
-
-
80 const double cy = cos(eulerRad.
z * 0.5);
-
81 const double sy = sin(eulerRad.
z * 0.5);
-
82 const double cp = cos(eulerRad.
y * 0.5);
-
83 const double sp = sin(eulerRad.
y * 0.5);
-
84 const double cr = cos(eulerRad.
x * 0.5);
-
85 const double sr = sin(eulerRad.
x * 0.5);
-
-
87 v.
w = cr * cp * cy + sr * sp * sy;
-
88 v.
x = sr * cp * cy - cr * sp * sy;
-
89 v.
y = cr * sp * cy + sr * cp * sy;
-
90 v.
z = cr * cp * sy - sr * sp * cy;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
114 v.
w * q.v.
x + v.
x * q.v.
w + v.
y * q.v.
z - v.
z * q.v.
y ,
-
115 v.
w * q.v.
y + v.
y * q.v.
w + v.
z * q.v.
x - v.
x * q.v.
z ,
-
116 v.
w * q.v.
z + v.
z * q.v.
w + v.
x * q.v.
y - v.
y * q.v.
x ,
-
117 v.
w * q.v.
w - v.
x * q.v.
x - v.
y * q.v.
y - v.
z * q.v.
z
-
-
-
-
-
-
-
-
-
-
-
128 return ((*
this ) * (q.
Inverse ()));
-
-
-
-
-
-
-
-
136 v.
x = bufr.
w * q.v.
x + bufr.
x * q.v.
w + bufr.
y * q.v.
z - bufr.
z * q.v.
y ;
-
137 v.
y = bufr.
w * q.v.
y + bufr.
y * q.v.
w + bufr.
z * q.v.
x - bufr.
x * q.v.
z ;
-
138 v.
z = bufr.
w * q.v.
z + bufr.
z * q.v.
w + bufr.
x * q.v.
y - bufr.
y * q.v.
x ;
-
139 v.
w = bufr.
w * q.v.
w - bufr.
x * q.v.
x - bufr.
y * q.v.
y - bufr.
z * q.v.
z ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
156 (*this) = (*this) * q.
Inverse ();
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
177 if (!isCacheUpToDate_inverse)
-
-
-
-
181 isCacheUpToDate_inverse =
true ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
217 if (!isCacheUpToDate_euler)
-
-
-
-
221 double sinr_cosp = 2.0 * (v.
w * v.
x + v.
y * v.
z );
-
222 double cosr_cosp = 1.0 - 2.0 * (v.
x * v.
x + v.
y * v.
y );
-
223 euler.
x = std::atan2(sinr_cosp, cosr_cosp);
-
-
-
226 double sinp = 2.0 * (v.
w * v.
y - v.
z * v.
x );
-
227 if (std::abs(sinp) >= 1)
-
228 euler.
y = std::copysign(
PI / 2, sinp);
-
-
230 euler.
y = std::asin(sinp);
-
-
-
233 double siny_cosp = 2.0 * (v.
w * v.
z + v.
x * v.
y );
-
234 double cosy_cosp = 1.0 - 2.0 * (v.
y * v.
y + v.
z * v.
z );
-
235 euler.
z = std::atan2(siny_cosp, cosy_cosp);
-
-
-
-
-
240 isCacheUpToDate_matrix =
true ;
-
-
-
-
-
-
-
-
248 if (!isCacheUpToDate_matrix)
-
-
-
-
252 const double sqx = v.
x * v.
x ;
-
253 const double sqy = v.
y * v.
y ;
-
254 const double sqz = v.
z * v.
z ;
-
255 const double sqw = v.
w * v.
w ;
-
256 const double x = v.
x ;
-
257 const double y = v.
y ;
-
258 const double z = v.
z ;
-
259 const double w = v.
w ;
-
-
-
262 double invs = 1.0 / (sqx + sqy + sqz + sqw);
-
-
-
-
-
267 m.
c = ((2 * x * z) - (2 * w * y)) * invs;
-
268 m.
f = (1 - (2 * sqx) - (2 * sqz)) * invs;
-
269 m.
i = ((2 * x * z) + (2 * w * y)) * invs;
-
-
-
272 m.
a = (1 - (2 * sqy) - (2 * sqz)) * invs;
-
273 m.
g = ((2 * y * z) + (2 * w * x)) * invs;
-
274 m.
j = ((2 * y * z) - (2 * w * x)) * invs;
-
-
-
277 m.
b = ((2 * x * v.
y ) + (2 * w * z)) * invs;
-
278 m.
e = ((2 * x * v.
y ) - (2 * w * z)) * invs;
-
279 m.
k = (1 - (2 * sqx) - (2 * sqy)) * invs;
-
-
-
-
-
284 isCacheUpToDate_matrix =
true ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
314 void Quaternion::InvalidateCache()
-
-
316 isCacheUpToDate_euler =
false ;
-
317 isCacheUpToDate_matrix =
false ;
-
318 isCacheUpToDate_inverse =
false ;
-
-
-
-
-
-
-
-
-
327 os <<
"[" << q.v <<
"]" ;
-
-
-
-
-
-
333 os << L
"[" << q.v << L
"]" ;
-
-
-
-
-Quaternion operator/(Quaternion &q) const
Divides (applies)
-
-Matrix4x4 ToRotationMatrix() const
Will return a rotation matrix representing this Quaternions rotation.
-Vector4d GetRawValues() const
Will return the raw four-dimensional values.
-static constexpr double PI
Pi up to 50 decimal places.
-
-Quaternion AngleBetween(const Quaternion &other) const
Will return the value between two Quaternion's as another Quaternion.
-
-Quaternion Lerp(const Quaternion &other, double t) const
Will return the lerp result between two quaternions.
-
-Quaternion UnitQuaternion() const
-
-
-Vector4< double > Vector4d
-
-
-Vector3d ToEulerAngles() const
Will return euler angles representing this Quaternion's rotation.
-static constexpr double Deg2Rad
Factor to convert degrees to radians.
-
-Vector4< double > Lerp(const Vector4< T > &other, double t) const
Will return a lerp result between this and another vector.
-Quaternion operator=(const Quaternion &q)
Copies.
-
-
-
-Quaternion operator*(const Quaternion &q) const
Multiplies (applies)
-A matrix 4x4 class representing a 3d transformation.
-
-Quaternion & operator*=(const Quaternion &q)
Also multiplies.
-bool Similar(const Vector4< T > &other, double epsilon=0.00001) const
Will compare if two vectors are similar to a certain epsilon value.
-
-void SetRawValues(const Vector4d values)
Will set the raw four-dimensional values.
-double Magnitude() const
Will compute the magnitude.
-
-
-
-Vector3d RotateVector(const Vector3d &vec) const
Will rotate a vector by this quaternion.
-double SqrMagnitude() const
Will compute the square magnitude.
-
-std::ostream & operator<<(std::ostream &os, const Matrix4x4 &m)
-static constexpr double Rad2Deg
Factor to convert radians to degrees.
-Quaternion Conjugate() const
-Quaternion Inverse() const
-bool operator==(const Quaternion &q) const
-
-3D rotation representation
-
-
-bool operator!=(const Quaternion &q) const
-Quaternion & operator/=(const Quaternion &q)
Also divides.
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Quaternion_8h.html b/Doxygen/build/Quaternion_8h.html
deleted file mode 100644
index 06407f5..0000000
--- a/Doxygen/build/Quaternion_8h.html
+++ /dev/null
@@ -1,134 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Quaternion.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include "Vector3.h "
-
#include "Vector4.h "
-
#include "Matrix4x4.h "
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-
-
-
-
diff --git a/Doxygen/build/Quaternion_8h__dep__incl.map b/Doxygen/build/Quaternion_8h__dep__incl.map
deleted file mode 100644
index 6c700c6..0000000
--- a/Doxygen/build/Quaternion_8h__dep__incl.map
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
diff --git a/Doxygen/build/Quaternion_8h__dep__incl.md5 b/Doxygen/build/Quaternion_8h__dep__incl.md5
deleted file mode 100644
index 513a0cb..0000000
--- a/Doxygen/build/Quaternion_8h__dep__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-0219cd7956ac16cdc9c91c9605d3285a
\ No newline at end of file
diff --git a/Doxygen/build/Quaternion_8h__dep__incl.png b/Doxygen/build/Quaternion_8h__dep__incl.png
deleted file mode 100644
index 542be95..0000000
Binary files a/Doxygen/build/Quaternion_8h__dep__incl.png and /dev/null differ
diff --git a/Doxygen/build/Quaternion_8h__incl.map b/Doxygen/build/Quaternion_8h__incl.map
deleted file mode 100644
index 774d6a5..0000000
--- a/Doxygen/build/Quaternion_8h__incl.map
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Quaternion_8h__incl.md5 b/Doxygen/build/Quaternion_8h__incl.md5
deleted file mode 100644
index b35b1f6..0000000
--- a/Doxygen/build/Quaternion_8h__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-634a4ab00421470b51e923cdf9e8b35f
\ No newline at end of file
diff --git a/Doxygen/build/Quaternion_8h__incl.png b/Doxygen/build/Quaternion_8h__incl.png
deleted file mode 100644
index 7dc20f0..0000000
Binary files a/Doxygen/build/Quaternion_8h__incl.png and /dev/null differ
diff --git a/Doxygen/build/Quaternion_8h_source.html b/Doxygen/build/Quaternion_8h_source.html
deleted file mode 100644
index 1c49620..0000000
--- a/Doxygen/build/Quaternion_8h_source.html
+++ /dev/null
@@ -1,194 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Quaternion.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
86 void InvalidateCache();
-
-
-
89 mutable bool isCacheUpToDate_euler =
false ;
-
-
-
92 mutable bool isCacheUpToDate_matrix =
false ;
-
-
-
95 mutable bool isCacheUpToDate_inverse =
false ;
-
-
-
-
-
-Quaternion operator/(Quaternion &q) const
Divides (applies)
-Matrix4x4 ToRotationMatrix() const
Will return a rotation matrix representing this Quaternions rotation.
-Vector4d GetRawValues() const
Will return the raw four-dimensional values.
-Quaternion AngleBetween(const Quaternion &other) const
Will return the value between two Quaternion's as another Quaternion.
-
-Quaternion Lerp(const Quaternion &other, double t) const
Will return the lerp result between two quaternions.
-Quaternion UnitQuaternion() const
-Vector3d ToEulerAngles() const
Will return euler angles representing this Quaternion's rotation.
-Quaternion operator=(const Quaternion &q)
Copies.
-
-
-Quaternion operator*(const Quaternion &q) const
Multiplies (applies)
-A matrix 4x4 class representing a 3d transformation.
-Quaternion & operator*=(const Quaternion &q)
Also multiplies.
-void SetRawValues(const Vector4d values)
Will set the raw four-dimensional values.
-
-Vector3d RotateVector(const Vector3d &vec) const
Will rotate a vector by this quaternion.
-
-
-Quaternion Conjugate() const
-Quaternion Inverse() const
-bool operator==(const Quaternion &q) const
-friend std::ostream & operator<<(std::ostream &os, const Quaternion &q)
-3D rotation representation
-bool operator!=(const Quaternion &q) const
-Quaternion & operator/=(const Quaternion &q)
Also divides.
-
-
-
-
-
-
diff --git a/Doxygen/build/Rect_8h.html b/Doxygen/build/Rect_8h.html
deleted file mode 100644
index 8c90be9..0000000
--- a/Doxygen/build/Rect_8h.html
+++ /dev/null
@@ -1,117 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Rect.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Rect_8h__incl.map b/Doxygen/build/Rect_8h__incl.map
deleted file mode 100644
index bb6e123..0000000
--- a/Doxygen/build/Rect_8h__incl.map
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
diff --git a/Doxygen/build/Rect_8h__incl.md5 b/Doxygen/build/Rect_8h__incl.md5
deleted file mode 100644
index fa4dce9..0000000
--- a/Doxygen/build/Rect_8h__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-5b67ebb9ac1fb7c31a00bb159f2570b2
\ No newline at end of file
diff --git a/Doxygen/build/Rect_8h__incl.png b/Doxygen/build/Rect_8h__incl.png
deleted file mode 100644
index 7dc6251..0000000
Binary files a/Doxygen/build/Rect_8h__incl.png and /dev/null differ
diff --git a/Doxygen/build/Rect_8h_source.html b/Doxygen/build/Rect_8h_source.html
deleted file mode 100644
index 22ec769..0000000
--- a/Doxygen/build/Rect_8h_source.html
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Rect.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
2 #include "../Eule/Vector2.h"
-
-
-
-
-
-
-
-
-
-
-Trivial data structure representing a rectangle.
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8cpp.html b/Doxygen/build/TrapazoidalPrismCollider_8cpp.html
deleted file mode 100644
index db68681..0000000
--- a/Doxygen/build/TrapazoidalPrismCollider_8cpp.html
+++ /dev/null
@@ -1,109 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/TrapazoidalPrismCollider.cpp File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-
-
-
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8cpp__incl.map b/Doxygen/build/TrapazoidalPrismCollider_8cpp__incl.map
deleted file mode 100644
index 0ead1cb..0000000
--- a/Doxygen/build/TrapazoidalPrismCollider_8cpp__incl.map
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8cpp__incl.md5 b/Doxygen/build/TrapazoidalPrismCollider_8cpp__incl.md5
deleted file mode 100644
index 8ece64c..0000000
--- a/Doxygen/build/TrapazoidalPrismCollider_8cpp__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-35039ee1e3ae4141890e6d8a89d1e486
\ No newline at end of file
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8cpp__incl.png b/Doxygen/build/TrapazoidalPrismCollider_8cpp__incl.png
deleted file mode 100644
index 19f4f0c..0000000
Binary files a/Doxygen/build/TrapazoidalPrismCollider_8cpp__incl.png and /dev/null differ
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8cpp_source.html b/Doxygen/build/TrapazoidalPrismCollider_8cpp_source.html
deleted file mode 100644
index ffdb8b0..0000000
--- a/Doxygen/build/TrapazoidalPrismCollider_8cpp_source.html
+++ /dev/null
@@ -1,213 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/TrapazoidalPrismCollider.cpp Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
-
-
-
-
12 vertices = other.vertices;
-
13 faceNormals = other.faceNormals;
-
-
-
-
-
-
-
20 vertices = std::move(other.vertices);
-
21 faceNormals = std::move(other.faceNormals);
-
-
-
-
-
-
-
28 return vertices[index];
-
-
-
-
-
33 vertices[index] = value;
-
34 GenerateNormalsFromVertices();
-
-
-
-
38 void TrapazoidalPrismCollider::GenerateNormalsFromVertices()
-
-
40 faceNormals[(std::size_t)FACE_NORMALS::LEFT] =
-
-
-
-
44 faceNormals[(std::size_t)FACE_NORMALS::RIGHT] =
-
-
-
-
48 faceNormals[(std::size_t)FACE_NORMALS::FRONT] =
-
-
-
-
52 faceNormals[(std::size_t)FACE_NORMALS::BACK] =
-
-
-
-
56 faceNormals[(std::size_t)FACE_NORMALS::TOP] =
-
-
-
-
60 faceNormals[(std::size_t)FACE_NORMALS::BOTTOM] =
-
-
-
-
-
-
-
67 double TrapazoidalPrismCollider::FaceDot(FACE_NORMALS face,
const Vector3d & point)
const
-
-
-
70 std::size_t coreVertexIdx;
-
-
-
73 case FACE_NORMALS::LEFT:
-
-
-
-
77 case FACE_NORMALS::RIGHT:
-
-
-
-
81 case FACE_NORMALS::FRONT:
-
-
-
-
85 case FACE_NORMALS::BACK:
-
-
-
-
89 case FACE_NORMALS::TOP:
-
-
-
-
93 case FACE_NORMALS::BOTTOM:
-
-
-
-
-
98 if ((std::size_t)face < 6)
-
99 return faceNormals[(std::size_t)face].DotProduct(point - vertices[coreVertexIdx]);
-
-
-
-
-
-
105 for (std::size_t i = 0; i < 6; i++)
-
106 if (FaceDot((FACE_NORMALS)i, point) < 0)
-
-
-
-
-
-static constexpr std::size_t RIGHT
-
-static constexpr std::size_t BACK
-
-static constexpr std::size_t FRONT
-static constexpr std::size_t BOTTOM
-void operator=(const TrapazoidalPrismCollider &other)
-static constexpr std::size_t LEFT
-void SetVertex(std::size_t index, const Vector3d value)
Will set the value of a specific vertex.
-bool Contains(const Vector3d &point) const override
Tests, if this Collider contains a point.
-A collider describing a trapazoidal prism.
-TrapazoidalPrismCollider()
-const Vector3d & GetVertex(std::size_t index) const
Will return a specific vertex.
-static constexpr std::size_t TOP
-
-
-
-
-
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8h.html b/Doxygen/build/TrapazoidalPrismCollider_8h.html
deleted file mode 100644
index 439dd56..0000000
--- a/Doxygen/build/TrapazoidalPrismCollider_8h.html
+++ /dev/null
@@ -1,134 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/TrapazoidalPrismCollider.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include "Vector3.h "
-
#include "Collider.h "
-
#include <array>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-
-
-
-
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8h__dep__incl.map b/Doxygen/build/TrapazoidalPrismCollider_8h__dep__incl.map
deleted file mode 100644
index 2f2c4ce..0000000
--- a/Doxygen/build/TrapazoidalPrismCollider_8h__dep__incl.map
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8h__dep__incl.md5 b/Doxygen/build/TrapazoidalPrismCollider_8h__dep__incl.md5
deleted file mode 100644
index 7b5ae4c..0000000
--- a/Doxygen/build/TrapazoidalPrismCollider_8h__dep__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-454e47315f9721a30455a4d878793baf
\ No newline at end of file
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8h__dep__incl.png b/Doxygen/build/TrapazoidalPrismCollider_8h__dep__incl.png
deleted file mode 100644
index b277e77..0000000
Binary files a/Doxygen/build/TrapazoidalPrismCollider_8h__dep__incl.png and /dev/null differ
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8h__incl.map b/Doxygen/build/TrapazoidalPrismCollider_8h__incl.map
deleted file mode 100644
index bdf82b8..0000000
--- a/Doxygen/build/TrapazoidalPrismCollider_8h__incl.map
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8h__incl.md5 b/Doxygen/build/TrapazoidalPrismCollider_8h__incl.md5
deleted file mode 100644
index 140b189..0000000
--- a/Doxygen/build/TrapazoidalPrismCollider_8h__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-0a77a0b440c18a81fcd925c01f564edc
\ No newline at end of file
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8h__incl.png b/Doxygen/build/TrapazoidalPrismCollider_8h__incl.png
deleted file mode 100644
index ccb508b..0000000
Binary files a/Doxygen/build/TrapazoidalPrismCollider_8h__incl.png and /dev/null differ
diff --git a/Doxygen/build/TrapazoidalPrismCollider_8h_source.html b/Doxygen/build/TrapazoidalPrismCollider_8h_source.html
deleted file mode 100644
index 79e9dc3..0000000
--- a/Doxygen/build/TrapazoidalPrismCollider_8h_source.html
+++ /dev/null
@@ -1,158 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/TrapazoidalPrismCollider.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
32 static constexpr std::size_t
BACK = 0;
-
33 static constexpr std::size_t
FRONT = 4;
-
34 static constexpr std::size_t
LEFT = 0;
-
35 static constexpr std::size_t
RIGHT = 2;
-
36 static constexpr std::size_t
BOTTOM = 0;
-
37 static constexpr std::size_t
TOP = 1;
-
-
-
40 enum class FACE_NORMALS : std::size_t;
-
-
43 void GenerateNormalsFromVertices();
-
-
46 double FaceDot(FACE_NORMALS face, const Vector3d& point) const;
-
-
48 std::array<Vector3d, 8> vertices;
-
-
-
-
52 enum class FACE_NORMALS : std::size_t
-
-
-
-
-
-
-
-
-
61 std::array<Vector3d, 6> faceNormals;
-
-
-
-static constexpr std::size_t RIGHT
-Abstract class of a collider domain.
-static constexpr std::size_t BACK
-
-static constexpr std::size_t FRONT
-static constexpr std::size_t BOTTOM
-void operator=(const TrapazoidalPrismCollider &other)
-static constexpr std::size_t LEFT
-void SetVertex(std::size_t index, const Vector3d value)
Will set the value of a specific vertex.
-bool Contains(const Vector3d &point) const override
Tests, if this Collider contains a point.
-
-A collider describing a trapazoidal prism.
-TrapazoidalPrismCollider()
-const Vector3d & GetVertex(std::size_t index) const
Will return a specific vertex.
-
-static constexpr std::size_t TOP
-
-
-
-
-
diff --git a/Doxygen/build/Vector2_8cpp.html b/Doxygen/build/Vector2_8cpp.html
deleted file mode 100644
index d395002..0000000
--- a/Doxygen/build/Vector2_8cpp.html
+++ /dev/null
@@ -1,119 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Vector2.cpp File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include "Vector2.h "
-
#include "Math.h "
-
#include <iostream>
-
#include <immintrin.h>
-
#include "Vector3.h "
-
#include "Vector4.h "
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-
-
-
diff --git a/Doxygen/build/Vector2_8cpp__incl.map b/Doxygen/build/Vector2_8cpp__incl.map
deleted file mode 100644
index 4c2de4a..0000000
--- a/Doxygen/build/Vector2_8cpp__incl.map
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Vector2_8cpp__incl.md5 b/Doxygen/build/Vector2_8cpp__incl.md5
deleted file mode 100644
index 67ab26c..0000000
--- a/Doxygen/build/Vector2_8cpp__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-deda7dfc8579dff3057c04f6c146a99e
\ No newline at end of file
diff --git a/Doxygen/build/Vector2_8cpp__incl.png b/Doxygen/build/Vector2_8cpp__incl.png
deleted file mode 100644
index eecfd00..0000000
Binary files a/Doxygen/build/Vector2_8cpp__incl.png and /dev/null differ
diff --git a/Doxygen/build/Vector2_8cpp_source.html b/Doxygen/build/Vector2_8cpp_source.html
deleted file mode 100644
index de69a53..0000000
--- a/Doxygen/build/Vector2_8cpp_source.html
+++ /dev/null
@@ -1,802 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Vector2.cpp Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
6 #ifndef _EULE_NO_INTRINSICS_
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
24 #ifndef _EULE_NO_INTRINSICS_
-
-
-
27 __m256 __vector_self = _mm256_set_ps(0,0,0,0,0,0, (
float )y, (
float )x);
-
28 __m256 __vector_other = _mm256_set_ps(0,0,0,0,0,0, (
float )other.
y , (
float )other.
x );
-
-
-
31 const int mask = 0x31;
-
32 __m256 __dot = _mm256_dp_ps(__vector_self, __vector_other, mask);
-
-
-
-
36 _mm256_storeu_ps(result, __dot);
-
-
-
-
-
41 return (x * other.
x ) +
-
-
-
-
-
-
-
-
49 int iDot = (x * other.
x ) +
-
-
-
-
-
-
-
-
-
-
-
60 return (x * other.
y ) -
-
-
-
-
-
-
-
67 int iCross = (x * other.
y ) -
-
-
-
70 return (
double )iCross;
-
-
-
-
-
-
-
-
-
79 return DotProduct(*
this );
-
-
-
-
-
-
85 int iSqrMag = x*x + y*y;
-
86 return (
double )iSqrMag;
-
-
-
-
-
-
92 return sqrt(SqrMagnitude());
-
-
-
-
-
-
-
99 #ifndef _EULE_NO_INTRINSICS_
-
-
-
102 __m256d __vector_self = _mm256_set_pd(0, 0, y, x);
-
103 __m256d __vector_scalar = _mm256_set_pd(0, 0, scalar.
y , scalar.
x );
-
-
-
106 __m256d __product = _mm256_mul_pd(__vector_self, __vector_scalar);
-
-
-
-
110 _mm256_storeu_pd(result, __product);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
148 double length = Magnitude();
-
-
-
-
-
-
-
-
-
-
158 #ifndef _EULE_NO_INTRINSICS_
-
-
-
161 __m256d __vec = _mm256_set_pd(0, 0, y, x);
-
162 __m256d __len = _mm256_set1_pd(length);
-
-
-
165 __m256d __prod = _mm256_div_pd(__vec, __len);
-
-
-
-
169 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
189 std::cerr <<
"Stop normalizing int-vectors!!" << std::endl;
-
-
-
-
-
-
-
-
-
-
-
200 const double it = 1.0 - t;
-
-
202 #ifndef _EULE_NO_INTRINSICS_
-
-
-
205 __m256d __vector_self = _mm256_set_pd(0, 0, y, x);
-
206 __m256d __vector_other = _mm256_set_pd(0, 0, other.
y , other.
x );
-
207 __m256d __t = _mm256_set1_pd(t);
-
208 __m256d __it = _mm256_set1_pd(it);
-
-
-
-
-
213 __m256d __sum = _mm256_set1_pd(0);
-
-
215 __sum = _mm256_fmadd_pd(__vector_self, __it, __sum);
-
216 __sum = _mm256_fmadd_pd(__vector_other, __t, __sum);
-
-
-
-
220 _mm256_storeu_pd(sum, __sum);
-
-
-
-
-
-
-
227 x = it * x + t * other.
x ;
-
228 y = it * y + t * other.
y ;
-
-
-
-
-
-
-
-
-
-
-
-
240 const double it = 1.0 - t;
-
-
242 x = (int)(it * (
double )x + t * (double)other.
x );
-
243 y = (int)(it * (
double )y + t * (double)other.
y );
-
-
-
-
-
-
-
-
251 copy.LerpSelf(other, t);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
276 throw std::out_of_range(
"Array descriptor on Vector2<T> out of range!" );
-
-
-
-
-
-
-
-
-
-
-
-
-
-
290 throw std::out_of_range(
"Array descriptor on Vector2<T> out of range!" );
-
-
-
-
-
-
-
-
298 (::Math::Similar(x, other.
x , epsilon)) &&
-
299 (::Math::Similar(y, other.
y , epsilon))
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
318 #ifndef _EULE_NO_INTRINSICS_
-
-
-
321 __m256d __vector_self = _mm256_set_pd(0, 0, y, x);
-
322 __m256d __vector_other = _mm256_set_pd(0, 0, other.
y , other.
x );
-
-
-
325 __m256d __sum = _mm256_add_pd(__vector_self, __vector_other);
-
-
-
-
329 _mm256_storeu_pd(sum, __sum);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
358 #ifndef _EULE_NO_INTRINSICS_
-
-
-
361 __m256d __vector_self = _mm256_set_pd(0, 0, y, x);
-
362 __m256d __vector_other = _mm256_set_pd(0, 0, other.
y , other.
x );
-
-
-
365 __m256d __sum = _mm256_add_pd(__vector_self, __vector_other);
-
-
-
-
369 _mm256_storeu_pd(sum, __sum);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
396 #ifndef _EULE_NO_INTRINSICS_
-
-
-
399 __m256d __vector_self = _mm256_set_pd(0, 0, y, x);
-
400 __m256d __vector_other = _mm256_set_pd(0, 0, other.
y , other.
x );
-
-
-
403 __m256d __diff = _mm256_sub_pd(__vector_self, __vector_other);
-
-
-
-
407 _mm256_storeu_pd(diff, __diff);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
436 #ifndef _EULE_NO_INTRINSICS_
-
-
-
439 __m256d __vector_self = _mm256_set_pd(0, 0, y, x);
-
440 __m256d __vector_other = _mm256_set_pd(0, 0, other.
y , other.
x );
-
-
-
443 __m256d __diff = _mm256_sub_pd(__vector_self, __vector_other);
-
-
-
-
447 _mm256_storeu_pd(diff, __diff);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
474 #ifndef _EULE_NO_INTRINSICS_
-
-
-
477 __m256d __vector_self = _mm256_set_pd(0, 0, y, x);
-
478 __m256d __scalar = _mm256_set1_pd(scale);
-
-
-
481 __m256d __prod = _mm256_mul_pd(__vector_self, __scalar);
-
-
-
-
485 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
515 #ifndef _EULE_NO_INTRINSICS_
-
-
-
518 __m256d __vector_self = _mm256_set_pd(0, 0, y, x);
-
519 __m256d __scalar = _mm256_set1_pd(scale);
-
-
-
522 __m256d __prod = _mm256_mul_pd(__vector_self, __scalar);
-
-
-
-
526 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
553 #ifndef _EULE_NO_INTRINSICS_
-
-
-
556 __m256d __vector_self = _mm256_set_pd(0, 0, y, x);
-
557 __m256d __scalar = _mm256_set1_pd(scale);
-
-
-
560 __m256d __prod = _mm256_div_pd(__vector_self, __scalar);
-
-
-
-
564 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
594 #ifndef _EULE_NO_INTRINSICS_
-
-
-
597 __m256d __vector_self = _mm256_set_pd(0, 0, y, x);
-
598 __m256d __scalar = _mm256_set1_pd(scale);
-
-
-
601 __m256d __prod = _mm256_div_pd(__vector_self, __scalar);
-
-
-
-
605 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
641 x = std::move(other.
x );
-
642 y = std::move(other.
y );
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
658 return !operator==(other);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
689 template <
typename T>
-
-
691 template <
typename T>
-
-
693 template <
typename T>
-
-
695 template <
typename T>
-
-
697 template <
typename T>
-
-
699 template <
typename T>
-
-
-double DotProduct(const Vector2< T > &other) const
Will compute the dot product to another Vector2.
-Representation of a 3d vector.
-
-Vector2< double > ToDouble() const
Will convert this vector to a Vector2d.
-
-void NormalizeSelf()
Will normalize this vector.
-
-
-
-
-
-
-void LerpSelf(const Vector2< T > &other, double t)
Will lerp itself towards other by t.
-Representation of a 4d vector.
-
-
-
-
diff --git a/Doxygen/build/Vector2_8h.html b/Doxygen/build/Vector2_8h.html
deleted file mode 100644
index a8d925d..0000000
--- a/Doxygen/build/Vector2_8h.html
+++ /dev/null
@@ -1,143 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Vector2.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include <cstdlib>
-#include <sstream>
-
-
Go to the source code of this file.
-
-
-
-
-
-
diff --git a/Doxygen/build/Vector2_8h__dep__incl.map b/Doxygen/build/Vector2_8h__dep__incl.map
deleted file mode 100644
index b7acf5c..0000000
--- a/Doxygen/build/Vector2_8h__dep__incl.map
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Vector2_8h__dep__incl.md5 b/Doxygen/build/Vector2_8h__dep__incl.md5
deleted file mode 100644
index 00b2a8b..0000000
--- a/Doxygen/build/Vector2_8h__dep__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-51ead09597156a62231b4f13138c94a8
\ No newline at end of file
diff --git a/Doxygen/build/Vector2_8h__dep__incl.png b/Doxygen/build/Vector2_8h__dep__incl.png
deleted file mode 100644
index e20c662..0000000
Binary files a/Doxygen/build/Vector2_8h__dep__incl.png and /dev/null differ
diff --git a/Doxygen/build/Vector2_8h__incl.map b/Doxygen/build/Vector2_8h__incl.map
deleted file mode 100644
index fc3c55e..0000000
--- a/Doxygen/build/Vector2_8h__incl.map
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
diff --git a/Doxygen/build/Vector2_8h__incl.md5 b/Doxygen/build/Vector2_8h__incl.md5
deleted file mode 100644
index 43ba1de..0000000
--- a/Doxygen/build/Vector2_8h__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-16a3daa708990df0b2edd4c5f8400b48
\ No newline at end of file
diff --git a/Doxygen/build/Vector2_8h__incl.png b/Doxygen/build/Vector2_8h__incl.png
deleted file mode 100644
index a9c69d4..0000000
Binary files a/Doxygen/build/Vector2_8h__incl.png and /dev/null differ
diff --git a/Doxygen/build/Vector2_8h_source.html b/Doxygen/build/Vector2_8h_source.html
deleted file mode 100644
index 1569dea..0000000
--- a/Doxygen/build/Vector2_8h_source.html
+++ /dev/null
@@ -1,216 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Vector2.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
7 template <
typename T>
class Vector3;
-
-
-
-
-
-
-
-
-
19 Vector2 (
const Vector2<T>& other) =
default ;
-
20 Vector2 (Vector2<T>&& other) noexcept =
default ;
-
-
23 double DotProduct (
const Vector2<T>& other)
const ;
-
-
-
-
-
-
-
-
35 [[nodiscard]] Vector2<double>
Normalize ()
const ;
-
-
-
-
41 Vector2<T>
VectorScale (
const Vector2<T>& scalar)
const ;
-
-
44 void LerpSelf (
const Vector2<T>& other,
double t);
-
-
47 [[nodiscard]] Vector2<double>
Lerp (
const Vector2<T>& other,
double t)
const ;
-
-
50 [[nodiscard]]
bool Similar (
const Vector2<T>& other,
double epsilon = 0.00001)
const ;
-
-
53 [[nodiscard]] Vector2<int>
ToInt ()
const ;
-
-
56 [[nodiscard]] Vector2<double>
ToDouble ()
const ;
-
-
-
-
-
61 Vector2<T>
operator+ (
const Vector2<T>& other)
const ;
-
-
63 Vector2<T>
operator- (
const Vector2<T>& other)
const ;
-
-
65 Vector2<T>
operator* (
const T scale)
const ;
-
-
67 Vector2<T>
operator/ (
const T scale)
const ;
-
-
-
-
71 operator Vector3<T>()
const ;
-
72 operator Vector4<T>()
const ;
-
-
-
75 void operator= (Vector2<T>&& other) noexcept;
-
-
77 bool operator== (
const Vector2<T>& other)
const ;
-
78 bool operator!= (
const Vector2<T>& other)
const ;
-
-
-
-
82 return os <<
"[x: " << v.
x <<
" y: " << v.
y <<
"]" ;
-
-
-
-
86 return os << L
"[x: " << v.
x << L
" y: " << v.
y << L
"]" ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Vector2< double > Normalize() const
Will return the normalization of this vector.
-bool operator!=(const Vector2< T > &other) const
-
-Vector2< T > operator+(const Vector2< T > &other) const
-void operator+=(const Vector2< T > &other)
-double DotProduct(const Vector2< T > &other) const
Will compute the dot product to another Vector2.
-static const Vector2< double > left
-static const Vector2< double > up
-double Magnitude() const
Will compute the magnitude.
-void operator*=(const T scale)
-Vector2< T > operator/(const T scale) const
-static const Vector2< double > zero
-Vector2< T > VectorScale(const Vector2< T > &scalar) const
Will scale self.n by scalar.n.
-Vector2< int > ToInt() const
Will convert this vector to a Vector2i.
-
-T & operator[](std::size_t idx)
-static const Vector2< double > one
-Vector2< T > operator*(const T scale) const
-void operator/=(const T scale)
-double SqrMagnitude() const
Will compute the square magnitude.
-Vector2< double > Lerp(const Vector2< T > &other, double t) const
Will return a lerp result between this and another vector.
-double CrossProduct(const Vector2< T > &other) const
Will compute the cross product to another Vector2.
-Vector2< double > ToDouble() const
Will convert this vector to a Vector2d.
-void NormalizeSelf()
Will normalize this vector.
-Vector2< T > operator-() const
-friend std::ostream & operator<<(std::ostream &os, const Vector2< T > &v)
-Representation of a 2d vector.
-Vector2< double > Vector2d
-void operator=(const Vector2< T > &other)
Conversion method.
-
-
-bool Similar(const Vector2< T > &other, double epsilon=0.00001) const
Will compare if two vectors are similar to a certain epsilon value.
-static const Vector2< double > right
-void operator-=(const Vector2< T > &other)
-static const Vector2< double > down
-bool operator==(const Vector2< T > &other) const
-
-void LerpSelf(const Vector2< T > &other, double t)
Will lerp itself towards other by t.
-Representation of a 4d vector.
-
-
-
-
-
diff --git a/Doxygen/build/Vector3_8cpp.html b/Doxygen/build/Vector3_8cpp.html
deleted file mode 100644
index b2c929a..0000000
--- a/Doxygen/build/Vector3_8cpp.html
+++ /dev/null
@@ -1,119 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Vector3.cpp File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include "Vector3.h "
-
#include "Math.h "
-
#include <iostream>
-
#include <immintrin.h>
-
#include "Vector2.h "
-
#include "Vector4.h "
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-
-
-
diff --git a/Doxygen/build/Vector3_8cpp__incl.map b/Doxygen/build/Vector3_8cpp__incl.map
deleted file mode 100644
index fee91e1..0000000
--- a/Doxygen/build/Vector3_8cpp__incl.map
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Vector3_8cpp__incl.md5 b/Doxygen/build/Vector3_8cpp__incl.md5
deleted file mode 100644
index 2cda40e..0000000
--- a/Doxygen/build/Vector3_8cpp__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-789550095991799f4f64ce3613fef44a
\ No newline at end of file
diff --git a/Doxygen/build/Vector3_8cpp__incl.png b/Doxygen/build/Vector3_8cpp__incl.png
deleted file mode 100644
index 4934660..0000000
Binary files a/Doxygen/build/Vector3_8cpp__incl.png and /dev/null differ
diff --git a/Doxygen/build/Vector3_8cpp_source.html b/Doxygen/build/Vector3_8cpp_source.html
deleted file mode 100644
index a504a5e..0000000
--- a/Doxygen/build/Vector3_8cpp_source.html
+++ /dev/null
@@ -1,1007 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Vector3.cpp Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
6 #ifndef _EULE_NO_INTRINSICS_
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
24 #ifndef _EULE_NO_INTRINSICS_
-
-
-
27 __m256 __vector_self = _mm256_set_ps(0,0,0,0,0, (
float )z, (
float )y, (
float )x);
-
28 __m256 __vector_other = _mm256_set_ps(0,0,0,0,0, (
float )other.
z , (
float )other.
y , (
float )other.
x );
-
-
-
31 const int mask = 0x71;
-
32 __m256 __dot = _mm256_dp_ps(__vector_self, __vector_other, mask);
-
-
-
-
36 _mm256_storeu_ps(result, __dot);
-
-
-
-
-
41 return (x * other.
x ) +
-
-
-
-
-
-
-
-
-
50 int iDot = (x * other.
x ) + (y * other.
y ) + (z * other.
z );
-
-
-
-
-
-
-
-
-
-
60 cp.
x = (y * other.
z ) - (z * other.
y );
-
61 cp.
y = (z * other.
x ) - (x * other.
z );
-
62 cp.
z = (x * other.
y ) - (y * other.
x );
-
-
-
-
-
-
-
-
-
71 cp.
x = ((double)y * (
double )other.
z ) - ((
double )z * (double)other.
y );
-
72 cp.
y = ((double)z * (
double )other.
x ) - ((
double )x * (double)other.
z );
-
73 cp.
z = ((double)x * (
double )other.
y ) - ((
double )y * (double)other.
x );
-
-
-
-
-
-
-
-
-
-
-
84 return DotProduct(*
this );
-
-
-
-
-
-
90 int iSqrMag = x*x + y*y + z*z;
-
91 return (
double )iSqrMag;
-
-
-
-
-
-
97 return sqrt(SqrMagnitude());
-
-
-
-
-
-
-
104 #ifndef _EULE_NO_INTRINSICS_
-
-
-
107 __m256d __vector_self = _mm256_set_pd(0, z, y, x);
-
108 __m256d __vector_scalar = _mm256_set_pd(0, scalar.
z , scalar.
y , scalar.
x );
-
-
-
111 __m256d __product = _mm256_mul_pd(__vector_self, __vector_scalar);
-
-
-
-
115 _mm256_storeu_pd(result, __product);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
158 const double length = Magnitude();
-
-
-
-
-
-
-
-
-
-
-
169 #ifndef _EULE_NO_INTRINSICS_
-
-
-
172 __m256d __vec = _mm256_set_pd(0, z, y, x);
-
173 __m256d __len = _mm256_set1_pd(length);
-
-
-
176 __m256d __prod = _mm256_div_pd(__vec, __len);
-
-
-
-
180 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
202 std::cerr <<
"Stop normalizing int-vectors!!" << std::endl;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
216 (::Math::Similar(x, other.
x , epsilon)) &&
-
217 (::Math::Similar(y, other.
y , epsilon)) &&
-
218 (::Math::Similar(z, other.
z , epsilon))
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
246 throw std::out_of_range(
"Array descriptor on Vector3<T> out of range!" );
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
262 throw std::out_of_range(
"Array descriptor on Vector3<T> out of range!" );
-
-
-
-
-
-
-
-
-
271 const double it = 1.0 - t;
-
-
273 #ifndef _EULE_NO_INTRINSICS_
-
-
-
276 __m256d __vector_self = _mm256_set_pd(0, z, y, x);
-
277 __m256d __vector_other = _mm256_set_pd(0, other.
z , other.
y , other.
x );
-
278 __m256d __t = _mm256_set1_pd(t);
-
279 __m256d __it = _mm256_set1_pd(it);
-
-
-
-
-
284 __m256d __sum = _mm256_set1_pd(0);
-
-
286 __sum = _mm256_fmadd_pd(__vector_self, __it, __sum);
-
287 __sum = _mm256_fmadd_pd(__vector_other, __t, __sum);
-
-
-
-
291 _mm256_storeu_pd(sum, __sum);
-
-
-
-
-
-
-
-
299 x = it*x + t*other.
x ;
-
300 y = it*y + t*other.
y ;
-
301 z = it*z + t*other.
z ;
-
-
-
-
-
-
-
-
-
-
-
-
313 const double it = 1.0 - t;
-
-
315 x = (int)(it * (
double )x + t * (double)other.
x );
-
316 y = (int)(it * (
double )y + t * (double)other.
y );
-
317 z = (int)(it * (
double )z + t * (double)other.
z );
-
-
-
-
-
-
-
-
325 copy.LerpSelf(other, t);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
342 #ifndef _EULE_NO_INTRINSICS_
-
-
-
345 __m256d __vector_self = _mm256_set_pd(0, z, y, x);
-
346 __m256d __vector_other = _mm256_set_pd(0, other.
z , other.
y , other.
x );
-
-
-
349 __m256d __sum = _mm256_add_pd(__vector_self, __vector_other);
-
-
-
-
353 _mm256_storeu_pd(sum, __sum);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
385 #ifndef _EULE_NO_INTRINSICS_
-
-
-
388 __m256d __vector_self = _mm256_set_pd(0, z, y, x);
-
389 __m256d __vector_other = _mm256_set_pd(0, other.
z , other.
y , other.
x );
-
-
-
392 __m256d __sum = _mm256_add_pd(__vector_self, __vector_other);
-
-
-
-
396 _mm256_storeu_pd(sum, __sum);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
426 #ifndef _EULE_NO_INTRINSICS_
-
-
-
429 __m256d __vector_self = _mm256_set_pd(0, z, y, x);
-
430 __m256d __vector_other = _mm256_set_pd(0, other.
z , other.
y , other.
x );
-
-
-
433 __m256d __diff = _mm256_sub_pd(__vector_self, __vector_other);
-
-
-
-
437 _mm256_storeu_pd(diff, __diff);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
469 #ifndef _EULE_NO_INTRINSICS_
-
-
-
472 __m256d __vector_self = _mm256_set_pd(0, z, y, x);
-
473 __m256d __vector_other = _mm256_set_pd(0, other.
z , other.
y , other.
x );
-
-
-
476 __m256d __diff = _mm256_sub_pd(__vector_self, __vector_other);
-
-
-
-
480 _mm256_storeu_pd(diff, __diff);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
510 #ifndef _EULE_NO_INTRINSICS_
-
-
-
513 __m256d __vector_self = _mm256_set_pd(0, z, y, x);
-
514 __m256d __scalar = _mm256_set1_pd(scale);
-
-
-
517 __m256d __prod = _mm256_mul_pd(__vector_self, __scalar);
-
-
-
-
521 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
554 #ifndef _EULE_NO_INTRINSICS_
-
-
-
557 __m256d __vector_self = _mm256_set_pd(0, z, y, x);
-
558 __m256d __scalar = _mm256_set1_pd(scale);
-
-
-
561 __m256d __prod = _mm256_mul_pd(__vector_self, __scalar);
-
-
-
-
565 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
595 #ifndef _EULE_NO_INTRINSICS_
-
-
-
598 __m256d __vector_self = _mm256_set_pd(0, z, y, x);
-
599 __m256d __scalar = _mm256_set1_pd(scale);
-
-
-
602 __m256d __prod = _mm256_div_pd(__vector_self, __scalar);
-
-
-
-
606 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
639 #ifndef _EULE_NO_INTRINSICS_
-
-
-
642 __m256d __vector_self = _mm256_set_pd(0, z, y, x);
-
643 __m256d __scalar = _mm256_set1_pd(scale);
-
-
-
646 __m256d __prod = _mm256_div_pd(__vector_self, __scalar);
-
-
-
-
650 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
682 #ifndef _EULE_NO_INTRINSICS_
-
-
684 __m256d __vecx = _mm256_set1_pd(x);
-
685 __m256d __vecy = _mm256_set1_pd(y);
-
686 __m256d __vecz = _mm256_set1_pd(z);
-
-
-
689 __m256d __mat_row0 = _mm256_set_pd(mat[0][0], mat[1][0], mat[2][0], 0);
-
690 __m256d __mat_row1 = _mm256_set_pd(mat[0][1], mat[1][1], mat[2][1], 0);
-
691 __m256d __mat_row2 = _mm256_set_pd(mat[0][2], mat[1][2], mat[2][2], 0);
-
-
-
694 __m256d __mul_vecx_row0 = _mm256_mul_pd(__vecx, __mat_row0);
-
695 __m256d __mul_vecy_row1 = _mm256_mul_pd(__vecy, __mat_row1);
-
696 __m256d __mul_vecz_row2 = _mm256_mul_pd(__vecz, __mat_row2);
-
-
-
699 __m256d __sum = _mm256_add_pd(__mul_vecx_row0, _mm256_add_pd(__mul_vecy_row1, __mul_vecz_row2));
-
-
-
702 __m256d __translation = _mm256_set_pd(mat[0][3], mat[1][3], mat[2][3], 0);
-
-
-
705 __m256d __final = _mm256_add_pd(__sum, __translation);
-
-
-
-
709 _mm256_storeu_pd(dfinal, __final);
-
-
711 newVec.
x = dfinal[3];
-
712 newVec.
y = dfinal[2];
-
713 newVec.
z = dfinal[1];
-
-
-
-
717 newVec.
x = (mat[0][0] * x) + (mat[1][0] * y) + (mat[2][0] * z);
-
718 newVec.
y = (mat[0][1] * x) + (mat[1][1] * y) + (mat[2][1] * z);
-
719 newVec.
z = (mat[0][2] * x) + (mat[1][2] * y) + (mat[2][2] * z);
-
-
-
722 newVec.
x += mat[0][3];
-
723 newVec.
y += mat[1][3];
-
724 newVec.
z += mat[2][3];
-
-
-
-
-
-
-
-
-
-
-
-
736 newVec.
x = ((mat[0][0] * x) + (mat[1][0] * y) + (mat[2][0] * z));
-
737 newVec.
y = ((mat[0][1] * x) + (mat[1][1] * y) + (mat[2][1] * z));
-
738 newVec.
z = ((mat[0][2] * x) + (mat[1][2] * y) + (mat[2][2] * z));
-
-
-
741 newVec.
x += mat[0][3];
-
742 newVec.
y += mat[1][3];
-
743 newVec.
z += mat[2][3];
-
-
-
-
-
-
-
-
-
-
-
-
-
-
757 #ifndef _EULE_NO_INTRINSICS_
-
-
759 __m256d __vecx = _mm256_set1_pd(x);
-
760 __m256d __vecy = _mm256_set1_pd(y);
-
761 __m256d __vecz = _mm256_set1_pd(z);
-
-
-
764 __m256d __mat_row0 = _mm256_set_pd(mat[0][0], mat[1][0], mat[2][0], 0);
-
765 __m256d __mat_row1 = _mm256_set_pd(mat[0][1], mat[1][1], mat[2][1], 0);
-
766 __m256d __mat_row2 = _mm256_set_pd(mat[0][2], mat[1][2], mat[2][2], 0);
-
-
-
769 __m256d __mul_vecx_row0 = _mm256_mul_pd(__vecx, __mat_row0);
-
770 __m256d __mul_vecy_row1 = _mm256_mul_pd(__vecy, __mat_row1);
-
771 __m256d __mul_vecz_row2 = _mm256_mul_pd(__vecz, __mat_row2);
-
-
-
774 __m256d __sum = _mm256_add_pd(__mul_vecx_row0, _mm256_add_pd(__mul_vecy_row1, __mul_vecz_row2));
-
-
-
777 __m256d __translation = _mm256_set_pd(mat[0][3], mat[1][3], mat[2][3], 0);
-
-
-
780 __m256d __final = _mm256_add_pd(__sum, __translation);
-
-
-
-
784 _mm256_storeu_pd(dfinal, __final);
-
-
-
-
-
-
-
-
792 x = (mat[0][0] * buffer.
x ) + (mat[0][1] * buffer.
y ) + (mat[0][2] * buffer.
z );
-
793 y = (mat[1][0] * buffer.
x ) + (mat[1][1] * buffer.
y ) + (mat[1][2] * buffer.
z );
-
794 z = (mat[2][0] * buffer.
x ) + (mat[2][1] * buffer.
y ) + (mat[2][2] * buffer.
z );
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
828 x = std::move(other.
x );
-
829 y = std::move(other.
y );
-
830 z = std::move(other.
z );
-
-
-
-
-
-
-
-
-
-
840 x = (int)((mat[0][0] * buffer.
x ) + (mat[0][1] * buffer.
y ) + (mat[0][2] * buffer.
z ));
-
841 y = (int)((mat[1][0] * buffer.
x ) + (mat[1][1] * buffer.
y ) + (mat[1][2] * buffer.
z ));
-
842 z = (int)((mat[2][0] * buffer.
x ) + (mat[2][1] * buffer.
y ) + (mat[2][2] * buffer.
z ));
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
866 return !operator==(other);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
888 template <
typename T>
-
-
890 template <
typename T>
-
-
892 template <
typename T>
-
-
894 template <
typename T>
-
-
896 template <
typename T>
-
-
898 template <
typename T>
-
-
900 template <
typename T>
-
-
902 template <
typename T>
-
-
-void LerpSelf(const Vector3< T > &other, double t)
Will lerp itself towards other by t.
-
-Vector3< double > ToDouble() const
Will convert this vector to a Vector3d.
-
-
-
-A matrix 4x4 class representing a 3d transformation.
-
-
-Representation of a 2d vector.
-double DotProduct(const Vector3< T > &other) const
Will compute the dot product to another Vector3.
-
-void NormalizeSelf()
Will normalize this vector.
-
-
-Representation of a 4d vector.
-
-
-
-
diff --git a/Doxygen/build/Vector3_8h.html b/Doxygen/build/Vector3_8h.html
deleted file mode 100644
index 347a9c3..0000000
--- a/Doxygen/build/Vector3_8h.html
+++ /dev/null
@@ -1,155 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Vector3.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include <cstdlib>
-
#include <iomanip>
-
#include <ostream>
-
#include <sstream>
-
#include "Matrix4x4.h "
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-
-
-
-
diff --git a/Doxygen/build/Vector3_8h__dep__incl.map b/Doxygen/build/Vector3_8h__dep__incl.map
deleted file mode 100644
index 0deaf45..0000000
--- a/Doxygen/build/Vector3_8h__dep__incl.map
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Vector3_8h__dep__incl.md5 b/Doxygen/build/Vector3_8h__dep__incl.md5
deleted file mode 100644
index 627c4d5..0000000
--- a/Doxygen/build/Vector3_8h__dep__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-5923ea443852492219c66436d4bffb10
\ No newline at end of file
diff --git a/Doxygen/build/Vector3_8h__dep__incl.png b/Doxygen/build/Vector3_8h__dep__incl.png
deleted file mode 100644
index 4424eec..0000000
Binary files a/Doxygen/build/Vector3_8h__dep__incl.png and /dev/null differ
diff --git a/Doxygen/build/Vector3_8h__incl.map b/Doxygen/build/Vector3_8h__incl.map
deleted file mode 100644
index f44a900..0000000
--- a/Doxygen/build/Vector3_8h__incl.map
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Vector3_8h__incl.md5 b/Doxygen/build/Vector3_8h__incl.md5
deleted file mode 100644
index 26828a1..0000000
--- a/Doxygen/build/Vector3_8h__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-f06a179ddc8c6cbfb08342b459b2b95e
\ No newline at end of file
diff --git a/Doxygen/build/Vector3_8h__incl.png b/Doxygen/build/Vector3_8h__incl.png
deleted file mode 100644
index a5d5466..0000000
Binary files a/Doxygen/build/Vector3_8h__incl.png and /dev/null differ
diff --git a/Doxygen/build/Vector3_8h_source.html b/Doxygen/build/Vector3_8h_source.html
deleted file mode 100644
index cd65950..0000000
--- a/Doxygen/build/Vector3_8h_source.html
+++ /dev/null
@@ -1,227 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Vector3.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
-
-
10 template <
typename T>
class Vector2;
-
11 template <
typename T>
class Vector4;
-
-
-
-
-
-
-
-
22 Vector3 (
const Vector3<T>& other) =
default ;
-
23 Vector3 (Vector3<T>&& other) noexcept =
default ;
-
-
26 double DotProduct (
const Vector3<T>& other)
const ;
-
-
29 Vector3<double>
CrossProduct (
const Vector3<T>& other)
const ;
-
-
-
-
-
-
38 [[nodiscard]] Vector3<double>
Normalize ()
const ;
-
-
-
-
44 [[nodiscard]] Vector3<T>
VectorScale (
const Vector3<T>& scalar)
const ;
-
-
47 void LerpSelf (
const Vector3<T>& other,
double t);
-
-
50 [[nodiscard]] Vector3<double>
Lerp (
const Vector3<T>& other,
double t)
const ;
-
-
53 [[nodiscard]]
bool Similar (
const Vector3<T>& other,
double epsilon = 0.00001)
const ;
-
-
56 [[nodiscard]] Vector3<int>
ToInt ()
const ;
-
-
59 [[nodiscard]] Vector3<double>
ToDouble ()
const ;
-
-
-
-
-
64 Vector3<T>
operator+ (
const Vector3<T>& other)
const ;
-
-
66 Vector3<T>
operator- (
const Vector3<T>& other)
const ;
-
-
68 Vector3<T>
operator* (
const T scale)
const ;
-
-
70 Vector3<T>
operator/ (
const T scale)
const ;
-
-
72 Vector3<T>
operator* (
const Matrix4x4& mat)
const ;
-
-
-
-
76 operator Vector2<T>()
const ;
-
77 operator Vector4<T>()
const ;
-
-
-
80 void operator= (Vector3<T>&& other) noexcept;
-
-
82 bool operator== (
const Vector3<T>& other)
const ;
-
83 bool operator!= (
const Vector3<T>& other)
const ;
-
-
-
-
87 return os <<
"[x: " << v.x <<
" y: " << v.y <<
" z: " << v.z <<
"]" ;
-
-
-
-
91 return os << L
"[x: " << v.x << L
" y: " << v.y << L
" z: " << v.z << L
"]" ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Vector3< T > operator+(const Vector3< T > &other) const
-static const Vector3< double > right
-friend std::ostream & operator<<(std::ostream &os, const Vector3< T > &v)
-void LerpSelf(const Vector3< T > &other, double t)
Will lerp itself towards other by t.
-Vector3< double > CrossProduct(const Vector3< T > &other) const
Will compute the cross product to another Vector3.
-static const Vector3< double > left
-bool Similar(const Vector3< T > &other, double epsilon=0.00001) const
Will compare if two vectors are similar to a certain epsilon value.
-Representation of a 3d vector.
-Vector3(T _x, T _y, T _z)
-Vector3< T > operator-() const
-static const Vector3< double > down
-Vector3< double > Lerp(const Vector3< T > &other, double t) const
Will return a lerp result between this and another vector.
-static const Vector3< double > forward
-static const Vector3< double > one
-void operator=(const Vector3< T > &other)
Conversion method.
-Vector3< double > ToDouble() const
Will convert this vector to a Vector3d.
-Vector3< int > ToInt() const
Will convert this vector to a Vector3i.
-bool operator==(const Vector3< T > &other) const
-void operator*=(const T scale)
-
-Vector3< double > Vector3d
-
-
-static const Vector3< double > backward
-Vector3< double > Normalize() const
Will return the normalization of this vector.
-
-static const Vector3< double > up
-T & operator[](std::size_t idx)
-
-double DotProduct(const Vector3< T > &other) const
Will compute the dot product to another Vector3.
-Vector3< T > operator/(const T scale) const
-void operator-=(const Vector3< T > &other)
-double SqrMagnitude() const
Will compute the square magnitude.
-void operator/=(const T scale)
-bool operator!=(const Vector3< T > &other) const
-void operator+=(const Vector3< T > &other)
-double Magnitude() const
Will compute the magnitude.
-void NormalizeSelf()
Will normalize this vector.
-Vector3< T > operator*(const T scale) const
-static const Vector3< double > zero
-
-
-Vector3< T > VectorScale(const Vector3< T > &scalar) const
Will scale self.n by scalar.n.
-
-
-
-
diff --git a/Doxygen/build/Vector4_8cpp.html b/Doxygen/build/Vector4_8cpp.html
deleted file mode 100644
index 3c0e4aa..0000000
--- a/Doxygen/build/Vector4_8cpp.html
+++ /dev/null
@@ -1,119 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Vector4.cpp File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include "Vector4.h "
-
#include "Math.h "
-
#include <iostream>
-
#include <immintrin.h>
-
#include "Vector2.h "
-
#include "Vector3.h "
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the source code of this file.
-
-
-
-
-
diff --git a/Doxygen/build/Vector4_8cpp__incl.map b/Doxygen/build/Vector4_8cpp__incl.map
deleted file mode 100644
index a6df62c..0000000
--- a/Doxygen/build/Vector4_8cpp__incl.map
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Vector4_8cpp__incl.md5 b/Doxygen/build/Vector4_8cpp__incl.md5
deleted file mode 100644
index ff91198..0000000
--- a/Doxygen/build/Vector4_8cpp__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-6edd4b6a266f3a86f459e12460ef3060
\ No newline at end of file
diff --git a/Doxygen/build/Vector4_8cpp__incl.png b/Doxygen/build/Vector4_8cpp__incl.png
deleted file mode 100644
index 0007259..0000000
Binary files a/Doxygen/build/Vector4_8cpp__incl.png and /dev/null differ
diff --git a/Doxygen/build/Vector4_8cpp_source.html b/Doxygen/build/Vector4_8cpp_source.html
deleted file mode 100644
index 3116a5b..0000000
--- a/Doxygen/build/Vector4_8cpp_source.html
+++ /dev/null
@@ -1,914 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Vector4.cpp Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
6 #ifndef _EULE_NO_INTRINSICS_
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
33 int iSqrMag = x*x + y*y + z*z + w*w;
-
34 return (
double )iSqrMag;
-
-
-
-
-
-
40 return sqrt(SqrMagnitude());
-
-
-
-
-
-
46 #ifndef _EULE_NO_INTRINSICS_
-
-
-
49 __m256d __vector_self = _mm256_set_pd(w, z, y, x);
-
50 __m256d __vector_scalar = _mm256_set_pd(scalar.
w , scalar.
z , scalar.
y , scalar.
x );
-
-
-
53 __m256d __product = _mm256_mul_pd(__vector_self, __vector_scalar);
-
-
-
-
57 _mm256_storeu_pd(result, __product);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
103 double length = Magnitude();
-
-
-
-
-
-
-
-
-
-
-
-
115 #ifndef _EULE_NO_INTRINSICS_
-
-
-
118 __m256d __vec = _mm256_set_pd(w, z, y, x);
-
119 __m256d __len = _mm256_set1_pd(length);
-
-
-
122 __m256d __prod = _mm256_div_pd(__vec, __len);
-
-
-
-
126 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
150 std::cerr <<
"Stop normalizing int-vectors!!" << std::endl;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
165 (::Math::Similar(x, other.
x , epsilon)) &&
-
166 (::Math::Similar(y, other.
y , epsilon)) &&
-
167 (::Math::Similar(z, other.
z , epsilon)) &&
-
168 (::Math::Similar(w, other.
w , epsilon))
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
198 throw std::out_of_range(
"Array descriptor on Vector4<T> out of range!" );
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
216 throw std::out_of_range(
"Array descriptor on Vector4<T> out of range!" );
-
-
-
-
-
-
-
-
-
225 const double it = 1.0 - t;
-
-
227 #ifndef _EULE_NO_INTRINSICS_
-
-
-
230 __m256d __vector_self = _mm256_set_pd(w, z, y, x);
-
231 __m256d __vector_other = _mm256_set_pd(other.
w , other.
z , other.
y , other.
x );
-
232 __m256d __t = _mm256_set1_pd(t);
-
233 __m256d __it = _mm256_set1_pd(it);
-
-
-
-
-
238 __m256d __sum = _mm256_set1_pd(0);
-
-
240 __sum = _mm256_fmadd_pd(__vector_self, __it, __sum);
-
241 __sum = _mm256_fmadd_pd(__vector_other, __t, __sum);
-
-
-
-
245 _mm256_storeu_pd(sum, __sum);
-
-
-
-
-
-
-
-
-
254 x = it * x + t * other.
x ;
-
255 y = it * y + t * other.
y ;
-
256 z = it * z + t * other.
z ;
-
257 w = it * w + t * other.
w ;
-
-
-
-
-
-
-
-
-
-
-
-
269 const double it = 1.0 - t;
-
-
271 x = (int)(it * (
double )x + t * (double)other.
x );
-
272 y = (int)(it * (
double )y + t * (double)other.
y );
-
273 z = (int)(it * (
double )z + t * (double)other.
z );
-
274 w = (int)(it * (
double )w + t * (double)other.
w );
-
-
-
-
-
-
-
-
282 copy.LerpSelf(other, t);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
299 #ifndef _EULE_NO_INTRINSICS_
-
-
-
302 __m256d __vector_self = _mm256_set_pd(w, z, y, x);
-
303 __m256d __vector_other = _mm256_set_pd(other.
w , other.
z , other.
y , other.
x );
-
-
-
306 __m256d __sum = _mm256_add_pd(__vector_self, __vector_other);
-
-
-
-
310 _mm256_storeu_pd(sum, __sum);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
345 #ifndef _EULE_NO_INTRINSICS_
-
-
-
348 __m256d __vector_self = _mm256_set_pd(w, z, y, x);
-
349 __m256d __vector_other = _mm256_set_pd(other.
w , other.
z , other.
y , other.
x );
-
-
-
352 __m256d __sum = _mm256_add_pd(__vector_self, __vector_other);
-
-
-
-
356 _mm256_storeu_pd(sum, __sum);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
389 #ifndef _EULE_NO_INTRINSICS_
-
-
-
392 __m256d __vector_self = _mm256_set_pd(w, z, y, x);
-
393 __m256d __vector_other = _mm256_set_pd(other.
w , other.
z , other.
y , other.
x );
-
-
-
396 __m256d __diff = _mm256_sub_pd(__vector_self, __vector_other);
-
-
-
-
400 _mm256_storeu_pd(diff, __diff);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
435 #ifndef _EULE_NO_INTRINSICS_
-
-
-
438 __m256d __vector_self = _mm256_set_pd(w, z, y, x);
-
439 __m256d __vector_other = _mm256_set_pd(other.
w , other.
z , other.
y , other.
x );
-
-
-
442 __m256d __diff = _mm256_sub_pd(__vector_self, __vector_other);
-
-
-
-
446 _mm256_storeu_pd(diff, __diff);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
479 #ifndef _EULE_NO_INTRINSICS_
-
-
-
482 __m256d __vector_self = _mm256_set_pd(w, z, y, x);
-
483 __m256d __scalar = _mm256_set1_pd(scale);
-
-
-
486 __m256d __prod = _mm256_mul_pd(__vector_self, __scalar);
-
-
-
-
490 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
526 #ifndef _EULE_NO_INTRINSICS_
-
-
-
529 __m256d __vector_self = _mm256_set_pd(w, z, y, x);
-
530 __m256d __scalar = _mm256_set1_pd(scale);
-
-
-
533 __m256d __prod = _mm256_mul_pd(__vector_self, __scalar);
-
-
-
-
537 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
570 #ifndef _EULE_NO_INTRINSICS_
-
-
-
573 __m256d __vector_self = _mm256_set_pd(w, z, y, x);
-
574 __m256d __scalar = _mm256_set1_pd(scale);
-
-
-
577 __m256d __prod = _mm256_div_pd(__vector_self, __scalar);
-
-
-
-
581 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
617 #ifndef _EULE_NO_INTRINSICS_
-
-
-
620 __m256d __vector_self = _mm256_set_pd(w, z, y, x);
-
621 __m256d __scalar = _mm256_set1_pd(scale);
-
-
-
624 __m256d __prod = _mm256_div_pd(__vector_self, __scalar);
-
-
-
-
628 _mm256_storeu_pd(prod, __prod);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
675 newVec.
x = (mat[0][0] * x) + (mat[0][1] * y) + (mat[0][2] * z) + (mat[0][3] * w);
-
676 newVec.
y = (mat[1][0] * x) + (mat[1][1] * y) + (mat[1][2] * z) + (mat[1][3] * w);
-
677 newVec.
z = (mat[2][0] * x) + (mat[2][1] * y) + (mat[2][2] * z) + (mat[2][3] * w);
-
678 newVec.
w = (mat[3][0] * x) + (mat[3][1] * y) + (mat[3][2] * z) + (mat[3][3] * w);
-
-
-
-
-
-
-
-
-
-
688 newVec.
x = (mat[0][0] * x) + (mat[0][1] * y) + (mat[0][2] * z) + (mat[0][3] * w);
-
689 newVec.
y = (mat[1][0] * x) + (mat[1][1] * y) + (mat[1][2] * z) + (mat[1][3] * w);
-
690 newVec.
z = (mat[2][0] * x) + (mat[2][1] * y) + (mat[2][2] * z) + (mat[2][3] * w);
-
691 newVec.
w = (mat[3][0] * x) + (mat[3][1] * y) + (mat[3][2] * z) + (mat[3][3] * w);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
710 x = (mat[0][0] * buffer.
x ) + (mat[0][1] * buffer.
y ) + (mat[0][2] * buffer.
z ) + (mat[0][3] * buffer.
w );
-
711 y = (mat[1][0] * buffer.
x ) + (mat[1][1] * buffer.
y ) + (mat[1][2] * buffer.
z ) + (mat[1][3] * buffer.
w );
-
712 z = (mat[2][0] * buffer.
x ) + (mat[2][1] * buffer.
y ) + (mat[2][2] * buffer.
z ) + (mat[2][3] * buffer.
w );
-
713 w = (mat[3][0] * buffer.
x ) + (mat[3][1] * buffer.
y ) + (mat[3][2] * buffer.
z ) + (mat[3][3] * buffer.
w );
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
743 x = std::move(other.
x );
-
744 y = std::move(other.
y );
-
745 z = std::move(other.
z );
-
746 w = std::move(other.
w );
-
-
-
-
-
-
-
-
-
-
-
-
758 x = (int)((mat[0][0] * buffer.
x ) + (mat[0][1] * buffer.
y ) + (mat[0][2] * buffer.
z ) + (mat[0][3] * buffer.
w ));
-
759 y = (int)((mat[1][0] * buffer.
x ) + (mat[1][1] * buffer.
y ) + (mat[1][2] * buffer.
z ) + (mat[1][3] * buffer.
w ));
-
760 z = (int)((mat[2][0] * buffer.
x ) + (mat[2][1] * buffer.
y ) + (mat[2][2] * buffer.
z ) + (mat[2][3] * buffer.
w ));
-
761 w = (int)((mat[3][0] * buffer.
x ) + (mat[3][1] * buffer.
y ) + (mat[3][2] * buffer.
z ) + (mat[3][3] * buffer.
w ));
-
-
-
-
-
-
-
-
769 return !operator==(other);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
790 template <
typename T>
-
-
792 template <
typename T>
-
-
794 template <
typename T>
-
-
796 template <
typename T>
-
-
798 template <
typename T>
-
-
800 template <
typename T>
-
-
802 template <
typename T>
-
-
804 template <
typename T>
-
-
806 template <
typename T>
-
-
808 template <
typename T>
-
-
-void NormalizeSelf()
Will normalize this vector.
-Representation of a 3d vector.
-
-
-
-void LerpSelf(const Vector4< T > &other, double t)
Will lerp itself towards other by t.
-
-
-A matrix 4x4 class representing a 3d transformation.
-Vector4< double > ToDouble() const
Will convert this vector to a Vector4d.
-
-Representation of a 2d vector.
-double SqrMagnitude() const
Will compute the square magnitude.
-
-
-
-Representation of a 4d vector.
-
-
-
-
diff --git a/Doxygen/build/Vector4_8h.html b/Doxygen/build/Vector4_8h.html
deleted file mode 100644
index ea2127f..0000000
--- a/Doxygen/build/Vector4_8h.html
+++ /dev/null
@@ -1,152 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Vector4.h File Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
#include <cstdlib>
-
#include <iomanip>
-
#include <ostream>
-
#include <sstream>
-
#include "Matrix4x4.h "
-
-
Go to the source code of this file.
-
-
-
-
-
-
diff --git a/Doxygen/build/Vector4_8h__dep__incl.map b/Doxygen/build/Vector4_8h__dep__incl.map
deleted file mode 100644
index 2095a62..0000000
--- a/Doxygen/build/Vector4_8h__dep__incl.map
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Vector4_8h__dep__incl.md5 b/Doxygen/build/Vector4_8h__dep__incl.md5
deleted file mode 100644
index 6c0771d..0000000
--- a/Doxygen/build/Vector4_8h__dep__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-519ab42af69ca3826341022de9cbd030
\ No newline at end of file
diff --git a/Doxygen/build/Vector4_8h__dep__incl.png b/Doxygen/build/Vector4_8h__dep__incl.png
deleted file mode 100644
index a5df998..0000000
Binary files a/Doxygen/build/Vector4_8h__dep__incl.png and /dev/null differ
diff --git a/Doxygen/build/Vector4_8h__incl.map b/Doxygen/build/Vector4_8h__incl.map
deleted file mode 100644
index 5701859..0000000
--- a/Doxygen/build/Vector4_8h__incl.map
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/Vector4_8h__incl.md5 b/Doxygen/build/Vector4_8h__incl.md5
deleted file mode 100644
index 3382afb..0000000
--- a/Doxygen/build/Vector4_8h__incl.md5
+++ /dev/null
@@ -1 +0,0 @@
-ad580b6dad739ccc43a8731390726116
\ No newline at end of file
diff --git a/Doxygen/build/Vector4_8h__incl.png b/Doxygen/build/Vector4_8h__incl.png
deleted file mode 100644
index 8d771f7..0000000
Binary files a/Doxygen/build/Vector4_8h__incl.png and /dev/null differ
diff --git a/Doxygen/build/Vector4_8h_source.html b/Doxygen/build/Vector4_8h_source.html
deleted file mode 100644
index 9f2680b..0000000
--- a/Doxygen/build/Vector4_8h_source.html
+++ /dev/null
@@ -1,227 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Vector4.h Source File
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the documentation of this file.
-
-
-
-
-
-
-
-
-
10 template <
typename T>
class Vector2;
-
11 template <
typename T>
class Vector3;
-
-
-
-
-
-
-
21 Vector4 (T _x, T _y, T _z, T _w) :
x { _x },
y { _y },
z { _z },
w { _w } {}
-
22 Vector4 (
const Vector4<T>& other) =
default ;
-
23 Vector4 (Vector4<T>&& other) noexcept =
default ;
-
-
-
-
-
-
32 [[nodiscard]] Vector4<double>
Normalize ()
const ;
-
-
-
-
38 [[nodiscard]] Vector4<T>
VectorScale (
const Vector4<T>& scalar)
const ;
-
-
41 void LerpSelf (
const Vector4<T>& other,
double t);
-
-
44 [[nodiscard]] Vector4<double>
Lerp (
const Vector4<T>& other,
double t)
const ;
-
-
47 [[nodiscard]]
bool Similar (
const Vector4<T>& other,
double epsilon = 0.00001)
const ;
-
-
50 [[nodiscard]] Vector4<int>
ToInt ()
const ;
-
-
53 [[nodiscard]] Vector4<double>
ToDouble ()
const ;
-
-
-
-
-
58 Vector4<T>
operator+ (
const Vector4<T>& other)
const ;
-
-
60 Vector4<T>
operator- (
const Vector4<T>& other)
const ;
-
-
62 Vector4<T>
operator* (
const T scale)
const ;
-
-
64 Vector4<T>
operator/ (
const T scale)
const ;
-
-
66 Vector4<T>
operator* (
const Matrix4x4& mat)
const ;
-
-
-
-
70 operator Vector2<T>()
const ;
-
71 operator Vector3<T>()
const ;
-
-
-
74 void operator= (Vector4<T>&& other) noexcept;
-
-
76 bool operator== (
const Vector4<T>& other)
const ;
-
77 bool operator!= (
const Vector4<T>& other)
const ;
-
-
-
-
81 return os <<
"[x: " << v.x <<
" y: " << v.y <<
" z: " << v.z <<
" w: " << v.w <<
"]" ;
-
-
-
-
85 return os << L
"[x: " << v.x << L
" y: " << v.y << L
" z: " << v.z << L
" w: " << v.w << L
"]" ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Vector4< int > ToInt() const
Will convert this vector to a Vector4i.
-Vector4(T _x, T _y, T _z, T _w)
-void operator+=(const Vector4< T > &other)
-Vector4< T > operator/(const T scale) const
-Vector4< T > operator*(const T scale) const
-void NormalizeSelf()
Will normalize this vector.
-
-static const Vector4< double > backward
-
-void operator=(const Vector4< T > &other)
Conversion method.
-void operator-=(const Vector4< T > &other)
-Vector4< double > Normalize() const
Will return the normalization of this vector.
-
-void operator*=(const T scale)
-Vector4< double > Vector4d
-Vector4< T > VectorScale(const Vector4< T > &scalar) const
Will scale self.n by scalar.n.
-Vector4< T > operator-() const
-Vector4< double > Lerp(const Vector4< T > &other, double t) const
Will return a lerp result between this and another vector.
-static const Vector4< double > one
-void LerpSelf(const Vector4< T > &other, double t)
Will lerp itself towards other by t.
-
-static const Vector4< double > forward
-void operator/=(const T scale)
-
-static const Vector4< double > down
-Vector4< T > operator+(const Vector4< T > &other) const
-T & operator[](std::size_t idx)
-Vector4< double > ToDouble() const
Will convert this vector to a Vector4d.
-
-bool operator!=(const Vector4< T > &other) const
-bool Similar(const Vector4< T > &other, double epsilon=0.00001) const
Will compare if two vectors are similar to a certain epsilon value.
-double Magnitude() const
Will compute the magnitude.
-static const Vector4< double > future
-bool operator==(const Vector4< T > &other) const
-static const Vector4< double > zero
-double SqrMagnitude() const
Will compute the square magnitude.
-static const Vector4< double > up
-static const Vector4< double > past
-friend std::ostream & operator<<(std::ostream &os, const Vector4< T > &v)
-
-static const Vector4< double > left
-
-static const Vector4< double > right
-Representation of a 4d vector.
-
-
-
-
diff --git a/Doxygen/build/annotated.html b/Doxygen/build/annotated.html
deleted file mode 100644
index 801b6e4..0000000
--- a/Doxygen/build/annotated.html
+++ /dev/null
@@ -1,98 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here are the classes, structs, unions and interfaces with brief descriptions:
-
[detail level 1 2 ]
- ▼ N Eule
- C Collider Abstract class of a collider domain
- C Math Math utility class containing basic functions
- C Matrix4x4 A matrix 4x4 class representing a 3d transformation
- C Quaternion 3D rotation representation
- C Rect Trivial data structure representing a rectangle
- C TrapazoidalPrismCollider A collider describing a trapazoidal prism
- C Vector2 Representation of a 2d vector
- C Vector3 Representation of a 3d vector
- C Vector4 Representation of a 4d vector
-
-
-
-
-
-
-
diff --git a/Doxygen/build/bc_s.png b/Doxygen/build/bc_s.png
deleted file mode 100644
index 224b29a..0000000
Binary files a/Doxygen/build/bc_s.png and /dev/null differ
diff --git a/Doxygen/build/bdwn.png b/Doxygen/build/bdwn.png
deleted file mode 100644
index 940a0b9..0000000
Binary files a/Doxygen/build/bdwn.png and /dev/null differ
diff --git a/Doxygen/build/classEule_1_1Collider-members.html b/Doxygen/build/classEule_1_1Collider-members.html
deleted file mode 100644
index fd919cf..0000000
--- a/Doxygen/build/classEule_1_1Collider-members.html
+++ /dev/null
@@ -1,92 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Member List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is the complete list of members for Eule::Collider , including all inherited members.
-
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Collider.html b/Doxygen/build/classEule_1_1Collider.html
deleted file mode 100644
index b33fce5..0000000
--- a/Doxygen/build/classEule_1_1Collider.html
+++ /dev/null
@@ -1,151 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule::Collider Class Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Abstract class of a collider domain.
- More...
-
-
#include <Collider.h >
-
-
-
-
-
Abstract class of a collider domain.
-
Specializations describe a shape in 3d space, and provide implementations of the methods below, for their specific shape. Examples could be a SphereCollider, a BoxCollider, etc...
-
-
Definition at line 10 of file Collider.h .
-
-
-
◆ Contains()
-
-
-
-
-
-
-
-
- virtual bool Eule::Collider::Contains
- (
- const Vector3d &
- point )
- const
-
-
-
-
-pure virtual
-
-
-
-
-
The documentation for this class was generated from the following file:
-
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Collider__inherit__graph.map b/Doxygen/build/classEule_1_1Collider__inherit__graph.map
deleted file mode 100644
index 84537af..0000000
--- a/Doxygen/build/classEule_1_1Collider__inherit__graph.map
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Collider__inherit__graph.md5 b/Doxygen/build/classEule_1_1Collider__inherit__graph.md5
deleted file mode 100644
index 58581a3..0000000
--- a/Doxygen/build/classEule_1_1Collider__inherit__graph.md5
+++ /dev/null
@@ -1 +0,0 @@
-0f12e27dac5bc597f7fa2ef2f62c1652
\ No newline at end of file
diff --git a/Doxygen/build/classEule_1_1Collider__inherit__graph.png b/Doxygen/build/classEule_1_1Collider__inherit__graph.png
deleted file mode 100644
index 0e2e735..0000000
Binary files a/Doxygen/build/classEule_1_1Collider__inherit__graph.png and /dev/null differ
diff --git a/Doxygen/build/classEule_1_1Math-members.html b/Doxygen/build/classEule_1_1Math-members.html
deleted file mode 100644
index e78a44b..0000000
--- a/Doxygen/build/classEule_1_1Math-members.html
+++ /dev/null
@@ -1,105 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Member List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is the complete list of members for Eule::Math , including all inherited members.
-
- Abs (const double a)Eule::Math inline static
- Clamp (const double v, const double min, const double max)Eule::Math inline static
- Lerp (double a, double b, double t)Eule::Math inline static
- Max (const double a, const double b)Eule::Math inline static
- Min (const double a, const double b)Eule::Math inline static
- Mod (const int numerator, const int denominator)Eule::Math static
- Oscillate (const double a, const double b, const double counter, const double speed)Eule::Math static
- Random ()Eule::Math static
- RandomChance (const double chance)Eule::Math static
- RandomInt ()Eule::Math static
- RandomIntRange (const int max, const int min)Eule::Math static
- RandomRange (const double min, const double max)Eule::Math static
- RandomUint ()Eule::Math static
- Similar (const double a, const double b, const double epsilon=0.00001)Eule::Math inline static
-
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Math.html b/Doxygen/build/classEule_1_1Math.html
deleted file mode 100644
index 05619a9..0000000
--- a/Doxygen/build/classEule_1_1Math.html
+++ /dev/null
@@ -1,769 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule::Math Class Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Math utility class containing basic functions.
- More...
-
-
#include <Math.h >
-
-
-static constexpr double Max (const double a, const double b)
- Will return the bigger of two values. More...
-
-static constexpr double Min (const double a, const double b)
- Will return the smaller of two values. More...
-
-static constexpr double Clamp (const double v, const double min, const double max)
- Will return v
, but at least min
, and at most max
More...
-
-static constexpr double Lerp (double a, double b, double t)
- Will return the linear interpolation between a
and b
by t
More...
-
-static constexpr double Abs (const double a)
- Will return the absolute value of a
More...
-
-static constexpr bool Similar (const double a, const double b, const double epsilon=0.00001)
- Compares two double values with a given accuracy. More...
-
-static int Mod (const int numerator, const int denominator)
- Will compute the actual modulo of a fraction. More...
-
-static double Random ()
- Will return a random double between 0
and 1
More...
-
-static unsigned int RandomUint ()
- Will return a random unsigned integer. More...
-
-static unsigned int RandomInt ()
- Will return a random integer. More...
-
-static double RandomRange (const double min, const double max)
- Will return a random double within a range
- These bounds are INCLUSIVE! More...
-
-static int RandomIntRange (const int max, const int min)
- Will return a random integer within a range. More...
-
-static bool RandomChance (const double chance)
- Will 'roll' a dice, returning true
\(100 * chance\) percent of the time. More...
-
-static double Oscillate (const double a, const double b, const double counter, const double speed)
- Kind of like \(sin(counter)\), but it oscillates over \([a,b]\) instead of \([-1,1]\), by a given speed. More...
-
-
-
-
Math utility class containing basic functions.
-
-
Definition at line 9 of file Math.h .
-
-
-
◆ Abs()
-
-
-
-
-
-
-
-
- constexpr double Eule::Math::Abs
- (
- const double
- a )
-
-
-
-
-
-inline static constexpr
-
-
-
-
-
Will return the absolute value of a
-
-
Definition at line 97 of file Math.h .
-
-
99 return (a > 0.0) ? a : -a;
-
-
-
-
-
-
◆ Clamp()
-
-
-
-
-
-
-
-
- constexpr double Eule::Math::Clamp
- (
- const double
- v ,
-
-
-
-
- const double
- min ,
-
-
-
-
- const double
- max
-
-
-
- )
-
-
-
-
-
-inline static constexpr
-
-
-
-
-
Will return v
, but at least min
, and at most max
-
-
Definition at line 86 of file Math.h .
-
-
88 return Max (
Min (v, max), min);
-
-
-
-
-
-
◆ Lerp()
-
-
-
-
-
-
-
-
- constexpr double Eule::Math::Lerp
- (
- double
- a ,
-
-
-
-
- double
- b ,
-
-
-
-
- double
- t
-
-
-
- )
-
-
-
-
-
-inline static constexpr
-
-
-
-
-
Will return the linear interpolation between a
and b
by t
-
-
Definition at line 91 of file Math.h .
-
-
93 const double it = 1.0 - t;
-
94 return (a * it) + (b * t);
-
-
-
-
-
-
◆ Max()
-
-
-
-
-
-
-
-
- constexpr double Eule::Math::Max
- (
- const double
- a ,
-
-
-
-
- const double
- b
-
-
-
- )
-
-
-
-
-
-inline static constexpr
-
-
-
-
-
Will return the bigger of two values.
-
-
Definition at line 76 of file Math.h .
-
-
78 return (a > b) ? a : b;
-
-
-
-
-
-
◆ Min()
-
-
-
-
-
-
-
-
- constexpr double Eule::Math::Min
- (
- const double
- a ,
-
-
-
-
- const double
- b
-
-
-
- )
-
-
-
-
-
-inline static constexpr
-
-
-
-
-
Will return the smaller of two values.
-
-
Definition at line 81 of file Math.h .
-
-
83 return (a < b) ? a : b;
-
-
-
-
-
-
◆ Mod()
-
-
-
-
-
-
-
-
- int Math::Mod
- (
- const int
- numerator ,
-
-
-
-
- const int
- denominator
-
-
-
- )
-
-
-
-
-
-static
-
-
-
-
-
Will compute the actual modulo of a fraction.
-
The % operator returns bs for n<0. May throw divide-by-zero std::logic_error
-
-
Definition at line 78 of file Math.cpp .
-
-
-
81 throw std::logic_error(
"Divide by zero" );
-
-
-
-
-
-
-
-
-
90 if (denominator > 0 && numerator > 0)
-
91 return numerator % denominator;
-
-
-
94 return (denominator + (numerator % denominator)) % denominator;
-
-
-
-
-
-
◆ Oscillate()
-
-
-
-
-
-
-
-
- double Math::Oscillate
- (
- const double
- a ,
-
-
-
-
- const double
- b ,
-
-
-
-
- const double
- counter ,
-
-
-
-
- const double
- speed
-
-
-
- )
-
-
-
-
-
-static
-
-
-
-
-
Kind of like \(sin(counter)\), but it oscillates over \([a,b]\) instead of \([-1,1]\), by a given speed.
-
- Given that \(speed = 1\), the result will always be a
if counter
is even, and b
if counter
is uneven.
- If counter
is a rational, the result will oscillate between a
and b
, like sin()
does.
- If you increase speed
, the oscillation frequency will increase. Meaning \(speed = 2\) would result in \(counter=0.5\) returning b
.
-
-
Definition at line 68 of file Math.cpp .
-
-
70 return (sin(counter * speed *
PI -
HALF_PI ) * 0.5 + 0.5) * (b-a) + a;
-
-
-
-
-
-
◆ Random()
-
-
-
-
-
-
-
-
- double Math::Random
- (
- )
-
-
-
-
-
-static
-
-
-
-
-
Will return a random double between 0
and 1
-
-
Definition at line 29 of file Math.cpp .
-
-
-
-
33 return (rng() % 694206942069ll) / 694206942069.0;
-
-
-
-
-
-
◆ RandomChance()
-
-
-
-
-
-
-
-
- bool Math::RandomChance
- (
- const double
- chance )
-
-
-
-
-
-static
-
-
-
-
-
Will 'roll' a dice, returning true
\(100 * chance\) percent of the time.
-
-
Definition at line 73 of file Math.cpp .
-
-
-
-
-
◆ RandomInt()
-
-
-
-
-
-
-
-
- unsigned int Math::RandomInt
- (
- )
-
-
-
-
-
-static
-
-
-
-
-
Will return a random integer.
-
-
Definition at line 45 of file Math.cpp .
-
-
-
-
-
◆ RandomIntRange()
-
-
-
-
-
-
-
-
- int Math::RandomIntRange
- (
- const int
- max ,
-
-
-
-
- const int
- min
-
-
-
- )
-
-
-
-
-
-static
-
-
-
-
-
Will return a random integer within a range.
-
This is faster than (int)RandomRange(x,y)
- These bounds are INCLUSIVE!
-
-
Definition at line 63 of file Math.cpp .
-
-
65 return (rng() % (max + 1 - min)) + min;
-
-
-
-
-
-
◆ RandomRange()
-
-
-
-
-
-
-
-
- double Math::RandomRange
- (
- const double
- min ,
-
-
-
-
- const double
- max
-
-
-
- )
-
-
-
-
-
-static
-
-
-
-
-
Will return a random double within a range
- These bounds are INCLUSIVE!
-
-
Definition at line 56 of file Math.cpp .
-
-
58 return (
Random () * (max - min)) + min;
-
-
-
-
-
-
◆ RandomUint()
-
-
-
-
-
-
-
-
- unsigned int Math::RandomUint
- (
- )
-
-
-
-
-
-static
-
-
-
-
-
Will return a random unsigned integer.
-
-
Definition at line 37 of file Math.cpp .
-
-
-
-
-
◆ Similar()
-
-
-
-
-
-
-
-
- constexpr bool Eule::Math::Similar
- (
- const double
- a ,
-
-
-
-
- const double
- b ,
-
-
-
-
- const double
- epsilon = 0.00001
-
-
-
- )
-
-
-
-
-
-inline static constexpr
-
-
-
-
-
Compares two double values with a given accuracy.
-
-
Definition at line 102 of file Math.h .
-
-
104 return Abs (a - b) <= epsilon;
-
-
-
-
-
The documentation for this class was generated from the following files:
-
-#define MAKE_SURE_RNG_IS_INITIALIZED
-static constexpr double PI
Pi up to 50 decimal places.
-static constexpr double Abs(const double a)
Will return the absolute value of a
-static constexpr double Max(const double a, const double b)
Will return the bigger of two values.
-static constexpr double Min(const double a, const double b)
Will return the smaller of two values.
-static double Random()
Will return a random double between 0 and 1
-static constexpr double HALF_PI
Pi divided by two.
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Matrix4x4-members.html b/Doxygen/build/classEule_1_1Matrix4x4-members.html
deleted file mode 100644
index cbab5a7..0000000
--- a/Doxygen/build/classEule_1_1Matrix4x4-members.html
+++ /dev/null
@@ -1,145 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Member List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is the complete list of members for Eule::Matrix4x4 , including all inherited members.
-
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Matrix4x4.html b/Doxygen/build/classEule_1_1Matrix4x4.html
deleted file mode 100644
index 7879bb6..0000000
--- a/Doxygen/build/classEule_1_1Matrix4x4.html
+++ /dev/null
@@ -1,1979 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule::Matrix4x4 Class Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A matrix 4x4 class representing a 3d transformation.
- More...
-
-
#include <Matrix4x4.h >
-
-
- Matrix4x4 ()
-
- Matrix4x4 (const Matrix4x4 &other)
-
- Matrix4x4 (Matrix4x4 &&other) noexcept
-
-Matrix4x4 operator* (const Matrix4x4 &other) const
-
-void operator*= (const Matrix4x4 &other)
-
-Matrix4x4 operator/ (const Matrix4x4 &other) const
-
-void operator/= (const Matrix4x4 &other)
-
-Matrix4x4 operator* (const double scalar) const
- Cellwise scaling. More...
-
-void operator*= (const double scalar)
- Cellwise scaling. More...
-
-Matrix4x4 operator/ (const double denominator) const
- Cellwise division. More...
-
-void operator/= (const double denominator)
- Cellwise division. More...
-
-Matrix4x4 operator+ (const Matrix4x4 &other) const
- Cellwise addition. More...
-
-void operator+= (const Matrix4x4 &other)
- Cellwise addition. More...
-
-Matrix4x4 operator- (const Matrix4x4 &other) const
- Cellwise subtraction. More...
-
-void operator-= (const Matrix4x4 &other)
- Cellwise subtraction. More...
-
-std::array< double, 4 > & operator[] (std::size_t y)
-
-const std::array< double, 4 > & operator[] (std::size_t y) const
-
-void operator= (const Matrix4x4 &other)
-
-void operator= (Matrix4x4 &&other) noexcept
-
-bool operator== (const Matrix4x4 &other)
-
-bool operator!= (const Matrix4x4 &other)
-
-const Vector3d GetTranslationComponent () const
- Will return d,h,l as a Vector3d(x,y,z) More...
-
-void SetTranslationComponent (const Vector3d &trans)
- Will set d,h,l from a Vector3d(x,y,z) More...
-
-Matrix4x4 DropTranslationComponents () const
- Will return this Matrix4x4 with d,h,l being set to 0. More...
-
-Matrix4x4 Transpose3x3 () const
- Will return the 3x3 transpose of this matrix. More...
-
-Matrix4x4 Transpose4x4 () const
- Will return the 4x4 transpose of this matrix. More...
-
-Matrix4x4 Multiply4x4 (const Matrix4x4 &o ) const
- Will return the Matrix4x4 of an actual 4x4 multiplication. operator* only does a 3x3. More...
-
-Matrix4x4 GetCofactors (std::size_t p , std::size_t q, std::size_t n ) const
- Will return the cofactors of this matrix, by dimension n. More...
-
-double Determinant (std::size_t n ) const
- Will return the determinant, by dimension n. More...
-
-Matrix4x4 Adjoint (std::size_t n ) const
- Will return the adjoint of this matrix, by dimension n. More...
-
-Matrix4x4 Inverse3x3 () const
- Will return the 3x3-inverse of this matrix. More...
-
-Matrix4x4 Inverse4x4 () const
- Will return the full 4x4-inverse of this matrix. More...
-
-bool IsInversible3x3 () const
- Will check if the 3x3-component is inversible. More...
-
-bool IsInversible4x4 () const
- Will check if the entire matrix is inversible. More...
-
-bool Similar (const Matrix4x4 &other, double epsilon=0.00001) const
- Will compare if two matrices are similar to a certain epsilon value. More...
-
-
-
-std::array< std::array< double, 4 >, 4 > v
- Array holding the matrices values. More...
-
-double & a = v [0][0]
-
-double & b = v [0][1]
-
-double & c = v [0][2]
-
-double & d = v [0][3]
-
-double & e = v [1][0]
-
-double & f = v [1][1]
-
-double & g = v [1][2]
-
-double & h = v [1][3]
-
-double & i = v [2][0]
-
-double & j = v [2][1]
-
-double & k = v [2][2]
-
-double & l = v [2][3]
-
-double & m = v [3][0]
-
-double & n = v [3][1]
-
-double & o = v [3][2]
-
-double & p = v [3][3]
-
-
-
-
A matrix 4x4 class representing a 3d transformation.
-
This matrix consists of a 3x3 matrix containing scaling and rotation information, and a vector (d,h,l) representing the translation.
-
myMatrix[y][x] = 3
-
-
X ==============>
-
Y
-
| # # # # # # # # # # #
-
-
| # #
-
-
| # #
-
-
# #
-
# m n o p #
-
# # # # # # # # # # #
-
Note: This class can also be used to compute regular 4x4 multiplications. Use Multiply4x4() for that.
-
-
Definition at line 36 of file Matrix4x4.h .
-
-
-
◆ Matrix4x4() [1/3]
-
-
-
-
-
- Matrix4x4::Matrix4x4
- (
- )
-
-
-
-
-
-
Definition at line 12 of file Matrix4x4.cpp .
-
-
-
15 for (std::size_t
i = 0;
i < 4;
i ++)
-
16 for (std::size_t
j = 0;
j < 4;
j ++)
-
17 v [
i ][
j ] =
double (
i ==
j );
-
-
-
-
-
-
-
-
◆ Matrix4x4() [2/3]
-
-
-
-
-
- Matrix4x4::Matrix4x4
- (
- const Matrix4x4 &
- other )
-
-
-
-
-
-
-
◆ Matrix4x4() [3/3]
-
-
-
-
-
-
-
-
- Matrix4x4::Matrix4x4
- (
- Matrix4x4 &&
- other )
-
-
-
-
-
-noexcept
-
-
-
-
-
Definition at line 28 of file Matrix4x4.cpp .
-
-
30 v = std::move(other.
v );
-
-
-
-
-
-
-
-
◆ Adjoint()
-
-
-
-
-
- Matrix4x4 Matrix4x4::Adjoint
- (
- std::size_t
- n )
- const
-
-
-
-
-
Will return the adjoint of this matrix, by dimension n.
-
-
Definition at line 533 of file Matrix4x4.cpp .
-
-
-
536 throw std::runtime_error(
"Dimension out of range! 0 <= n <= 4" );
-
-
-
-
-
541 for (std::size_t
i = 0;
i <
n ;
i ++)
-
542 for (std::size_t
j = 0;
j <
n ;
j ++)
-
-
-
-
-
-
548 sign = ((
i +
j ) % 2 == 0) ? 1 : -1;
-
-
-
-
-
-
-
-
-
-
-
-
-
◆ Determinant()
-
-
-
-
-
- double Matrix4x4::Determinant
- (
- std::size_t
- n )
- const
-
-
-
-
-
Will return the determinant, by dimension n.
-
-
Definition at line 511 of file Matrix4x4.cpp .
-
-
-
514 throw std::runtime_error(
"Dimension out of range! 0 <= n <= 4" );
-
-
-
-
-
-
-
-
522 for (std::size_t x = 0; x <
n ; x++)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
◆ DropTranslationComponents()
-
-
-
-
-
- Matrix4x4 Matrix4x4::DropTranslationComponents
- (
- )
- const
-
-
-
-
-
-
◆ GetCofactors()
-
-
-
-
-
- Matrix4x4 Matrix4x4::GetCofactors
- (
- std::size_t
- p ,
-
-
-
-
- std::size_t
- q ,
-
-
-
-
- std::size_t
- n
-
-
-
- )
- const
-
-
-
-
-
Will return the cofactors of this matrix, by dimension n.
-
-
Definition at line 478 of file Matrix4x4.cpp .
-
-
-
481 throw std::runtime_error(
"Dimension out of range! 0 <= n <= 4" );
-
-
-
-
-
-
-
488 for (std::size_t y = 0; y <
n ; y++)
-
489 for (std::size_t x = 0; x <
n ; x++)
-
-
491 if ((y !=
p ) && (x != q))
-
-
493 cofs[
i ][
j ] =
v [y][x];
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
◆ GetTranslationComponent()
-
-
-
-
-
- const Vector3d Matrix4x4::GetTranslationComponent
- (
- )
- const
-
-
-
-
-
Will return d,h,l as a Vector3d(x,y,z)
-
-
Definition at line 407 of file Matrix4x4.cpp .
-
-
-
-
-
◆ Inverse3x3()
-
-
-
-
-
- Matrix4x4 Matrix4x4::Inverse3x3
- (
- )
- const
-
-
-
-
-
Will return the 3x3-inverse of this matrix.
-
- Meaning, the 3x3 component will be inverted, and the translation component will be negated
-
-
Definition at line 558 of file Matrix4x4.cpp .
-
-
-
-
-
-
564 throw std::runtime_error(
"Matrix3x3 not inversible!" );
-
-
-
-
568 for (std::size_t
i = 0;
i < 3;
i ++)
-
569 for (std::size_t
j = 0;
j < 3;
j ++)
-
570 inv[
i ][
j ] = adj[
i ][
j ] / det;
-
-
-
-
-
-
-
-
-
-
◆ Inverse4x4()
-
-
-
-
-
- Matrix4x4 Matrix4x4::Inverse4x4
- (
- )
- const
-
-
-
-
-
Will return the full 4x4-inverse of this matrix.
-
-
Definition at line 577 of file Matrix4x4.cpp .
-
-
-
-
-
-
583 throw std::runtime_error(
"Matrix4x4 not inversible!" );
-
-
-
-
587 for (std::size_t
i = 0;
i < 4;
i ++)
-
588 for (std::size_t
j = 0;
j < 4;
j ++)
-
589 inv[
i ][
j ] = adj[
i ][
j ] / det;
-
-
-
-
-
-
-
-
◆ IsInversible3x3()
-
-
-
-
-
- bool Matrix4x4::IsInversible3x3
- (
- )
- const
-
-
-
-
-
Will check if the 3x3-component is inversible.
-
-
Definition at line 598 of file Matrix4x4.cpp .
-
-
-
-
-
◆ IsInversible4x4()
-
-
-
-
-
- bool Matrix4x4::IsInversible4x4
- (
- )
- const
-
-
-
-
-
Will check if the entire matrix is inversible.
-
-
Definition at line 603 of file Matrix4x4.cpp .
-
-
-
-
-
◆ Multiply4x4()
-
-
-
-
-
Will return the Matrix4x4 of an actual 4x4 multiplication. operator* only does a 3x3.
-
-
Definition at line 451 of file Matrix4x4.cpp .
-
-
-
-
455 m [0][0] = (
v [0][0]*
o [0][0]) + (
v [0][1]*
o [1][0]) + (
v [0][2]*
o [2][0]) + (
v [0][3]*
o [3][0]);
-
456 m [0][1] = (
v [0][0]*
o [0][1]) + (
v [0][1]*
o [1][1]) + (
v [0][2]*
o [2][1]) + (
v [0][3]*
o [3][1]);
-
457 m [0][2] = (
v [0][0]*
o [0][2]) + (
v [0][1]*
o [1][2]) + (
v [0][2]*
o [2][2]) + (
v [0][3]*
o [3][2]);
-
458 m [0][3] = (
v [0][0]*
o [0][3]) + (
v [0][1]*
o [1][3]) + (
v [0][2]*
o [2][3]) + (
v [0][3]*
o [3][3]);
-
-
460 m [1][0] = (
v [1][0]*
o [0][0]) + (
v [1][1]*
o [1][0]) + (
v [1][2]*
o [2][0]) + (
v [1][3]*
o [3][0]);
-
461 m [1][1] = (
v [1][0]*
o [0][1]) + (
v [1][1]*
o [1][1]) + (
v [1][2]*
o [2][1]) + (
v [1][3]*
o [3][1]);
-
462 m [1][2] = (
v [1][0]*
o [0][2]) + (
v [1][1]*
o [1][2]) + (
v [1][2]*
o [2][2]) + (
v [1][3]*
o [3][2]);
-
463 m [1][3] = (
v [1][0]*
o [0][3]) + (
v [1][1]*
o [1][3]) + (
v [1][2]*
o [2][3]) + (
v [1][3]*
o [3][3]);
-
-
465 m [2][0] = (
v [2][0]*
o [0][0]) + (
v [2][1]*
o [1][0]) + (
v [2][2]*
o [2][0]) + (
v [2][3]*
o [3][0]);
-
466 m [2][1] = (
v [2][0]*
o [0][1]) + (
v [2][1]*
o [1][1]) + (
v [2][2]*
o [2][1]) + (
v [2][3]*
o [3][1]);
-
467 m [2][2] = (
v [2][0]*
o [0][2]) + (
v [2][1]*
o [1][2]) + (
v [2][2]*
o [2][2]) + (
v [2][3]*
o [3][2]);
-
468 m [2][3] = (
v [2][0]*
o [0][3]) + (
v [2][1]*
o [1][3]) + (
v [2][2]*
o [2][3]) + (
v [2][3]*
o [3][3]);
-
-
470 m [3][0] = (
v [3][0]*
o [0][0]) + (
v [3][1]*
o [1][0]) + (
v [3][2]*
o [2][0]) + (
v [3][3]*
o [3][0]);
-
471 m [3][1] = (
v [3][0]*
o [0][1]) + (
v [3][1]*
o [1][1]) + (
v [3][2]*
o [2][1]) + (
v [3][3]*
o [3][1]);
-
472 m [3][2] = (
v [3][0]*
o [0][2]) + (
v [3][1]*
o [1][2]) + (
v [3][2]*
o [2][2]) + (
v [3][3]*
o [3][2]);
-
473 m [3][3] = (
v [3][0]*
o [0][3]) + (
v [3][1]*
o [1][3]) + (
v [3][2]*
o [2][3]) + (
v [3][3]*
o [3][3]);
-
-
-
-
-
-
-
-
◆ operator!=()
-
-
-
-
-
- bool Matrix4x4::operator!=
- (
- const Matrix4x4 &
- other )
-
-
-
-
-
-
-
◆ operator*() [1/2]
-
-
-
-
-
- Matrix4x4 Matrix4x4::operator*
- (
- const double
- scalar )
- const
-
-
-
-
-
Cellwise scaling.
-
-
Definition at line 164 of file Matrix4x4.cpp .
-
-
-
-
168 #ifndef _EULE_NO_INTRINSICS_
-
-
-
171 __m256d __row0 = _mm256_set_pd(
v [0][3],
v [0][2],
v [0][1],
v [0][0]);
-
172 __m256d __row1 = _mm256_set_pd(
v [1][3],
v [1][2],
v [1][1],
v [1][0]);
-
173 __m256d __row2 = _mm256_set_pd(
v [2][3],
v [2][2],
v [2][1],
v [2][0]);
-
174 __m256d __row3 = _mm256_set_pd(
v [3][3],
v [3][2],
v [3][1],
v [3][0]);
-
-
-
177 __m256d __scalar = _mm256_set1_pd(scalar);
-
-
-
180 __m256d __sr0 = _mm256_mul_pd(__row0, __scalar);
-
181 __m256d __sr1 = _mm256_mul_pd(__row1, __scalar);
-
182 __m256d __sr2 = _mm256_mul_pd(__row2, __scalar);
-
183 __m256d __sr3 = _mm256_mul_pd(__row3, __scalar);
-
-
-
186 _mm256_storeu_pd(
m .v[0].data(), __sr0);
-
187 _mm256_storeu_pd(
m .v[1].data(), __sr1);
-
188 _mm256_storeu_pd(
m .v[2].data(), __sr2);
-
189 _mm256_storeu_pd(
m .v[3].data(), __sr3);
-
-
-
-
193 for (std::size_t x = 0; x < 4; x++)
-
194 for (std::size_t y = 0; y < 4; y++)
-
195 m [x][y] =
v [x][y] * scalar;
-
-
-
-
-
-
-
-
-
-
◆ operator*() [2/2]
-
-
-
-
-
Definition at line 34 of file Matrix4x4.cpp .
-
-
-
-
-
39 #ifndef _EULE_NO_INTRINSICS_
-
-
-
-
-
-
45 __m256d __va1 = _mm256_set_pd(
v [0][0],
v [0][0],
v [0][0],
v [1][0]);
-
46 __m256d __va2 = _mm256_set_pd(
v [1][0],
v [1][0],
v [2][0],
v [2][0]);
-
-
48 __m256d __oa1 = _mm256_set_pd(other[0][0], other[0][1], other[0][2], other[0][0]);
-
49 __m256d __oa2 = _mm256_set_pd(other[0][1], other[0][2], other[0][0], other[0][1]);
-
-
51 __m256d __vb1 = _mm256_set_pd(
v [0][1],
v [0][1],
v [0][1],
v [1][1]);
-
52 __m256d __vb2 = _mm256_set_pd(
v [1][1],
v [1][1],
v [2][1],
v [2][1]);
-
-
54 __m256d __ob1 = _mm256_set_pd(other[1][0], other[1][1], other[1][2], other[1][0]);
-
55 __m256d __ob2 = _mm256_set_pd(other[1][1], other[1][2], other[1][0], other[1][1]);
-
-
57 __m256d __vc1 = _mm256_set_pd(
v [0][2],
v [0][2],
v [0][2],
v [1][2]);
-
58 __m256d __vc2 = _mm256_set_pd(
v [1][2],
v [1][2],
v [2][2],
v [2][2]);
-
-
60 __m256d __oc1 = _mm256_set_pd(other[2][0], other[2][1], other[2][2], other[2][0]);
-
61 __m256d __oc2 = _mm256_set_pd(other[2][1], other[2][2], other[2][0], other[2][1]);
-
-
-
64 __m256d __sum1 = _mm256_set1_pd(0);
-
65 __m256d __sum2 = _mm256_set1_pd(0);
-
-
-
-
69 __sum1 = _mm256_fmadd_pd(__va1, __oa1, __sum1);
-
70 __sum1 = _mm256_fmadd_pd(__vb1, __ob1, __sum1);
-
71 __sum1 = _mm256_fmadd_pd(__vc1, __oc1, __sum1);
-
-
-
74 __sum2 = _mm256_fmadd_pd(__va2, __oa2, __sum2);
-
75 __sum2 = _mm256_fmadd_pd(__vb2, __ob2, __sum2);
-
76 __sum2 = _mm256_fmadd_pd(__vc2, __oc2, __sum2);
-
-
-
-
-
-
82 _mm256_storeu_pd(sum1, __sum1);
-
83 _mm256_storeu_pd(sum2, __sum2);
-
-
-
-
87 newMatrix[0][0] = sum1[3];
-
88 newMatrix[0][1] = sum1[2];
-
89 newMatrix[0][2] = sum1[1];
-
90 newMatrix[1][0] = sum1[0];
-
-
-
93 newMatrix[1][1] = sum2[3];
-
94 newMatrix[1][2] = sum2[2];
-
95 newMatrix[2][0] = sum2[1];
-
96 newMatrix[2][1] = sum2[0];
-
-
-
99 newMatrix[2][2] = (
v [2][0] * other[0][2]) + (
v [2][1] * other[1][2]) + (
v [2][2] * other[2][2]);
-
-
-
-
-
-
105 __m256d __transSelf = _mm256_set_pd(0,
l ,
h ,
d );
-
106 __m256d __transOther = _mm256_set_pd(0, other.l, other.h, other.d);
-
-
-
109 __m256d __sum = _mm256_add_pd(__transSelf, __transOther);
-
-
-
-
113 _mm256_storeu_pd(sum, __sum);
-
-
-
116 newMatrix.
d = sum[0];
-
117 newMatrix.
h = sum[1];
-
118 newMatrix.
l = sum[2];
-
-
-
-
-
-
124 newMatrix[0][0] = (
v [0][0] * other[0][0]) + (
v [0][1] * other[1][0]) + (
v [0][2] * other[2][0]);
-
125 newMatrix[0][1] = (
v [0][0] * other[0][1]) + (
v [0][1] * other[1][1]) + (
v [0][2] * other[2][1]);
-
126 newMatrix[0][2] = (
v [0][0] * other[0][2]) + (
v [0][1] * other[1][2]) + (
v [0][2] * other[2][2]);
-
-
128 newMatrix[1][0] = (
v [1][0] * other[0][0]) + (
v [1][1] * other[1][0]) + (
v [1][2] * other[2][0]);
-
129 newMatrix[1][1] = (
v [1][0] * other[0][1]) + (
v [1][1] * other[1][1]) + (
v [1][2] * other[2][1]);
-
130 newMatrix[1][2] = (
v [1][0] * other[0][2]) + (
v [1][1] * other[1][2]) + (
v [1][2] * other[2][2]);
-
-
132 newMatrix[2][0] = (
v [2][0] * other[0][0]) + (
v [2][1] * other[1][0]) + (
v [2][2] * other[2][0]);
-
133 newMatrix[2][1] = (
v [2][0] * other[0][1]) + (
v [2][1] * other[1][1]) + (
v [2][2] * other[2][1]);
-
134 newMatrix[2][2] = (
v [2][0] * other[0][2]) + (
v [2][1] * other[1][2]) + (
v [2][2] * other[2][2]);
-
-
-
-
138 newMatrix[0][3] =
v [0][3] + other[0][3];
-
139 newMatrix[1][3] =
v [1][3] + other[1][3];
-
140 newMatrix[2][3] =
v [2][3] + other[2][3];
-
-
-
-
-
-
-
-
-
-
◆ operator*=() [1/2]
-
-
-
-
-
- void Matrix4x4::operator*=
- (
- const double
- scalar )
-
-
-
-
-
-
Cellwise scaling.
-
-
Definition at line 202 of file Matrix4x4.cpp .
-
-
204 *
this = *
this * scalar;
-
-
-
-
-
-
-
◆ operator*=() [2/2]
-
-
-
-
-
- void Matrix4x4::operator*=
- (
- const Matrix4x4 &
- other )
-
-
-
-
-
-
Definition at line 147 of file Matrix4x4.cpp .
-
-
149 *
this = *
this * other;
-
-
-
-
-
-
-
◆ operator+()
-
-
-
-
-
Cellwise addition.
-
-
Definition at line 221 of file Matrix4x4.cpp .
-
-
-
-
225 #ifndef _EULE_NO_INTRINSICS_
-
-
-
228 __m256d __row0a = _mm256_set_pd(
v [0][3],
v [0][2],
v [0][1],
v [0][0]);
-
229 __m256d __row1a = _mm256_set_pd(
v [1][3],
v [1][2],
v [1][1],
v [1][0]);
-
230 __m256d __row2a = _mm256_set_pd(
v [2][3],
v [2][2],
v [2][1],
v [2][0]);
-
231 __m256d __row3a = _mm256_set_pd(
v [3][3],
v [3][2],
v [3][1],
v [3][0]);
-
-
233 __m256d __row0b = _mm256_set_pd(other[0][3], other[0][2], other[0][1], other[0][0]);
-
234 __m256d __row1b = _mm256_set_pd(other[1][3], other[1][2], other[1][1], other[1][0]);
-
235 __m256d __row2b = _mm256_set_pd(other[2][3], other[2][2], other[2][1], other[2][0]);
-
236 __m256d __row3b = _mm256_set_pd(other[3][3], other[3][2], other[3][1], other[3][0]);
-
-
-
239 __m256d __sr0 = _mm256_add_pd(__row0a, __row0b);
-
240 __m256d __sr1 = _mm256_add_pd(__row1a, __row1b);
-
241 __m256d __sr2 = _mm256_add_pd(__row2a, __row2b);
-
242 __m256d __sr3 = _mm256_add_pd(__row3a, __row3b);
-
-
-
245 _mm256_storeu_pd(
m .v[0].data(), __sr0);
-
246 _mm256_storeu_pd(
m .v[1].data(), __sr1);
-
247 _mm256_storeu_pd(
m .v[2].data(), __sr2);
-
248 _mm256_storeu_pd(
m .v[3].data(), __sr3);
-
-
-
-
252 for (std::size_t x = 0; x < 4; x++)
-
253 for (std::size_t y = 0; y < 4; y++)
-
254 m [x][y] =
v [x][y] + other[x][y];
-
-
-
-
-
-
-
-
-
-
◆ operator+=()
-
-
-
-
-
- void Matrix4x4::operator+=
- (
- const Matrix4x4 &
- other )
-
-
-
-
-
-
Cellwise addition.
-
-
Definition at line 261 of file Matrix4x4.cpp .
-
-
263 #ifndef _EULE_NO_INTRINSICS_
-
-
-
-
267 __m256d __row0a = _mm256_set_pd(
v [0][3],
v [0][2],
v [0][1],
v [0][0]);
-
268 __m256d __row1a = _mm256_set_pd(
v [1][3],
v [1][2],
v [1][1],
v [1][0]);
-
269 __m256d __row2a = _mm256_set_pd(
v [2][3],
v [2][2],
v [2][1],
v [2][0]);
-
270 __m256d __row3a = _mm256_set_pd(
v [3][3],
v [3][2],
v [3][1],
v [3][0]);
-
-
272 __m256d __row0b = _mm256_set_pd(other[0][3], other[0][2], other[0][1], other[0][0]);
-
273 __m256d __row1b = _mm256_set_pd(other[1][3], other[1][2], other[1][1], other[1][0]);
-
274 __m256d __row2b = _mm256_set_pd(other[2][3], other[2][2], other[2][1], other[2][0]);
-
275 __m256d __row3b = _mm256_set_pd(other[3][3], other[3][2], other[3][1], other[3][0]);
-
-
-
278 __m256d __sr0 = _mm256_add_pd(__row0a, __row0b);
-
279 __m256d __sr1 = _mm256_add_pd(__row1a, __row1b);
-
280 __m256d __sr2 = _mm256_add_pd(__row2a, __row2b);
-
281 __m256d __sr3 = _mm256_add_pd(__row3a, __row3b);
-
-
-
284 _mm256_storeu_pd(
v [0].data(), __sr0);
-
285 _mm256_storeu_pd(
v [1].data(), __sr1);
-
286 _mm256_storeu_pd(
v [2].data(), __sr2);
-
287 _mm256_storeu_pd(
v [3].data(), __sr3);
-
-
-
-
291 *
this = *
this + other;
-
-
-
-
-
-
-
-
-
-
◆ operator-()
-
-
-
-
-
Cellwise subtraction.
-
-
Definition at line 298 of file Matrix4x4.cpp .
-
-
-
-
302 #ifndef _EULE_NO_INTRINSICS_
-
-
-
305 __m256d __row0a = _mm256_set_pd(
v [0][3],
v [0][2],
v [0][1],
v [0][0]);
-
306 __m256d __row1a = _mm256_set_pd(
v [1][3],
v [1][2],
v [1][1],
v [1][0]);
-
307 __m256d __row2a = _mm256_set_pd(
v [2][3],
v [2][2],
v [2][1],
v [2][0]);
-
308 __m256d __row3a = _mm256_set_pd(
v [3][3],
v [3][2],
v [3][1],
v [3][0]);
-
-
310 __m256d __row0b = _mm256_set_pd(other[0][3], other[0][2], other[0][1], other[0][0]);
-
311 __m256d __row1b = _mm256_set_pd(other[1][3], other[1][2], other[1][1], other[1][0]);
-
312 __m256d __row2b = _mm256_set_pd(other[2][3], other[2][2], other[2][1], other[2][0]);
-
313 __m256d __row3b = _mm256_set_pd(other[3][3], other[3][2], other[3][1], other[3][0]);
-
-
-
316 __m256d __sr0 = _mm256_sub_pd(__row0a, __row0b);
-
317 __m256d __sr1 = _mm256_sub_pd(__row1a, __row1b);
-
318 __m256d __sr2 = _mm256_sub_pd(__row2a, __row2b);
-
319 __m256d __sr3 = _mm256_sub_pd(__row3a, __row3b);
-
-
-
322 _mm256_storeu_pd(
m .v[0].data(), __sr0);
-
323 _mm256_storeu_pd(
m .v[1].data(), __sr1);
-
324 _mm256_storeu_pd(
m .v[2].data(), __sr2);
-
325 _mm256_storeu_pd(
m .v[3].data(), __sr3);
-
-
-
-
329 for (std::size_t x = 0; x < 4; x++)
-
330 for (std::size_t y = 0; y < 4; y++)
-
331 m [x][y] =
v [x][y] - other[x][y];
-
-
-
-
-
-
-
-
-
-
◆ operator-=()
-
-
-
-
-
- void Matrix4x4::operator-=
- (
- const Matrix4x4 &
- other )
-
-
-
-
-
-
Cellwise subtraction.
-
-
Definition at line 338 of file Matrix4x4.cpp .
-
-
340 #ifndef _EULE_NO_INTRINSICS_
-
-
-
-
344 __m256d __row0a = _mm256_set_pd(
v [0][3],
v [0][2],
v [0][1],
v [0][0]);
-
345 __m256d __row1a = _mm256_set_pd(
v [1][3],
v [1][2],
v [1][1],
v [1][0]);
-
346 __m256d __row2a = _mm256_set_pd(
v [2][3],
v [2][2],
v [2][1],
v [2][0]);
-
347 __m256d __row3a = _mm256_set_pd(
v [3][3],
v [3][2],
v [3][1],
v [3][0]);
-
-
349 __m256d __row0b = _mm256_set_pd(other[0][3], other[0][2], other[0][1], other[0][0]);
-
350 __m256d __row1b = _mm256_set_pd(other[1][3], other[1][2], other[1][1], other[1][0]);
-
351 __m256d __row2b = _mm256_set_pd(other[2][3], other[2][2], other[2][1], other[2][0]);
-
352 __m256d __row3b = _mm256_set_pd(other[3][3], other[3][2], other[3][1], other[3][0]);
-
-
-
355 __m256d __sr0 = _mm256_sub_pd(__row0a, __row0b);
-
356 __m256d __sr1 = _mm256_sub_pd(__row1a, __row1b);
-
357 __m256d __sr2 = _mm256_sub_pd(__row2a, __row2b);
-
358 __m256d __sr3 = _mm256_sub_pd(__row3a, __row3b);
-
-
-
361 _mm256_storeu_pd(
v [0].data(), __sr0);
-
362 _mm256_storeu_pd(
v [1].data(), __sr1);
-
363 _mm256_storeu_pd(
v [2].data(), __sr2);
-
364 _mm256_storeu_pd(
v [3].data(), __sr3);
-
-
-
-
368 *
this = *
this - other;
-
-
-
-
-
-
-
-
-
-
◆ operator/() [1/2]
-
-
-
-
-
- Matrix4x4 Matrix4x4::operator/
- (
- const double
- denominator )
- const
-
-
-
-
-
Cellwise division.
-
-
Definition at line 208 of file Matrix4x4.cpp .
-
-
210 const double precomputeDivision = 1.0 / denominator;
-
-
212 return *
this * precomputeDivision;
-
-
-
-
-
-
◆ operator/() [2/2]
-
-
-
-
◆ operator/=() [1/2]
-
-
-
-
-
- void Matrix4x4::operator/=
- (
- const double
- denominator )
-
-
-
-
-
-
Cellwise division.
-
-
Definition at line 215 of file Matrix4x4.cpp .
-
-
217 *
this = *
this / denominator;
-
-
-
-
-
-
-
◆ operator/=() [2/2]
-
-
-
-
-
- void Matrix4x4::operator/=
- (
- const Matrix4x4 &
- other )
-
-
-
-
-
-
-
◆ operator=() [1/2]
-
-
-
-
-
- void Matrix4x4::operator=
- (
- const Matrix4x4 &
- other )
-
-
-
-
-
-
-
◆ operator=() [2/2]
-
-
-
-
-
-
-
-
- void Matrix4x4::operator=
- (
- Matrix4x4 &&
- other )
-
-
-
-
-
-noexcept
-
-
-
-
-
-
◆ operator==()
-
-
-
-
-
- bool Matrix4x4::operator==
- (
- const Matrix4x4 &
- other )
-
-
-
-
-
-
-
◆ operator[]() [1/2]
-
-
-
-
-
- std::array< double, 4 > & Matrix4x4::operator[]
- (
- std::size_t
- y )
-
-
-
-
-
-
-
◆ operator[]() [2/2]
-
-
-
-
-
- const std::array< double, 4 > & Matrix4x4::operator[]
- (
- std::size_t
- y )
- const
-
-
-
-
-
-
◆ SetTranslationComponent()
-
-
-
-
-
- void Matrix4x4::SetTranslationComponent
- (
- const Vector3d &
- trans )
-
-
-
-
-
-
Will set d,h,l from a Vector3d(x,y,z)
-
-
Definition at line 412 of file Matrix4x4.cpp .
-
-
-
-
-
◆ Similar()
-
-
-
-
-
- bool Matrix4x4::Similar
- (
- const Matrix4x4 &
- other ,
-
-
-
-
- double
- epsilon = 0.00001
-
-
-
- )
- const
-
-
-
-
-
Will compare if two matrices are similar to a certain epsilon value.
-
-
Definition at line 608 of file Matrix4x4.cpp .
-
-
610 for (std::size_t
i = 0;
i < 4;
i ++)
-
611 for (std::size_t
j = 0;
j < 4;
j ++)
-
-
-
-
-
-
-
-
-
-
◆ Transpose3x3()
-
-
-
-
-
- Matrix4x4 Matrix4x4::Transpose3x3
- (
- )
- const
-
-
-
-
-
Will return the 3x3 transpose of this matrix.
-
-
Definition at line 429 of file Matrix4x4.cpp .
-
-
-
-
433 for (std::size_t
i = 0;
i < 3;
i ++)
-
434 for (std::size_t
j = 0;
j < 3;
j ++)
-
435 trans[
j ][
i ] =
v [
i ][
j ];
-
-
-
-
-
-
-
-
◆ Transpose4x4()
-
-
-
-
-
- Matrix4x4 Matrix4x4::Transpose4x4
- (
- )
- const
-
-
-
-
-
Will return the 4x4 transpose of this matrix.
-
-
Definition at line 440 of file Matrix4x4.cpp .
-
-
-
-
444 for (std::size_t
i = 0;
i < 4;
i ++)
-
445 for (std::size_t
j = 0;
j < 4;
j ++)
-
446 trans[
j ][
i ] =
v [
i ][
j ];
-
-
-
-
-
-
-
-
-
◆ operator<< [1/2]
-
-
-
-
-
-
-
-
- std::ostream& operator<<
- (
- std::ostream &
- os ,
-
-
-
-
- const Matrix4x4 &
- m
-
-
-
- )
-
-
-
-
-
-friend
-
-
-
-
-
Definition at line 620 of file Matrix4x4.cpp .
-
-
-
-
624 for (std::size_t y = 0; y < 4; y++)
-
-
626 for (std::size_t x = 0; x < 4; x++)
-
627 os <<
" | " <<
m [y][x];
-
-
629 os <<
" |" << std::endl;
-
-
-
-
-
-
-
-
-
◆ operator<< [2/2]
-
-
-
-
-
-
-
-
- std::wostream& operator<<
- (
- std::wostream &
- os ,
-
-
-
-
- const Matrix4x4 &
- m
-
-
-
- )
-
-
-
-
-
-friend
-
-
-
-
-
Definition at line 635 of file Matrix4x4.cpp .
-
-
-
-
639 for (std::size_t y = 0; y < 4; y++)
-
-
641 for (std::size_t x = 0; x < 4; x++)
-
642 os << L
" | " <<
m [y][x];
-
-
644 os << L
" |" << std::endl;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::a = v [0][0]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::b = v [0][1]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::c = v [0][2]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::d = v [0][3]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::e = v [1][0]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::f = v [1][1]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::g = v [1][2]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::h = v [1][3]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::i = v [2][0]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::j = v [2][1]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::k = v [2][2]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::l = v [2][3]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::m = v [3][0]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::n = v [3][1]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::o = v [3][2]
-
-
-
-
-
-
-
-
-
-
-
- double& Eule::Matrix4x4::p = v [3][3]
-
-
-
-
-
-
-
-
-
-
-
- std::array<std::array<double, 4>, 4> Eule::Matrix4x4::v
-
-
-
-
-
Array holding the matrices values.
-
-
Definition at line 44 of file Matrix4x4.h .
-
-
-
-
The documentation for this class was generated from the following files:
-
-
-Matrix4x4 Adjoint(std::size_t n) const
Will return the adjoint of this matrix, by dimension n.
-bool operator==(const Matrix4x4 &other)
-
-
-
-Matrix4x4 Inverse3x3() const
Will return the 3x3-inverse of this matrix.
-
-std::array< std::array< double, 4 >, 4 > v
Array holding the matrices values.
-Vector3< double > Vector3d
-
-A matrix 4x4 class representing a 3d transformation.
-
-
-
-
-static constexpr bool Similar(const double a, const double b, const double epsilon=0.00001)
Compares two double values with a given accuracy.
-
-double Determinant(std::size_t n) const
Will return the determinant, by dimension n.
-void SetTranslationComponent(const Vector3d &trans)
Will set d,h,l from a Vector3d(x,y,z)
-
-
-
-
-Matrix4x4 GetCofactors(std::size_t p, std::size_t q, std::size_t n) const
Will return the cofactors of this matrix, by dimension n.
-const Vector3d GetTranslationComponent() const
Will return d,h,l as a Vector3d(x,y,z)
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Quaternion-members.html b/Doxygen/build/classEule_1_1Quaternion-members.html
deleted file mode 100644
index 6fed225..0000000
--- a/Doxygen/build/classEule_1_1Quaternion-members.html
+++ /dev/null
@@ -1,116 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Member List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is the complete list of members for Eule::Quaternion , including all inherited members.
-
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Quaternion.html b/Doxygen/build/classEule_1_1Quaternion.html
deleted file mode 100644
index b402e34..0000000
--- a/Doxygen/build/classEule_1_1Quaternion.html
+++ /dev/null
@@ -1,1044 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule::Quaternion Class Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
3D rotation representation
- More...
-
-
#include <Quaternion.h >
-
-
-
3D rotation representation
-
-
Definition at line 10 of file Quaternion.h .
-
-
-
◆ Quaternion() [1/4]
-
-
-
-
-
- Quaternion::Quaternion
- (
- )
-
-
-
-
-
-
-
◆ Quaternion() [2/4]
-
-
-
-
-
-
-
-
- Quaternion::Quaternion
- (
- const Vector4d
- values )
-
-
-
-
-
-explicit
-
-
-
-
-
Constructs by these raw values.
-
-
Definition at line 17 of file Quaternion.cpp .
-
-
-
-
-
◆ Quaternion() [3/4]
-
-
-
-
-
- Quaternion::Quaternion
- (
- const Quaternion &
- q )
-
-
-
-
-
-
-
◆ Quaternion() [4/4]
-
-
-
-
-
- Quaternion::Quaternion
- (
- const Vector3d
- eulerAngles )
-
-
-
-
-
-
Creates an quaternion from euler angles.
-
-
Definition at line 29 of file Quaternion.cpp .
-
-
-
-
33 #ifndef _EULE_NO_INTRINSICS_
-
-
-
36 __m256d __vec = _mm256_set_pd(0, eulerRad.
z , eulerRad.
y , eulerRad.
x );
-
37 __vec = _mm256_mul_pd(__vec, _mm256_set1_pd(0.5));
-
-
39 __m256d __sin = _mm256_sincos_pd(&__cos, __vec);
-
-
-
-
-
-
45 _mm256_storeu_pd(sin, __sin);
-
46 _mm256_storeu_pd(cos, __cos);
-
-
48 __m256d __a = _mm256_set_pd(cos[0], cos[0], sin[0], cos[0]);
-
49 __m256d __b = _mm256_set_pd(cos[1], sin[1], cos[1], cos[1]);
-
50 __m256d __c = _mm256_set_pd(sin[2], cos[2], cos[2], cos[2]);
-
-
52 __m256d __d = _mm256_set_pd(sin[0], sin[0], cos[0], sin[0]);
-
53 __m256d __e = _mm256_set_pd(sin[1], cos[1], sin[1], sin[1]);
-
54 __m256d __f = _mm256_set_pd(cos[2], sin[2], sin[2], sin[2]);
-
-
-
-
58 __abc = _mm256_mul_pd(__a, __b);
-
59 __abc = _mm256_mul_pd(__abc, __c);
-
-
-
62 __def = _mm256_mul_pd(__d, __e);
-
63 __def = _mm256_mul_pd(__def, __f);
-
-
-
-
-
-
69 _mm256_storeu_pd(abc, __abc);
-
70 _mm256_storeu_pd(def, __def);
-
-
-
73 v.
w = abc[0] + def[0];
-
74 v.
x = abc[1] - def[1];
-
75 v.
y = abc[2] + def[2];
-
76 v.
z = abc[3] - def[3];
-
-
-
-
80 const double cy = cos(eulerRad.
z * 0.5);
-
81 const double sy = sin(eulerRad.
z * 0.5);
-
82 const double cp = cos(eulerRad.
y * 0.5);
-
83 const double sp = sin(eulerRad.
y * 0.5);
-
84 const double cr = cos(eulerRad.
x * 0.5);
-
85 const double sr = sin(eulerRad.
x * 0.5);
-
-
87 v.
w = cr * cp * cy + sr * sp * sy;
-
88 v.
x = sr * cp * cy - cr * sp * sy;
-
89 v.
y = cr * sp * cy + sr * cp * sy;
-
90 v.
z = cr * cp * sy - sr * sp * cy;
-
-
-
-
-
-
-
-
-
-
◆ ~Quaternion()
-
-
-
-
-
- Quaternion::~Quaternion
- (
- )
-
-
-
-
-
-
-
-
◆ AngleBetween()
-
-
-
-
◆ Conjugate()
-
-
-
-
-
- Quaternion Quaternion::Conjugate
- (
- )
- const
-
-
-
-
-
-
◆ GetRawValues()
-
-
-
-
-
- Vector4d Quaternion::GetRawValues
- (
- )
- const
-
-
-
-
-
Will return the raw four-dimensional values.
-
-
Definition at line 290 of file Quaternion.cpp .
-
-
-
-
-
◆ Inverse()
-
-
-
-
-
- Quaternion Quaternion::Inverse
- (
- )
- const
-
-
-
-
-
Definition at line 175 of file Quaternion.cpp .
-
-
177 if (!isCacheUpToDate_inverse)
-
-
-
-
181 isCacheUpToDate_inverse =
true ;
-
-
-
-
-
-
-
-
-
◆ Lerp()
-
-
-
-
-
- Quaternion Quaternion::Lerp
- (
- const Quaternion &
- other ,
-
-
-
-
- double
- t
-
-
-
- )
- const
-
-
-
-
-
Will return the lerp result between two quaternions.
-
-
Definition at line 309 of file Quaternion.cpp .
-
-
-
-
-
◆ operator!=()
-
-
-
-
-
- bool Quaternion::operator!=
- (
- const Quaternion &
- q )
- const
-
-
-
-
-
-
◆ operator*() [1/2]
-
-
-
-
-
Multiplies (applies)
-
-
Definition at line 111 of file Quaternion.cpp .
-
-
-
114 v.
w * q.v.
x + v.
x * q.v.
w + v.
y * q.v.
z - v.
z * q.v.
y ,
-
115 v.
w * q.v.
y + v.
y * q.v.
w + v.
z * q.v.
x - v.
x * q.v.
z ,
-
116 v.
w * q.v.
z + v.
z * q.v.
w + v.
x * q.v.
y - v.
y * q.v.
x ,
-
117 v.
w * q.v.
w - v.
x * q.v.
x - v.
y * q.v.
y - v.
z * q.v.
z
-
-
-
-
-
-
-
◆ operator*() [2/2]
-
-
-
-
-
Will transform a 3d point around its origin.
-
-
Definition at line 160 of file Quaternion.cpp .
-
-
-
-
-
◆ operator*=()
-
-
-
-
-
Also multiplies.
-
-
Definition at line 131 of file Quaternion.cpp .
-
-
-
-
-
136 v.
x = bufr.
w * q.v.
x + bufr.
x * q.v.
w + bufr.
y * q.v.
z - bufr.
z * q.v.
y ;
-
137 v.
y = bufr.
w * q.v.
y + bufr.
y * q.v.
w + bufr.
z * q.v.
x - bufr.
x * q.v.
z ;
-
138 v.
z = bufr.
w * q.v.
z + bufr.
z * q.v.
w + bufr.
x * q.v.
y - bufr.
y * q.v.
x ;
-
139 v.
w = bufr.
w * q.v.
w - bufr.
x * q.v.
x - bufr.
y * q.v.
y - bufr.
z * q.v.
z ;
-
-
-
-
-
-
-
-
◆ operator/()
-
-
-
-
◆ operator/=()
-
-
-
-
◆ operator=()
-
-
-
-
◆ operator==()
-
-
-
-
-
- bool Quaternion::operator==
- (
- const Quaternion &
- q )
- const
-
-
-
-
-
-
◆ RotateVector()
-
-
-
-
-
Will rotate a vector by this quaternion.
-
-
Definition at line 197 of file Quaternion.cpp .
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
◆ SetRawValues()
-
-
-
-
-
- void Quaternion::SetRawValues
- (
- const Vector4d
- values )
-
-
-
-
-
-
Will set the raw four-dimensional values.
-
-
Definition at line 300 of file Quaternion.cpp .
-
-
-
-
-
◆ ToEulerAngles()
-
-
-
-
-
- Vector3d Quaternion::ToEulerAngles
- (
- )
- const
-
-
-
-
-
Will return euler angles representing this Quaternion 's rotation.
-
-
Definition at line 215 of file Quaternion.cpp .
-
-
217 if (!isCacheUpToDate_euler)
-
-
-
-
221 double sinr_cosp = 2.0 * (v.
w * v.
x + v.
y * v.
z );
-
222 double cosr_cosp = 1.0 - 2.0 * (v.
x * v.
x + v.
y * v.
y );
-
223 euler.
x = std::atan2(sinr_cosp, cosr_cosp);
-
-
-
226 double sinp = 2.0 * (v.
w * v.
y - v.
z * v.
x );
-
227 if (std::abs(sinp) >= 1)
-
228 euler.
y = std::copysign(
PI / 2, sinp);
-
-
230 euler.
y = std::asin(sinp);
-
-
-
233 double siny_cosp = 2.0 * (v.
w * v.
z + v.
x * v.
y );
-
234 double cosy_cosp = 1.0 - 2.0 * (v.
y * v.
y + v.
z * v.
z );
-
235 euler.
z = std::atan2(siny_cosp, cosy_cosp);
-
-
-
-
-
240 isCacheUpToDate_matrix =
true ;
-
-
-
-
-
-
-
-
-
◆ ToRotationMatrix()
-
-
-
-
-
- Matrix4x4 Quaternion::ToRotationMatrix
- (
- )
- const
-
-
-
-
-
Will return a rotation matrix representing this Quaternions rotation.
-
-
Definition at line 246 of file Quaternion.cpp .
-
-
248 if (!isCacheUpToDate_matrix)
-
-
-
-
252 const double sqx = v.
x * v.
x ;
-
253 const double sqy = v.
y * v.
y ;
-
254 const double sqz = v.
z * v.
z ;
-
255 const double sqw = v.
w * v.
w ;
-
256 const double x = v.
x ;
-
257 const double y = v.
y ;
-
258 const double z = v.
z ;
-
259 const double w = v.
w ;
-
-
-
262 double invs = 1.0 / (sqx + sqy + sqz + sqw);
-
-
-
-
-
267 m.
c = ((2 * x * z) - (2 * w * y)) * invs;
-
268 m.
f = (1 - (2 * sqx) - (2 * sqz)) * invs;
-
269 m.
i = ((2 * x * z) + (2 * w * y)) * invs;
-
-
-
272 m.
a = (1 - (2 * sqy) - (2 * sqz)) * invs;
-
273 m.
g = ((2 * y * z) + (2 * w * x)) * invs;
-
274 m.
j = ((2 * y * z) - (2 * w * x)) * invs;
-
-
-
277 m.
b = ((2 * x * v.
y ) + (2 * w * z)) * invs;
-
278 m.
e = ((2 * x * v.
y ) - (2 * w * z)) * invs;
-
279 m.
k = (1 - (2 * sqx) - (2 * sqy)) * invs;
-
-
-
-
-
284 isCacheUpToDate_matrix =
true ;
-
-
-
-
-
-
-
-
-
◆ UnitQuaternion()
-
-
-
-
-
- Quaternion Quaternion::UnitQuaternion
- (
- )
- const
-
-
-
-
-
-
-
◆ operator<< [1/2]
-
-
-
-
-
-
-
-
- std::ostream& operator<<
- (
- std::ostream &
- os ,
-
-
-
-
- const Quaternion &
- q
-
-
-
- )
-
-
-
-
-
-friend
-
-
-
-
-
Definition at line 325 of file Quaternion.cpp .
-
-
327 os <<
"[" << q.v <<
"]" ;
-
-
-
-
-
-
-
◆ operator<< [2/2]
-
-
-
-
-
-
-
-
- std::wostream& operator<<
- (
- std::wostream &
- os ,
-
-
-
-
- const Quaternion &
- q
-
-
-
- )
-
-
-
-
-
-friend
-
-
-
-
-
Definition at line 331 of file Quaternion.cpp .
-
-
333 os << L
"[" << q.v << L
"]" ;
-
-
-
-
-
-
The documentation for this class was generated from the following files:
-
-
-static constexpr double PI
Pi up to 50 decimal places.
-
-
-
-
-
-Vector4< double > Vector4d
-
-static constexpr double Deg2Rad
Factor to convert degrees to radians.
-
-Vector4< double > Lerp(const Vector4< T > &other, double t) const
Will return a lerp result between this and another vector.
-
-
-A matrix 4x4 class representing a 3d transformation.
-bool Similar(const Vector4< T > &other, double epsilon=0.00001) const
Will compare if two vectors are similar to a certain epsilon value.
-
-double Magnitude() const
Will compute the magnitude.
-
-
-
-Vector3d RotateVector(const Vector3d &vec) const
Will rotate a vector by this quaternion.
-double SqrMagnitude() const
Will compute the square magnitude.
-
-static constexpr double Rad2Deg
Factor to convert radians to degrees.
-Quaternion Conjugate() const
-Quaternion Inverse() const
-
-3D rotation representation
-
-
-
-Representation of a 4d vector.
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider-members.html b/Doxygen/build/classEule_1_1TrapazoidalPrismCollider-members.html
deleted file mode 100644
index 6237471..0000000
--- a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider-members.html
+++ /dev/null
@@ -1,105 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Member List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is the complete list of members for Eule::TrapazoidalPrismCollider , including all inherited members.
-
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider.html b/Doxygen/build/classEule_1_1TrapazoidalPrismCollider.html
deleted file mode 100644
index 914cf12..0000000
--- a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider.html
+++ /dev/null
@@ -1,544 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule::TrapazoidalPrismCollider Class Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A collider describing a trapazoidal prism.
- More...
-
-
#include <TrapazoidalPrismCollider.h >
-
-
-
-
-
-
-static constexpr std::size_t BACK = 0
-
-static constexpr std::size_t FRONT = 4
-
-static constexpr std::size_t LEFT = 0
-
-static constexpr std::size_t RIGHT = 2
-
-static constexpr std::size_t BOTTOM = 0
-
-static constexpr std::size_t TOP = 1
-
-
-
-
A collider describing a trapazoidal prism.
-
A trapazoidal prism is basically a box, but each vertex can be manipulated individually, altering the angles between faces. Distorting a 2d face into 3d space will result in undefined behaviour. Each face should stay flat, relative to itself. This shape is based on QUADS!
-
-
Definition at line 13 of file TrapazoidalPrismCollider.h .
-
-
-
◆ TrapazoidalPrismCollider() [1/3]
-
-
-
-
-
- TrapazoidalPrismCollider::TrapazoidalPrismCollider
- (
- )
-
-
-
-
-
-
-
◆ TrapazoidalPrismCollider() [2/3]
-
-
-
-
◆ TrapazoidalPrismCollider() [3/3]
-
-
-
-
-
-
-
-
-
-default noexcept
-
-
-
-
-
-
-
-
-
◆ Contains()
-
-
-
-
-
-
-
-
- bool TrapazoidalPrismCollider::Contains
- (
- const Vector3d &
- point )
- const
-
-
-
-
-override virtual
-
-
-
-
-
-
◆ GetVertex()
-
-
-
-
-
- const Vector3d & TrapazoidalPrismCollider::GetVertex
- (
- std::size_t
- index )
- const
-
-
-
-
-
-
◆ operator=() [1/2]
-
-
-
-
◆ operator=() [2/2]
-
-
-
-
-
Definition at line 18 of file TrapazoidalPrismCollider.cpp .
-
-
20 vertices = std::move(other.vertices);
-
21 faceNormals = std::move(other.faceNormals);
-
-
-
-
-
-
-
-
◆ SetVertex()
-
-
-
-
-
- void TrapazoidalPrismCollider::SetVertex
- (
- std::size_t
- index ,
-
-
-
-
- const Vector3d
- value
-
-
-
- )
-
-
-
-
-
-
Will set the value of a specific vertex.
-
-
Definition at line 31 of file TrapazoidalPrismCollider.cpp .
-
-
33 vertices[index] = value;
-
34 GenerateNormalsFromVertices();
-
-
-
-
-
-
-
-
◆ BACK
-
-
-
-
-
-
-
-
- constexpr std::size_t Eule::TrapazoidalPrismCollider::BACK = 0
-
-
-
-
-static constexpr
-
-
-
-
-
-
◆ BOTTOM
-
-
-
-
-
-
-
-
- constexpr std::size_t Eule::TrapazoidalPrismCollider::BOTTOM = 0
-
-
-
-
-static constexpr
-
-
-
-
-
-
◆ FRONT
-
-
-
-
-
-
-
-
- constexpr std::size_t Eule::TrapazoidalPrismCollider::FRONT = 4
-
-
-
-
-static constexpr
-
-
-
-
-
-
◆ LEFT
-
-
-
-
-
-
-
-
- constexpr std::size_t Eule::TrapazoidalPrismCollider::LEFT = 0
-
-
-
-
-static constexpr
-
-
-
-
-
-
◆ RIGHT
-
-
-
-
-
-
-
-
- constexpr std::size_t Eule::TrapazoidalPrismCollider::RIGHT = 2
-
-
-
-
-static constexpr
-
-
-
-
-
-
◆ TOP
-
-
-
-
-
-
-
-
- constexpr std::size_t Eule::TrapazoidalPrismCollider::TOP = 1
-
-
-
-
-static constexpr
-
-
-
-
-
The documentation for this class was generated from the following files:
-
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__coll__graph.map b/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__coll__graph.map
deleted file mode 100644
index 399a8f0..0000000
--- a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__coll__graph.map
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__coll__graph.md5 b/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__coll__graph.md5
deleted file mode 100644
index c621060..0000000
--- a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__coll__graph.md5
+++ /dev/null
@@ -1 +0,0 @@
-deee938530b892f287194fe0561c7d94
\ No newline at end of file
diff --git a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__coll__graph.png b/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__coll__graph.png
deleted file mode 100644
index 3620945..0000000
Binary files a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__coll__graph.png and /dev/null differ
diff --git a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__inherit__graph.map b/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__inherit__graph.map
deleted file mode 100644
index 399a8f0..0000000
--- a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__inherit__graph.map
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__inherit__graph.md5 b/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__inherit__graph.md5
deleted file mode 100644
index c621060..0000000
--- a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__inherit__graph.md5
+++ /dev/null
@@ -1 +0,0 @@
-deee938530b892f287194fe0561c7d94
\ No newline at end of file
diff --git a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__inherit__graph.png b/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__inherit__graph.png
deleted file mode 100644
index 3620945..0000000
Binary files a/Doxygen/build/classEule_1_1TrapazoidalPrismCollider__inherit__graph.png and /dev/null differ
diff --git a/Doxygen/build/classEule_1_1Vector2-members.html b/Doxygen/build/classEule_1_1Vector2-members.html
deleted file mode 100644
index 11077e2..0000000
--- a/Doxygen/build/classEule_1_1Vector2-members.html
+++ /dev/null
@@ -1,134 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Member List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is the complete list of members for Eule::Vector2< T > , including all inherited members.
-
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Vector2.html b/Doxygen/build/classEule_1_1Vector2.html
deleted file mode 100644
index 8073805..0000000
--- a/Doxygen/build/classEule_1_1Vector2.html
+++ /dev/null
@@ -1,1478 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule::Vector2< T > Class Template Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Representation of a 2d vector.
- More...
-
-
#include <Vector2.h >
-
-
-
template<typename T>
-class Eule::Vector2< T >
-
-
Representation of a 2d vector.
-
Contains a lot of utility methods.
-
-
Definition at line 14 of file Vector2.h .
-
-
-
◆ Vector2() [1/4]
-
-
-
-
-template<typename T >
-
-
-
-
-
◆ Vector2() [2/4]
-
-
-
-
-template<typename T >
-
-
-
-
-
◆ Vector2() [3/4]
-
-
-
-
-template<typename T >
-
-
-
-
-
-
-
◆ Vector2() [4/4]
-
-
-
-
-template<typename T >
-
-
-
-
-
-
-default noexcept
-
-
-
-
-
-
-
-
-
◆ CrossProduct()
-
-
-
-
-template<typename T >
-
-
- double Vector2::CrossProduct
- (
- const Vector2 < T > &
- other )
- const
-
-
-
-
-
Will compute the cross product to another Vector2 .
-
-
Definition at line 65 of file Vector2.cpp .
-
-
67 int iCross = (
x * other.
y ) -
-
-
-
70 return (
double )iCross;
-
-
-
-
-
-
◆ DotProduct()
-
-
-
-
-template<typename T >
-
-
- double Vector2::DotProduct
- (
- const Vector2 < T > &
- other )
- const
-
-
-
-
-
Will compute the dot product to another Vector2 .
-
-
Definition at line 47 of file Vector2.cpp .
-
-
49 int iDot = (
x * other.
x ) +
-
-
-
-
-
-
-
-
-
◆ Lerp()
-
-
-
-
-template<typename T >
-
-
- Vector2 < double > Vector2::Lerp
- (
- const Vector2 < T > &
- other ,
-
-
-
-
- double
- t
-
-
-
- )
- const
-
-
-
-
-
Will return a lerp result between this and another vector.
-
-
Definition at line 256 of file Vector2.cpp .
-
-
-
-
-
◆ LerpSelf()
-
-
-
-
-template<typename T >
-
-
- void Vector2::LerpSelf
- (
- const Vector2 < T > &
- other ,
-
-
-
-
- double
- t
-
-
-
- )
-
-
-
-
-
-
Will lerp itself towards other by t.
-
-
Definition at line 238 of file Vector2.cpp .
-
-
240 const double it = 1.0 - t;
-
-
242 x = (int)(it * (
double )
x + t * (double)other.
x );
-
243 y = (int)(it * (
double )
y + t * (double)other.
y );
-
-
-
-
-
-
-
-
◆ Magnitude()
-
-
-
-
-template<typename T >
-
-
- double Vector2::Magnitude
-
-
-
-
-
Will compute the magnitude.
-
-
Definition at line 90 of file Vector2.cpp .
-
-
-
-
-
◆ Normalize()
-
-
-
-
-template<typename T >
-
-
- Vector2 < double > Vector2::Normalize
-
-
-
-
-
Will return the normalization of this vector.
-
-
Definition at line 137 of file Vector2.cpp .
-
-
-
140 norm.NormalizeSelf();
-
-
-
-
-
-
-
-
◆ NormalizeSelf()
-
-
-
-
-template<typename T >
-
-
- void Vector2::NormalizeSelf
- (
- )
-
-
-
-
-
-
Will normalize this vector.
-
-
Definition at line 187 of file Vector2.cpp .
-
-
189 std::cerr <<
"Stop normalizing int-vectors!!" << std::endl;
-
-
-
-
-
-
-
-
-
-
◆ operator Vector3< T >()
-
-
-
-
-template<typename T >
-
-
- Vector2::operator Vector3 < T >
-
-
-
-
-
-
◆ operator Vector4< T >()
-
-
-
-
-template<typename T >
-
-
- Vector2::operator Vector4 < T >
-
-
-
-
-
Conversion method.
-
-
Definition at line 680 of file Vector2.cpp .
-
-
-
-
-
◆ operator!=()
-
-
-
-
-template<typename T >
-
-
- bool Vector2::operator!=
- (
- const Vector2 < T > &
- other )
- const
-
-
-
-
-
-
◆ operator*()
-
-
-
-
-template<typename T >
-
-
- Vector2 < T > Vector2::operator*
- (
- const T
- scale )
- const
-
-
-
-
-
-
◆ operator*=()
-
-
-
-
-template<typename T >
-
-
- void Vector2::operator*=
- (
- const T
- scale )
-
-
-
-
-
-
-
◆ operator+()
-
-
-
-
-template<typename T >
-
-
- Vector2 < T > Vector2::operator+
- (
- const Vector2 < T > &
- other )
- const
-
-
-
-
-
-
◆ operator+=()
-
-
-
-
-template<typename T >
-
-
- void Vector2::operator+=
- (
- const Vector2 < T > &
- other )
-
-
-
-
-
-
-
◆ operator-() [1/2]
-
-
-
-
-template<typename T >
-
-
- Vector2 < T > Vector2::operator-
-
-
-
-
-
-
◆ operator-() [2/2]
-
-
-
-
-template<typename T >
-
-
- Vector2 < T > Vector2::operator-
- (
- const Vector2 < T > &
- other )
- const
-
-
-
-
-
-
◆ operator-=()
-
-
-
-
-template<typename T >
-
-
- void Vector2::operator-=
- (
- const Vector2 < T > &
- other )
-
-
-
-
-
-
-
◆ operator/()
-
-
-
-
-template<typename T >
-
-
- Vector2 < T > Vector2::operator/
- (
- const T
- scale )
- const
-
-
-
-
-
-
◆ operator/=()
-
-
-
-
-template<typename T >
-
-
- void Vector2::operator/=
- (
- const T
- scale )
-
-
-
-
-
-
-
◆ operator=() [1/2]
-
-
-
-
-template<typename T >
-
-
- void Vector2::operator=
- (
- const Vector2 < T > &
- other )
-
-
-
-
-
-
Conversion method.
-
-
Definition at line 630 of file Vector2.cpp .
-
-
-
-
-
◆ operator=() [2/2]
-
-
-
-
-template<typename T >
-
-
-
-
-
- void Vector2::operator=
- (
- Vector2 < T > &&
- other )
-
-
-
-
-
-noexcept
-
-
-
-
-
Definition at line 639 of file Vector2.cpp .
-
-
641 x = std::move(other.
x );
-
642 y = std::move(other.
y );
-
-
-
-
-
-
-
-
◆ operator==()
-
-
-
-
-template<typename T >
-
-
- bool Vector2::operator==
- (
- const Vector2 < T > &
- other )
- const
-
-
-
-
-
-
◆ operator[]() [1/2]
-
-
-
-
-template<typename T >
-
-
- T & Vector2::operator[]
- (
- std::size_t
- idx )
-
-
-
-
-
-
Definition at line 267 of file Vector2.cpp .
-
-
-
-
-
-
-
-
-
276 throw std::out_of_range(
"Array descriptor on Vector2<T> out of range!" );
-
-
-
-
-
-
-
◆ operator[]() [2/2]
-
-
-
-
-template<typename T >
-
-
- const T & Vector2::operator[]
- (
- std::size_t
- idx )
- const
-
-
-
-
-
Definition at line 281 of file Vector2.cpp .
-
-
-
-
-
-
-
-
-
290 throw std::out_of_range(
"Array descriptor on Vector2<T> out of range!" );
-
-
-
-
-
-
-
◆ Similar()
-
-
-
-
-template<typename T >
-
-
- bool Vector2::Similar
- (
- const Vector2 < T > &
- other ,
-
-
-
-
- double
- epsilon = 0.00001
-
-
-
- )
- const
-
-
-
-
-
Will compare if two vectors are similar to a certain epsilon value.
-
-
Definition at line 295 of file Vector2.cpp .
-
-
-
-
299 (::Math::Similar(
y , other.
y , epsilon))
-
-
-
-
-
-
-
◆ SqrMagnitude()
-
-
-
-
-template<typename T >
-
-
- double Vector2::SqrMagnitude
- (
- )
- const
-
-
-
-
-
Will compute the square magnitude.
-
-
Definition at line 83 of file Vector2.cpp .
-
-
85 int iSqrMag =
x *
x +
y *
y ;
-
86 return (
double )iSqrMag;
-
-
-
-
-
-
◆ ToDouble()
-
-
-
-
-template<typename T >
-
-
- Vector2 < double > Vector2::ToDouble
-
-
-
-
-
Will convert this vector to a Vector2d.
-
-
Definition at line 310 of file Vector2.cpp .
-
-
-
-
-
◆ ToInt()
-
-
-
-
-template<typename T >
-
-
- Vector2 < int > Vector2::ToInt
-
-
-
-
-
Will convert this vector to a Vector2i.
-
-
Definition at line 304 of file Vector2.cpp .
-
-
-
-
-
◆ VectorScale()
-
-
-
-
-template<typename T >
-
-
- Vector2 < int > Vector2::VectorScale
- (
- const Vector2 < T > &
- scalar )
- const
-
-
-
-
-
Will scale self.n by scalar.n.
-
-
Definition at line 127 of file Vector2.cpp .
-
-
-
-
-
-
◆ operator<< [1/2]
-
-
-
-
-template<typename T >
-
-
-
-
-
- std::ostream& operator<<
- (
- std::ostream &
- os ,
-
-
-
-
- const Vector2 < T > &
- v
-
-
-
- )
-
-
-
-
-
-friend
-
-
-
-
-
Definition at line 80 of file Vector2.h .
-
-
82 return os <<
"[x: " << v.x <<
" y: " << v.y <<
"]" ;
-
-
-
-
-
-
◆ operator<< [2/2]
-
-
-
-
-template<typename T >
-
-
-
-
-
- std::wostream& operator<<
- (
- std::wostream &
- os ,
-
-
-
-
- const Vector2 < T > &
- v
-
-
-
- )
-
-
-
-
-
-friend
-
-
-
-
-
Definition at line 84 of file Vector2.h .
-
-
86 return os << L
"[x: " << v.x << L
" y: " << v.y << L
"]" ;
-
-
-
-
-
-
-
◆ down
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector2 < double > Vector2::down
-
-
-
-
-static
-
-
-
-
-
-
◆ left
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector2 < double > Vector2::left
-
-
-
-
-static
-
-
-
-
-
-
◆ one
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector2 < double > Vector2::one
-
-
-
-
-static
-
-
-
-
-
-
◆ right
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector2 < double > Vector2::right
-
-
-
-
-static
-
-
-
-
-
-
◆ up
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector2 < double > Vector2::up
-
-
-
-
-static
-
-
-
-
-
-
-
-
-
-
-template<typename T >
-
-
-
-
-
-
-
-
-
-template<typename T >
-
-
-
-
-
◆ zero
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector2 < double > Vector2::zero
-
-
-
-
-static
-
-
-
-
-
The documentation for this class was generated from the following files:
-
-Representation of a 3d vector.
-double SqrMagnitude() const
Will compute the square magnitude.
-Vector2< double > ToDouble() const
Will convert this vector to a Vector2d.
-
-static constexpr bool Similar(const double a, const double b, const double epsilon=0.00001)
Compares two double values with a given accuracy.
-
-
-bool operator==(const Vector2< T > &other) const
-Representation of a 4d vector.
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Vector3-members.html b/Doxygen/build/classEule_1_1Vector3-members.html
deleted file mode 100644
index b727041..0000000
--- a/Doxygen/build/classEule_1_1Vector3-members.html
+++ /dev/null
@@ -1,139 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Member List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is the complete list of members for Eule::Vector3< T > , including all inherited members.
-
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Vector3.html b/Doxygen/build/classEule_1_1Vector3.html
deleted file mode 100644
index 6174868..0000000
--- a/Doxygen/build/classEule_1_1Vector3.html
+++ /dev/null
@@ -1,1672 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule::Vector3< T > Class Template Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Representation of a 3d vector.
- More...
-
-
#include <Matrix4x4.h >
-
-
-
-
-
template<typename T>
-class Eule::Vector3< T >
-
-
Representation of a 3d vector.
-
Contains a lot of utility methods.
-
-
Definition at line 9 of file Matrix4x4.h .
-
-
-
◆ Vector3() [1/4]
-
-
-
-
-template<typename T >
-
-
-
-
Definition at line 20 of file Vector3.h .
-
20 :
x { 0 },
y { 0 },
z { 0 } {}
-
-
-
-
-
◆ Vector3() [2/4]
-
-
-
-
-template<typename T >
-
-
-
-
Definition at line 21 of file Vector3.h .
-
21 :
x { _x },
y { _y },
z { _z } {}
-
-
-
-
-
◆ Vector3() [3/4]
-
-
-
-
-template<typename T >
-
-
-
-
-
-
-
◆ Vector3() [4/4]
-
-
-
-
-template<typename T >
-
-
-
-
-
-
-default noexcept
-
-
-
-
-
-
-
-
-
◆ CrossProduct()
-
-
-
-
-template<typename T >
-
-
- Vector3 < double > Vector3::CrossProduct
- (
- const Vector3 < T > &
- other )
- const
-
-
-
-
-
Will compute the cross product to another Vector3 .
-
-
Definition at line 68 of file Vector3.cpp .
-
-
-
71 cp.
x = ((double)
y * (
double )other.
z ) - ((
double )
z * (double)other.
y );
-
72 cp.
y = ((double)
z * (
double )other.
x ) - ((
double )
x * (double)other.
z );
-
73 cp.
z = ((double)
x * (
double )other.
y ) - ((
double )
y * (double)other.
x );
-
-
-
-
-
-
-
-
◆ DotProduct()
-
-
-
-
-template<typename T >
-
-
- double Vector3::DotProduct
- (
- const Vector3 < T > &
- other )
- const
-
-
-
-
-
Will compute the dot product to another Vector3 .
-
-
Definition at line 48 of file Vector3.cpp .
-
-
50 int iDot = (
x * other.
x ) + (
y * other.
y ) + (
z * other.
z );
-
-
-
-
-
-
-
◆ Lerp()
-
-
-
-
-template<typename T >
-
-
- Vector3 < double > Vector3::Lerp
- (
- const Vector3 < T > &
- other ,
-
-
-
-
- double
- t
-
-
-
- )
- const
-
-
-
-
-
Will return a lerp result between this and another vector.
-
-
Definition at line 330 of file Vector3.cpp .
-
-
-
-
-
◆ LerpSelf()
-
-
-
-
-template<typename T >
-
-
- void Vector3::LerpSelf
- (
- const Vector3 < T > &
- other ,
-
-
-
-
- double
- t
-
-
-
- )
-
-
-
-
-
-
Will lerp itself towards other by t.
-
-
Definition at line 311 of file Vector3.cpp .
-
-
313 const double it = 1.0 - t;
-
-
315 x = (int)(it * (
double )
x + t * (double)other.
x );
-
316 y = (int)(it * (
double )
y + t * (double)other.
y );
-
317 z = (int)(it * (
double )
z + t * (double)other.
z );
-
-
-
-
-
-
-
-
◆ Magnitude()
-
-
-
-
-template<typename T >
-
-
- double Vector3::Magnitude
-
-
-
-
-
Will compute the magnitude.
-
-
Definition at line 95 of file Vector3.cpp .
-
-
-
-
-
◆ Normalize()
-
-
-
-
-template<typename T >
-
-
- Vector3 < double > Vector3::Normalize
-
-
-
-
-
Will return the normalization of this vector.
-
-
Definition at line 147 of file Vector3.cpp .
-
-
-
150 norm.NormalizeSelf();
-
-
-
-
-
-
-
-
◆ NormalizeSelf()
-
-
-
-
-template<typename T >
-
-
- void Vector3::NormalizeSelf
- (
- )
-
-
-
-
-
-
Will normalize this vector.
-
-
Definition at line 200 of file Vector3.cpp .
-
-
202 std::cerr <<
"Stop normalizing int-vectors!!" << std::endl;
-
-
-
-
-
-
-
-
-
-
-
◆ operator Vector2< T >()
-
-
-
-
-template<typename T >
-
-
- Vector3::operator Vector2 < T >
-
-
-
-
-
-
◆ operator Vector4< T >()
-
-
-
-
-template<typename T >
-
-
- Vector3::operator Vector4 < T >
-
-
-
-
-
Conversion method.
-
-
Definition at line 879 of file Vector3.cpp .
-
-
-
-
-
◆ operator!=()
-
-
-
-
-template<typename T >
-
-
- bool Vector3::operator!=
- (
- const Vector3 < T > &
- other )
- const
-
-
-
-
-
-
◆ operator*() [1/2]
-
-
-
-
-template<typename T >
-
-
- Vector3 < int > Vector3::operator*
- (
- const Matrix4x4 &
- mat )
- const
-
-
-
-
-
Definition at line 731 of file Vector3.cpp .
-
-
-
-
-
736 newVec.
x = ((mat[0][0] *
x ) + (mat[1][0] *
y ) + (mat[2][0] *
z ));
-
737 newVec.
y = ((mat[0][1] *
x ) + (mat[1][1] *
y ) + (mat[2][1] *
z ));
-
738 newVec.
z = ((mat[0][2] *
x ) + (mat[1][2] *
y ) + (mat[2][2] *
z ));
-
-
-
741 newVec.
x += mat[0][3];
-
742 newVec.
y += mat[1][3];
-
743 newVec.
z += mat[2][3];
-
-
-
-
-
-
-
-
-
-
-
-
◆ operator*() [2/2]
-
-
-
-
-template<typename T >
-
-
- Vector3 < T > Vector3::operator*
- (
- const T
- scale )
- const
-
-
-
-
-
-
◆ operator*=() [1/2]
-
-
-
-
-template<typename T >
-
-
- void Vector3::operator*=
- (
- const Matrix4x4 &
- mat )
-
-
-
-
-
-
Definition at line 836 of file Vector3.cpp .
-
-
-
-
840 x = (int)((mat[0][0] * buffer.x) + (mat[0][1] * buffer.y) + (mat[0][2] * buffer.z));
-
841 y = (int)((mat[1][0] * buffer.x) + (mat[1][1] * buffer.y) + (mat[1][2] * buffer.z));
-
842 z = (int)((mat[2][0] * buffer.x) + (mat[2][1] * buffer.y) + (mat[2][2] * buffer.z));
-
-
-
-
-
-
-
-
-
-
-
-
-
◆ operator*=() [2/2]
-
-
-
-
-template<typename T >
-
-
- void Vector3::operator*=
- (
- const T
- scale )
-
-
-
-
-
-
-
◆ operator+()
-
-
-
-
-template<typename T >
-
-
- Vector3 < T > Vector3::operator+
- (
- const Vector3 < T > &
- other )
- const
-
-
-
-
-
-
◆ operator+=()
-
-
-
-
-template<typename T >
-
-
- void Vector3::operator+=
- (
- const Vector3 < T > &
- other )
-
-
-
-
-
-
-
◆ operator-() [1/2]
-
-
-
-
-template<typename T >
-
-
- Vector3 < T > Vector3::operator-
-
-
-
-
-
-
◆ operator-() [2/2]
-
-
-
-
-template<typename T >
-
-
- Vector3 < T > Vector3::operator-
- (
- const Vector3 < T > &
- other )
- const
-
-
-
-
-
-
◆ operator-=()
-
-
-
-
-template<typename T >
-
-
- void Vector3::operator-=
- (
- const Vector3 < T > &
- other )
-
-
-
-
-
-
-
◆ operator/()
-
-
-
-
-template<typename T >
-
-
- Vector3 < T > Vector3::operator/
- (
- const T
- scale )
- const
-
-
-
-
-
-
◆ operator/=()
-
-
-
-
-template<typename T >
-
-
- void Vector3::operator/=
- (
- const T
- scale )
-
-
-
-
-
-
-
◆ operator=() [1/2]
-
-
-
-
-template<typename T >
-
-
- void Vector3::operator=
- (
- const Vector3 < T > &
- other )
-
-
-
-
-
-
Conversion method.
-
-
Definition at line 816 of file Vector3.cpp .
-
-
-
-
-
◆ operator=() [2/2]
-
-
-
-
-template<typename T >
-
-
-
-
-
- void Vector3::operator=
- (
- Vector3 < T > &&
- other )
-
-
-
-
-
-noexcept
-
-
-
-
-
Definition at line 826 of file Vector3.cpp .
-
-
828 x = std::move(other.
x );
-
829 y = std::move(other.
y );
-
830 z = std::move(other.
z );
-
-
-
-
-
-
-
-
◆ operator==()
-
-
-
-
-template<typename T >
-
-
- bool Vector3::operator==
- (
- const Vector3 < T > &
- other )
- const
-
-
-
-
-
-
◆ operator[]() [1/2]
-
-
-
-
-template<typename T >
-
-
- T & Vector3::operator[]
- (
- std::size_t
- idx )
-
-
-
-
-
-
Definition at line 235 of file Vector3.cpp .
-
-
-
-
-
-
-
-
-
-
-
246 throw std::out_of_range(
"Array descriptor on Vector3<T> out of range!" );
-
-
-
-
-
-
-
◆ operator[]() [2/2]
-
-
-
-
-template<typename T >
-
-
- const T & Vector3::operator[]
- (
- std::size_t
- idx )
- const
-
-
-
-
-
Definition at line 251 of file Vector3.cpp .
-
-
-
-
-
-
-
-
-
-
-
262 throw std::out_of_range(
"Array descriptor on Vector3<T> out of range!" );
-
-
-
-
-
-
-
◆ Similar()
-
-
-
-
-template<typename T >
-
-
- bool Vector3::Similar
- (
- const Vector3 < T > &
- other ,
-
-
-
-
- double
- epsilon = 0.00001
-
-
-
- )
- const
-
-
-
-
-
Will compare if two vectors are similar to a certain epsilon value.
-
-
Definition at line 213 of file Vector3.cpp .
-
-
-
-
217 (::Math::Similar(
y , other.
y , epsilon)) &&
-
-
-
-
-
-
-
-
◆ SqrMagnitude()
-
-
-
-
-template<typename T >
-
-
- double Vector3::SqrMagnitude
- (
- )
- const
-
-
-
-
-
Will compute the square magnitude.
-
-
Definition at line 88 of file Vector3.cpp .
-
-
90 int iSqrMag =
x *
x +
y *
y +
z *
z ;
-
91 return (
double )iSqrMag;
-
-
-
-
-
-
◆ ToDouble()
-
-
-
-
-template<typename T >
-
-
- Vector3 < double > Vector3::ToDouble
-
-
-
-
-
Will convert this vector to a Vector3d.
-
-
Definition at line 229 of file Vector3.cpp .
-
-
-
-
-
◆ ToInt()
-
-
-
-
-template<typename T >
-
-
- Vector3 < int > Vector3::ToInt
-
-
-
-
-
Will convert this vector to a Vector3i.
-
-
Definition at line 223 of file Vector3.cpp .
-
-
-
-
-
◆ VectorScale()
-
-
-
-
-template<typename T >
-
-
- Vector3 < int > Vector3::VectorScale
- (
- const Vector3 < T > &
- scalar )
- const
-
-
-
-
-
Will scale self.n by scalar.n.
-
-
Definition at line 135 of file Vector3.cpp .
-
-
-
-
-
-
◆ operator<< [1/2]
-
-
-
-
-template<typename T >
-
-
-
-
-
- std::ostream& operator<<
- (
- std::ostream &
- os ,
-
-
-
-
- const Vector3 < T > &
- v
-
-
-
- )
-
-
-
-
-
-friend
-
-
-
-
-
Definition at line 85 of file Vector3.h .
-
-
87 return os <<
"[x: " << v.x <<
" y: " << v.y <<
" z: " << v.z <<
"]" ;
-
-
-
-
-
-
◆ operator<< [2/2]
-
-
-
-
-template<typename T >
-
-
-
-
-
- std::wostream& operator<<
- (
- std::wostream &
- os ,
-
-
-
-
- const Vector3 < T > &
- v
-
-
-
- )
-
-
-
-
-
-friend
-
-
-
-
-
Definition at line 89 of file Vector3.h .
-
-
91 return os << L
"[x: " << v.x << L
" y: " << v.y << L
" z: " << v.z << L
"]" ;
-
-
-
-
-
-
-
◆ backward
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector3 < double > Vector3::backward
-
-
-
-
-static
-
-
-
-
-
-
◆ down
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector3 < double > Vector3::down
-
-
-
-
-static
-
-
-
-
-
-
◆ forward
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector3 < double > Vector3::forward
-
-
-
-
-static
-
-
-
-
-
-
◆ left
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector3 < double > Vector3::left
-
-
-
-
-static
-
-
-
-
-
-
◆ one
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector3 < double > Vector3::one
-
-
-
-
-static
-
-
-
-
-
-
◆ right
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector3 < double > Vector3::right
-
-
-
-
-static
-
-
-
-
-
-
◆ up
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector3 < double > Vector3::up
-
-
-
-
-static
-
-
-
-
-
-
-
-
-
-
-template<typename T >
-
-
-
-
-
-
-
-
-
-template<typename T >
-
-
-
-
-
-
-
-
-
-template<typename T >
-
-
-
-
-
◆ zero
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector3 < double > Vector3::zero
-
-
-
-
-static
-
-
-
-
-
The documentation for this class was generated from the following files:
-
-
-Vector3< double > ToDouble() const
Will convert this vector to a Vector3d.
-bool operator==(const Vector3< T > &other) const
-
-
-Representation of a 2d vector.
-static constexpr bool Similar(const double a, const double b, const double epsilon=0.00001)
Compares two double values with a given accuracy.
-double SqrMagnitude() const
Will compute the square magnitude.
-
-Representation of a 4d vector.
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Vector3__coll__graph.map b/Doxygen/build/classEule_1_1Vector3__coll__graph.map
deleted file mode 100644
index 1e1b359..0000000
--- a/Doxygen/build/classEule_1_1Vector3__coll__graph.map
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Vector3__coll__graph.md5 b/Doxygen/build/classEule_1_1Vector3__coll__graph.md5
deleted file mode 100644
index 71ea584..0000000
--- a/Doxygen/build/classEule_1_1Vector3__coll__graph.md5
+++ /dev/null
@@ -1 +0,0 @@
-b3a7a2417e6523c8919c534d316cd3d7
\ No newline at end of file
diff --git a/Doxygen/build/classEule_1_1Vector3__coll__graph.png b/Doxygen/build/classEule_1_1Vector3__coll__graph.png
deleted file mode 100644
index 2a8937b..0000000
Binary files a/Doxygen/build/classEule_1_1Vector3__coll__graph.png and /dev/null differ
diff --git a/Doxygen/build/classEule_1_1Vector4-members.html b/Doxygen/build/classEule_1_1Vector4-members.html
deleted file mode 100644
index bf62005..0000000
--- a/Doxygen/build/classEule_1_1Vector4-members.html
+++ /dev/null
@@ -1,140 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Member List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This is the complete list of members for Eule::Vector4< T > , including all inherited members.
-
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Vector4.html b/Doxygen/build/classEule_1_1Vector4.html
deleted file mode 100644
index 5fd52ea..0000000
--- a/Doxygen/build/classEule_1_1Vector4.html
+++ /dev/null
@@ -1,1703 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule::Vector4< T > Class Template Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Representation of a 4d vector.
- More...
-
-
#include <Vector2.h >
-
-
-
-
-T x
-
-T y
-
-T z
-
-T w
-
-
-
-
template<typename T>
-class Eule::Vector4< T >
-
-
Representation of a 4d vector.
-
Contains a lot of utility methods.
-
-
Definition at line 8 of file Vector2.h .
-
-
-
◆ Vector4() [1/4]
-
-
-
-
-template<typename T >
-
-
-
-
Definition at line 20 of file Vector4.h .
-
20 :
x { 0 },
y { 0 },
z { 0 },
w { 0 } {}
-
-
-
-
-
◆ Vector4() [2/4]
-
-
-
-
-template<typename T >
-
-
-
-
-
- Eule::Vector4 < T >::Vector4
- (
- T
- _x ,
-
-
-
-
- T
- _y ,
-
-
-
-
- T
- _z ,
-
-
-
-
- T
- _w
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Definition at line 21 of file Vector4.h .
-
21 :
x { _x },
y { _y },
z { _z },
w { _w } {}
-
-
-
-
-
◆ Vector4() [3/4]
-
-
-
-
-template<typename T >
-
-
-
-
-
-
-
◆ Vector4() [4/4]
-
-
-
-
-template<typename T >
-
-
-
-
-
-
-default noexcept
-
-
-
-
-
-
-
-
-
◆ Lerp()
-
-
-
-
-template<typename T >
-
-
- Vector4 < double > Vector4::Lerp
- (
- const Vector4 < T > &
- other ,
-
-
-
-
- double
- t
-
-
-
- )
- const
-
-
-
-
-
Will return a lerp result between this and another vector.
-
-
Definition at line 287 of file Vector4.cpp .
-
-
-
-
-
◆ LerpSelf()
-
-
-
-
-template<typename T >
-
-
- void Vector4::LerpSelf
- (
- const Vector4 < T > &
- other ,
-
-
-
-
- double
- t
-
-
-
- )
-
-
-
-
-
-
Will lerp itself towards other by t.
-
-
Definition at line 267 of file Vector4.cpp .
-
-
269 const double it = 1.0 - t;
-
-
271 x = (int)(it * (
double )
x + t * (double)other.
x );
-
272 y = (int)(it * (
double )
y + t * (double)other.
y );
-
273 z = (int)(it * (
double )
z + t * (double)other.
z );
-
274 w = (int)(it * (
double )
w + t * (double)other.
w );
-
-
-
-
-
-
-
-
◆ Magnitude()
-
-
-
-
-template<typename T >
-
-
- double Vector4::Magnitude
-
-
-
-
-
Will compute the magnitude.
-
-
Definition at line 38 of file Vector4.cpp .
-
-
-
-
-
◆ Normalize()
-
-
-
-
-template<typename T >
-
-
- Vector4 < double > Vector4::Normalize
-
-
-
-
-
Will return the normalization of this vector.
-
-
Definition at line 92 of file Vector4.cpp .
-
-
-
-
-
◆ NormalizeSelf()
-
-
-
-
-template<typename T >
-
-
- void Vector4::NormalizeSelf
- (
- )
-
-
-
-
-
-
Will normalize this vector.
-
-
Definition at line 148 of file Vector4.cpp .
-
-
150 std::cerr <<
"Stop normalizing int-vectors!!" << std::endl;
-
-
-
-
-
-
-
-
-
-
-
-
◆ operator Vector2< T >()
-
-
-
-
-template<typename T >
-
-
- Vector4::operator Vector2 < T >
-
-
-
-
-
-
◆ operator Vector3< T >()
-
-
-
-
-template<typename T >
-
-
- Vector4::operator Vector3 < T >
-
-
-
-
-
Conversion method.
-
-
Definition at line 781 of file Vector4.cpp .
-
-
-
-
-
◆ operator!=()
-
-
-
-
-template<typename T >
-
-
- bool Vector4::operator!=
- (
- const Vector4 < T > &
- other )
- const
-
-
-
-
-
-
◆ operator*() [1/2]
-
-
-
-
-template<typename T >
-
-
- Vector4 < int > Vector4::operator*
- (
- const Matrix4x4 &
- mat )
- const
-
-
-
-
-
Definition at line 684 of file Vector4.cpp .
-
-
-
-
688 newVec.
x = (mat[0][0] *
x ) + (mat[0][1] *
y ) + (mat[0][2] *
z ) + (mat[0][3] *
w );
-
689 newVec.
y = (mat[1][0] *
x ) + (mat[1][1] *
y ) + (mat[1][2] *
z ) + (mat[1][3] *
w );
-
690 newVec.
z = (mat[2][0] *
x ) + (mat[2][1] *
y ) + (mat[2][2] *
z ) + (mat[2][3] *
w );
-
691 newVec.
w = (mat[3][0] *
x ) + (mat[3][1] *
y ) + (mat[3][2] *
z ) + (mat[3][3] *
w );
-
-
-
-
-
-
-
-
-
-
-
-
-
◆ operator*() [2/2]
-
-
-
-
-template<typename T >
-
-
- Vector4 < T > Vector4::operator*
- (
- const T
- scale )
- const
-
-
-
-
-
-
◆ operator*=() [1/2]
-
-
-
-
-template<typename T >
-
-
- void Vector4::operator*=
- (
- const Matrix4x4 &
- mat )
-
-
-
-
-
-
Definition at line 752 of file Vector4.cpp .
-
-
-
-
-
-
758 x = (int)((mat[0][0] * buffer.x) + (mat[0][1] * buffer.y) + (mat[0][2] * buffer.z) + (mat[0][3] * buffer.w));
-
759 y = (int)((mat[1][0] * buffer.x) + (mat[1][1] * buffer.y) + (mat[1][2] * buffer.z) + (mat[1][3] * buffer.w));
-
760 z = (int)((mat[2][0] * buffer.x) + (mat[2][1] * buffer.y) + (mat[2][2] * buffer.z) + (mat[2][3] * buffer.w));
-
761 w = (int)((mat[3][0] * buffer.x) + (mat[3][1] * buffer.y) + (mat[3][2] * buffer.z) + (mat[3][3] * buffer.w));
-
-
-
-
-
-
-
-
◆ operator*=() [2/2]
-
-
-
-
-template<typename T >
-
-
- void Vector4::operator*=
- (
- const T
- scale )
-
-
-
-
-
-
-
◆ operator+()
-
-
-
-
-template<typename T >
-
-
- Vector4 < T > Vector4::operator+
- (
- const Vector4 < T > &
- other )
- const
-
-
-
-
-
-
◆ operator+=()
-
-
-
-
-template<typename T >
-
-
- void Vector4::operator+=
- (
- const Vector4 < T > &
- other )
-
-
-
-
-
-
-
◆ operator-() [1/2]
-
-
-
-
-template<typename T >
-
-
- Vector4 < T > Vector4::operator-
-
-
-
-
-
-
◆ operator-() [2/2]
-
-
-
-
-template<typename T >
-
-
- Vector4 < T > Vector4::operator-
- (
- const Vector4 < T > &
- other )
- const
-
-
-
-
-
-
◆ operator-=()
-
-
-
-
-template<typename T >
-
-
- void Vector4::operator-=
- (
- const Vector4 < T > &
- other )
-
-
-
-
-
-
-
◆ operator/()
-
-
-
-
-template<typename T >
-
-
- Vector4 < T > Vector4::operator/
- (
- const T
- scale )
- const
-
-
-
-
-
-
◆ operator/=()
-
-
-
-
-template<typename T >
-
-
- void Vector4::operator/=
- (
- const T
- scale )
-
-
-
-
-
-
-
◆ operator=() [1/2]
-
-
-
-
-template<typename T >
-
-
- void Vector4::operator=
- (
- const Vector4 < T > &
- other )
-
-
-
-
-
-
Conversion method.
-
-
Definition at line 730 of file Vector4.cpp .
-
-
-
-
-
◆ operator=() [2/2]
-
-
-
-
-template<typename T >
-
-
-
-
-
- void Vector4::operator=
- (
- Vector4 < T > &&
- other )
-
-
-
-
-
-noexcept
-
-
-
-
-
Definition at line 741 of file Vector4.cpp .
-
-
743 x = std::move(other.
x );
-
744 y = std::move(other.
y );
-
745 z = std::move(other.
z );
-
746 w = std::move(other.
w );
-
-
-
-
-
-
-
-
◆ operator==()
-
-
-
-
-template<typename T >
-
-
- bool Vector4::operator==
- (
- const Vector4 < T > &
- other )
- const
-
-
-
-
-
-
◆ operator[]() [1/2]
-
-
-
-
-template<typename T >
-
-
- T & Vector4::operator[]
- (
- std::size_t
- idx )
-
-
-
-
-
-
Definition at line 185 of file Vector4.cpp .
-
-
-
-
-
-
-
-
-
-
-
-
-
198 throw std::out_of_range(
"Array descriptor on Vector4<T> out of range!" );
-
-
-
-
-
-
-
◆ operator[]() [2/2]
-
-
-
-
-template<typename T >
-
-
- const T & Vector4::operator[]
- (
- std::size_t
- idx )
- const
-
-
-
-
-
Definition at line 203 of file Vector4.cpp .
-
-
-
-
-
-
-
-
-
-
-
-
-
216 throw std::out_of_range(
"Array descriptor on Vector4<T> out of range!" );
-
-
-
-
-
-
-
◆ Similar()
-
-
-
-
-template<typename T >
-
-
- bool Vector4::Similar
- (
- const Vector4 < T > &
- other ,
-
-
-
-
- double
- epsilon = 0.00001
-
-
-
- )
- const
-
-
-
-
-
Will compare if two vectors are similar to a certain epsilon value.
-
-
Definition at line 162 of file Vector4.cpp .
-
-
-
-
166 (::Math::Similar(
y , other.
y , epsilon)) &&
-
-
-
-
-
-
-
-
-
◆ SqrMagnitude()
-
-
-
-
-template<typename T >
-
-
- double Vector4::SqrMagnitude
- (
- )
- const
-
-
-
-
-
Will compute the square magnitude.
-
-
Definition at line 31 of file Vector4.cpp .
-
-
-
34 return (
double )iSqrMag;
-
-
-
-
-
-
◆ ToDouble()
-
-
-
-
-template<typename T >
-
-
- Vector4 < double > Vector4::ToDouble
-
-
-
-
-
Will convert this vector to a Vector4d.
-
-
Definition at line 179 of file Vector4.cpp .
-
-
-
-
-
◆ ToInt()
-
-
-
-
-template<typename T >
-
-
- Vector4 < int > Vector4::ToInt
-
-
-
-
-
Will convert this vector to a Vector4i.
-
-
Definition at line 173 of file Vector4.cpp .
-
-
-
-
-
◆ VectorScale()
-
-
-
-
-template<typename T >
-
-
- Vector4 < int > Vector4::VectorScale
- (
- const Vector4 < T > &
- scalar )
- const
-
-
-
-
-
Will scale self.n by scalar.n.
-
-
Definition at line 79 of file Vector4.cpp .
-
-
-
-
-
-
◆ operator<< [1/2]
-
-
-
-
-template<typename T >
-
-
-
-
-
- std::ostream& operator<<
- (
- std::ostream &
- os ,
-
-
-
-
- const Vector4 < T > &
- v
-
-
-
- )
-
-
-
-
-
-friend
-
-
-
-
-
Definition at line 79 of file Vector4.h .
-
-
81 return os <<
"[x: " << v.x <<
" y: " << v.y <<
" z: " << v.z <<
" w: " << v.w <<
"]" ;
-
-
-
-
-
-
◆ operator<< [2/2]
-
-
-
-
-template<typename T >
-
-
-
-
-
- std::wostream& operator<<
- (
- std::wostream &
- os ,
-
-
-
-
- const Vector4 < T > &
- v
-
-
-
- )
-
-
-
-
-
-friend
-
-
-
-
-
Definition at line 83 of file Vector4.h .
-
-
85 return os << L
"[x: " << v.x << L
" y: " << v.y << L
" z: " << v.z << L
" w: " << v.w << L
"]" ;
-
-
-
-
-
-
-
◆ backward
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector4 < double > Vector4::backward
-
-
-
-
-static
-
-
-
-
-
-
◆ down
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector4 < double > Vector4::down
-
-
-
-
-static
-
-
-
-
-
-
◆ forward
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector4 < double > Vector4::forward
-
-
-
-
-static
-
-
-
-
-
-
◆ future
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector4 < double > Vector4::future
-
-
-
-
-static
-
-
-
-
-
-
◆ left
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector4 < double > Vector4::left
-
-
-
-
-static
-
-
-
-
-
-
◆ one
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector4 < double > Vector4::one
-
-
-
-
-static
-
-
-
-
-
-
◆ past
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector4 < double > Vector4::past
-
-
-
-
-static
-
-
-
-
-
-
◆ right
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector4 < double > Vector4::right
-
-
-
-
-static
-
-
-
-
-
-
◆ up
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector4 < double > Vector4::up
-
-
-
-
-static
-
-
-
-
-
-
-
-
-
-
-template<typename T >
-
-
-
-
-
-
-
-
-
-template<typename T >
-
-
-
-
-
-
-
-
-
-template<typename T >
-
-
-
-
-
-
-
-
-
-template<typename T >
-
-
-
-
-
◆ zero
-
-
-
-
-template<typename T >
-
-
-
-
-
- const Vector4 < double > Vector4::zero
-
-
-
-
-static
-
-
-
-
-
The documentation for this class was generated from the following files:
-
-Representation of a 3d vector.
-
-
-
-Vector4< double > ToDouble() const
Will convert this vector to a Vector4d.
-Representation of a 2d vector.
-static constexpr bool Similar(const double a, const double b, const double epsilon=0.00001)
Compares two double values with a given accuracy.
-bool operator==(const Vector4< T > &other) const
-double SqrMagnitude() const
Will compute the square magnitude.
-
-
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Vector4__coll__graph.map b/Doxygen/build/classEule_1_1Vector4__coll__graph.map
deleted file mode 100644
index 4c69d0c..0000000
--- a/Doxygen/build/classEule_1_1Vector4__coll__graph.map
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
diff --git a/Doxygen/build/classEule_1_1Vector4__coll__graph.md5 b/Doxygen/build/classEule_1_1Vector4__coll__graph.md5
deleted file mode 100644
index f5ae0ed..0000000
--- a/Doxygen/build/classEule_1_1Vector4__coll__graph.md5
+++ /dev/null
@@ -1 +0,0 @@
-09796771b7af89436ab56cfd53f68a29
\ No newline at end of file
diff --git a/Doxygen/build/classEule_1_1Vector4__coll__graph.png b/Doxygen/build/classEule_1_1Vector4__coll__graph.png
deleted file mode 100644
index fe84cea..0000000
Binary files a/Doxygen/build/classEule_1_1Vector4__coll__graph.png and /dev/null differ
diff --git a/Doxygen/build/classes.html b/Doxygen/build/classes.html
deleted file mode 100644
index b2129e0..0000000
--- a/Doxygen/build/classes.html
+++ /dev/null
@@ -1,117 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Index
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/closed.png b/Doxygen/build/closed.png
deleted file mode 100644
index 98cc2c9..0000000
Binary files a/Doxygen/build/closed.png and /dev/null differ
diff --git a/Doxygen/build/dir_1fefb9009d41306f82e23dc917083c9e.html b/Doxygen/build/dir_1fefb9009d41306f82e23dc917083c9e.html
deleted file mode 100644
index 6df4a37..0000000
--- a/Doxygen/build/dir_1fefb9009d41306f82e23dc917083c9e.html
+++ /dev/null
@@ -1,88 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/x64/Release Directory Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/dir_29a3c7679fa29c698d8a016dea7d0b26.html b/Doxygen/build/dir_29a3c7679fa29c698d8a016dea7d0b26.html
deleted file mode 100644
index 2782838..0000000
--- a/Doxygen/build/dir_29a3c7679fa29c698d8a016dea7d0b26.html
+++ /dev/null
@@ -1,137 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule Directory Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/dir_b9243fac9f130637c8e868960898670e.html b/Doxygen/build/dir_b9243fac9f130637c8e868960898670e.html
deleted file mode 100644
index 7609e92..0000000
--- a/Doxygen/build/dir_b9243fac9f130637c8e868960898670e.html
+++ /dev/null
@@ -1,96 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/x64 Directory Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/dir_c806cfdecfdfd6ea1cddf5ffe1bf0281.html b/Doxygen/build/dir_c806cfdecfdfd6ea1cddf5ffe1bf0281.html
deleted file mode 100644
index d9f504b..0000000
--- a/Doxygen/build/dir_c806cfdecfdfd6ea1cddf5ffe1bf0281.html
+++ /dev/null
@@ -1,88 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/Debug Directory Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/dir_e847076a3068559a2237d545d5d06d37.html b/Doxygen/build/dir_e847076a3068559a2237d545d5d06d37.html
deleted file mode 100644
index b42c4d9..0000000
--- a/Doxygen/build/dir_e847076a3068559a2237d545d5d06d37.html
+++ /dev/null
@@ -1,88 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Eule/x64/Debug Directory Reference
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/doc.png b/Doxygen/build/doc.png
deleted file mode 100644
index 17edabf..0000000
Binary files a/Doxygen/build/doc.png and /dev/null differ
diff --git a/Doxygen/build/doxygen.css b/Doxygen/build/doxygen.css
deleted file mode 100644
index 73ecbb2..0000000
--- a/Doxygen/build/doxygen.css
+++ /dev/null
@@ -1,1771 +0,0 @@
-/* The standard CSS for doxygen 1.8.17 */
-
-body, table, div, p, dl {
- font: 400 14px/22px Roboto,sans-serif;
-}
-
-p.reference, p.definition {
- font: 400 14px/22px Roboto,sans-serif;
-}
-
-/* @group Heading Levels */
-
-h1.groupheader {
- font-size: 150%;
-}
-
-.title {
- font: 400 14px/28px Roboto,sans-serif;
- font-size: 150%;
- font-weight: bold;
- margin: 10px 2px;
-}
-
-h2.groupheader {
- border-bottom: 1px solid #879ECB;
- color: #354C7B;
- font-size: 150%;
- font-weight: normal;
- margin-top: 1.75em;
- padding-top: 8px;
- padding-bottom: 4px;
- width: 100%;
-}
-
-h3.groupheader {
- font-size: 100%;
-}
-
-h1, h2, h3, h4, h5, h6 {
- -webkit-transition: text-shadow 0.5s linear;
- -moz-transition: text-shadow 0.5s linear;
- -ms-transition: text-shadow 0.5s linear;
- -o-transition: text-shadow 0.5s linear;
- transition: text-shadow 0.5s linear;
- margin-right: 15px;
-}
-
-h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
- text-shadow: 0 0 15px cyan;
-}
-
-dt {
- font-weight: bold;
-}
-
-ul.multicol {
- -moz-column-gap: 1em;
- -webkit-column-gap: 1em;
- column-gap: 1em;
- -moz-column-count: 3;
- -webkit-column-count: 3;
- column-count: 3;
-}
-
-p.startli, p.startdd {
- margin-top: 2px;
-}
-
-th p.starttd, p.intertd, p.endtd {
- font-size: 100%;
- font-weight: 700;
-}
-
-p.starttd {
- margin-top: 0px;
-}
-
-p.endli {
- margin-bottom: 0px;
-}
-
-p.enddd {
- margin-bottom: 4px;
-}
-
-p.endtd {
- margin-bottom: 2px;
-}
-
-p.interli {
-}
-
-p.interdd {
-}
-
-p.intertd {
-}
-
-/* @end */
-
-caption {
- font-weight: bold;
-}
-
-span.legend {
- font-size: 70%;
- text-align: center;
-}
-
-h3.version {
- font-size: 90%;
- text-align: center;
-}
-
-div.qindex, div.navtab{
- background-color: #EBEFF6;
- border: 1px solid #A3B4D7;
- text-align: center;
-}
-
-div.qindex, div.navpath {
- width: 100%;
- line-height: 140%;
-}
-
-div.navtab {
- margin-right: 15px;
-}
-
-/* @group Link Styling */
-
-a {
- color: #3D578C;
- font-weight: normal;
- text-decoration: none;
-}
-
-.contents a:visited {
- color: #4665A2;
-}
-
-a:hover {
- text-decoration: underline;
-}
-
-a.qindex {
- font-weight: bold;
-}
-
-a.qindexHL {
- font-weight: bold;
- background-color: #9CAFD4;
- color: #FFFFFF;
- border: 1px double #869DCA;
-}
-
-.contents a.qindexHL:visited {
- color: #FFFFFF;
-}
-
-a.el {
- font-weight: bold;
-}
-
-a.elRef {
-}
-
-a.code, a.code:visited, a.line, a.line:visited {
- color: #4665A2;
-}
-
-a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited {
- color: #4665A2;
-}
-
-/* @end */
-
-dl.el {
- margin-left: -1cm;
-}
-
-ul {
- overflow: hidden; /*Fixed: list item bullets overlap floating elements*/
-}
-
-#side-nav ul {
- overflow: visible; /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */
-}
-
-#main-nav ul {
- overflow: visible; /* reset ul rule for the navigation bar drop down lists */
-}
-
-.fragment {
- text-align: left;
- direction: ltr;
- overflow-x: auto; /*Fixed: fragment lines overlap floating elements*/
- overflow-y: hidden;
-}
-
-pre.fragment {
- border: 1px solid #C4CFE5;
- background-color: #FBFCFD;
- padding: 4px 6px;
- margin: 4px 8px 4px 2px;
- overflow: auto;
- word-wrap: break-word;
- font-size: 9pt;
- line-height: 125%;
- font-family: monospace, fixed;
- font-size: 105%;
-}
-
-div.fragment {
- padding: 0 0 1px 0; /*Fixed: last line underline overlap border*/
- margin: 4px 8px 4px 2px;
- background-color: #FBFCFD;
- border: 1px solid #C4CFE5;
-}
-
-div.line {
- font-family: monospace, fixed;
- font-size: 13px;
- min-height: 13px;
- line-height: 1.0;
- text-wrap: unrestricted;
- white-space: -moz-pre-wrap; /* Moz */
- white-space: -pre-wrap; /* Opera 4-6 */
- white-space: -o-pre-wrap; /* Opera 7 */
- white-space: pre-wrap; /* CSS3 */
- word-wrap: break-word; /* IE 5.5+ */
- text-indent: -53px;
- padding-left: 53px;
- padding-bottom: 0px;
- margin: 0px;
- -webkit-transition-property: background-color, box-shadow;
- -webkit-transition-duration: 0.5s;
- -moz-transition-property: background-color, box-shadow;
- -moz-transition-duration: 0.5s;
- -ms-transition-property: background-color, box-shadow;
- -ms-transition-duration: 0.5s;
- -o-transition-property: background-color, box-shadow;
- -o-transition-duration: 0.5s;
- transition-property: background-color, box-shadow;
- transition-duration: 0.5s;
-}
-
-div.line:after {
- content:"\000A";
- white-space: pre;
-}
-
-div.line.glow {
- background-color: cyan;
- box-shadow: 0 0 10px cyan;
-}
-
-
-span.lineno {
- padding-right: 4px;
- text-align: right;
- border-right: 2px solid #0F0;
- background-color: #E8E8E8;
- white-space: pre;
-}
-span.lineno a {
- background-color: #D8D8D8;
-}
-
-span.lineno a:hover {
- background-color: #C8C8C8;
-}
-
-.lineno {
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-
-div.ah, span.ah {
- background-color: black;
- font-weight: bold;
- color: #FFFFFF;
- margin-bottom: 3px;
- margin-top: 3px;
- padding: 0.2em;
- border: solid thin #333;
- border-radius: 0.5em;
- -webkit-border-radius: .5em;
- -moz-border-radius: .5em;
- box-shadow: 2px 2px 3px #999;
- -webkit-box-shadow: 2px 2px 3px #999;
- -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
- background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
- background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%);
-}
-
-div.classindex ul {
- list-style: none;
- padding-left: 0;
-}
-
-div.classindex span.ai {
- display: inline-block;
-}
-
-div.groupHeader {
- margin-left: 16px;
- margin-top: 12px;
- font-weight: bold;
-}
-
-div.groupText {
- margin-left: 16px;
- font-style: italic;
-}
-
-body {
- background-color: white;
- color: black;
- margin: 0;
-}
-
-div.contents {
- margin-top: 10px;
- margin-left: 12px;
- margin-right: 8px;
-}
-
-td.indexkey {
- background-color: #EBEFF6;
- font-weight: bold;
- border: 1px solid #C4CFE5;
- margin: 2px 0px 2px 0;
- padding: 2px 10px;
- white-space: nowrap;
- vertical-align: top;
-}
-
-td.indexvalue {
- background-color: #EBEFF6;
- border: 1px solid #C4CFE5;
- padding: 2px 10px;
- margin: 2px 0px;
-}
-
-tr.memlist {
- background-color: #EEF1F7;
-}
-
-p.formulaDsp {
- text-align: center;
-}
-
-img.formulaDsp {
-
-}
-
-img.formulaInl, img.inline {
- vertical-align: middle;
-}
-
-div.center {
- text-align: center;
- margin-top: 0px;
- margin-bottom: 0px;
- padding: 0px;
-}
-
-div.center img {
- border: 0px;
-}
-
-address.footer {
- text-align: right;
- padding-right: 12px;
-}
-
-img.footer {
- border: 0px;
- vertical-align: middle;
-}
-
-/* @group Code Colorization */
-
-span.keyword {
- color: #008000
-}
-
-span.keywordtype {
- color: #604020
-}
-
-span.keywordflow {
- color: #e08000
-}
-
-span.comment {
- color: #800000
-}
-
-span.preprocessor {
- color: #806020
-}
-
-span.stringliteral {
- color: #002080
-}
-
-span.charliteral {
- color: #008080
-}
-
-span.vhdldigit {
- color: #ff00ff
-}
-
-span.vhdlchar {
- color: #000000
-}
-
-span.vhdlkeyword {
- color: #700070
-}
-
-span.vhdllogic {
- color: #ff0000
-}
-
-blockquote {
- background-color: #F7F8FB;
- border-left: 2px solid #9CAFD4;
- margin: 0 24px 0 4px;
- padding: 0 12px 0 16px;
-}
-
-blockquote.DocNodeRTL {
- border-left: 0;
- border-right: 2px solid #9CAFD4;
- margin: 0 4px 0 24px;
- padding: 0 16px 0 12px;
-}
-
-/* @end */
-
-/*
-.search {
- color: #003399;
- font-weight: bold;
-}
-
-form.search {
- margin-bottom: 0px;
- margin-top: 0px;
-}
-
-input.search {
- font-size: 75%;
- color: #000080;
- font-weight: normal;
- background-color: #e8eef2;
-}
-*/
-
-td.tiny {
- font-size: 75%;
-}
-
-.dirtab {
- padding: 4px;
- border-collapse: collapse;
- border: 1px solid #A3B4D7;
-}
-
-th.dirtab {
- background: #EBEFF6;
- font-weight: bold;
-}
-
-hr {
- height: 0px;
- border: none;
- border-top: 1px solid #4A6AAA;
-}
-
-hr.footer {
- height: 1px;
-}
-
-/* @group Member Descriptions */
-
-table.memberdecls {
- border-spacing: 0px;
- padding: 0px;
-}
-
-.memberdecls td, .fieldtable tr {
- -webkit-transition-property: background-color, box-shadow;
- -webkit-transition-duration: 0.5s;
- -moz-transition-property: background-color, box-shadow;
- -moz-transition-duration: 0.5s;
- -ms-transition-property: background-color, box-shadow;
- -ms-transition-duration: 0.5s;
- -o-transition-property: background-color, box-shadow;
- -o-transition-duration: 0.5s;
- transition-property: background-color, box-shadow;
- transition-duration: 0.5s;
-}
-
-.memberdecls td.glow, .fieldtable tr.glow {
- background-color: cyan;
- box-shadow: 0 0 15px cyan;
-}
-
-.mdescLeft, .mdescRight,
-.memItemLeft, .memItemRight,
-.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
- background-color: #F9FAFC;
- border: none;
- margin: 4px;
- padding: 1px 0 0 8px;
-}
-
-.mdescLeft, .mdescRight {
- padding: 0px 8px 4px 8px;
- color: #555;
-}
-
-.memSeparator {
- border-bottom: 1px solid #DEE4F0;
- line-height: 1px;
- margin: 0px;
- padding: 0px;
-}
-
-.memItemLeft, .memTemplItemLeft {
- white-space: nowrap;
-}
-
-.memItemRight, .memTemplItemRight {
- width: 100%;
-}
-
-.memTemplParams {
- color: #4665A2;
- white-space: nowrap;
- font-size: 80%;
-}
-
-/* @end */
-
-/* @group Member Details */
-
-/* Styles for detailed member documentation */
-
-.memtitle {
- padding: 8px;
- border-top: 1px solid #A8B8D9;
- border-left: 1px solid #A8B8D9;
- border-right: 1px solid #A8B8D9;
- border-top-right-radius: 4px;
- border-top-left-radius: 4px;
- margin-bottom: -1px;
- background-image: url('nav_f.png');
- background-repeat: repeat-x;
- background-color: #E2E8F2;
- line-height: 1.25;
- font-weight: 300;
- float:left;
-}
-
-.permalink
-{
- font-size: 65%;
- display: inline-block;
- vertical-align: middle;
-}
-
-.memtemplate {
- font-size: 80%;
- color: #4665A2;
- font-weight: normal;
- margin-left: 9px;
-}
-
-.memnav {
- background-color: #EBEFF6;
- border: 1px solid #A3B4D7;
- text-align: center;
- margin: 2px;
- margin-right: 15px;
- padding: 2px;
-}
-
-.mempage {
- width: 100%;
-}
-
-.memitem {
- padding: 0;
- margin-bottom: 10px;
- margin-right: 5px;
- -webkit-transition: box-shadow 0.5s linear;
- -moz-transition: box-shadow 0.5s linear;
- -ms-transition: box-shadow 0.5s linear;
- -o-transition: box-shadow 0.5s linear;
- transition: box-shadow 0.5s linear;
- display: table !important;
- width: 100%;
-}
-
-.memitem.glow {
- box-shadow: 0 0 15px cyan;
-}
-
-.memname {
- font-weight: 400;
- margin-left: 6px;
-}
-
-.memname td {
- vertical-align: bottom;
-}
-
-.memproto, dl.reflist dt {
- border-top: 1px solid #A8B8D9;
- border-left: 1px solid #A8B8D9;
- border-right: 1px solid #A8B8D9;
- padding: 6px 0px 6px 0px;
- color: #253555;
- font-weight: bold;
- text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
- background-color: #DFE5F1;
- /* opera specific markup */
- box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
- border-top-right-radius: 4px;
- /* firefox specific markup */
- -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
- -moz-border-radius-topright: 4px;
- /* webkit specific markup */
- -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
- -webkit-border-top-right-radius: 4px;
-
-}
-
-.overload {
- font-family: "courier new",courier,monospace;
- font-size: 65%;
-}
-
-.memdoc, dl.reflist dd {
- border-bottom: 1px solid #A8B8D9;
- border-left: 1px solid #A8B8D9;
- border-right: 1px solid #A8B8D9;
- padding: 6px 10px 2px 10px;
- background-color: #FBFCFD;
- border-top-width: 0;
- background-image:url('nav_g.png');
- background-repeat:repeat-x;
- background-color: #FFFFFF;
- /* opera specific markup */
- border-bottom-left-radius: 4px;
- border-bottom-right-radius: 4px;
- box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
- /* firefox specific markup */
- -moz-border-radius-bottomleft: 4px;
- -moz-border-radius-bottomright: 4px;
- -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
- /* webkit specific markup */
- -webkit-border-bottom-left-radius: 4px;
- -webkit-border-bottom-right-radius: 4px;
- -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
-}
-
-dl.reflist dt {
- padding: 5px;
-}
-
-dl.reflist dd {
- margin: 0px 0px 10px 0px;
- padding: 5px;
-}
-
-.paramkey {
- text-align: right;
-}
-
-.paramtype {
- white-space: nowrap;
-}
-
-.paramname {
- color: #602020;
- white-space: nowrap;
-}
-.paramname em {
- font-style: normal;
-}
-.paramname code {
- line-height: 14px;
-}
-
-.params, .retval, .exception, .tparams {
- margin-left: 0px;
- padding-left: 0px;
-}
-
-.params .paramname, .retval .paramname, .tparams .paramname, .exception .paramname {
- font-weight: bold;
- vertical-align: top;
-}
-
-.params .paramtype, .tparams .paramtype {
- font-style: italic;
- vertical-align: top;
-}
-
-.params .paramdir, .tparams .paramdir {
- font-family: "courier new",courier,monospace;
- vertical-align: top;
-}
-
-table.mlabels {
- border-spacing: 0px;
-}
-
-td.mlabels-left {
- width: 100%;
- padding: 0px;
-}
-
-td.mlabels-right {
- vertical-align: bottom;
- padding: 0px;
- white-space: nowrap;
-}
-
-span.mlabels {
- margin-left: 8px;
-}
-
-span.mlabel {
- background-color: #728DC1;
- border-top:1px solid #5373B4;
- border-left:1px solid #5373B4;
- border-right:1px solid #C4CFE5;
- border-bottom:1px solid #C4CFE5;
- text-shadow: none;
- color: white;
- margin-right: 4px;
- padding: 2px 3px;
- border-radius: 3px;
- font-size: 7pt;
- white-space: nowrap;
- vertical-align: middle;
-}
-
-
-
-/* @end */
-
-/* these are for tree view inside a (index) page */
-
-div.directory {
- margin: 10px 0px;
- border-top: 1px solid #9CAFD4;
- border-bottom: 1px solid #9CAFD4;
- width: 100%;
-}
-
-.directory table {
- border-collapse:collapse;
-}
-
-.directory td {
- margin: 0px;
- padding: 0px;
- vertical-align: top;
-}
-
-.directory td.entry {
- white-space: nowrap;
- padding-right: 6px;
- padding-top: 3px;
-}
-
-.directory td.entry a {
- outline:none;
-}
-
-.directory td.entry a img {
- border: none;
-}
-
-.directory td.desc {
- width: 100%;
- padding-left: 6px;
- padding-right: 6px;
- padding-top: 3px;
- border-left: 1px solid rgba(0,0,0,0.05);
-}
-
-.directory tr.even {
- padding-left: 6px;
- background-color: #F7F8FB;
-}
-
-.directory img {
- vertical-align: -30%;
-}
-
-.directory .levels {
- white-space: nowrap;
- width: 100%;
- text-align: right;
- font-size: 9pt;
-}
-
-.directory .levels span {
- cursor: pointer;
- padding-left: 2px;
- padding-right: 2px;
- color: #3D578C;
-}
-
-.arrow {
- color: #9CAFD4;
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
- cursor: pointer;
- font-size: 80%;
- display: inline-block;
- width: 16px;
- height: 22px;
-}
-
-.icon {
- font-family: Arial, Helvetica;
- font-weight: bold;
- font-size: 12px;
- height: 14px;
- width: 16px;
- display: inline-block;
- background-color: #728DC1;
- color: white;
- text-align: center;
- border-radius: 4px;
- margin-left: 2px;
- margin-right: 2px;
-}
-
-.icona {
- width: 24px;
- height: 22px;
- display: inline-block;
-}
-
-.iconfopen {
- width: 24px;
- height: 18px;
- margin-bottom: 4px;
- background-image:url('folderopen.png');
- background-position: 0px -4px;
- background-repeat: repeat-y;
- vertical-align:top;
- display: inline-block;
-}
-
-.iconfclosed {
- width: 24px;
- height: 18px;
- margin-bottom: 4px;
- background-image:url('folderclosed.png');
- background-position: 0px -4px;
- background-repeat: repeat-y;
- vertical-align:top;
- display: inline-block;
-}
-
-.icondoc {
- width: 24px;
- height: 18px;
- margin-bottom: 4px;
- background-image:url('doc.png');
- background-position: 0px -4px;
- background-repeat: repeat-y;
- vertical-align:top;
- display: inline-block;
-}
-
-table.directory {
- font: 400 14px Roboto,sans-serif;
-}
-
-/* @end */
-
-div.dynheader {
- margin-top: 8px;
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-
-address {
- font-style: normal;
- color: #2A3D61;
-}
-
-table.doxtable caption {
- caption-side: top;
-}
-
-table.doxtable {
- border-collapse:collapse;
- margin-top: 4px;
- margin-bottom: 4px;
-}
-
-table.doxtable td, table.doxtable th {
- border: 1px solid #2D4068;
- padding: 3px 7px 2px;
-}
-
-table.doxtable th {
- background-color: #374F7F;
- color: #FFFFFF;
- font-size: 110%;
- padding-bottom: 4px;
- padding-top: 5px;
-}
-
-table.fieldtable {
- /*width: 100%;*/
- margin-bottom: 10px;
- border: 1px solid #A8B8D9;
- border-spacing: 0px;
- -moz-border-radius: 4px;
- -webkit-border-radius: 4px;
- border-radius: 4px;
- -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
- -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
- box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
-}
-
-.fieldtable td, .fieldtable th {
- padding: 3px 7px 2px;
-}
-
-.fieldtable td.fieldtype, .fieldtable td.fieldname {
- white-space: nowrap;
- border-right: 1px solid #A8B8D9;
- border-bottom: 1px solid #A8B8D9;
- vertical-align: top;
-}
-
-.fieldtable td.fieldname {
- padding-top: 3px;
-}
-
-.fieldtable td.fielddoc {
- border-bottom: 1px solid #A8B8D9;
- /*width: 100%;*/
-}
-
-.fieldtable td.fielddoc p:first-child {
- margin-top: 0px;
-}
-
-.fieldtable td.fielddoc p:last-child {
- margin-bottom: 2px;
-}
-
-.fieldtable tr:last-child td {
- border-bottom: none;
-}
-
-.fieldtable th {
- background-image:url('nav_f.png');
- background-repeat:repeat-x;
- background-color: #E2E8F2;
- font-size: 90%;
- color: #253555;
- padding-bottom: 4px;
- padding-top: 5px;
- text-align:left;
- font-weight: 400;
- -moz-border-radius-topleft: 4px;
- -moz-border-radius-topright: 4px;
- -webkit-border-top-left-radius: 4px;
- -webkit-border-top-right-radius: 4px;
- border-top-left-radius: 4px;
- border-top-right-radius: 4px;
- border-bottom: 1px solid #A8B8D9;
-}
-
-
-.tabsearch {
- top: 0px;
- left: 10px;
- height: 36px;
- background-image: url('tab_b.png');
- z-index: 101;
- overflow: hidden;
- font-size: 13px;
-}
-
-.navpath ul
-{
- font-size: 11px;
- background-image:url('tab_b.png');
- background-repeat:repeat-x;
- background-position: 0 -5px;
- height:30px;
- line-height:30px;
- color:#8AA0CC;
- border:solid 1px #C2CDE4;
- overflow:hidden;
- margin:0px;
- padding:0px;
-}
-
-.navpath li
-{
- list-style-type:none;
- float:left;
- padding-left:10px;
- padding-right:15px;
- background-image:url('bc_s.png');
- background-repeat:no-repeat;
- background-position:right;
- color:#364D7C;
-}
-
-.navpath li.navelem a
-{
- height:32px;
- display:block;
- text-decoration: none;
- outline: none;
- color: #283A5D;
- font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
- text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
- text-decoration: none;
-}
-
-.navpath li.navelem a:hover
-{
- color:#6884BD;
-}
-
-.navpath li.footer
-{
- list-style-type:none;
- float:right;
- padding-left:10px;
- padding-right:15px;
- background-image:none;
- background-repeat:no-repeat;
- background-position:right;
- color:#364D7C;
- font-size: 8pt;
-}
-
-
-div.summary
-{
- float: right;
- font-size: 8pt;
- padding-right: 5px;
- width: 50%;
- text-align: right;
-}
-
-div.summary a
-{
- white-space: nowrap;
-}
-
-table.classindex
-{
- margin: 10px;
- white-space: nowrap;
- margin-left: 3%;
- margin-right: 3%;
- width: 94%;
- border: 0;
- border-spacing: 0;
- padding: 0;
-}
-
-div.ingroups
-{
- font-size: 8pt;
- width: 50%;
- text-align: left;
-}
-
-div.ingroups a
-{
- white-space: nowrap;
-}
-
-div.header
-{
- background-image:url('nav_h.png');
- background-repeat:repeat-x;
- background-color: #F9FAFC;
- margin: 0px;
- border-bottom: 1px solid #C4CFE5;
-}
-
-div.headertitle
-{
- padding: 5px 5px 5px 10px;
-}
-
-.PageDocRTL-title div.headertitle {
- text-align: right;
- direction: rtl;
-}
-
-dl {
- padding: 0 0 0 0;
-}
-
-/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */
-dl.section {
- margin-left: 0px;
- padding-left: 0px;
-}
-
-dl.section.DocNodeRTL {
- margin-right: 0px;
- padding-right: 0px;
-}
-
-dl.note {
- margin-left: -7px;
- padding-left: 3px;
- border-left: 4px solid;
- border-color: #D0C000;
-}
-
-dl.note.DocNodeRTL {
- margin-left: 0;
- padding-left: 0;
- border-left: 0;
- margin-right: -7px;
- padding-right: 3px;
- border-right: 4px solid;
- border-color: #D0C000;
-}
-
-dl.warning, dl.attention {
- margin-left: -7px;
- padding-left: 3px;
- border-left: 4px solid;
- border-color: #FF0000;
-}
-
-dl.warning.DocNodeRTL, dl.attention.DocNodeRTL {
- margin-left: 0;
- padding-left: 0;
- border-left: 0;
- margin-right: -7px;
- padding-right: 3px;
- border-right: 4px solid;
- border-color: #FF0000;
-}
-
-dl.pre, dl.post, dl.invariant {
- margin-left: -7px;
- padding-left: 3px;
- border-left: 4px solid;
- border-color: #00D000;
-}
-
-dl.pre.DocNodeRTL, dl.post.DocNodeRTL, dl.invariant.DocNodeRTL {
- margin-left: 0;
- padding-left: 0;
- border-left: 0;
- margin-right: -7px;
- padding-right: 3px;
- border-right: 4px solid;
- border-color: #00D000;
-}
-
-dl.deprecated {
- margin-left: -7px;
- padding-left: 3px;
- border-left: 4px solid;
- border-color: #505050;
-}
-
-dl.deprecated.DocNodeRTL {
- margin-left: 0;
- padding-left: 0;
- border-left: 0;
- margin-right: -7px;
- padding-right: 3px;
- border-right: 4px solid;
- border-color: #505050;
-}
-
-dl.todo {
- margin-left: -7px;
- padding-left: 3px;
- border-left: 4px solid;
- border-color: #00C0E0;
-}
-
-dl.todo.DocNodeRTL {
- margin-left: 0;
- padding-left: 0;
- border-left: 0;
- margin-right: -7px;
- padding-right: 3px;
- border-right: 4px solid;
- border-color: #00C0E0;
-}
-
-dl.test {
- margin-left: -7px;
- padding-left: 3px;
- border-left: 4px solid;
- border-color: #3030E0;
-}
-
-dl.test.DocNodeRTL {
- margin-left: 0;
- padding-left: 0;
- border-left: 0;
- margin-right: -7px;
- padding-right: 3px;
- border-right: 4px solid;
- border-color: #3030E0;
-}
-
-dl.bug {
- margin-left: -7px;
- padding-left: 3px;
- border-left: 4px solid;
- border-color: #C08050;
-}
-
-dl.bug.DocNodeRTL {
- margin-left: 0;
- padding-left: 0;
- border-left: 0;
- margin-right: -7px;
- padding-right: 3px;
- border-right: 4px solid;
- border-color: #C08050;
-}
-
-dl.section dd {
- margin-bottom: 6px;
-}
-
-
-#projectlogo
-{
- text-align: center;
- vertical-align: bottom;
- border-collapse: separate;
-}
-
-#projectlogo img
-{
- border: 0px none;
-}
-
-#projectalign
-{
- vertical-align: middle;
-}
-
-#projectname
-{
- font: 300% Tahoma, Arial,sans-serif;
- margin: 0px;
- padding: 2px 0px;
-}
-
-#projectbrief
-{
- font: 120% Tahoma, Arial,sans-serif;
- margin: 0px;
- padding: 0px;
-}
-
-#projectnumber
-{
- font: 50% Tahoma, Arial,sans-serif;
- margin: 0px;
- padding: 0px;
-}
-
-#titlearea
-{
- padding: 0px;
- margin: 0px;
- width: 100%;
- border-bottom: 1px solid #5373B4;
-}
-
-.image
-{
- text-align: center;
-}
-
-.dotgraph
-{
- text-align: center;
-}
-
-.mscgraph
-{
- text-align: center;
-}
-
-.plantumlgraph
-{
- text-align: center;
-}
-
-.diagraph
-{
- text-align: center;
-}
-
-.caption
-{
- font-weight: bold;
-}
-
-div.zoom
-{
- border: 1px solid #90A5CE;
-}
-
-dl.citelist {
- margin-bottom:50px;
-}
-
-dl.citelist dt {
- color:#334975;
- float:left;
- font-weight:bold;
- margin-right:10px;
- padding:5px;
-}
-
-dl.citelist dd {
- margin:2px 0;
- padding:5px 0;
-}
-
-div.toc {
- padding: 14px 25px;
- background-color: #F4F6FA;
- border: 1px solid #D8DFEE;
- border-radius: 7px 7px 7px 7px;
- float: right;
- height: auto;
- margin: 0 8px 10px 10px;
- width: 200px;
-}
-
-.PageDocRTL-title div.toc {
- float: left !important;
- text-align: right;
-}
-
-div.toc li {
- background: url("bdwn.png") no-repeat scroll 0 5px transparent;
- font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
- margin-top: 5px;
- padding-left: 10px;
- padding-top: 2px;
-}
-
-.PageDocRTL-title div.toc li {
- background-position-x: right !important;
- padding-left: 0 !important;
- padding-right: 10px;
-}
-
-div.toc h3 {
- font: bold 12px/1.2 Arial,FreeSans,sans-serif;
- color: #4665A2;
- border-bottom: 0 none;
- margin: 0;
-}
-
-div.toc ul {
- list-style: none outside none;
- border: medium none;
- padding: 0px;
-}
-
-div.toc li.level1 {
- margin-left: 0px;
-}
-
-div.toc li.level2 {
- margin-left: 15px;
-}
-
-div.toc li.level3 {
- margin-left: 30px;
-}
-
-div.toc li.level4 {
- margin-left: 45px;
-}
-
-.PageDocRTL-title div.toc li.level1 {
- margin-left: 0 !important;
- margin-right: 0;
-}
-
-.PageDocRTL-title div.toc li.level2 {
- margin-left: 0 !important;
- margin-right: 15px;
-}
-
-.PageDocRTL-title div.toc li.level3 {
- margin-left: 0 !important;
- margin-right: 30px;
-}
-
-.PageDocRTL-title div.toc li.level4 {
- margin-left: 0 !important;
- margin-right: 45px;
-}
-
-.inherit_header {
- font-weight: bold;
- color: gray;
- cursor: pointer;
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-
-.inherit_header td {
- padding: 6px 0px 2px 5px;
-}
-
-.inherit {
- display: none;
-}
-
-tr.heading h2 {
- margin-top: 12px;
- margin-bottom: 4px;
-}
-
-/* tooltip related style info */
-
-.ttc {
- position: absolute;
- display: none;
-}
-
-#powerTip {
- cursor: default;
- white-space: nowrap;
- background-color: white;
- border: 1px solid gray;
- border-radius: 4px 4px 4px 4px;
- box-shadow: 1px 1px 7px gray;
- display: none;
- font-size: smaller;
- max-width: 80%;
- opacity: 0.9;
- padding: 1ex 1em 1em;
- position: absolute;
- z-index: 2147483647;
-}
-
-#powerTip div.ttdoc {
- color: grey;
- font-style: italic;
-}
-
-#powerTip div.ttname a {
- font-weight: bold;
-}
-
-#powerTip div.ttname {
- font-weight: bold;
-}
-
-#powerTip div.ttdeci {
- color: #006318;
-}
-
-#powerTip div {
- margin: 0px;
- padding: 0px;
- font: 12px/16px Roboto,sans-serif;
-}
-
-#powerTip:before, #powerTip:after {
- content: "";
- position: absolute;
- margin: 0px;
-}
-
-#powerTip.n:after, #powerTip.n:before,
-#powerTip.s:after, #powerTip.s:before,
-#powerTip.w:after, #powerTip.w:before,
-#powerTip.e:after, #powerTip.e:before,
-#powerTip.ne:after, #powerTip.ne:before,
-#powerTip.se:after, #powerTip.se:before,
-#powerTip.nw:after, #powerTip.nw:before,
-#powerTip.sw:after, #powerTip.sw:before {
- border: solid transparent;
- content: " ";
- height: 0;
- width: 0;
- position: absolute;
-}
-
-#powerTip.n:after, #powerTip.s:after,
-#powerTip.w:after, #powerTip.e:after,
-#powerTip.nw:after, #powerTip.ne:after,
-#powerTip.sw:after, #powerTip.se:after {
- border-color: rgba(255, 255, 255, 0);
-}
-
-#powerTip.n:before, #powerTip.s:before,
-#powerTip.w:before, #powerTip.e:before,
-#powerTip.nw:before, #powerTip.ne:before,
-#powerTip.sw:before, #powerTip.se:before {
- border-color: rgba(128, 128, 128, 0);
-}
-
-#powerTip.n:after, #powerTip.n:before,
-#powerTip.ne:after, #powerTip.ne:before,
-#powerTip.nw:after, #powerTip.nw:before {
- top: 100%;
-}
-
-#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after {
- border-top-color: #FFFFFF;
- border-width: 10px;
- margin: 0px -10px;
-}
-#powerTip.n:before {
- border-top-color: #808080;
- border-width: 11px;
- margin: 0px -11px;
-}
-#powerTip.n:after, #powerTip.n:before {
- left: 50%;
-}
-
-#powerTip.nw:after, #powerTip.nw:before {
- right: 14px;
-}
-
-#powerTip.ne:after, #powerTip.ne:before {
- left: 14px;
-}
-
-#powerTip.s:after, #powerTip.s:before,
-#powerTip.se:after, #powerTip.se:before,
-#powerTip.sw:after, #powerTip.sw:before {
- bottom: 100%;
-}
-
-#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after {
- border-bottom-color: #FFFFFF;
- border-width: 10px;
- margin: 0px -10px;
-}
-
-#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before {
- border-bottom-color: #808080;
- border-width: 11px;
- margin: 0px -11px;
-}
-
-#powerTip.s:after, #powerTip.s:before {
- left: 50%;
-}
-
-#powerTip.sw:after, #powerTip.sw:before {
- right: 14px;
-}
-
-#powerTip.se:after, #powerTip.se:before {
- left: 14px;
-}
-
-#powerTip.e:after, #powerTip.e:before {
- left: 100%;
-}
-#powerTip.e:after {
- border-left-color: #FFFFFF;
- border-width: 10px;
- top: 50%;
- margin-top: -10px;
-}
-#powerTip.e:before {
- border-left-color: #808080;
- border-width: 11px;
- top: 50%;
- margin-top: -11px;
-}
-
-#powerTip.w:after, #powerTip.w:before {
- right: 100%;
-}
-#powerTip.w:after {
- border-right-color: #FFFFFF;
- border-width: 10px;
- top: 50%;
- margin-top: -10px;
-}
-#powerTip.w:before {
- border-right-color: #808080;
- border-width: 11px;
- top: 50%;
- margin-top: -11px;
-}
-
-@media print
-{
- #top { display: none; }
- #side-nav { display: none; }
- #nav-path { display: none; }
- body { overflow:visible; }
- h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
- .summary { display: none; }
- .memitem { page-break-inside: avoid; }
- #doc-content
- {
- margin-left:0 !important;
- height:auto !important;
- width:auto !important;
- overflow:inherit;
- display:inline;
- }
-}
-
-/* @group Markdown */
-
-/*
-table.markdownTable {
- border-collapse:collapse;
- margin-top: 4px;
- margin-bottom: 4px;
-}
-
-table.markdownTable td, table.markdownTable th {
- border: 1px solid #2D4068;
- padding: 3px 7px 2px;
-}
-
-table.markdownTableHead tr {
-}
-
-table.markdownTableBodyLeft td, table.markdownTable th {
- border: 1px solid #2D4068;
- padding: 3px 7px 2px;
-}
-
-th.markdownTableHeadLeft th.markdownTableHeadRight th.markdownTableHeadCenter th.markdownTableHeadNone {
- background-color: #374F7F;
- color: #FFFFFF;
- font-size: 110%;
- padding-bottom: 4px;
- padding-top: 5px;
-}
-
-th.markdownTableHeadLeft {
- text-align: left
-}
-
-th.markdownTableHeadRight {
- text-align: right
-}
-
-th.markdownTableHeadCenter {
- text-align: center
-}
-*/
-
-table.markdownTable {
- border-collapse:collapse;
- margin-top: 4px;
- margin-bottom: 4px;
-}
-
-table.markdownTable td, table.markdownTable th {
- border: 1px solid #2D4068;
- padding: 3px 7px 2px;
-}
-
-table.markdownTable tr {
-}
-
-th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone {
- background-color: #374F7F;
- color: #FFFFFF;
- font-size: 110%;
- padding-bottom: 4px;
- padding-top: 5px;
-}
-
-th.markdownTableHeadLeft, td.markdownTableBodyLeft {
- text-align: left
-}
-
-th.markdownTableHeadRight, td.markdownTableBodyRight {
- text-align: right
-}
-
-th.markdownTableHeadCenter, td.markdownTableBodyCenter {
- text-align: center
-}
-
-.DocNodeRTL {
- text-align: right;
- direction: rtl;
-}
-
-.DocNodeLTR {
- text-align: left;
- direction: ltr;
-}
-
-table.DocNodeRTL {
- width: auto;
- margin-right: 0;
- margin-left: auto;
-}
-
-table.DocNodeLTR {
- width: auto;
- margin-right: auto;
- margin-left: 0;
-}
-
-tt, code, kbd, samp
-{
- display: inline-block;
- direction:ltr;
-}
-/* @end */
-
-u {
- text-decoration: underline;
-}
-
diff --git a/Doxygen/build/doxygen.png b/Doxygen/build/doxygen.png
deleted file mode 100644
index 3ff17d8..0000000
Binary files a/Doxygen/build/doxygen.png and /dev/null differ
diff --git a/Doxygen/build/dynsections.js b/Doxygen/build/dynsections.js
deleted file mode 100644
index c8e84aa..0000000
--- a/Doxygen/build/dynsections.js
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- @licstart The following is the entire license notice for the
- JavaScript code in this file.
-
- Copyright (C) 1997-2017 by Dimitri van Heesch
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
- @licend The above is the entire license notice
- for the JavaScript code in this file
- */
-function toggleVisibility(linkObj)
-{
- var base = $(linkObj).attr('id');
- var summary = $('#'+base+'-summary');
- var content = $('#'+base+'-content');
- var trigger = $('#'+base+'-trigger');
- var src=$(trigger).attr('src');
- if (content.is(':visible')===true) {
- content.hide();
- summary.show();
- $(linkObj).addClass('closed').removeClass('opened');
- $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
- } else {
- content.show();
- summary.hide();
- $(linkObj).removeClass('closed').addClass('opened');
- $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
- }
- return false;
-}
-
-function updateStripes()
-{
- $('table.directory tr').
- removeClass('even').filter(':visible:even').addClass('even');
-}
-
-function toggleLevel(level)
-{
- $('table.directory tr').each(function() {
- var l = this.id.split('_').length-1;
- var i = $('#img'+this.id.substring(3));
- var a = $('#arr'+this.id.substring(3));
- if (l
-
-
-
-
-
-
-Leonetienne/Eule: File List
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all files with brief descriptions:
-
-
-
-
-
diff --git a/Doxygen/build/folderclosed.png b/Doxygen/build/folderclosed.png
deleted file mode 100644
index bb8ab35..0000000
Binary files a/Doxygen/build/folderclosed.png and /dev/null differ
diff --git a/Doxygen/build/folderopen.png b/Doxygen/build/folderopen.png
deleted file mode 100644
index d6c7f67..0000000
Binary files a/Doxygen/build/folderopen.png and /dev/null differ
diff --git a/Doxygen/build/functions.html b/Doxygen/build/functions.html
deleted file mode 100644
index 821e6b7..0000000
--- a/Doxygen/build/functions.html
+++ /dev/null
@@ -1,96 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- a -
-
-
-
-
-
diff --git a/Doxygen/build/functions_b.html b/Doxygen/build/functions_b.html
deleted file mode 100644
index e38d684..0000000
--- a/Doxygen/build/functions_b.html
+++ /dev/null
@@ -1,97 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- b -
-
-
-
-
-
diff --git a/Doxygen/build/functions_c.html b/Doxygen/build/functions_c.html
deleted file mode 100644
index ed653b3..0000000
--- a/Doxygen/build/functions_c.html
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- c -
-
-
-
-
-
diff --git a/Doxygen/build/functions_d.html b/Doxygen/build/functions_d.html
deleted file mode 100644
index 17770ab..0000000
--- a/Doxygen/build/functions_d.html
+++ /dev/null
@@ -1,102 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- d -
-
-
-
-
-
diff --git a/Doxygen/build/functions_e.html b/Doxygen/build/functions_e.html
deleted file mode 100644
index 665980c..0000000
--- a/Doxygen/build/functions_e.html
+++ /dev/null
@@ -1,87 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- e -
-
-
-
-
-
diff --git a/Doxygen/build/functions_f.html b/Doxygen/build/functions_f.html
deleted file mode 100644
index e5c43d9..0000000
--- a/Doxygen/build/functions_f.html
+++ /dev/null
@@ -1,97 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- f -
-
-
-
-
-
diff --git a/Doxygen/build/functions_func.html b/Doxygen/build/functions_func.html
deleted file mode 100644
index a46a85a..0000000
--- a/Doxygen/build/functions_func.html
+++ /dev/null
@@ -1,431 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members - Functions
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- a -
-
-
-
- c -
-
-
-
- d -
-
-
-
- g -
-
-
-
- i -
-
-
-
- l -
-
-
-
- m -
-
-
-
- n -
-
-
-
- o -
-operator Vector2< T >()
-: Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator Vector3< T >()
-: Eule::Vector2< T >
-, Eule::Vector4< T >
-
-operator Vector4< T >()
-: Eule::Vector2< T >
-, Eule::Vector3< T >
-
-operator!=()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator*()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator*=()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator+()
-: Eule::Matrix4x4
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator+=()
-: Eule::Matrix4x4
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator-()
-: Eule::Matrix4x4
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator-=()
-: Eule::Matrix4x4
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator/()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator/=()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator=()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::TrapazoidalPrismCollider
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator==()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator[]()
-: Eule::Matrix4x4
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-Oscillate()
-: Eule::Math
-
-
-
-
-
- q -
-
-
-
- r -
-
-
-
- s -
-
-
-
- t -
-
-
-
- u -
-
-
-
- v -
-
-
-
- ~ -
-
-
-
-
-
diff --git a/Doxygen/build/functions_g.html b/Doxygen/build/functions_g.html
deleted file mode 100644
index cfc3f75..0000000
--- a/Doxygen/build/functions_g.html
+++ /dev/null
@@ -1,99 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- g -
-
-
-
-
-
diff --git a/Doxygen/build/functions_h.html b/Doxygen/build/functions_h.html
deleted file mode 100644
index eaa1dd6..0000000
--- a/Doxygen/build/functions_h.html
+++ /dev/null
@@ -1,87 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- h -
-
-
-
-
-
diff --git a/Doxygen/build/functions_i.html b/Doxygen/build/functions_i.html
deleted file mode 100644
index 482522d..0000000
--- a/Doxygen/build/functions_i.html
+++ /dev/null
@@ -1,102 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- i -
-
-
-
-
-
diff --git a/Doxygen/build/functions_j.html b/Doxygen/build/functions_j.html
deleted file mode 100644
index e47055f..0000000
--- a/Doxygen/build/functions_j.html
+++ /dev/null
@@ -1,87 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- j -
-
-
-
-
-
diff --git a/Doxygen/build/functions_k.html b/Doxygen/build/functions_k.html
deleted file mode 100644
index bc47234..0000000
--- a/Doxygen/build/functions_k.html
+++ /dev/null
@@ -1,87 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- k -
-
-
-
-
-
diff --git a/Doxygen/build/functions_l.html b/Doxygen/build/functions_l.html
deleted file mode 100644
index 6501fad..0000000
--- a/Doxygen/build/functions_l.html
+++ /dev/null
@@ -1,107 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- l -
-
-
-
-
-
diff --git a/Doxygen/build/functions_m.html b/Doxygen/build/functions_m.html
deleted file mode 100644
index 450f633..0000000
--- a/Doxygen/build/functions_m.html
+++ /dev/null
@@ -1,107 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- m -
-
-
-
-
-
diff --git a/Doxygen/build/functions_n.html b/Doxygen/build/functions_n.html
deleted file mode 100644
index 4fcb9ff..0000000
--- a/Doxygen/build/functions_n.html
+++ /dev/null
@@ -1,97 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- n -
-
-
-
-
-
diff --git a/Doxygen/build/functions_o.html b/Doxygen/build/functions_o.html
deleted file mode 100644
index a357b01..0000000
--- a/Doxygen/build/functions_o.html
+++ /dev/null
@@ -1,194 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- o -
-o
-: Eule::Matrix4x4
-
-one
-: Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator Vector2< T >()
-: Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator Vector3< T >()
-: Eule::Vector2< T >
-, Eule::Vector4< T >
-
-operator Vector4< T >()
-: Eule::Vector2< T >
-, Eule::Vector3< T >
-
-operator!=()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator*()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator*=()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator+()
-: Eule::Matrix4x4
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator+=()
-: Eule::Matrix4x4
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator-()
-: Eule::Matrix4x4
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator-=()
-: Eule::Matrix4x4
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator/()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator/=()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator<<
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator=()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::TrapazoidalPrismCollider
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator==()
-: Eule::Matrix4x4
-, Eule::Quaternion
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-operator[]()
-: Eule::Matrix4x4
-, Eule::Vector2< T >
-, Eule::Vector3< T >
-, Eule::Vector4< T >
-
-Oscillate()
-: Eule::Math
-
-
-
-
-
-
-
diff --git a/Doxygen/build/functions_p.html b/Doxygen/build/functions_p.html
deleted file mode 100644
index 3163e10..0000000
--- a/Doxygen/build/functions_p.html
+++ /dev/null
@@ -1,93 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- p -
-
-
-
-
-
diff --git a/Doxygen/build/functions_q.html b/Doxygen/build/functions_q.html
deleted file mode 100644
index e4d9639..0000000
--- a/Doxygen/build/functions_q.html
+++ /dev/null
@@ -1,87 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- q -
-
-
-
-
-
diff --git a/Doxygen/build/functions_r.html b/Doxygen/build/functions_r.html
deleted file mode 100644
index 1a04069..0000000
--- a/Doxygen/build/functions_r.html
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- r -
-
-
-
-
-
diff --git a/Doxygen/build/functions_rela.html b/Doxygen/build/functions_rela.html
deleted file mode 100644
index 0320f03..0000000
--- a/Doxygen/build/functions_rela.html
+++ /dev/null
@@ -1,89 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members - Related Functions
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/functions_s.html b/Doxygen/build/functions_s.html
deleted file mode 100644
index 9b9a136..0000000
--- a/Doxygen/build/functions_s.html
+++ /dev/null
@@ -1,108 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- s -
-
-
-
-
-
diff --git a/Doxygen/build/functions_t.html b/Doxygen/build/functions_t.html
deleted file mode 100644
index 9a47775..0000000
--- a/Doxygen/build/functions_t.html
+++ /dev/null
@@ -1,112 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- t -
-
-
-
-
-
diff --git a/Doxygen/build/functions_u.html b/Doxygen/build/functions_u.html
deleted file mode 100644
index 5be3c63..0000000
--- a/Doxygen/build/functions_u.html
+++ /dev/null
@@ -1,92 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- u -
-
-
-
-
-
diff --git a/Doxygen/build/functions_v.html b/Doxygen/build/functions_v.html
deleted file mode 100644
index bafb2bc..0000000
--- a/Doxygen/build/functions_v.html
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- v -
-
-
-
-
-
diff --git a/Doxygen/build/functions_vars.html b/Doxygen/build/functions_vars.html
deleted file mode 100644
index 81acb1f..0000000
--- a/Doxygen/build/functions_vars.html
+++ /dev/null
@@ -1,316 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members - Variables
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- a -
-
-
-
- b -
-
-
-
- c -
-
-
-
- d -
-
-
-
- e -
-
-
-
- f -
-
-
-
- g -
-
-
-
- h -
-
-
-
- i -
-
-
-
- j -
-
-
-
- k -
-
-
-
- l -
-
-
-
- m -
-
-
-
- n -
-
-
-
- o -
-
-
-
- p -
-
-
-
- r -
-
-
-
- s -
-
-
-
- t -
-
-
-
- u -
-
-
-
- v -
-
-
-
- w -
-
-
-
- x -
-
-
-
- y -
-
-
-
- z -
-
-
-
-
-
diff --git a/Doxygen/build/functions_w.html b/Doxygen/build/functions_w.html
deleted file mode 100644
index 412d149..0000000
--- a/Doxygen/build/functions_w.html
+++ /dev/null
@@ -1,87 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- w -
-
-
-
-
-
diff --git a/Doxygen/build/functions_x.html b/Doxygen/build/functions_x.html
deleted file mode 100644
index 2226f3e..0000000
--- a/Doxygen/build/functions_x.html
+++ /dev/null
@@ -1,89 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- x -
-
-
-
-
-
diff --git a/Doxygen/build/functions_y.html b/Doxygen/build/functions_y.html
deleted file mode 100644
index e19f72a..0000000
--- a/Doxygen/build/functions_y.html
+++ /dev/null
@@ -1,89 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- y -
-
-
-
-
-
diff --git a/Doxygen/build/functions_z.html b/Doxygen/build/functions_z.html
deleted file mode 100644
index b398b37..0000000
--- a/Doxygen/build/functions_z.html
+++ /dev/null
@@ -1,93 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- z -
-
-
-
-
-
diff --git a/Doxygen/build/functions_~.html b/Doxygen/build/functions_~.html
deleted file mode 100644
index 09ac5b6..0000000
--- a/Doxygen/build/functions_~.html
+++ /dev/null
@@ -1,87 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all class members with links to the classes they belong to:
-
-
- ~ -
-
-
-
-
-
diff --git a/Doxygen/build/globals.html b/Doxygen/build/globals.html
deleted file mode 100644
index d461301..0000000
--- a/Doxygen/build/globals.html
+++ /dev/null
@@ -1,97 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: File Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Here is a list of all file members with links to the files they belong to:
-
-
-
-
-
diff --git a/Doxygen/build/globals_defs.html b/Doxygen/build/globals_defs.html
deleted file mode 100644
index 8504d3b..0000000
--- a/Doxygen/build/globals_defs.html
+++ /dev/null
@@ -1,85 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: File Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-MAKE_SURE_RNG_IS_INITIALIZED
-: Math.cpp
-
-
-
-
-
-
-
diff --git a/Doxygen/build/globals_vars.html b/Doxygen/build/globals_vars.html
deleted file mode 100644
index 7737e7c..0000000
--- a/Doxygen/build/globals_vars.html
+++ /dev/null
@@ -1,94 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: File Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/graph_legend.html b/Doxygen/build/graph_legend.html
deleted file mode 100644
index ef5c1f3..0000000
--- a/Doxygen/build/graph_legend.html
+++ /dev/null
@@ -1,144 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Graph Legend
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
This page explains how to interpret the graphs that are generated by doxygen.
-
Consider the following example:
-
class Invisible { };
-
-
-
class Truncated : public Invisible { };
-
-
-
class Undocumented { };
-
-
-
class PublicBase : public Truncated { };
-
-
-
template <class T> class Templ { };
-
-
-
class ProtectedBase { };
-
-
-
class PrivateBase { };
-
-
-
class Used { };
-
-
-
class Inherited : public PublicBase,
-
protected ProtectedBase,
-
private PrivateBase,
-
public Undocumented,
-
public Templ<int>
-
{
-
private :
-
Used *m_usedClass;
-
};
-
This will result in the following graph:
-
The boxes in the above graph have the following meaning:
-
-
-A filled gray box represents the struct or class for which the graph is generated.
-
-A box with a black border denotes a documented struct or class.
-
-A box with a gray border denotes an undocumented struct or class.
-
-A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.
-
-
The arrows have the following meaning:
-
-
-A dark blue arrow is used to visualize a public inheritance relation between two classes.
-
-A dark green arrow is used for protected inheritance.
-
-A dark red arrow is used for private inheritance.
-
-A purple dashed arrow is used if a class is contained or used by another class. The arrow is labelled with the variable(s) through which the pointed class or struct is accessible.
-
-A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labelled with the template parameters of the instance.
-
-
-
-
-
-
diff --git a/Doxygen/build/graph_legend.md5 b/Doxygen/build/graph_legend.md5
deleted file mode 100644
index 8fcdccd..0000000
--- a/Doxygen/build/graph_legend.md5
+++ /dev/null
@@ -1 +0,0 @@
-f51bf6e9a10430aafef59831b08dcbfe
\ No newline at end of file
diff --git a/Doxygen/build/graph_legend.png b/Doxygen/build/graph_legend.png
deleted file mode 100644
index 7e2cbcf..0000000
Binary files a/Doxygen/build/graph_legend.png and /dev/null differ
diff --git a/Doxygen/build/hierarchy.html b/Doxygen/build/hierarchy.html
deleted file mode 100644
index 1d49d37..0000000
--- a/Doxygen/build/hierarchy.html
+++ /dev/null
@@ -1,102 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Hierarchy
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Go to the graphical class hierarchy
-This inheritance list is sorted roughly, but not completely, alphabetically:
-
-
-
-
-
diff --git a/Doxygen/build/index.html b/Doxygen/build/index.html
deleted file mode 100644
index e285b9b..0000000
--- a/Doxygen/build/index.html
+++ /dev/null
@@ -1,84 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Main Page
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/inherit_graph_0.map b/Doxygen/build/inherit_graph_0.map
deleted file mode 100644
index 40c0fac..0000000
--- a/Doxygen/build/inherit_graph_0.map
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
diff --git a/Doxygen/build/inherit_graph_0.md5 b/Doxygen/build/inherit_graph_0.md5
deleted file mode 100644
index 92d61c3..0000000
--- a/Doxygen/build/inherit_graph_0.md5
+++ /dev/null
@@ -1 +0,0 @@
-faecc536e16ff6fdde92040a1b4025d5
\ No newline at end of file
diff --git a/Doxygen/build/inherit_graph_0.png b/Doxygen/build/inherit_graph_0.png
deleted file mode 100644
index 3d3407f..0000000
Binary files a/Doxygen/build/inherit_graph_0.png and /dev/null differ
diff --git a/Doxygen/build/inherit_graph_1.map b/Doxygen/build/inherit_graph_1.map
deleted file mode 100644
index 510e898..0000000
--- a/Doxygen/build/inherit_graph_1.map
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/Doxygen/build/inherit_graph_1.md5 b/Doxygen/build/inherit_graph_1.md5
deleted file mode 100644
index 2074742..0000000
--- a/Doxygen/build/inherit_graph_1.md5
+++ /dev/null
@@ -1 +0,0 @@
-02a8e24e44839d466af4e3c27a008a2d
\ No newline at end of file
diff --git a/Doxygen/build/inherit_graph_1.png b/Doxygen/build/inherit_graph_1.png
deleted file mode 100644
index 0c7dd1a..0000000
Binary files a/Doxygen/build/inherit_graph_1.png and /dev/null differ
diff --git a/Doxygen/build/inherit_graph_10.map b/Doxygen/build/inherit_graph_10.map
deleted file mode 100644
index 30fc0c2..0000000
--- a/Doxygen/build/inherit_graph_10.map
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/Doxygen/build/inherit_graph_10.md5 b/Doxygen/build/inherit_graph_10.md5
deleted file mode 100644
index daa19f2..0000000
--- a/Doxygen/build/inherit_graph_10.md5
+++ /dev/null
@@ -1 +0,0 @@
-7155a82293b3a5bd041fc17368c37b0b
\ No newline at end of file
diff --git a/Doxygen/build/inherit_graph_10.png b/Doxygen/build/inherit_graph_10.png
deleted file mode 100644
index dac0139..0000000
Binary files a/Doxygen/build/inherit_graph_10.png and /dev/null differ
diff --git a/Doxygen/build/inherit_graph_2.map b/Doxygen/build/inherit_graph_2.map
deleted file mode 100644
index 0c0c201..0000000
--- a/Doxygen/build/inherit_graph_2.map
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/Doxygen/build/inherit_graph_2.md5 b/Doxygen/build/inherit_graph_2.md5
deleted file mode 100644
index 81fa185..0000000
--- a/Doxygen/build/inherit_graph_2.md5
+++ /dev/null
@@ -1 +0,0 @@
-da8ec51f432ceed38d2a3ba830433862
\ No newline at end of file
diff --git a/Doxygen/build/inherit_graph_2.png b/Doxygen/build/inherit_graph_2.png
deleted file mode 100644
index b5f1e4c..0000000
Binary files a/Doxygen/build/inherit_graph_2.png and /dev/null differ
diff --git a/Doxygen/build/inherit_graph_3.map b/Doxygen/build/inherit_graph_3.map
deleted file mode 100644
index 00d562a..0000000
--- a/Doxygen/build/inherit_graph_3.map
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/Doxygen/build/inherit_graph_3.md5 b/Doxygen/build/inherit_graph_3.md5
deleted file mode 100644
index e78feaa..0000000
--- a/Doxygen/build/inherit_graph_3.md5
+++ /dev/null
@@ -1 +0,0 @@
-d1f60b83f5f2b808ebacc2a8461bbcf1
\ No newline at end of file
diff --git a/Doxygen/build/inherit_graph_3.png b/Doxygen/build/inherit_graph_3.png
deleted file mode 100644
index 98925f5..0000000
Binary files a/Doxygen/build/inherit_graph_3.png and /dev/null differ
diff --git a/Doxygen/build/inherit_graph_4.map b/Doxygen/build/inherit_graph_4.map
deleted file mode 100644
index bc2ad07..0000000
--- a/Doxygen/build/inherit_graph_4.map
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/Doxygen/build/inherit_graph_4.md5 b/Doxygen/build/inherit_graph_4.md5
deleted file mode 100644
index c38e462..0000000
--- a/Doxygen/build/inherit_graph_4.md5
+++ /dev/null
@@ -1 +0,0 @@
-b877581d0cf44caf9f55600648999181
\ No newline at end of file
diff --git a/Doxygen/build/inherit_graph_4.png b/Doxygen/build/inherit_graph_4.png
deleted file mode 100644
index b4259b1..0000000
Binary files a/Doxygen/build/inherit_graph_4.png and /dev/null differ
diff --git a/Doxygen/build/inherit_graph_5.map b/Doxygen/build/inherit_graph_5.map
deleted file mode 100644
index 023aec9..0000000
--- a/Doxygen/build/inherit_graph_5.map
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/Doxygen/build/inherit_graph_5.md5 b/Doxygen/build/inherit_graph_5.md5
deleted file mode 100644
index 2a70403..0000000
--- a/Doxygen/build/inherit_graph_5.md5
+++ /dev/null
@@ -1 +0,0 @@
-0c13f6ce1f78441ee21cf9d1c45e1908
\ No newline at end of file
diff --git a/Doxygen/build/inherit_graph_5.png b/Doxygen/build/inherit_graph_5.png
deleted file mode 100644
index d5c92c8..0000000
Binary files a/Doxygen/build/inherit_graph_5.png and /dev/null differ
diff --git a/Doxygen/build/inherit_graph_6.map b/Doxygen/build/inherit_graph_6.map
deleted file mode 100644
index 68566a6..0000000
--- a/Doxygen/build/inherit_graph_6.map
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/Doxygen/build/inherit_graph_6.md5 b/Doxygen/build/inherit_graph_6.md5
deleted file mode 100644
index bcc4c49..0000000
--- a/Doxygen/build/inherit_graph_6.md5
+++ /dev/null
@@ -1 +0,0 @@
-d94d4c448319ade5856fe16313cdaf90
\ No newline at end of file
diff --git a/Doxygen/build/inherit_graph_6.png b/Doxygen/build/inherit_graph_6.png
deleted file mode 100644
index 432d70c..0000000
Binary files a/Doxygen/build/inherit_graph_6.png and /dev/null differ
diff --git a/Doxygen/build/inherit_graph_7.map b/Doxygen/build/inherit_graph_7.map
deleted file mode 100644
index 1b6f392..0000000
--- a/Doxygen/build/inherit_graph_7.map
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/Doxygen/build/inherit_graph_7.md5 b/Doxygen/build/inherit_graph_7.md5
deleted file mode 100644
index 68acb99..0000000
--- a/Doxygen/build/inherit_graph_7.md5
+++ /dev/null
@@ -1 +0,0 @@
-6ba22a43115dfe6a9765ea4069b86b04
\ No newline at end of file
diff --git a/Doxygen/build/inherit_graph_7.png b/Doxygen/build/inherit_graph_7.png
deleted file mode 100644
index f6283ce..0000000
Binary files a/Doxygen/build/inherit_graph_7.png and /dev/null differ
diff --git a/Doxygen/build/inherit_graph_8.map b/Doxygen/build/inherit_graph_8.map
deleted file mode 100644
index 46bb199..0000000
--- a/Doxygen/build/inherit_graph_8.map
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/Doxygen/build/inherit_graph_8.md5 b/Doxygen/build/inherit_graph_8.md5
deleted file mode 100644
index 1f180c8..0000000
--- a/Doxygen/build/inherit_graph_8.md5
+++ /dev/null
@@ -1 +0,0 @@
-519b7766a67ae2440b4386b052cd2b9d
\ No newline at end of file
diff --git a/Doxygen/build/inherit_graph_8.png b/Doxygen/build/inherit_graph_8.png
deleted file mode 100644
index 1b5d9a6..0000000
Binary files a/Doxygen/build/inherit_graph_8.png and /dev/null differ
diff --git a/Doxygen/build/inherit_graph_9.map b/Doxygen/build/inherit_graph_9.map
deleted file mode 100644
index 640de15..0000000
--- a/Doxygen/build/inherit_graph_9.map
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/Doxygen/build/inherit_graph_9.md5 b/Doxygen/build/inherit_graph_9.md5
deleted file mode 100644
index 8dcd915..0000000
--- a/Doxygen/build/inherit_graph_9.md5
+++ /dev/null
@@ -1 +0,0 @@
-432c836055c60e0a7148cd35fe49ed41
\ No newline at end of file
diff --git a/Doxygen/build/inherit_graph_9.png b/Doxygen/build/inherit_graph_9.png
deleted file mode 100644
index a0707c5..0000000
Binary files a/Doxygen/build/inherit_graph_9.png and /dev/null differ
diff --git a/Doxygen/build/inherits.html b/Doxygen/build/inherits.html
deleted file mode 100644
index a17584d..0000000
--- a/Doxygen/build/inherits.html
+++ /dev/null
@@ -1,144 +0,0 @@
-
-
-
-
-
-
-
-Leonetienne/Eule: Class Hierarchy
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Doxygen/build/jquery.js b/Doxygen/build/jquery.js
deleted file mode 100644
index 103c32d..0000000
--- a/Doxygen/build/jquery.js
+++ /dev/null
@@ -1,35 +0,0 @@
-/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */
-!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML=" ",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML=" ";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""," "],thead:[1,""],col:[2,""],tr:[2,""],td:[3,""],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Leonetienne/Eule
-
- Homemade math library, mainly targetted towards computer graphics
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
◆ Vector2d
-
-
-
-
◆ Vector2i
-
-
-
-
◆ Vector3d
-
-
-
-
◆ Vector3i
-
-
-
-
◆ Vector4d
-
-
-
-
◆ Vector4i
-
-
-
-
-
◆ operator<<() [1/4]
-
-
-
-
-
- std::ostream& Eule::operator<<
- (
- std::ostream &
- os ,
-
-
-
-
- const Matrix4x4 &
- m
-
-
-
- )
-
-
-
-
-
-
Definition at line 620 of file Matrix4x4.cpp .
-
-
-
-
624 for (std::size_t y = 0; y < 4; y++)
-
-
626 for (std::size_t x = 0; x < 4; x++)
-
627 os <<
" | " << m[y][x];
-
-
629 os <<
" |" << std::endl;
-
-
-
-
-
-
-
-
-
◆ operator<<() [2/4]
-
-
-
-
-
- std::ostream& Eule::operator<<
- (
- std::ostream &
- os ,
-
-
-
-
- const Quaternion &
- q
-
-
-
- )
-
-
-
-
-
-
Definition at line 325 of file Quaternion.cpp .
-
-
327 os <<
"[" << q.v <<
"]" ;
-
-
-
-
-
-
-
◆ operator<<() [3/4]
-
-
-
-
-
- std::wostream& Eule::operator<<
- (
- std::wostream &
- os ,
-
-
-
-
- const Matrix4x4 &
- m
-
-
-
- )
-
-
-
-
-
-
Definition at line 635 of file Matrix4x4.cpp .
-
-
-
-
639 for (std::size_t y = 0; y < 4; y++)
-
-
641 for (std::size_t x = 0; x < 4; x++)
-
642 os << L
" | " << m[y][x];
-
-
644 os << L
" |" << std::endl;
-
-
-
-
-
-
-
-
-
◆ operator<<() [4/4]
-
-
-
-
-
- std::wostream& Eule::operator<<
- (
- std::wostream &
- os ,
-
-
-
-
- const Quaternion &
- q
-
-
-
- )
-
-
-
-
-
-
Definition at line 331 of file Quaternion.cpp .
-
-
333 os << L
"[" << q.v << L
"]" ;
-
-
-
-
-
-
-
-
-
-