479 Commits

Author SHA1 Message Date
191760fa13 eoc4: lint cleanup. 2021-07-16 20:12:51 -07:00
12c2382327 eoc4: use Matrix4x4 to perform world to canvas scaling.
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-16 19:59:42 -07:00
5df2917668 eoc4: implement suggestion at the end of chapter 4 2021-07-16 17:12:48 -07:00
af5e61136c matrices: doctest for matrix multiplication ordering. 2021-07-16 16:51:55 -07:00
4b0d882b84 lib & tuples: use crate specific EPSILON definition. 2021-07-16 16:49:55 -07:00
83799a02a9 matrices: implement Matrix4x4::shearing 2021-07-16 16:38:40 -07:00
b8df830460 tuples & matrices: remove float-cmp use.
All checks were successful
continuous-integration/drone/push Build is passing
Implement PartialEq on `Tuple` and `Matrix4x4` using a local `EPSILON`
large enough for our unit tests to pass.
2021-07-06 08:44:21 -07:00
245b02b443 matrices: implement Matrix4x4:rotation_[xyz] 2021-07-05 18:36:43 -07:00
f792d1a626 matrices: implement Matrix4x4::scaling 2021-07-05 17:51:17 -07:00
117d7185e4 matrices: implement Matrix4x4::translate 2021-07-05 17:42:19 -07:00
462c90e8c8 matrices: benchmark Matrix::inverse & inverse_old
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-05 16:44:06 -07:00
ac3a18a864 matrices: implement Matrix4x4::inverse. 2021-07-05 16:26:27 -07:00
656f1c3a94 Small whitespace change. 2021-07-05 16:26:21 -07:00
762cd45f63 implement determinant on 3x3 and 4x4 matrices 2021-07-05 15:27:32 -07:00
d6ad12e344 implement cofactor of 3x3 matrix 2021-07-05 15:07:18 -07:00
f5d79908f6 implement minor for matrix3x3 2021-07-01 21:29:58 -07:00
a69e404817 implement submatrix for matrix4x4 2021-07-01 21:20:40 -07:00
43d95041af implement submatrix for matrix3x3 2021-07-01 21:12:43 -07:00
c97bc25323 Implement 2x2 determinant 2021-07-01 20:54:00 -07:00
dda29eb836 test identity transpose 2021-07-01 20:47:29 -07:00
fa5971faa4 Test identity multiplication 2021-07-01 20:46:05 -07:00
4d649c735b Implement 4x4 * 4x1 2021-06-30 21:02:42 -07:00
3d2d763a3b test 4x4 multiplication 2021-06-29 20:56:08 -07:00
ea6114b9ae test 4x4 equality and inequality 2021-06-29 20:51:38 -07:00
ec0331b88b constructor/index methods for Matrix2x2 and Matrix3x3 2021-06-29 20:48:41 -07:00
72b15e5516 Copy Matrix4x4 impl from pbrt and start on tests 2021-06-29 20:12:23 -07:00
3cf580f607 Fix tests after recent refactor 2021-06-29 19:52:57 -07:00
78a360ae89 More idiomatic constructors.
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-27 10:20:21 -07:00
f24a90b77b eoc2: print filename before saving.
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-24 16:44:45 -07:00
c9ec19c3cd eoc2: update with initial values from the book. 2021-06-24 16:43:12 -07:00
709465dafe eoc2: write up end of chapter 2 example. 2021-06-24 16:40:53 -07:00
7786aa99a1 canvas: enable saving to PNG. 2021-06-24 16:40:33 -07:00
536b6bed1f tuples: make color data pub. 2021-06-24 16:40:21 -07:00
d8f91a823e Add canvas type. 2021-06-24 15:58:18 -07:00
42455d593e Add Color type. 2021-06-24 15:48:04 -07:00
21ac03acfb Implement end of chapter 1 exercises. 2021-06-24 15:35:58 -07:00
df495feb57 Make important types/functions public. 2021-06-24 15:35:43 -07:00
21afbf8e7c Implement dot and cross product for tuples. 2021-06-24 15:15:31 -07:00
1ea90770bc Add magnitude() and normalize() methods to Tuple 2021-06-24 15:07:38 -07:00
758f94acde Implement Add, Div, Mul, Neg, Sub traits for tuple. 2021-06-24 14:47:53 -07:00
b159820bad Metadata.
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-24 11:10:29 -07:00
3952a8ba83 Implement point/vector constructors. 2021-06-24 11:10:11 -07:00
495c64249c Implement most basic tuple 2021-06-24 10:51:35 -07:00
a30a5a383c Update to 2018 edition.
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-13 18:53:36 -07:00
33a126f4d7 Fix over zealous lint. 2021-06-13 18:51:07 -07:00
4d5056428b aobench: lint. 2021-06-13 18:49:32 -07:00
4cddc8571f panic/foramt lint
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-13 18:44:16 -07:00
ea30bc9ed4 Remove direnv setup, use parent. 2021-06-13 18:39:05 -07:00
3fb564ff19 More rand version bump.
Some checks failed
continuous-integration/drone/push Build is failing
2021-06-13 17:46:45 -07:00
d1a04b9b0c Cleanup lint.
Some checks failed
continuous-integration/drone/push Build is failing
2021-06-04 14:45:53 -07:00