Inhaltsverzeichnis

std.color

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


Imports


Typen

Color (struct)

Feld Typ
r int64
g int64
b int64
a int64

Funktionen

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