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);
              }
          }
  
          mainInnerShadow0 = new InnerShadow();
          mainInnerShadow0.setOffsetX(0.0);
          mainInnerShadow0.setOffsetY(0.0);
          mainInnerShadow0.setRadius(0.0625 * PREFERRED_HEIGHT);
          mainInnerShadow0.setColor(Color.rgb(255, 255, 255, 0.5));
          mainInnerShadow0.setBlurType(BlurType.TWO_PASS_BOX);
  
          mainInnerShadow1 = new InnerShadow();
          mainInnerShadow1.setOffsetX(0.0);
          mainInnerShadow1.setOffsetY(1.0);
          mainInnerShadow1.setRadius(0.04166667 * PREFERRED_HEIGHT);
          mainInnerShadow1.setColor(Color.rgb(0, 0, 0, 0.65));
          mainInnerShadow1.setBlurType(BlurType.TWO_PASS_BOX);
          mainInnerShadow1.setInput(mainInnerShadow0);
  
          crystalClip = new Rectangle(0, 0, width, height);
          crystalClip.setArcWidth(5);
          crystalClip.setArcHeight(5);
  
          crystalImage   = Helper.createNoiseImage(PREFERRED_WIDTH, PREFERRED_HEIGHT, DARK_NOISE_COLOR, BRIGHT_NOISE_COLOR, 8);
          crystalOverlay = new ImageView(crystalImage);
          crystalOverlay.setClip(crystalClip);
          boolean crystalEnabled = gauge.isLcdCrystalEnabled();
          Helper.enableNode(crystalOverlay, crystalEnabled);
  
          threshold = new Path();
          threshold.setStroke(null);
          Helper.enableNode(threshold, gauge.isThresholdVisible());
  
          average = new Path();
          average.setStroke(null);
          Helper.enableNode(average, gauge.isAverageVisible());
  
          backgroundText = new Text(String.format(locale, valueFormatString, gauge.getCurrentValue()));
          backgroundText.setFill(gauge.getLcdDesign().lcdBackgroundColor);
          backgroundText.setOpacity((LcdFont.LCD == gauge.getLcdFont() || LcdFont.ELEKTRA == gauge.getLcdFont()) ? 1 : 0);
  
          valueText = new Text(String.format(locale, valueFormatString, gauge.getCurrentValue()));
          valueText.setFill(gauge.getLcdDesign().lcdForegroundColor);
  
          unitText = new Text(gauge.getUnit());
          unitText.setFill(gauge.getLcdDesign().lcdForegroundColor);
          Helper.enableNode(unitText, !gauge.getUnit().isEmpty());
  
          title = new Text(gauge.getTitle());
          title.setFill(gauge.getLcdDesign().lcdForegroundColor);
          Helper.enableNode(title, !gauge.getTitle().isEmpty());
  
          lowerRightText = new Text(gauge.getSubTitle());
          lowerRightText.setFill(gauge.getLcdDesign().lcdForegroundColor);
          Helper.enableNode(lowerRightText, !gauge.getSubTitle().isEmpty());
  
          upperLeftText = new Text(String.format(locale, otherFormatString, gauge.getMinMeasuredValue()));
          upperLeftText.setFill(gauge.getLcdDesign().lcdForegroundColor);
          Helper.enableNode(upperLeftText, gauge.isMinMeasuredValueVisible());
  
          upperRightText = new Text(String.format(locale, otherFormatString, gauge.getMaxMeasuredValue()));
          upperRightText.setFill(gauge.getLcdDesign().lcdForegroundColor);
          Helper.enableNode(upperRightText, gauge.isMaxMeasuredValueVisible());
  
          lowerCenterText = new Text(String.format(locale, otherFormatString, gauge.getOldValue()));
          lowerCenterText.setFill(gauge.getLcdDesign().lcdForegroundColor);
          Helper.enableNode(lowerCenterText, gauge.isOldValueVisible());
  
          shadowGroup = new Group();
          shadowGroup.setEffect(gauge.isShadowsEnabled() ? FOREGROUND_SHADOW : null);
          shadowGroup.getChildren().setAll(threshold,
                                           average,
                                           valueText,
                                           unitText,
                                           title,
                                           lowerRightText,
                                           upperLeftText,
                                           upperRightText,
                                           lowerCenterText);
  
          pane = new Pane(crystalOverlay, backgroundText, shadowGroup);
          pane.setEffect(gauge.isShadowsEnabled() ? mainInnerShadow1 : null);
          getChildren().setAll(pane);
      }