Yeh your real clever "Crit".
Sorry, I didn't mean to offend. Without face to face contact, things don't always come out as intended. Here is how you multiply two matrices together:
a matrix is just a box of numbers. They can be any size, but they tend to be 4x4 in 3d programming.
so imagine you have 2 matrices you want to multiply. I am labeling each position with a different variable name.
+ Code Snippet|a1 b1 c1 d1| |a2 b2 c2 d2| |a3 b3 c3 d3|
|e1 f1 g1 h1| |e2 f2 g2 h2| |e3 f3 g3 h3|
|i1 j1 k1 l1| X |i2 j2 k2 l2| = |i3 j3 k3 l3|
|m1 n1 o1 p1| |m2 n2 o2 p2| |m3 n3 o3 p3|
You can find the values for the result matrix witht the following formulas:
+ Code Snippeta3= a1*a2 + b1*e2 + c1*i2 + d1*m2
b3= a1*b2 + b1*f2 + c1*j2 + d1*n2
c3= a1*c2 + b1*g2 + c1*k2 + d1*o2
d3= a1*d2 + b1*h2 + c1*l2 + d1*p2
e3= e1*a2 + f1*e2 + g1*i2 + h1*m2
f3= e1*b2 + f1*f2 + g1*j2 + h1*n2
g3= e1*c2 + f1*g2 + g1*k2 + h1*o2
h3= e1*d2 + f1*h2 + g1*l2 + h1*p2
i3= i1*a2 + j1*e2 + k1*i2 + l1*m2
j3= i1*b2 + j1*f2 + k1*j2 + l1*n2
k3= i1*c2 + j1*g2 + k1*k2 + l1*o2
l3= i1*d2 + j1*h2 + k1*l2 + l1*p2
m3= m1*a2 + n1*e2 + o1*i2 + p1*m2
n3= m1*b2 + n1*f2 + o1*j2 + p1*n2
o3= m1*c2 + n1*g2 + o1*k2 + p1*o2
p3= m1*d2 + n1*h2 + o1*l2 + p1*p2
If you are planning on doing this in DBPro, I suggest using their built in 3d maths commands, which includes matrix multiply. But if you wanted to code it out manually, you could do so with the above reference.