18915b6610
matrix: use infix_iterator for ostream operator
2016-08-15 20:56:10 +10:00
606a9c4eb8
coord/ops: use free functions for normalisations
2016-08-11 14:58:46 +10:00
bb6678726f
matrix: rename translate/rotate to translation/rotation
2016-08-10 17:42:19 +10:00
65bf7af24e
matrix: perspective construction takes a Z-range
2015-12-02 10:03:25 +11:00
a73fb9307c
matrix: extract size dependant operations
2015-11-04 23:23:46 +11:00
176b33604b
matrix: parameterise on dimension
2015-10-30 23:40:13 +11:00
c41b58b47d
matrix: avoid infinite recursion in invert
2015-09-09 18:45:23 +10:00
a4a93a1a72
matrix: add convenience homogenous point/vec mult
2015-07-21 01:41:48 +10:00
2658b41ea1
relicence under Apache-2.0
2015-04-13 18:05:28 +10:00
0211ed5b37
matrix: add 2d translate convenience function
2015-04-02 15:01:17 +11:00
58ac6e910e
matrix: use GLMs implementation of 4x4 inversion
2015-02-19 13:29:16 +11:00
70d752e5d0
matrix: prefer operators to functions
2015-02-19 13:29:16 +11:00
f97c932df7
matrix: add scalar multiply
2015-02-19 13:29:16 +11:00
52f53caee5
debug: drop support for CHECK_HARD
...
HARD vs SOFT assertions were never very well defined or supported.
Currently they just imply a level of functionality that isn't present;
it's better to remove them instead of expending the effort at this
point.
2015-01-28 14:49:34 +11:00
ca66f831f7
matrix: add scalar scaling matrix
2015-01-19 19:12:44 +11:00
0501d0a87a
matrix: change rotate args to match opengl order
2015-01-15 14:05:17 +11:00
7f152e5350
matrix: add matrix multiplication assignment
2015-01-13 18:41:51 +11:00
616f6f1db9
matrix: add point multiplication
2015-01-13 18:41:51 +11:00
f6aeef594e
matrix: remove to_{global/local}
...
functions were poorly specified
2015-01-13 18:41:51 +11:00
58fb2c942f
matrix: remove instance functions translate/scale
...
functions were untested and poorly specified
2015-01-13 18:41:51 +11:00
6069edd0de
matrix: add rotate implementation
2014-12-30 01:32:02 +11:00
ede1203ff7
matrix: add affine scale implementation
2014-12-16 15:28:40 +11:00
5956d0421e
parameterise point, vector, region, matrix on type
2014-12-15 20:10:56 +11:00
2fc9073901
matrix: add affine definitions and translate impl
2014-12-15 13:45:50 +11:00
d51caee0c7
matrix: add perspective matrices
2014-12-15 13:45:50 +11:00
dcdbbe938d
matrix: add scalar multiply
2014-12-15 13:45:50 +11:00
82f318c8ad
matrix: more readable temps for matrix mul
2014-12-15 13:43:22 +11:00
253be704cb
matrix: add transpose functions
2014-12-15 13:42:44 +11:00
ea5f90dbf2
matrix: move ostream operator into util namespace
2014-08-19 20:46:15 +10:00
22dcf46c61
matrix: add various scalar operators
2014-08-19 20:46:00 +10:00
3ab2e8ed57
matrix: add analytical 4x4 inverse
2014-08-19 20:45:28 +10:00
f6894fabc8
whitespace
2014-08-18 22:16:50 +10:00
d738fc4a0e
matrix: instantiate template in host namespace
...
Fixes warnings under clang
2014-07-15 19:50:49 +10:00
c9e46f986e
matrix: parameterise on element type
2014-07-07 15:21:17 +10:00
3d8213e00c
Change licence header to match libgim default
2012-05-23 17:04:46 +10:00
40c40507f9
Give vector and point templated dimension size
2012-05-18 17:56:24 +10:00
4f5d75a1df
Make all check macros uppercase
2012-05-11 12:34:21 +10:00
cdc651cf66
Reduce temporaries in matrix unproject
2011-10-24 10:26:17 +11:00
406b70f1c3
Rename exact_equal to exactly_equal
2011-10-23 20:14:35 +11:00
2aee108e79
Make 3d matrix/vectors and general matrix/vectors
2011-10-18 21:45:55 +11:00
306f852fc7
Move range to the util namespace
2011-08-15 20:11:42 +10:00
1fc1dd4134
Change range::includes to range::contains
...
Contains is more descriptive (of the actual implementation) as it
implies the entire argument is within the range. Includes should also be
provided at some point.
2011-07-29 17:38:07 +10:00
20f81a7630
Correct package name in copyright headers
...
Package is no longer waif, after its seperation from the waif
library/application. Hopefully there aren't any more dependencies...
2011-06-21 20:26:32 +10:00
745e06d1af
initial import from waif
2011-05-23 17:18:52 +10:00