Class ColorUtil

java.lang.Object
de.pirckheimer_gymnasium.engine_pi.util.ColorUtil

public final class ColorUtil extends Object
Statische Klasse, die Hilfsmethoden zur Farbberechnung und -manipulation bereitstellt.
  • Method Details

    • encode

      public static String encode(Color color)
      Kodiert die angegebene Farbe in eine hexadezimale Repräsenation. Das Ausgabeformat ist wie folgt:
      • #RRGGBB - Für Farben ohne Alpha-Kanal bzw. ohne zusätzliche Transparenzinformationen.
      • #RRGGBBAA - Für Farben mit Alpha-Kanal bzw. mit zusätzlichen Transparenzinformationen.

      Beispiele:
      Color.RED = "#ff0000"
      new Color(255, 0, 0, 200) = "#ff0000c8"

      Parameters:
      color - Die Farbe, die kodiert werden soll.
      Returns:
      Eine hexadezimale Repräsenation als Zeichenkette.
      See Also:
    • decode

      public static Color decode(String hex)
      Konvertiert eine Farbe in hexadezimaler Notation in die entsprechende Instanz der Klasse Color.

      Hinweis: Die Methode gibt null zurück, falls die Eingabe nicht korrekt ist.

      Mögliche Eingabeformate sind:
      • #RRGGBB - Für Farben ohne Alpha-Kanal bzw. ohne zusätzliche Transparenzinformationen.
      • #RRGGBBAA - Für Farben mit Alpha-Kanal bzw. mit zusätzlichen Transparenzinformationen.

      Beispiele:
      "#ff0000" = Color.RED
      "#ff0000c8" = new Color(255, 0, 0, 200)

      Parameters:
      hex - Die Farbe in einer hexadezimalen Repräsentation.
      Returns:
      Die dekodierte Farbe.
      See Also:
    • decode

      public static Color decode(String hex, boolean solid)
      Konvertiert eine Farbe in hexadezimaler Notation in die entsprechende Instanz der Klasse Color.
      Parameters:
      hex - Ein Farbe in hexadezimaler Notation.
      solid - Bedeutet, dass der Alphakanal grundsätzlich ein dunklere Version der Grundfarbe erzeugt.
      Returns:
      Die Farbe als Instanz der Klasse Color.
    • decode

      public static Color[] decode(String[] hex)
      Dekodiert eine Feld / Array bestehend aus hexadezimalen Repräsentationen von Farben in Zeichenkettenform in ein Feld aus Objekten der Klasse Color.
      Parameters:
      hex - Eine Feld / Array bestehend aus hexadezimalen Repräsentationen von Farben in Zeichenkettenform.
      Returns:
      Ein Feld bestehend aus Objekten der Klasse Color.
    • ensureColorValueRange

      public static int ensureColorValueRange(float value)
      Stellt sicher, dass der angegebene Wert innerhalb des akzeptierten Bereichs für Farbwerte (0-255) liegt. Kleinere Werte werden zwangsweise auf 0 gesetzt und größere Werte ergeben 255.
      Parameters:
      value - Die Zahl, die überprüft werden soll.
      Returns:
      Ein ganzzahliger Wert, der den Farbwertbeschränkungen entspricht.
    • ensureColorValueRange

      public static int ensureColorValueRange(int value)
      Stellt sicher, dass der angegebene Wert innerhalb des akzeptierten Bereichs für Farbwerte (0-255) liegt. Kleinere Werte werden zwangsweise auf 0 gesetzt und größere Werte ergeben 255.
      Parameters:
      value - Die Zahl, die überprüft werden soll.
      Returns:
      Ein ganzzahliger Wert, der den Farbwertbeschränkungen entspricht.
    • premultiply

      public static Color premultiply(Color color)
      Premultiplies the alpha on the given color.
      Parameters:
      color - The color to premultiply
      Returns:
      The color given, with alpha replaced with a black background.
    • interpolate

      public static Color interpolate(Color color1, Color color2, double factor)
    • getTransparentVariant

      public static Color getTransparentVariant(Color color, int newAlpha)