pytransform3d.transformations
.scale_transform#
- pytransform3d.transformations.scale_transform(A2B, s_xr=1.0, s_yr=1.0, s_zr=1.0, s_r=1.0, s_xt=1.0, s_yt=1.0, s_zt=1.0, s_t=1.0, s_d=1.0, strict_check=True)[source]#
Scale a transform from A to reference frame B.
See algorithm 10 from “Analytic Approaches for Design and Operation of Haptic Human-Machine Interfaces” (Bertold Bongardt).
- Parameters:
- A2Barray-like, shape (4, 4)
Transform from frame A to frame B
- s_xrfloat, optional (default: 1)
Scaling of x-component of the rotation axis
- s_yrfloat, optional (default: 1)
Scaling of y-component of the rotation axis
- s_zrfloat, optional (default: 1)
Scaling of z-component of the rotation axis
- s_rfloat, optional (default: 1)
Scaling of the rotation
- s_xtfloat, optional (default: 1)
Scaling of z-component of the translation
- s_ytfloat, optional (default: 1)
Scaling of z-component of the translation
- s_ztfloat, optional (default: 1)
Scaling of z-component of the translation
- s_tfloat, optional (default: 1)
Scaling of the translation
- s_dfloat, optional (default: 1)
Scaling of the whole transform (displacement)
- strict_checkbool, optional (default: True)
Raise a ValueError if the transformation matrix is not numerically close enough to a real transformation matrix. Otherwise we print a warning.
- Returns:
- A2B_scaled
Scaled transform from frame A to frame B (actually this is a transform from A to another frame C)