Sergey Krivohatskiy
df7b5bda7c
axisAngle epsilon changed to work as expected on small angles
...
also small refactoring
also single epsilon is used
also passes new axisAngle tests now
Signed-off-by: Sergey Krivohatskiy <s.krivohatskiy@gmail.com>
2021-03-23 14:28:36 +03:00
Sergey Krivohatskiy
c9c656ce31
axisAngle refactoring
...
Signed-off-by: Sergey Krivohatskiy <s.krivohatskiy@gmail.com>
2021-03-23 14:27:00 +03:00
Sergey Krivohatskiy
acab24129d
Fixed axisAngle implementation
...
`acos` domain is in range [-1.0, 1.0]. Due to inaccuracies the value `angleCos` may be slightly outside that range for a correct matrix and `acos(angleCos)` produces `NaN` in that case.
The fix is we check `angleCos` value and return `acos(1)` for `angleCos > 1` and `acos(-1)` for `angleCos < -1`.
The original code checked only for `angleCos` close to `1.0` and returned an incorrect value for `acos(1)`, which is `0`, not `pi/4`.
2021-02-20 20:16:31 +03:00
Gottfried Leibniz
93e573f7b1
fix: axisAngle
...
invalid epsilon comparison
2020-09-22 00:35:07 -03:00
Christophe Riccio
78879c675c
Refactor headers
2018-08-05 15:22:49 +02:00
Groove
e1cddde7d5
Fixed VC2013 build
2018-07-24 20:15:08 +02:00
Christophe Riccio
faf1da52b7
Renamed P (for precision) template argument to Q (for qualifier)
2017-08-16 01:22:50 +02:00
Christophe Riccio
e76fca75a0
More consistent coding style
2017-08-15 22:04:24 +02:00
Christophe Riccio
a805fb9d68
Renamed precision enum to qualifier
2017-08-15 21:23:47 +02:00
Christophe Riccio
b138eed73b
Fixed warnings
2017-08-08 22:40:22 +02:00
Christophe Riccio
00e7908294
Fixed warnings
2017-08-07 14:56:45 +02:00
Magnus Bergsten
0ca6a44454
Fixed stray ')' that was breaking gtx/matrix_interpolation.
2017-07-01 02:51:31 +09:00
Christophe Riccio
26b3e3ed78
Fixed axisAngle NaN #638
2017-06-24 12:43:00 +02:00
Christophe Riccio
1318f942cf
Fixed build
2017-01-02 21:24:13 +01:00
Christophe Riccio
c2fe3fccf6
Use length_t instead of int for vec and mat lengths #584
2016-12-30 20:05:04 +01:00
Christophe Riccio
b92fdf5a59
matrix type Parameterize on dimensions #584
2016-12-30 16:00:25 +01:00
Christophe Riccio
947b07cbc4
remove template alias for more compiler support and simplified swizzle expression implementation #584
2016-12-30 01:23:29 +01:00
Christophe Riccio
b09f395cd2
Optimized GTX_matrix_interpolation axisAngle function
2016-11-20 23:39:22 +01:00
Christophe Riccio
316460408a
Simplify and more consistency for files headers
2016-05-23 22:55:49 +02:00
Christophe Riccio
fc8b4404f0
Fixed faceforward build #289
2014-12-19 23:54:25 +01:00
Christophe Riccio
3f48ffefb0
Updated license
2014-11-26 00:27:12 +01:00
Christophe Riccio
f9484a6e9f
- Moved template types from 'detail' to 'glm' namespace #239 , #244
2014-10-05 19:37:07 +02:00
Christophe Riccio
ccb25c84c7
Update copyright year
2014-01-04 22:32:28 +01:00
Christophe Riccio
b9266c07b0
Using C++ casts
2013-09-08 00:22:17 +02:00
Christophe Riccio
c14e2d7fbc
Added precision template parameter
2013-04-10 13:46:27 +02:00
Christophe Riccio
8ed5f541ff
Resolved issue #58
2013-03-16 01:24:29 +01:00
Christophe Riccio
2a4434786e
Updated date
2013-02-20 16:21:56 +01:00
Christophe Riccio
b1ecabdd28
Fixed GTX_matrix_interpolation, issue #9
2012-09-19 19:14:45 +02:00
Christophe Riccio
88d3927558
Updated copyright date
2012-01-09 11:20:01 +00:00
Christophe Riccio
8d843a448a
Vectorize and reformatting
2011-10-14 14:07:53 +01:00
Christophe Riccio
1f64b8b51f
Fixed axisAngle
2011-08-28 20:00:20 +01:00
Christophe Riccio
8eee19e183
Fixed merge
2011-08-28 19:56:58 +01:00
Christophe Riccio
9385876f51
Fixed ticket 120, M_1_PI undeclare in C++0x
2011-08-27 17:13:37 +01:00
Christophe Riccio
3621deaeb5
Removed gtc and gtx namespaces
2011-06-10 16:45:17 +01:00
Christophe Riccio
06cc480baa
Removed gtx extension namespace
2011-06-07 11:28:11 +01:00
Christophe Riccio
1c85dcefd4
Fixed GTX_matrix_interpolation warnings
2011-05-06 13:29:43 +01:00
Christophe Riccio
58053e5b89
Added GLM_GTX_matrix_interpolation extension
2011-05-06 13:24:05 +01:00