Vladimír Vondruš
cfc622c92c
Math: explicitly instantiate commonly used Range debug operators.
...
Might save some executable bloat. Not sure why this wasn't done already.
10 years ago
Vladimír Vondruš
32f357752f
Math: the world is not just about OpenGL.
10 years ago
Vladimír Vondruš
605b34079e
Added typedefs and forward declaration for Math::Frustum.
10 years ago
Vladimír Vondruš
b7eb367dde
Math: cleanup, code compression.
10 years ago
Vladimír Vondruš
7bc1d9f129
Update credits.
10 years ago
Squareys
1f995d1ab2
Math: Add Distance::pointPlane* and two frustum intersection functions
...
`Intersection::pointFrustum` and `Intersection::boxFrustum`
Signed-off-by: Squareys <Squareys@googlemail.com>
10 years ago
Squareys
0062fbf78e
Math: Add rudimentary Frustum class
...
Signed-off-by: Squareys <Squareys@googlemail.com>
10 years ago
Vladimír Vondruš
1a077391ce
Math: expect failure in Double SVD test on recent Emscripten versions.
...
Something got broken (1.36.13, 14). Was working fine with 1.36.5.
10 years ago
Vladimír Vondruš
37565d5414
Math: print 8-bit colors as hex in Debug.
...
So #ffffff00 instead of Vector(255, 255, 255, 0). Much shorter with the
same information value.
10 years ago
Vladimír Vondruš
1fdd532910
Math: return proper subclass from Matrix::transposed().
10 years ago
Vladimír Vondruš
930018c2ad
Math: doc++
10 years ago
Vladimír Vondruš
5fcdd48808
Math: clarify what Matrix4::lookAt() does.
10 years ago
Vladimír Vondruš
69dfc39f30
Math: don't compare const char* as pointers in test by accident.
10 years ago
Vladimír Vondruš
210949f2dd
Math: long double is the same as double also on Android.
10 years ago
Vladimír Vondruš
c47f8e04e3
Math: test for size of long double.
...
In order to have predictable results in the tests.
10 years ago
Vladimír Vondruš
60b56b0999
Math: no need for that GCC type deduction workaround anymore.
10 years ago
Vladimír Vondruš
a2c8435ede
Use new TestSuite numeric comparators where appropriate.
10 years ago
Vladimír Vondruš
cf185b00fa
Math: add explicit boolean conversion to BoolVector.
10 years ago
Vladimír Vondruš
5c7b1a0eb2
Math: simplify Matrix4::lookAt().
10 years ago
Vladimír Vondruš
6422a27b46
Math: improve Matrix4::lookAt() test.
...
It now verifies all assumptions about how the resulting matrix should
look like.
10 years ago
Vladimír Vondruš
56e75295be
Math: mention more useful dot product and determinant properties.
10 years ago
Vladimír Vondruš
e9a2623e02
Math: expect NoInit test failures on GCC 6.1+ with optimizations enabled.
...
It's nothing harmful, just inefficient.
10 years ago
Vladimír Vondruš
a3bcae928b
Doc++
10 years ago
Vladimír Vondruš
a2e3c3a3f4
Math: added Algorithms::gaussJordanInverted().
10 years ago
Vladimír Vondruš
3764f5b830
Math: don't zero-initialize output variables if not necessary.
...
Could possibly save some cycles.
10 years ago
Vladimír Vondruš
87074202c8
Math: support infinite far plane in Matrix::perspectiveProjection().
10 years ago
Vladimír Vondruš
9fdf467c59
Math: added *Matrix::setRow().
...
Row equivalent for the mutable operator[]().
10 years ago
Vladimír Vondruš
98735f50f4
Math: document the math behind 2D/3D matrix transformations.
10 years ago
Vladimír Vondruš
2e91bb4372
Math: work around MSVC constexpr issues yet again.
10 years ago
Vladimír Vondruš
b033af3b59
Math: ability to convert Color from/to external representation.
10 years ago
Vladimír Vondruš
a73e447545
Doxygen warning cleanup.
10 years ago
Vladimír Vondruš
4a395ac490
Math: enlarge epsilon value for long doubles on MSVC.
...
They are internally treated as 64-bit doubles, so there's no difference.
10 years ago
Vladimír Vondruš
cadd28276a
Math: conditionally include <algorithm> for std::max() in MSVC.
...
Don't want to include it for every platform, as it is pretty huge...
10 years ago
Vladimír Vondruš
5ddc877a1d
Math: consider magnitude of translation in DualQuaternion::isNormalized().
...
Fixes the failing tests.
10 years ago
Vladimír Vondruš
aef580ec62
Math: test iterative normalization of Complex/Quaternion transformations.
...
If the values are renormalized after every step, it shouldn't happen
that the value is denormalized even after calling `normalized()`.
The test fails for DualQuaternion with large values, as expected. Will
be fixed in the next commit.
10 years ago
Vladimír Vondruš
1dc1fc79b0
Math: better test cases for {*Complex,Quaternion}::isNormalized().
...
The expectation is that the values are considered normalized only if the
difference is small enough. This should have been tested since the
beginning, but instead this was waved away with a dumb test case testing
obviously denormalized value and obviously normalized value.
The test fails for DualQuaternion with large translation values (as
expected). Will be fixed in following commits.
10 years ago
Vladimír Vondruš
74c75998b0
Math: added TypeTraits::equalsZero().
10 years ago
Vladimír Vondruš
3c17a53fb3
Math: test also long double versions of TypeTraits.
10 years ago
Vladimír Vondruš
70ebf82992
Math: updated fuzzy comparison epsilon values for long double and double.
...
To be consistent with what's for floats. Maybe I'll need to decrease the
precision later again, but at least this has now some real background
instead of being a guesstimate.
10 years ago
Vladimír Vondruš
9ade2cae47
Math: added TypeTraits::name(), using that in the test.
10 years ago
Vladimír Vondruš
48dfdc1da5
Math: properly test constructing Unit with ZeroInit tag.
10 years ago
Vladimír Vondruš
fa36cf648c
Math: document facts for older version of me.
...
I spent some minutes actually implementing that until I realized that
this would lead only to pain and misery.
10 years ago
Vladimír Vondruš
7bebbbb1ec
Math: minor cleanup.
10 years ago
Vladimír Vondruš
844bfcce5a
Math: ability to create Dual with ZeroInit tag.
...
It does slightly different things than the implicit constructor for some
types.
10 years ago
Vladimír Vondruš
40d60f6a3f
Math: make all constructor noexcept and test their behavior.
10 years ago
Vladimír Vondruš
60524e0367
Math: remove now redundant Color test case.
...
At some point before the default Color constructor was different from
the ZeroInit one. Not anymore.
10 years ago
Vladimír Vondruš
bac5ccd8e6
Math: improve Angle test to be consistent with the rest.
10 years ago
Vladimír Vondruš
42d9679ac0
Exclude unreachable code from code coverage.
10 years ago
Vladimír Vondruš
257800e6fa
Math: reordered Bezier members to saner order.
10 years ago
Vladimír Vondruš
1357186fe1
Math: MSVC 2015 is picky about constexpr again.
...
No clue.
10 years ago