Умножение типов преобразований и матриц в Eigen

Для меня это должно просто работать , так что это не так, почти наверняка означает, что я виноват. Несмотря на то, что в принципе Transform совпадает с Matrix , их нельзя разумно использовать вместе:

Affine3d rotMat( AngleAxisd( 45.0, ( Vector3d() << 0.0, 1.0, 0.0 ).finished() ) );
Matrix4d m;
m << 1.0, 0.0, 0.0, 6.0,
     0.0, 1.0, 0.0, 6.0,
     0.0, 0.0, 1.0, 6.0,
     0.0, 0.0, 0.0, 1.0;

m = m * rotMat;

Приводит к ошибке 'no match for operator =' последняя строка, и оператор умножения на месте приводит к тому же результату, попытка инициализировать Matrix4d с Affine3d также не работает. Кто-нибудь знает, как на самом деле использовать класс Transform каким-либо полезным образом?

Спасибо, Cam

7
задан cmannett85 15 July 2011 в 22:22
поделиться