const AffineTransform AffineTransform::rotated (const float rad) const throw() { const float cosRad = cosf (rad); const float sinRad = sinf (rad); return followedBy (cosRad, -sinRad, 0, sinRad, cosRad, 0); }
AffineTransform AffineTransform::rotated (const float angle, const float pivotX, const float pivotY) const noexcept { return followedBy (rotation (angle, pivotX, pivotY)); }
const AffineTransform AffineTransform::sheared (const float shearX, const float shearY) const throw() { return followedBy (1.0f, shearX, 0, shearY, 1.0f, 0); }
const AffineTransform AffineTransform::scaled (const float factorX, const float factorY) const throw() { return followedBy (factorX, 0, 0, 0, factorY, 0); }
//============================================================================== const AffineTransform AffineTransform::translated (const float dx, const float dy) const throw() { return followedBy (1.0f, 0, dx, 0, 1.0f, dy); }