Vladimír Vondruš
5f049c50b8
Physics: using new type aliases in whole Physics namespace.
13 years ago
Vladimír Vondruš
4e5a6f76eb
SceneGraph: using new type aliases in whole SceneGraph namespace.
13 years ago
Vladimír Vondruš
003e524a26
Shaders: using new type aliases in whole Shaders namespace.
13 years ago
Vladimír Vondruš
32b783505f
MeshTools: using new type aliases in whole MeshTools namespace.
13 years ago
Vladimír Vondruš
e4f6a53185
Primitives: using new type aliases in whole Primitives namespace.
13 years ago
Vladimír Vondruš
7af5ff17b6
Trade: using new type aliases in whole Trade namespace.
13 years ago
Vladimír Vondruš
2d2d1c07f4
Using new type aliases in whole root Magnum namespace.
13 years ago
Vladimír Vondruš
6a90b0231b
Math: using new aliases for builtin types in whole Math namespace.
13 years ago
Vladimír Vondruš
6220f24f0b
Our own aliases for builtin types.
...
It seems like a bad idea, but it will:
* Improve portability, as `Int` will be always 32bit.
* Improve readability, as `std::int32_t` is just plain ugly and too
complicated to write.
* Improve consistency and reduce confusion, as it's not good to mix
`int`, `std::int32_t`, `GLint`, `khronos_int_t` and whatnot in one
codebase.
* Possibly reduce compilation time, because including all ~35k lines
worth of GL headers just for one GLfloat typedef is even worse than
now forbidden #include <iostream> in headers.
13 years ago
Vladimír Vondruš
792198ae89
Platform: undefine another conflicting macro.
13 years ago
Vladimír Vondruš
baeda307c1
Math: do Matrix::trace() using diagonal() and Vector::sum().
...
Use (future) SIMD optimizations in Vector::sum() instead of doing it all
over again.
13 years ago
Vladimír Vondruš
5ff0e29950
Math: fix warning about literal types in normalize().
...
C++11 changed type of character literal (i.e. '\x7F') from int to char,
thus the documentation is wrong (also mistakenly used octal literal).
Added test to properly test the behavior.
13 years ago
Vladimír Vondruš
8913e38432
Math: documented this whole transformation thingy.
13 years ago
Vladimír Vondruš
14460cf0f4
Math: renamed *::matrix() to ::toMatrix().
...
It better visualizes the fact that neither (Dual)Complex nor
(Dual)Quaternion contains the matrix inside them, but performs (possibly
costly) conversion.
13 years ago
Vladimír Vondruš
e8e8e67483
MeshTools: ability to call transformPoints*() also with DualComplex.
13 years ago
Vladimír Vondruš
e204dbc109
Brought DualComplex into Magnum namespace.
13 years ago
Vladimír Vondruš
a0af6856c7
Math: transforming points with DualComplex.
13 years ago
Vladimír Vondruš
268c07acc5
Math: converting DualComplex to matrix.
13 years ago
Vladimír Vondruš
8e562316e8
Math: creating DualComplex from Vector2.
13 years ago
Vladimír Vondruš
7aac5bd70b
Math: no need for Complex::transformVectorNormalized().
...
Unlike quaternions it doesn't need inversion or normalization for
transforming vectors.
13 years ago
Vladimír Vondruš
90f5a006c4
Math: reworked DualComplex to actually work.
...
The tests now pass and it works similarly to transformation matrix
multiplication/inversion in 2D, but it hasn't any connection to dual
numbers anymore.
13 years ago
Vladimír Vondruš
8ff9118275
Math: test DualComplex transformation combination.
...
Also fails.
13 years ago
Vladimír Vondruš
5e2f8db651
Math: test also that DualComplex transformations are normalized.
...
Fails for translation.
13 years ago
Vladimír Vondruš
c019dc7781
Math: test that transformation (dual) complex/quat is normalized.
13 years ago
Vladimír Vondruš
bdc02ddd19
Math: translation dual complex number.
13 years ago
Vladimír Vondruš
1a5e18564e
Math: rotation dual complex number.
13 years ago
Vladimír Vondruš
fbac6662fa
Math: inversion of DualComplex.
13 years ago
Vladimír Vondruš
d7bfd91398
Math: length and normalization of DualComplex.
13 years ago
Vladimír Vondruš
f6d1a158f8
Math: initial implementation of dual complex numbers.
13 years ago
Vladimír Vondruš
e522293c22
Math: forgot to test DualQuaternion::invertedNormalized().
13 years ago
Vladimír Vondruš
143783004b
Math: make Complex::invertedNormalized() consistent with Quaternion.
13 years ago
Vladimír Vondruš
d0fe15737a
Math: mark complex conjugate with asterisk, not overline.
...
Makes it consistent with quaternion conjugate and less confusing for
future DualComplex implementation (as dual conjugate is with overline
too).
13 years ago
Vladimír Vondruš
c847e1551f
Math: "dot product" of Complex is real number.
...
Brain failure #2 . Also I don't know if such thing as dot product exists
here :-)
13 years ago
Vladimír Vondruš
1eea843538
Math: don't allow implicit conversion of T to Complex<T>.
...
Brain failure #1 .
13 years ago
Vladimír Vondruš
6edc26ff01
Math: more explicit Quaternion-from-Vector constructor test.
...
For better readability, nothing more.
13 years ago
Vladimír Vondruš
6ed315b79b
Math: properly test constexpr in Complex from Vector2 constructor.
13 years ago
Vladimír Vondruš
e8e2b5d548
Math: constexpr internal DualQuaternion constructor.
13 years ago
Vladimír Vondruš
b0d79bbad8
Math: minor code cleanup.
13 years ago
Vladimír Vondruš
2468d2497f
Math: doc++
13 years ago
Vladimír Vondruš
fab0aa1544
Math: expect fail on non-uniform scaling in Matrix*::rotation().
...
Not implemented yet, added TODO.
13 years ago
Jakub Suchý
e432d3dc3c
Doc fix
13 years ago
Vladimír Vondruš
c00195c24b
MeshTools: reworked and updated transform*().
...
Also added just-to-be-sure unit test.
13 years ago
Vladimír Vondruš
b847eee750
Brought Complex and DualQuaternion to Magnum namespace.
13 years ago
Vladimír Vondruš
02235a5a49
Math: forgot to add Complex to forward-declaration header.
13 years ago
Vladimír Vondruš
d59b620fd9
Math: transforming vectors with complex numbers.
13 years ago
Vladimír Vondruš
93952cd72a
Math: converting Vector2 to Complex and back.
13 years ago
Vladimír Vondruš
8aade86571
Math: converting complex number to rotation matrix.
13 years ago
Vladimír Vondruš
e7ceddf0fc
Math: rotation complex number.
13 years ago
Vladimír Vondruš
4ebd204482
Math: angle between two complex numbers.
...
Also crosslinked the documentation with similar functions in Vector and
Quaternion.
13 years ago
Vladimír Vondruš
fc8750c51f
Math: conjugation and inversion of complex numbers.
...
Also updated related Quaternion and DualQuaternion documentation.
13 years ago