position method

  1. @override
Offset position(
  1. int n
)
override

Implementation

@override
Offset position(int n) {
  var rand = sin(n / pi).abs() % (2 * pi);
  var rvalue = (value + offset + rand * 100) % (2 * pi);

  final progress = (3 * rvalue / (2 * pi)) % 1.0;

  final fromX = 1.2 * sin(n) * (1 - variation3) + variation3 * 1.2 * cos(n);
  final toX = 1.2 * cos(n);

  var fromY = 1 + 2 * circleSize;
  var toY = -1 - 2 * circleSize;

  var x = (fromX * (1 - progress) + toX * progress) * canvasSize.width / 2;
  var y = (fromY * (1 - progress) + toY * progress) * canvasSize.height / 2;

  return Offset(
    canvasSize.width / 2 + x,
    canvasSize.height / 2 + y,
  );
}