I have a 3d object, to which I sequentially apply 3 4x4 transformation matrices, $A$, $B$, and $C$. To generalize, each transformation matrix is determined by the multiplication of a rotation matrix by a translation matrix.
How can I calculate the final transformation matrix $t$, which defines how to get from the original 3d object to the final transformed object?
Unfortunately, of course, $ABC \neq t$. Some ideas (based on researching into this subject):
Save the rotation and translation matrices for each transformation matrix, then multiply for the final, $(rot_a)(rot_b)(rot_c)(tran_a)(tran_b)(tran_c)$, since transformation matrices are meant to be multiplied in order, 1. rotation, then 2. translation.
Considering I retain a connection between the initial coordinates and final coordinates (I know the start points and their relative end points), is there a way to simply determine the end matrix based on the relation between the initial and final 3d object? Of course, this method would work best if it didn't require information about every vertex (there are a lot of points in this 3d object).
If you take an initial point $p_i$, apply a transform $A$, then apply transform $B$, then apply transform $C$ to get a final point $p_f$, then we have
$$p_f = C(B(A(p_i)))$$ $$p_f = CBAp_i$$
So the total transformation is $t = CBA$.
This is one of the reasons why matrix multiplication is so nice--it lets us compose many linear transforms into a single linear transform. You just need to remember that the first transformation belongs on the right (closest to the point $p$ it acts on).