Point<double> transform(Point point, double? scale) { scale ??= 1.0; final x = scale * (a * point.x + b); final y = scale * (c * point.y + d); return Point(x, y); }