Translation Transformation#
A translation transformation modifies the position of an object by shifting its origin without altering its orientation or shape.
Transform Type |
Mode |
Description |
|---|---|---|
Translation |
|
The object remains stationary in the scene. No translation is applied. |
|
See Linear Translation for details. |
—
Mathematical Model#
When a translation transformation is applied, the body origin \(O_B\) of the Sprite frame is shifted. The position vector \(\mathbf{P}_B'''\), representing a vertex after flexibility and rotation transform, undergoes the following transformation:
where the translation matrix (\(\mathbf{T}_{B}\)) is:
Here, \(t_x\), \(t_y\), and \(t_z\) represent the translation distances along the inertial \(\hat{\mathbf{e}}_1\), \(\hat{\mathbf{e}}_2\), and \(\hat{\mathbf{e}}_3\) axes.
Linear Translation#
This mode applies a time-dependent translation to the object using an external CSV file.
The CSV specifies the position of the body frame origin \(O_B\) with respect to the inertial frame at each time step. This path is used to animate the object’s motion over time.
Note
CSV Format
The CSV file should contain:
Column 1: \(t_x\) (X-position)
Column 2: \(t_y\) (Y-position)
Column 3: \(t_z\) (Z-position)
Each row corresponds to one time step.
Final Transformation#
After applying flexibility (\(\mathbf{F}_B\)), rotation (\(\mathbf{R}_B\)), and translation (\(\mathbf{T}_B\)), the final vertex position in the inertial frame is:
Where:
\(\mathbf{P}_E = \begin{bmatrix} x_E & y_E & z_E & 1 \end{bmatrix}^T\) is the transformed vertex in inertial frame
\(\mathbf{P}_B\) is the original vertex in body frame
Usage Notes#
The number of rows in the CSV should match the number of animation frames.
Ensure consistent units across STL models, scene setup, and trajectory data.
—