2013-05-21 23:25:01 +08:00
|
|
|
/*!
|
|
|
|
|
|
|
|
# The n-dimensional linear algebra library.
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-05-15 05:08:29 +08:00
|
|
|
#[link(name = "nalgebra"
|
|
|
|
, vers = "0.0"
|
|
|
|
, author = "Sébastien Crozet"
|
|
|
|
, uuid = "1E96070F-4778-4EC1-B080-BF69F7048216")];
|
|
|
|
#[crate_type = "lib"];
|
|
|
|
#[warn(non_camel_case_types)]
|
|
|
|
|
|
|
|
extern mod std;
|
|
|
|
|
2013-05-21 23:25:01 +08:00
|
|
|
/// 1-dimensional linear algebra.
|
|
|
|
pub mod dim1
|
2013-05-15 05:08:29 +08:00
|
|
|
{
|
2013-05-21 23:25:01 +08:00
|
|
|
pub mod vec1;
|
|
|
|
pub mod mat1;
|
2013-05-15 05:08:29 +08:00
|
|
|
}
|
|
|
|
|
2013-05-21 23:25:01 +08:00
|
|
|
/// 2-dimensional linear algebra.
|
|
|
|
pub mod dim2
|
2013-05-17 05:44:05 +08:00
|
|
|
{
|
2013-05-21 23:25:01 +08:00
|
|
|
pub mod vec2;
|
|
|
|
pub mod mat2;
|
2013-05-17 05:44:05 +08:00
|
|
|
}
|
|
|
|
|
2013-05-21 23:25:01 +08:00
|
|
|
/// 3-dimensional linear algebra.
|
|
|
|
pub mod dim3
|
2013-05-15 05:08:29 +08:00
|
|
|
{
|
2013-05-21 23:25:01 +08:00
|
|
|
pub mod vec3;
|
|
|
|
pub mod mat3;
|
2013-05-15 05:08:29 +08:00
|
|
|
}
|
|
|
|
|
2013-05-21 23:25:01 +08:00
|
|
|
/// n-dimensional linear algebra (slower).
|
|
|
|
pub mod ndim
|
2013-05-15 05:08:29 +08:00
|
|
|
{
|
2013-05-31 17:28:42 +08:00
|
|
|
pub mod dmat;
|
2013-05-31 17:01:07 +08:00
|
|
|
pub mod dvec;
|
2013-05-21 23:25:01 +08:00
|
|
|
pub mod nvec;
|
|
|
|
pub mod nmat;
|
2013-05-15 05:08:29 +08:00
|
|
|
}
|
|
|
|
|
2013-05-21 23:25:01 +08:00
|
|
|
/// Wrappers around raw matrices to restrict their behaviour.
|
|
|
|
pub mod adaptors
|
2013-05-17 05:30:39 +08:00
|
|
|
{
|
2013-05-21 23:25:01 +08:00
|
|
|
pub mod rotmat;
|
|
|
|
pub mod transform;
|
2013-05-17 05:30:39 +08:00
|
|
|
}
|
|
|
|
|
2013-05-21 23:25:01 +08:00
|
|
|
/// Useful linear-algebra related traits.
|
|
|
|
pub mod traits
|
2013-05-15 05:08:29 +08:00
|
|
|
{
|
2013-05-21 23:25:01 +08:00
|
|
|
pub mod dot;
|
|
|
|
pub mod cross;
|
|
|
|
pub mod inv;
|
|
|
|
pub mod transpose;
|
|
|
|
pub mod dim;
|
|
|
|
pub mod basis;
|
|
|
|
pub mod norm;
|
|
|
|
pub mod rotation;
|
|
|
|
pub mod translation;
|
|
|
|
pub mod delta_transform;
|
|
|
|
pub mod vector_space;
|
|
|
|
pub mod ring;
|
|
|
|
pub mod division_ring;
|
2013-05-25 21:51:51 +08:00
|
|
|
pub mod sub_dot;
|
2013-05-15 05:08:29 +08:00
|
|
|
|
2013-05-21 23:25:01 +08:00
|
|
|
/// This package contains everything done because the current compiler either
|
|
|
|
/// crashes or miss features.
|
|
|
|
/// Therefore, keep in mind anything in there will be inevitably removed some
|
|
|
|
/// days. So dont rely on them too much.
|
|
|
|
pub mod workarounds
|
2013-05-15 05:08:29 +08:00
|
|
|
{
|
2013-05-21 23:25:01 +08:00
|
|
|
pub mod rlmul;
|
|
|
|
pub mod scalar_op;
|
2013-05-15 05:08:29 +08:00
|
|
|
}
|
|
|
|
}
|
2013-05-19 01:04:03 +08:00
|
|
|
|
2013-05-21 23:25:01 +08:00
|
|
|
#[cfg(test)]
|
|
|
|
pub mod tests
|
2013-05-19 01:04:03 +08:00
|
|
|
{
|
2013-05-21 23:25:01 +08:00
|
|
|
pub mod mat;
|
|
|
|
pub mod vec;
|
2013-05-19 01:04:03 +08:00
|
|
|
}
|