pytransform3d.transformations
.transform_sclerp#
- pytransform3d.transformations.transform_sclerp(start, end, t)[source]#
Screw linear interpolation (ScLERP) for transformation matrices.
We compute the difference between two poses \(\boldsymbol{T}_{AB} = \boldsymbol{T}^{-1}_{WA}\boldsymbol{T}_{WB}\), convert it to exponential coordinates \(Log(\boldsymbol{T}_{AB}) = \mathcal{S}\theta_{AB}\), compute a fraction of it \(t\mathcal{S}\theta_{AB}\) with \(t \in [0, 1]\), and use the exponential map to concatenate the fraction of the difference \(\boldsymbol{T}_{WA} Exp(t\mathcal{S}\theta_{AB})\).
- Parameters:
- startarray-like, shape (4, 4)
Transformation matrix to represent start pose.
- endarray-like, shape (4, 4)
Transformation matrix to represent end pose.
- tfloat in [0, 1]
Position between start and goal.
- Returns:
- A2B_tarray, shape (4, 4)
Interpolated pose.
See also
dual_quaternion_sclerp
ScLERP for dual quaternions.
pq_slerp
An alternative approach is spherical linear interpolation (SLERP) with position and quaternion.