This yields a new 3x3 matrix whose elements
are calculated using the following set of nine
equations:
R*
= (R
)(R*
n 11
11
n-1 11
(R
)(R*
13
n-1 31
R*
= (R
)(R*
n 12
11
n-1 12
(R
)(R*
13
n-1 32
R*
= (R
)(R*
n 13
11
n-1 13
(R
)(R*
13
n-1 33
R*
= (R
)(R*
n 21
21
n-1 11
(R
)(R*
23
n-1 31
R*
= (R
)(R*
n 22
21
n-1 12
(R
)(R*
23
n-1 32
R*
= (R
)(R*
n 23
21
n-1 13
(R
)(R*
23
n-1 33
R*
= (R
)(R*
n 31
31
n-1,11
(R
)(R*
33
n-1 31
R*
= (R
)(R*
n 32
31
n-1 12
(R
)(R*
33
n-1 32
R*
= (R
)(R*
n 33
31
n-1 13
(R
)(R*
33
n-1 33
The new rotation matrix R*
successively-executed rotations up to the
current step, step n .
Using the new equations for the accumulated
translation and rotation, a single formula can
be written that transforms the original points
of the cube into their new positions.
n
å
P
= [R*
](P
) +
new
n
old
i
=
Shown explicitly, this formula consists of the
following three equations:
P
= (R*
)(P
) + (R*
new X
11
old X
(R*
)(P
) +
13
old Z
P
= (R*
)(P
) + (R*
new Y
21
old X
(R*
)(P
) +
23
old Z
P
= (R*
)(P
) + (R*
new Z
31
old X
(R*
)(P
) +
33
old Z
n
n
å
å
X
Note that
,
i
=
=
i
1
i
1
simply the sums of all the translation
commands up to the current step n , and R*
the total rotation matrix generated by
multiplying all previous rotation matrices.
For example, suppose the Magellan/SPACE
MOUSE has now sent the following second set
of values to the computer:
) + (R
)(R*
) +
12
n-1 21
)
) + (R
)(R*
) +
12
n-1 22
)
) + (R
)(R*
) +
12
n-1 23
)
) + (R
)(R*
) +
22
n-1 21
)
) + (R
)(R*
) +
22
n-1 22
)
) + (R
)(R*
) +
22
n-1 23
)
) + (R
)(R*
) +
32
n-1 21
)
) + (R
)(R*
) +
32
n-1 22
)
) + (R
)(R*
) +
32
n-1 23
)
describes all
n
T
XYZ
i
1
)(P
) +
12
old Y
n
å
X
i
=
i
1
)(P
) +
22
old Y
n
å
Y
i
i
=
1
)(P
) +
32
old Y
n
å
Z
i
=
i
1
n
å
Y
Z
and
are
i
i
=
i
1
n
X = 1.5
A = 0
Summing the translational motion gives the
following values:
n
å
X
= 2.0
i
=
i
1
The rotation matrix for the current step, R
found from the new values for A, B and C.
é
. 0
980
ê
−
. 0
199
R
=
ê
n
ê
0
0 .
ë
This matrix is multiplied by the combined
rotation matrix for all previous steps, R*
(which corresponds to the values calculated for
matrix R*
in the previous step of the cube
n
example). This yields the new total rotation
matrix R*
:
n
é
. 0
980
ê
−
. 0
R*
=
ê
n
ê
0
0 .
ë
The new coordinates of the cube's corners are
now calculated using this total rotation matrix,
the summed translational motions and the
ORIGINAL coordinates (NOT the coordinates
calculated in the previous step). As an example
the calculations for P
P
= (0.980)(1) + (0.190)(1) +
1 new_X
(0.059)(1) + 2.0
P
= (-0.199)(1) + (0.936)(1) +
1 new_Y
(0.290)(1) + 0
P
= (0.0)(1) + (-0.296)(1) +
1 new_Z
(0.955)(1) – 4.0
After these two steps, the corners of the cube
are located at the following coordinates:
P
(3.229, 1.027, -3.340)
1 new
P
(1.268, 1.425, -3.340)
2 new
P
(0.889, -0.448, -2.749)
3 new
P
(2.849, -0.845, -2.749)
4 new
P
(3.111, 0.448, -5.251)
5 new
P
(1.151, 0.845, -5.251)
6 new
P
(0.771, -1.027, -4.660)
7 new
P
(2.732, -1.425, -4.660)
8 new
If the Magellan/SPACE MOUSE continues to
send values, these computational steps must
is
be repeated recursively.
20
Y = 0
Z = 0
B = 0
C = 0
n
n
å
å
Y
= 0.0
i
=
=
i
1
i
. 0
199
0
0 .
ù
ú
. 0
980
0
0 .
ú
ú
0
0 .
1
0 .
û
. 0
190
. 0
059
199
. 0
936
. 0
290
−
. 0
296
. 0
955
are shown below.
1
Z
= -4.0
i
1
, is
n
n-1
ù
ú
ú
ú
û
= 3.229
= 1.027
= -3.340
Need help?
Do you have a question about the Magellan/SPACE MOUSE Classic and is the answer not in the manual?
Questions and answers