Expand description
Color conversions and types.
If you want a compact color representation, use Color32
.
If you want to manipulate RGBA colors use Rgba
.
If you want to manipulate colors in a way closer to how humans think about colors, use HsvaGamma
.
Feature flags
-
extra_debug_asserts
— Enable additional checks if debug assertions are enabled (debug builds). -
extra_asserts
— Always enable additional checks.
Optional dependencies
Macros
An assert that is only active when
epaint
is compiled with the extra_asserts
feature
or with the extra_debug_asserts
feature in debug builds.Construct a
crate::Color32
from a hex RGB or RGBA string.Structs
This format is used for space-efficient color representation (32 bits).
Hue, saturation, value, alpha. All in the range [0, 1].
No premultiplied alpha.
Like Hsva but with the
v
value (brightness) being gamma corrected
so that it is somewhat perceptually even.0-1 linear space
RGBA
color with premultiplied alpha.Functions
linear [0, 1] -> gamma [0, 1] (not clamped).
Works for numbers outside this range (e.g. negative numbers).
linear [0, 1] -> gamma [0, 255] (clamped).
Values outside this range will be clamped to the range.
All ranges in 0-1, rgb is linear.
gamma [0, 255] -> linear [0, 1].
linear [0, 255] -> linear [0, 1].
Useful for alpha-channel.
gamma [0, 1] -> linear [0, 1] (not clamped).
Works for numbers outside this range (e.g. negative numbers).
linear [0, 1] -> linear [0, 255] (clamped).
Useful for alpha-channel.
All ranges in 0-1, rgb is linear.
Cheap and ugly.
Made for graying out disabled
Ui
s.