Skip to content

Eigen::Affine3d and SVD #1073

@v4hn

Description

@v4hn

As @Levi-Armstrong and @Jmeyer1292 just pointed out in their presentation at ROSCon, there is a nonsensical performance bottleneck in MoveIt at the moment because we use Affine3d (wrongly?).

Specifically, I just verified that calling Affine3d::rotation() const actually computes SVD in the background.

We clearly want to change this.

Levi argued for Eigen::Isometry3d instead of Eigen::Affine3d. I agree that this makes sense in melodic.
Because we want to keep kinetic api stable though, can we get rid of rotation() in favor of linear() throughout the code base?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions