Gradient.sweep constructor
Creates a sweep gradient centered at center that starts at startAngle
and ends at endAngle.
startAngle and endAngle should be provided in radians, with zero
radians being the horizontal line to the right of the center and with
positive angles going clockwise around the center.
If colorStops is provided, colorStops[i] is a number from 0.0 to 1.0
that specifies where color[i] begins in the gradient. If colorStops is
not provided, then only two stops, at 0.0 and 1.0, are implied (and
color must therefore only have two entries).
The behavior before startAngle and after endAngle is described by the
tileMode argument. For details, see the TileMode enum.
 
 

If center, colors, tileMode, startAngle, or endAngle are null,
or if colors or colorStops contain null values, this constructor will
throw a NoSuchMethodError.
If matrix4 is provided, the gradient fill will be transformed by the
specified 4x4 matrix relative to the local coordinate system. matrix4 must
be a column-major matrix packed into a list of 16 values.
Implementation
Gradient.sweep(
  Offset center,
  List<Color> colors, [
  List<double> colorStops,
  TileMode tileMode = TileMode.clamp,
  double startAngle = 0.0,
  double endAngle = math.pi * 2,
  Float64List matrix4,
]) : assert(_offsetIsValid(center)),
     assert(colors != null),
     assert(tileMode != null),
     assert(startAngle != null),
     assert(endAngle != null),
     assert(startAngle < endAngle),
     assert(matrix4 == null || _matrix4IsValid(matrix4)),
     super._() {
  _validateColorStops(colors, colorStops);
  final Int32List colorsBuffer = _encodeColorList(colors);
  final Float32List colorStopsBuffer = colorStops == null ? null : new Float32List.fromList(colorStops);
  _constructor();
  _initSweep(center.dx, center.dy, colorsBuffer, colorStopsBuffer, tileMode.index, startAngle, endAngle, matrix4);
}