Asked by farzad
on 14 Jun 2019

Hi All

How do I define the transformation matrix of a plate that moves in space , knowing the old and new coordinates of 3 points on the plate ? (assume a circular plate and reference coordinate system in the center of the plate )

Answer by Matt J
on 14 Jun 2019

Accepted Answer

You could use this FEX file

Matt J
on 1 Jul 2019 at 15:26

What is eulZYX?

>> which eulZYX

'eulZYX' not found.

Jan
on 2 Jul 2019 at 9:04

@farzad: Do not assume, that the users of the forum have installed the same 3rd party tools or Matlab toolboxes as you have. Check the location of the functions by which . If it is not included in the standard toolboxes, post a link to the documentation or source of the function.

By the way: A simple test reveals, what the output is.

farzad
on 2 Jul 2019 at 9:09

ok thank you

Sign in to comment.

Answer by Jan
on 27 Jun 2019 at 15:15

You can define the motion by a translation of the center of the 3 points and a rotation of the local coordinate system.

PointsA = [x1, y1, z1; ...

x2, y2, z2; ...

x3, y3, z3];

PointsB = ...

Translation = mean(PointsB, 1) - mean(PointsA, 1);

% For the local coordinate systems find an orthonormal tripod:

v1 = PointsA(1, :) - PointsA(2, :);

n1 = v1 ./ norm(v1);

v2 = PointsA(2, :) - PointsA(3, :);

n2 = v2 ./ norm(v2);

c2 = cross(n1, n2);

n12 = c2 ./ norm(c2);

CoorA = [n1, n12, cross(n1, n12)];

% The same for B...

Rotation = CoorA * CoorB'

Anotehr approach would be the "Helical Axis": Any motion can be defined by an axis and some rotation around it and translation along it. See http://www.kwon3d.com/theory/jkinem/helical.html

Matt J
on 27 Jun 2019 at 16:21

so you are saying that using absor and rcParams.R is not a good idea ?

Jan's approach will be sub-optimal if you have non-neglible measurement errors in A and B. Also, if you decide to use more than 3 points (for data redundancy), absor will better accommodate that case.

Jan
on 28 Jun 2019 at 10:37

farzad
on 28 Jun 2019 at 10:56

Thank you very much Jan

Sign in to comment.

Opportunities for recent engineering grads.

Apply Today
## 1 Comment

## farzad (view profile)

Direct link to this comment:https://in.mathworks.com/matlabcentral/answers/467055-how-to-find-the-transformation-matrix-for-a-plat-knowing-the-old-and-new-coordinates-of-3-points-on#comment_714778

Sign in to comment.