3个不稳定版本
0.2.1 | 2019年4月10日 |
---|---|
0.2.0 | 2019年4月10日 |
0.1.0 | 2019年4月10日 |
#1693 in 数学
6KB
110 行
cgmatrix
为Rust计算机图形学提供的简单矩阵库
关于
cgmatrix是一个矩阵库,旨在与OpenGL和WebGL一起使用。矩阵表示为可以直接传递给OpenGL和WebGL的浮点数组。
使用方法
将cgmatrix添加到您的Cartgo.toml文件中。
[dependencies]
cgmatrix = "0.1"
在您的rust代码中
fn main() {
let camera = cgmatrix::viewing_matrix([0.0, 0.0, 200.0], [0.0, 1.0, 0.0], [0.0, 0.0, 0.0]);
let theta = 0.5;
let mv_matrix = cgmatrix::matmul(cgmatrix::rotate_x(theta), camera);
println!("{:?}", mv_matrix);
}
API
cgmatrix支持以下方法
矩阵创建
- zeros()
- identity()
- rotate_x(theta)
- rotate_y(theta)
- translate(x, y, z)
- scale(sx, sy, sz)
- viewing_matrix(eye, up, target)
- orthogonal_matrix(left, right, top, bottom, near, far)
- perspective_matrix(fov, aspect, near, far)
矩阵乘法
- matmul
向量操作
- cross(v1, v2)
- normalize(v)
许可证
MIT