This is a rust math library containing classes for vectors, matrices, quaternions, and elements of projective geometric algebra. The specific classes are the following: |--------|--------| |name|description| |--------|--------| |vector2| A 2D vector (x, y) that extends to four dimensions as (x, y, 0, 0). | |vector3| A 3D vector (x, y, z) that extends to four dimensions as (x, y, z, 0). | |vector4| A 4D vector (x, y, z, w).| |point2| A 2D point (x, y) that extends to four dimensions as (x, y, 0, 1).| |point3| A 3D point (x, y, z) that extends to four dimensions as (x, y, z, 1).| |matrix2| A 2×2 matrix.| |matrix3| A 3×3 matrix.| |matrix4| A 4×4 matrix.| |transform4| A 4×4 matrix with fourth row always (0, 0, 0, 1).| |quaternion| A convention quaternion xi + yj + zk + w.| |bivector3| A 3D bivector x e23 + y e31 + z e12.| |bivector4| A 4D bivector (line) vx e41 + vy e42 + vz e43 + mx e23 + my e31 + mz e12.| |trivector4| A 4D trivector (plane) x e234 + y e314 + z e124 + w e321.| |motor| A 4D motion operator rx e41 + ry e42 + rz e43 + rw 𝟙 + ux e23 + uy e31 + uz e12 + uw.| |Flector4D | A 4D sx e1 + sy e2 + sz e3 + sw e4 + hx e234 + hy e314 + hz e124 + hw e321.|
https://github.com/EricLengyel/Terathon-Math-Library
http://terathon.com/gdc14_lengyel.pdf
http://projectivegeometricalgebra.org
https://medium.com/@Razican/learning-simd-with-rust-by-finding-planets-b85ccfb724c3
this: https://github.com/rustgd/cgmath.git simd https://medium.com/@Razican/learning-simd-with-rust-by-finding-planets-b85ccfb724c3
https://doc.rust-lang.org/edition-guide/rust-2018/simd-for-faster-computing.html
https://www.youtube.com/watch?v=tX4H_ctggYo
https://enkimute.github.io/ganja.js/examples/coffeeshop.html#pga2d_points_and_lines
http://mathfor3dgameprogramming.com/
gpa https://github.com/enkimute/ganja.js
http://terathon.com/blog/projective-geometric-algebra-done-right/
http://terathon.com/blog/symmetries-in-projective-geometric-algebra/
- 基础内容或功能
- test
- 文档
- sample
- 性能优化