Fix formatting on the README.

This commit is contained in:
Sébastien Crozet 2013-09-28 00:15:44 +02:00
parent 828dc8451e
commit f17ed215a0

View File

@ -8,17 +8,17 @@ programming language.
**nalgebra** is meant to be a general-purpose linear algebra library (but is very far from that…), **nalgebra** is meant to be a general-purpose linear algebra library (but is very far from that…),
and keeps an optimized set of tools for computational graphics and physics. Those features include: and keeps an optimized set of tools for computational graphics and physics. Those features include:
* Vectors with static size: `Vec0`, `Vec1`, `Vec2`, ..., `Vec6`. * Vectors with static sizes: `Vec0`, `Vec1`, `Vec2`, ..., `Vec6`.
* Square matrices with static size: `Mat1`, `Mat2`, ..., `Mat6 `. * Square matrices with static sizes: `Mat1`, `Mat2`, ..., `Mat6 `.
* Dynamically sized vector: `DVec`. * Dynamically sized vector: `DVec`.
* Dynamically sized matrix: `DMat`. * Dynamically sized (square or rectangular) matrix: `DMat`.
* Geometry-specific matrix wrapper: `Rotmat`, `Transform`. * Geometry-specific matrix wrapper to ensure at compile-time some properties: `Rotmat`, `Transform`.
* Most well-known geometric functions. * Most well-known geometric functions.
* A few methods for data analysis: `Cov` (covariance), `Mean` (mean). * A few methods for data analysis: `Cov` (covariance), `Mean` (mean).
* Operator overloading using the double trait dispatch [trick](http://smallcultfollowing.com/babysteps/blog/2012/10/04/refining-traits-slash-impls/). * Operator overloading using the double trait dispatch [trick](http://smallcultfollowing.com/babysteps/blog/2012/10/04/refining-traits-slash-impls/).
This allows using operators for both matrix/matrix multiplication and matrix/vector This allows using operators for both matrix/matrix multiplication and matrix/vector
multiplication for example. multiplication for example.
* Almost one trait per functionality. This is very useful for generic programming. * Almost one trait per functionality. This is very useful for generic programming.
Since there is almost one trait per functionality, one might end up importing a lot of traits. To Since there is almost one trait per functionality, one might end up importing a lot of traits. To
lighten your `use` prelude, all trait are re-exported by the `nalgebra::vec` and `nalgebra::mat` lighten your `use` prelude, all trait are re-exported by the `nalgebra::vec` and `nalgebra::mat`
@ -41,13 +41,12 @@ There is also a light, but existing, documentation for most functionalities. Use
generate it on the `doc` folder. generate it on the `doc` folder.
## nalgebra in use ## nalgebra in use
* [nphysics](https://github.com/sebcrozet/nphysics): a real-time physics engine.
* [ncollide](https://github.com/sebcrozet/ncollide): a collision detection library.
* [kiss3d](https://github.com/sebcrozet/kiss3d): a minimalistic graphics engine.
Feel free to add your project to this list if you happen to use **nalgebra**! Feel free to add your project to this list if you happen to use **nalgebra**!
* [nphysics](https://github.com/sebcrozet/nphysics): a real-time physics engine.
* [ncollide](https://github.com/sebcrozet/ncollide): a collision detection library.
* [kiss3d](https://github.com/sebcrozet/kiss3d): a minimalistic graphics engine.
## Design note ## Design note
**nalgebra** is mostly written with non-idiomatic rust code. This is mostly because of limitations **nalgebra** is mostly written with non-idiomatic rust code. This is mostly because of limitations