Re: [eigen] Rigid transformations in eigen: use of dual quaternions

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


2009/9/12 Gael Guennebaud <gael.guennebaud@xxxxxxxxx>:
>
> hi,
>
> I don't have much right now to address all the issues raised in that
> thread, but at least:
>
> - here we are speaking about 4 scalars only, and so there is no
> advantage in using expression template (wrt performance). So here
> returning by value is fine.

really? for simple enough expressions, when there are enough
registers, OK, but for example, without vectorization, there won't be
enough registers on x86 to do s1*q1+s2*q2 efficiently, right?

>
> - I'm not in favor in adding operator+ and scalar multiple to the
> Quaternion class for the same reason than Benoit.
>
> - Quaternion::operator=(MatrixBase<>) is to convert a rotation matrix
> to a quaternion, so quat = q1.coeffs() + q2.coeffs(); won't work.

oops, i forgot about that. How about a meta selector to give a
different behavior depending on IsVectorAtCompileTime ?

>
> - I don't really llike the idea of adding operator() as shortcut for
> coeffs(), because, e.g.,  q1() looks very weird.Currently, the only
> use case is to write the DualQuaternion class, and here it is
> perfectly fine to use .coeffs().

OK

Benoit



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/