Commit Graph

4 Commits

Author SHA1 Message Date
Robin Gloster
4e4eb62ffc upgrade to newer rust 2014-10-22 13:35:17 +02:00
Sébastien Crozet
924d8269d8 Add points.
This adds the Pnt{1,2,3,4,5,6} structures.
This adds the traits:
  − AnyPnt
  − FloatPnt
  − PntExt
  − FloatPntExt
  − Orig (to return the zero point)
  − PntAsVec
  − VecAsPnt
This adds operator overloading:
  − Pnt + Vec
  − Pnt - Vec
  − Pnt * Scalar
  − Pnt / Scalar
  − Pnt + Scalar
  − Pnt - Scalar
  − Iso * Pnt
  − Rot * Pnt
  − Pnt * Iso
  − Pnt * Rot
This changes some behavior:
  − Iso multiplication with a Vec does not translate the vector any more.
  − ToHomogeneous adds a 0.0 at the end of a Vec and a 1.0 at the end of a Pnt.
  − FromHomogeneous performs w-normalization on a Pnt, but not on a Vec.
  − The Translate<Vec> trait is never implemented (i-e. a Vec is not to be translated).

cc #25
2014-10-10 11:45:20 +02:00
Brendan Zabarauskas
b6959ef913 Implement index operators
Closes #18
2014-09-18 12:23:52 +10:00
Sébastien Crozet
40c9915870 Add the types: DVec1, .., DVec6.
They are stack-allocated, dynamically sized vectors with a maximum size.
This is useful for slicing small matrices, without allocation.
2014-08-16 12:16:26 +02:00