init method

  1. @override
void init(
  1. ChartsState state
)

初始化 耗时的方法都可以放到这里

Implementation

@override
void init(ChartsState state) {
  super.init(state);
  _ChartCircularCoordinateState layout = state.layout as _ChartCircularCoordinateState;
  Offset center = layout.center;
  double radius = layout.radius;
  //处理圆形场景
  if (layout.arcPosition == ArcPosition.none) {
    Offset progressCenter = Offset(center.dx, center.dy + radius);
    _transform = TransformUtils(
      anchor: progressCenter,
      size: layout.size,
      offset: layout.offset,
      padding: layout.padding,
      reverseX: false,
      reverseY: true,
    );
  } else {
    //半圆就不用特别处理了
    _transform = layout.transform;
  }
}