docs: private void initGraphics() {
          // Set initial size
          if (Double.compare(gauge.getPrefWidth(), 0.0) <= 0 || Double.compare(gauge.getPrefHeight(), 0.0) <= 0 ||
              Double.compare(gauge.getWidth(), 0.0) <= 0 || Double.compare(gauge.getHeight(), 0.0) <= 0) {
              if (gauge.getPrefWidth() > 0 && gauge.getPrefHeight() > 0) {
                  gauge.setPrefSize(gauge.getPrefWidth(), gauge.getPrefHeight());
              } else {
                  gauge.setPrefSize(PREFERRED_WIDTH, PREFERRED_HEIGHT);
              }
          }
  
          tube = new Path();
          tube.setFillRule(FillRule.EVEN_ODD);
          tube.setStroke(null);
          Tooltip.install(tube, barTooltip);
  
          tubeTop = new Ellipse();
          tubeTop.setStroke(Color.rgb(255, 255, 255, 0.5));
          tubeTop.setStrokeType(StrokeType.INSIDE);
          tubeTop.setStrokeWidth(1);
  
          tubeBottom = new Ellipse();
          tubeBottom.setStroke(null);
  
          fluidUpperLeft   = new CubicCurveTo(0.21794871794871795 * PREFERRED_WIDTH, 0.24444444444444444 * PREFERRED_HEIGHT,
                                              0.0, 0.18888888888888888 * PREFERRED_HEIGHT,
                                              0.0, 0.12222222222222222 * PREFERRED_HEIGHT);
          fluidUpperCenter = new CubicCurveTo(PREFERRED_WIDTH, 0.18888888888888888 * PREFERRED_HEIGHT,
                                              0.782051282051282 * PREFERRED_WIDTH, 0.24444444444444444 * PREFERRED_HEIGHT,
                                              0.5 * PREFERRED_WIDTH, 0.24444444444444444 * PREFERRED_HEIGHT);
          fluidUpperRight  = new CubicCurveTo(PREFERRED_WIDTH, 0.7111111111111111 * PREFERRED_HEIGHT,
                                              PREFERRED_WIDTH, 0.12222222222222222 * PREFERRED_HEIGHT,
                                              PREFERRED_WIDTH, 0.12222222222222222 * PREFERRED_HEIGHT);
  
          fluidBody = new Path();
          fluidBody.getElements().add(new MoveTo(0.0, 0.7111111111111111 * PREFERRED_HEIGHT));
          fluidBody.getElements().add(new CubicCurveTo(0.0, 0.7777777777777778 * PREFERRED_HEIGHT,
                                                       0.21794871794871795 * PREFERRED_WIDTH, 0.8333333333333334 * PREFERRED_HEIGHT,
                                                       0.5 * PREFERRED_WIDTH, 0.8333333333333334 * PREFERRED_HEIGHT));
          fluidBody.getElements().add(new CubicCurveTo(0.782051282051282 * PREFERRED_WIDTH, 0.8333333333333334 * PREFERRED_HEIGHT,
                                                       PREFERRED_WIDTH, 0.7777777777777778 * PREFERRED_HEIGHT,
                                                       PREFERRED_WIDTH, 0.7111111111111111 * PREFERRED_HEIGHT));
          fluidBody.getElements().add(fluidUpperRight);
          fluidBody.getElements().add(fluidUpperCenter);
          fluidBody.getElements().add(fluidUpperLeft);
          fluidBody.getElements().add(new CubicCurveTo(0.0, 0.12222222222222222 * PREFERRED_HEIGHT,
                                                       0.0, 0.7111111111111111 * PREFERRED_HEIGHT,
                                                       0.0, 0.7111111111111111 * PREFERRED_HEIGHT));
          fluidBody.getElements().add(new ClosePath());
          fluidBody.setFillRule(FillRule.EVEN_ODD);
          fluidBody.setStroke(null);
  
          fluidTop = new Ellipse();
          fluidTop.setStroke(null);
  
          valueText = new Text(String.format(locale, formatString, gauge.getCurrentValue()));
          valueText.setMouseTransparent(true);
          Helper.enableNode(valueText, gauge.isValueVisible());
  
          titleText = new Text(gauge.getTitle());
  
          // Add all nodes
          pane = new Pane(tubeBottom, fluidBody, fluidTop, tube, tubeTop, valueText, titleText);
          pane.setBorder(new Border(new BorderStroke(gauge.getBorderPaint(), BorderStrokeStyle.SOLID, CornerRadii.EMPTY, new BorderWidths(gauge.getBorderWidth()))));
          pane.setBackground(new Background(new BackgroundFill(gauge.getBackgroundPaint(), CornerRadii.EMPTY, Insets.EMPTY)));
  
          getChildren().setAll(pane);
      }