drawXAxis method

void drawXAxis(
  1. Canvas canvas
)

Draws the main x-axis with grid lines and time labels

Implementation

void drawXAxis(Canvas canvas) {
  //SafeZone
  int interval = 10;
  int ymin = 50;
  int safeZoneMax = 160;
  Rect safeZoneRect = Rect.fromLTRB(
      xOrigin,
      (yOrigin - yDivLength) - ((safeZoneMax - ymin) / interval) * yDivLength,
      xOrigin + xAxisLength,
      yOrigin - yDivLength * 8); //50
  canvas.drawRect(safeZoneRect, graphSafeZone!);
  //safe zone end

  canvas.drawLine(Offset(xOrigin + xDivLength! / 2, paddingTop),
      Offset(xOrigin + xDivLength! / 2, yOrigin), graphGridSubLines);

  for (int i = 1; i <= xDiv; i++) {
    canvas.drawLine(Offset(xOrigin + (xDivLength! * i), paddingTop),
        Offset(xOrigin + (xDivLength! * i), yOrigin), graphGridLines);

    canvas.drawLine(
        Offset(
            xOrigin + (xDivLength! * i) + xDivLength! / 2, paddingTop),
        Offset(xOrigin + (xDivLength! * i) + xDivLength! / 2, yOrigin),
        graphGridSubLines);
    int offset = (mOffset / pointsPerDiv).truncate();
    if ((i + offset) % gridPerMin! == 0) {
      // if (gridPerMin == 1 && printMin) {
      //   canvas.drawParagraph(
      //       getParagraph(((i + (offset)) / gridPerMin).truncate().toString()),
      //       new Offset(xOrigin + (xDivLength * i) - pixelsPerOneMM * 5,
      //           pixelsPerOneCM * 0.2));
      // } else if (gridPerMin == 3) {
      canvas.drawParagraph(
          getParagraph(((i + (offset)) / gridPerMin!).truncate().toString()),
          Offset(xOrigin + (xDivLength! * i) - pixelsPerOneMM! * 5,
              pixelsPerOneCM! * 0.2));
      // }
      // printMin = !printMin;
      canvas.drawLine(
          Offset(xOrigin + (xDivLength! * i), paddingTop),
          Offset(xOrigin + (xDivLength! * i), yOrigin),
          graphGridMainLines);
    }
  }
}