pub enum Color {
Show 30 variants
rgb(ColorChannel, ColorChannel, ColorChannel),
rgba(ColorChannel, ColorChannel, ColorChannel, ColorChannel),
hsl(Rotation, ColorChannel, ColorChannel),
hsla(Rotation, ColorChannel, ColorChannel, ColorChannel),
SLATE,
GRAY,
ZINC,
NEUTRAL,
STONE,
RED,
ORANGE,
AMBER,
YELLOW,
LIME,
GREEN,
EMERALD,
TEAL,
CYAN,
SKY,
BLUE,
INDIGO,
VIOLET,
PURPLE,
FUCHSIA,
PINK,
ROSE,
BLACK,
WHITE,
TRANSPARENT,
NONE,
}Expand description
Entrypoint for specifying and representing colors in Pax.
Variants§
rgb(ColorChannel, ColorChannel, ColorChannel)
Models a color in the RGB space, with an alpha channel of 100%
rgba(ColorChannel, ColorChannel, ColorChannel, ColorChannel)
Models a color in the RGBA space
hsl(Rotation, ColorChannel, ColorChannel)
Models a color in the HSL space, with an alpha channel of 100%
hsla(Rotation, ColorChannel, ColorChannel, ColorChannel)
Models a color in the HSLA space.
SLATE
Cool blue-gray, RGB (100, 116, 139).
GRAY
Balanced gray, RGB (107, 114, 128).
ZINC
Crisp cool gray, RGB (113, 113, 122).
NEUTRAL
Plain neutral gray, RGB (115, 115, 115).
STONE
Warm stone gray, RGB (120, 113, 108).
RED
Bright warm red, RGB (239, 68, 68).
ORANGE
Vivid citrus orange, RGB (249, 115, 22).
AMBER
Golden amber, RGB (245, 158, 11).
YELLOW
Sunny yellow, RGB (234, 179, 8).
LIME
Electric lime, RGB (132, 204, 22).
GREEN
Fresh green, RGB (34, 197, 94).
EMERALD
Jewel emerald, RGB (16, 185, 129).
TEAL
Deep aquatic teal, RGB (20, 184, 166).
CYAN
Bright clean cyan, RGB (6, 182, 212).
SKY
Open sky blue, RGB (14, 165, 233).
BLUE
Saturated primary blue, RGB (59, 130, 246).
INDIGO
Cool electric indigo, RGB (99, 102, 241).
VIOLET
Soft vivid violet, RGB (139, 92, 246).
PURPLE
Rich playful purple, RGB (168, 85, 247).
FUCHSIA
Brilliant magenta fuchsia, RGB (217, 70, 239).
PINK
Bright candy pink, RGB (236, 72, 153).
ROSE
Warm rosy red, RGB (244, 63, 94).
BLACK
Pure black, RGB (0, 0, 0).
WHITE
Pure white, RGB (255, 255, 255).
TRANSPARENT
Fully transparent white, RGB (255, 255, 255).
NONE
Non-rendering transparent, RGB (255, 255, 255).
Implementations§
Source§impl Color
impl Color
Sourcepub fn rgb(r: ColorChannel, g: ColorChannel, b: ColorChannel) -> Color
pub fn rgb(r: ColorChannel, g: ColorChannel, b: ColorChannel) -> Color
Constructs an RGB color with 100% alpha.
Sourcepub fn rgba(
r: ColorChannel,
g: ColorChannel,
b: ColorChannel,
a: ColorChannel,
) -> Color
pub fn rgba( r: ColorChannel, g: ColorChannel, b: ColorChannel, a: ColorChannel, ) -> Color
Constructs an RGBA color.
Sourcepub fn hsl(h: Rotation, s: ColorChannel, l: ColorChannel) -> Color
pub fn hsl(h: Rotation, s: ColorChannel, l: ColorChannel) -> Color
Constructs an HSL color with 100% alpha.
Sourcepub fn hsla(
h: Rotation,
s: ColorChannel,
l: ColorChannel,
a: ColorChannel,
) -> Color
pub fn hsla( h: Rotation, s: ColorChannel, l: ColorChannel, a: ColorChannel, ) -> Color
Constructs an HSLA color.
pub fn to_piet_color(&self) -> Color
Sourcepub fn from_rgba_0_1(rgba_0_1: [f64; 4]) -> Color
pub fn from_rgba_0_1(rgba_0_1: [f64; 4]) -> Color
Constructs a color from normalized RGBA channels in the [0.0, 1.0] range.
Sourcepub fn from_hex(hex: &str) -> Color
pub fn from_hex(hex: &str) -> Color
Constructs a color from a six- or eight-character RGB/RGBA hex string.
Sourcepub fn alpha_0_1(&self) -> f64
pub fn alpha_0_1(&self) -> f64
Returns this color’s alpha channel normalized to the [0.0, 1.0] range.
Sourcepub fn blend_premultiplied(
colors: impl IntoIterator<Item = (Color, f64)>,
) -> Color
pub fn blend_premultiplied( colors: impl IntoIterator<Item = (Color, f64)>, ) -> Color
Adds weighted colors in premultiplied RGBA, then returns straight RGBA. Weights should sum to one. This retains the current RGB encoding; it does not perform a linear-light conversion or blend against a backdrop.
Sourcepub fn with_alpha_factor(&self, factor: f64) -> Color
pub fn with_alpha_factor(&self, factor: f64) -> Color
Multiplies this color’s alpha channel by factor.
Sourcepub fn to_rgba_0_1(&self) -> [f64; 4]
pub fn to_rgba_0_1(&self) -> [f64; 4]
Returns RGBA channels normalized to the [0.0, 1.0] range.
Sourcepub fn to_hsla_0_1(&self) -> [f64; 4]
pub fn to_hsla_0_1(&self) -> [f64; 4]
Returns HSLA channels normalized to the [0.0, 1.0] range.
Trait Implementations§
Source§impl CoercionRules for Color
impl CoercionRules for Color
Source§fn is_identity_roundtrip() -> bool
fn is_identity_roundtrip() -> bool
Self preserves the semantics of converting that clone
through ToPaxValue and back with try_coerce. Read moreSource§fn allows_singleton_stack() -> bool
fn allows_singleton_stack() -> bool
Source§impl<'de> Deserialize<'de> for Color
impl<'de> Deserialize<'de> for Color
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Color, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Color, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl HelperFunctions for Color
impl HelperFunctions for Color
Source§fn register_all_functions()
fn register_all_functions()
Source§impl Interpolatable for Color
impl Interpolatable for Color
Source§impl Into<ColorMessage> for &Color
impl Into<ColorMessage> for &Color
Source§fn into(self) -> ColorMessage
fn into(self) -> ColorMessage
Source§impl PartialEq<ColorMessage> for Color
impl PartialEq<ColorMessage> for Color
Source§impl Serialize for Color
impl Serialize for Color
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for Color
Source§impl ToPaxValue for Color
impl ToPaxValue for Color
Source§fn to_pax_value(self) -> PaxValue
fn to_pax_value(self) -> PaxValue
PaxValue.Source§fn nested_properties(&self) -> Vec<UntypedProperty>
fn nested_properties(&self) -> Vec<UntypedProperty>
Source§fn to_pax_value_in_graph(self) -> PaxValuewhere
Self: Sized,
fn to_pax_value_in_graph(self) -> PaxValuewhere
Self: Sized,
Self::to_pax_value reads published value snapshots.