Hi,
TransformationMatrix has a confusingly huge number of functions to
multiply a matrix with a point/vector. I'd like to reduce that number a
bit, especially removing the optional multiplication from the left
(which has exactly 0 in-tree uses, if my grep'ing was correct ;) ) and
propose the following set of functions (maybe with the order of dst, src
reversed to match the old order ?):
void mult (PointType &dst, const PointType &src) const;
void multFull(PointType3f &dst, const PointType3f &src) const;
void mult (PointType3f &dst, const PointType3f &src) const;
void mult (VectorType &dst, const VectorType &src) const;
void multFull(VectorType3f &dst, const VectorType3f &src) const;
void mult (VectorType3f &dst, const VectorType3f &src) const;
void mult3x3 (PointType3f &dst, const PointType3f &src) const;
void mult3x3 (VectorType3f &dst, const VectorType3f &src) const;
or alternatively returning the result:
PointType mult (const PointType &pnt) const;
PointType3f multFull(const PointType3f &pnt) const;
PointType3f mult (const PointType3f &pnt) const;
VectorType mult (const VectorType &vec) const;
VectorType3f multFull(const VectorType3f &vec) const;
VectorType3f mult (const VectorType3f &vec) const;
PointType3f mult3x3 (const PointType3f &pnt) const;
VectorType3f mult3x3 (const VectorType3f &vec) const;
This would bring us down to 8 functions compared to 18 right now.
Comments ? Which set of functions is preferred ?
Thanks,
Carsten
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Opensg-core mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-core