Skip to content

Unsupported operations like "Matrix3d::Identity() op vector3d.asDiagonal()"

Submitted by Rhys Ulerich

Assigned to Nobody

Link to original bugzilla bug (#610)
Version: 3.4 (development)

Description

As discussed in http://listengine.tuxfamily.org/lists.tuxfamily.org/eigen/2013/06/msg00002.html

the following does not compile but should...

#include <Eigen/Core>

int main()

{

using namespace Eigen;  



// Works as expected  

Matrix3d A1;  

Matrix3d B1 = Matrix3d::Identity() * A1;  

Matrix3d C1 = Matrix3d::Identity() + A1;  

Matrix3d D1 = Matrix3d::Identity() - A1;  



// Does not work but I expect that it should  

Vector3d A2;  

Matrix3d B2 = Matrix3d::Identity() * A2.asDiagonal();  

Matrix3d C2 = Matrix3d::Identity() + A2.asDiagonal();  

Matrix3d D2 = Matrix3d::Identity() - A2.asDiagonal();  



return 0;  

}

Depends on

#112 #520 #99 (closed)

Blocking

#814