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
Vladimír Vondruš
b59b8d431e
Math: make Bezier::subdivide() return a pair and test it.
10 years ago
Vladimír Vondruš
8f7fa196a8
Math: renamed Bezier::lerp() to Bezier::value(), simplified test cases.
...
It's interpolation, but *not* linear interpolation, so don't confuse
with the naming. The test cases now compare to ground truth instead of
replicating the calculation.
10 years ago
Vladimír Vondruš
aaa0b0945a
Math: ability to convert Bezier underlying type.
10 years ago
Vladimír Vondruš
73ca103e1a
Math: proper implementation for NoInit and ZeroInit Bezier constructor.
10 years ago
Vladimír Vondruš
4950023f5e
Math: assert that Bezier has non-zero order.
10 years ago
Vladimír Vondruš
6f6d69012f
Math: added comparison operators to Bezier, expanded the test.
10 years ago
Vladimír Vondruš
12e19eff37
Math: ability to save/restore Bezier to/from Configuration.
10 years ago
Vladimír Vondruš
719aff99b2
Math: debug operator for Bezier.
10 years ago
Vladimír Vondruš
62214a288c
Add Bezier typedefs to the root Magnum.h header.
10 years ago
Vladimír Vondruš
4af823a674
Math: add the Bezier class and aliases to the forward declaration header.
10 years ago
Vladimír Vondruš
8bf1f5e5d8
Math: Minor Bézier cleanup and documentation improvements.
...
Removed the points() access function, as it has no real value.
10 years ago
Ashwin Ravichandran
6b7097497f
Math: added Bezier curve
10 years ago
Vladimír Vondruš
737e92bc3e
Math: remove unnecessary assignment operators.
...
Caused problems when specifying `noexcept` in classes with members from
Math namespace.
10 years ago
Vladimír Vondruš
ac1cda6334
Math: simplify Constants test by making it templated.
10 years ago
Vladimír Vondruš
96e57ff876
Math: simplify the SVD test code by making it templated.
10 years ago
Vladimír Vondruš
bf393fad59
Math: fix/workaround constexpr test compilation on MSVC 2015.
10 years ago
Vladimír Vondruš
951f116f5b
Math: added RectangularMatrix::flipped{Cols,Rows}().
10 years ago
Vladimír Vondruš
633d792e3d
Math: added Vector::flipped().
10 years ago
Vladimír Vondruš
ab6ffe68ee
Math: Added Algorithms::qr().
10 years ago
Vladimír Vondruš
eaeda24399
Don't restrict Double usage on OpenGL ES.
...
Restrict only what's not defined by GL on the ES flavor (double
attributes and uniforms). I love the smell of burning code.
10 years ago
Vladimír Vondruš
288a1f265c
Math: this shouldn't have been here.
...
Fixes test failures on *all* platforms. Ha!
10 years ago