docs: private void setBar(final double VALUE) {
          barCtx.clearRect(0, 0, size, size);
          barCtx.setLineCap(StrokeLineCap.BUTT);
          barCtx.setStroke(barColor);
          barCtx.setLineWidth(barWidth);
  
          if (sectionsVisible) {
              int listSize = sections.size();
              for (int i = 0 ; i < listSize ;i++) {
                  Section section = sections.get(i);
                  if (section.contains(VALUE)) {
                      barCtx.setStroke(section.getColor());
                      break;
                  }
              }
          }
  
          if (thresholdVisible && VALUE > gauge.getThreshold()) {
              barCtx.setStroke(thresholdColor);
          }
  
          double v             = (VALUE - minValue) * angleStep;
          int    minValueAngle = (int) (-minValue * angleStep);
          if (!isStartFromZero) {
              for (int i = 0; i < 280; i++) {
                  if (i % 10 == 0 && i < v) {
                      barCtx.strokeArc(barWidth * 0.5 + barWidth * 0.1, barWidth * 0.5 + barWidth * 0.1, size - barWidth - barWidth * 0.2, size - barWidth - barWidth * 0.2, (-i - 139), 9.2, ArcType.OPEN);
                  }
              }
          } else {
              if (Double.compare(VALUE, 0) != 0) {
                  if (VALUE < 0) {
                      for (int i = Math.min(minValueAngle, 280) - 1; i >= 0; i--) {
                          if (i % 10 == 0 && i > v - 10) {
                              barCtx.strokeArc(barWidth * 0.5 + barWidth * 0.1, barWidth * 0.5 + barWidth * 0.1, size - barWidth - barWidth * 0.2, size - barWidth - barWidth * 0.2, (-i - 139), 9.2, ArcType.OPEN);
                          }
                      }
                  } else {
                      for (int i = Math.max(minValueAngle, 0) - 5; i < 280; i++) {
                          if (i % 10 == 0 && i < v) {
                              barCtx.strokeArc(barWidth * 0.5 + barWidth * 0.1, barWidth * 0.5 + barWidth * 0.1, size - barWidth - barWidth * 0.2, size - barWidth - barWidth * 0.2, (-i - 139), 9.2, ArcType.OPEN);
                          }
                      }
                  }
              }
          }
          valueText.setText(formatNumber(gauge.getLocale(), gauge.getFormatString(), gauge.getDecimals(), VALUE));
          valueText.setLayoutX(valueBkgText.getLayoutBounds().getMaxX() - valueText.getLayoutBounds().getWidth());
      }