RGBA-Farbrepräsentation mit je einem int64-Wert pro Kanal (0–255). Bietet vordefinierte Grundfarben (ColorBlack, ColorRed, …), Alpha-Blending, Invertierung, Graustufen-Konvertierung, Helligkeit, Sättigung, lineare Interpolation (ColorLerp), Hex-Darstellung (RGB als int64) und HSL-Konvertierung. Alle Operationen sind rein ganzzahlig — keine Fließkommaberechnungen.
Einsatzbereiche: Grafikausgabe über X11 oder LyxVision, Bildverarbeitung, Farbberechnungen in UI-Engines, Terminal-Farben.
Autor: Andreas Röne
Copyright: 2024-2025 Andreas Röne
| Feld | Typ |
|---|---|
r | int64 |
g | int64 |
b | int64 |
a | int64 |
| Signatur | Sichtbarkeit | Beschreibung |
|---|---|---|
ColorNew(r: int64, g: int64, b: int64, a: int64): Color | pub | Erstellt Farbe aus RGBA-Kanalwerten |
ColorRGB(r: int64, g: int64, b: int64): Color | pub | Erstellt opake Farbe aus RGB-Werten |
ColorRGBA(r: int64, g: int64, b: int64, a: int64): Color | pub | Erstellt Farbe mit explizitem Alpha-Kanal |
ColorGray(gray: int64): Color | pub | Erstellt Grauton aus einem Helligkeitswert |
ColorEmpty(): Color | pub | Liefert transparente leere Farbe zurück |
ColorOpaque(): Color | pub | Liefert vollständig opakes Weiß zurück |
ColorBlack(): Color { return ColorRGB(0, 0, 0); } | pub | Liefert Schwarz zurück |
ColorWhite(): Color { return ColorRGB(255, 255, 255); } | pub | Liefert Weiß zurück |
ColorRed(): Color { return ColorRGB(255, 0, 0); } | pub | Liefert Rot zurück |
ColorGreen(): Color { return ColorRGB(0, 255, 0); } | pub | Liefert Grün zurück |
ColorBlue(): Color { return ColorRGB(0, 0, 255); } | pub | Liefert Blau zurück |
ColorYellow(): Color { return ColorRGB(255, 255, 0); } | pub | Liefert Gelb zurück |
ColorCyan(): Color { return ColorRGB(0, 255, 255); } | pub | Liefert Cyan zurück |
ColorMagenta(): Color { return ColorRGB(255, 0, 255); } | pub | Liefert Magenta zurück |
ColorOrange(): Color { return ColorRGB(255, 165, 0); } | pub | Liefert Orange zurück |
ColorPurple(): Color { return ColorRGB(128, 0, 128); } | pub | Liefert Lila zurück |
ColorPink(): Color { return ColorRGB(255, 192, 203); } | pub | Liefert Rosa zurück |
ColorBrown(): Color { return ColorRGB(165, 42, 42); } | pub | Liefert Braun zurück |
ColorGrayLight(): Color { return ColorRGB(200, 200, 200); } | pub | Liefert Hellgrau zurück |
ColorGrayDark(): Color { return ColorRGB(64, 64, 64); } | pub | Liefert Dunkelgrau zurück |
ColorIsOpaque(c: Color): bool | pub | Prüft ob Farbe vollständig opak ist |
ColorIsTransparent(c: Color): bool | pub | Prüft ob Farbe vollständig transparent ist |
ColorIsValid(c: Color): bool | pub | Prüft ob alle Kanalwerte im gültigen Bereich |
ColorWithAlpha(c: Color, alpha: int64): Color | pub | Gibt Farbe mit neuem Alpha-Wert zurück |
ColorWithRed(c: Color, red: int64): Color | pub | Gibt Farbe mit neuem Rot-Kanal zurück |
ColorWithGreen(c: Color, green: int64): Color | pub | Gibt Farbe mit neuem Grün-Kanal zurück |
ColorWithBlue(c: Color, blue: int64): Color | pub | Gibt Farbe mit neuem Blau-Kanal zurück |
ColorBlend(src: Color, dst: Color): Color | pub | Mischt Quell- und Zielfarbe per Alpha-Blending |
ColorMultiply(c1: Color, c2: Color): Color | pub | Multipliziert zwei Farben kanalweise |
ColorInvert(c: Color): Color | pub | Invertiert alle RGB-Kanäle der Farbe |
ColorGrayscale(c: Color): Color | pub | Konvertiert Farbe in Graustufe |
ColorBrighten(c: Color, amount: int64): Color | pub | Erhöht Helligkeit um angegebenen Betrag |
ColorDarken(c: Color, amount: int64): Color | pub | Verringert Helligkeit um angegebenen Betrag |
ColorSaturate(c: Color, amount: int64): Color | pub | Erhöht Sättigung um angegebenen Betrag |
ColorLerp(c1: Color, c2: Color, t: int64): Color | pub | Interpoliert linear zwischen zwei Farben |
ColorMix(c1: Color, c2: Color): Color | pub | Mischt zwei Farben zu gleichen Teilen |
ColorEqual(c1: Color, c2: Color): bool | pub | Prüft zwei Farben auf Gleichheit |
ColorNotEqual(c1: Color, c2: Color): bool | pub | Prüft zwei Farben auf Ungleichheit |
ColorDistance(c1: Color, c2: Color): int64 | pub | Berechnet euklidischen Abstand zweier Farben |
ColorFromHex(hex: int64): Color | pub | Erstellt Farbe aus Hex-RGB-Wert |
ColorToHex(c: Color): int64 | pub | Konvertiert Farbe in RGB-Hex-Wert |
ColorToHexARGB(c: Color): int64 | pub | Konvertiert Farbe in ARGB-Hex-Wert |
ColorFromHSL(h: int64, s: int64, l: int64): Color | pub | Erstellt Farbe aus HSL-Kanalwerten |
HueToRGB(p: int64, q: int64, hue: int64): int64 | priv | Hilfsfunktion für HSL-zu-RGB-Konvertierung |