Skip to content

Wrong result from createBasisTransform #62

@renoelmendorp

Description

@renoelmendorp

I noticed some weird behaviour in createBasisTransform (see code below).
When calculating the transform from a plane with a Z-normal to an Y-normal, I get the wrong affine transform. Is this normal behaviour?
I'm using Matlab R2017b.

p1 = createPlane([0 0 0],[0 0 1]);

% create points in XY plane
pnts1 = [-1 -1 0;
          1 -1 0;
          1  1 0;
         -1  1 0];
     
drawPoint3d(pnts1);
drawPlane3d(p1);
% --> points are all in the XY plane

% create YZ plane (X-normal)
p2 = createPlane([0 0 0],[1 0 0]);

% transform points
t2 = createBasisTransform3d(p1,p2);
pnts2 = transformPoint3d(pnts1,t2);
% --> points are all in the YZ plane

hold on
drawPoint3d(pnts2);
drawPlane3d(p2);
hold off

% create XZ plane (Y-normal)
p3 = createPlane([0 0 0],[0 1 0]);

% transform points
t3 = createBasisTransform3d(p1,p3);
pnts3 = transformPoint3d(pnts1,t3);
% --> for some reason points are still in the YZ plane

hold on
drawPoint3d(pnts3);
drawPlane3d(p3);
hold off

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions