Для меня это должно просто работать , поэтому тот факт, что это не так, почти наверняка означает, что я ошибаюсь. Хотя в принципе 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