Eigen 라이브러리를 사용하여 아핀 변환을 등각 변환 (즉, 회전 및 변환만으로 구성)으로 변환하는 가장 간단한 방법은 무엇입니까?Eigen affine 변환을 Eigen isometry 변환으로 변환
두 변형은 모두 3D입니다. 아핀 메트릭스는 좌측 상부 사분면에 대한 일반적인 3x3 행렬 (즉, 회전, 스케일링 및 전단)을 가지지 만, 등각 투영은 동일한 사분면에 대해 3x3 회전 행렬을 가지므로 투영이 요구된다.
error C2338: YOU_PERFORMED_AN_INVALID_TRANSFORMATION_CONVERSION
Eigen::AffineCompact3f a;
Eigen::Isometry3f b(a.rotation(), a.translation());
이
(line 2) error C2661: 'Eigen::Transform<_Scalar,_Dim,_Mode>::Transform' : no overloaded function takes 2 arguments
및
을 제공 동안 :Eigen::AffineCompact3f a;
Eigen::Isometry3f b(a);
은 컴파일 오류를 제공합니다
Eigen::AffineCompact3f a;
Eigen::Isometry3f b;
b.translation() = a.translation();
b.rotation() = a.rotation();
는 질문으로 다시 표현 될 수있다() 함수를 감안할 때 회전()와 번역을
(line 4) error C2678: binary '=' : no operator found which takes a left-hand operand of type 'const Eigen::Matrix<_Scalar,_Rows,_Cols>' (or there is no acceptable conversion)
을 준다 "나는 가장 등각의 회전 및 변환 구성 요소 변환을 어떻게 설정합니까?"
표준 C++ 유형이나 이름이 아니므로 사용중인 라이브러리 또는 툴킷을 지정해야합니다. – abelenky
제목과 텍스트에 명시된대로 Eigen (잘 알려진 C++ 수학 라이브러리)을 사용하고 있습니다. 더 명확하게하기 위해 링크를 추가하겠습니다. – user664303