-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Transformation concatenation along shortest path; either I'm doing something wrong or Envire Core #53
Comments
To add to this: what's maybe interesting is that I use Okay, nope, it's not the quaternion. It must be something else. |
It's been a while since I used this, but I think you need to switch the frames when adding transforms, i.e., |
Hmm, okay, that's a bit ugly in my humble opinion because I understand that the transform defines a transformation operation of a point from the origin to the target. That is, from the child to the root/parent. Or am I wrong? I'll check with the switched frames and report back. UpdateNope, does not change much. I get different results but still wrong. Here's some example code that I use for experiments around this:
|
I was able to work around the issue by fetching the direct transforms That does not fix the actual issue that I have with Envire Core. It's just a workaround for cases like mine where the graph tree is only a stump. So the issue is still valid and I'll leave it open! Either I don't use Envire Core as intended or it has a (pretty severe) bug. Further investigation is required. |
@arneboe In case that you might miss this |
Envire was build Data driven (Environment Representation), so i currently expect, that getTransform("map","neck") returns the transformation to convert Data from "map" to "neck", so it is map_to_neck and not map_in_neck as you expected |
Hi everyone,
I'm trying to use Envire Core to calculate transformations between coordinate systems. It seems, though, that there is either some usage error on my side, or Envire Core does something wrong when calculating indirect transforms along a shortest path.
What I'm trying to achieve is the following:
I have three (example) frames, neck, shoulder, map, where map is the root/world frame and neck and shoulder both are defined as children of map. I want to use Envire Core to give me a transformation matrix of shoulder relative to neck.
It seems though that either I've gotten something wrong about the usage/notation of the API or Envire Core has a bug when it comes to calculating indirect transforms.
My 3D affine transformation matrix notation looks as follows:
i.e. the translation vector in the rightmost column. According to Wikipedia and other sources this is the common notation for a 3D affine transformation matrix. What does Envire Core expect here?
Now, I'm actually doing the following (pseudocode):
Unfortunately
shoulder_in_neck_mat
comes out wrong. To me it looks like the concatenation of the matrices along the path between shoulder and neck happens in the wrong order.Where's the error? Is it me or is it Envire Core?
Cheers,
Hendrik
The text was updated successfully, but these errors were encountered: