mirror of
https://github.com/KaiserY/trpl-zh-cn
synced 2025-02-25 05:42:18 +08:00
34 lines
706 B
Rust
34 lines
706 B
Rust
|
//! # Art
|
||
|
//!
|
||
|
//! A library for modeling artistic concepts.
|
||
|
|
||
|
pub use self::kinds::PrimaryColor;
|
||
|
pub use self::kinds::SecondaryColor;
|
||
|
pub use self::utils::mix;
|
||
|
|
||
|
pub mod kinds {
|
||
|
/// The primary colors according to the RYB color model.
|
||
|
pub enum PrimaryColor {
|
||
|
Red,
|
||
|
Yellow,
|
||
|
Blue,
|
||
|
}
|
||
|
|
||
|
/// The secondary colors according to the RYB color model.
|
||
|
pub enum SecondaryColor {
|
||
|
Orange,
|
||
|
Green,
|
||
|
Purple,
|
||
|
}
|
||
|
}
|
||
|
|
||
|
pub mod utils {
|
||
|
use crate::kinds::*;
|
||
|
|
||
|
/// Combines two primary colors in equal amounts to create
|
||
|
/// a secondary color.
|
||
|
pub fn mix(c1: PrimaryColor, c2: PrimaryColor) -> SecondaryColor {
|
||
|
SecondaryColor::Orange
|
||
|
}
|
||
|
}
|