Crates.io | clampf |
lib.rs | clampf |
version | 0.1.1 |
source | src |
created_at | 2018-08-01 12:38:26.238735 |
updated_at | 2018-08-01 15:24:40.904619 |
description | Clamped floating-point types. |
homepage | |
repository | https://github.com/senet4er/clampf |
max_upload_size | |
id | 76947 |
size | 10,398 |
Clamped floating-point types.
Provides wrappers around floating-point values clamped to the range [0,1].
Basic usage:
use clampf::Clamp32; // The `Clamp64` type is also available
#[derive(Debug)]
pub struct Color {
red: Clamp32, // A value in the range [0,1]
green: Clamp32, // A value in the range [0,1]
blue: Clamp32, // A value in the range [0,1]
}
impl Color {
pub fn new(red: f32, green: f32, blue: f32) -> Self {
Color {
// Check the `red` value
red: Clamp32::new(red),
// Check the `green` value
green: Clamp32::new(green),
// Check the `blue` value
blue: Clamp32::new(blue),
}
}
pub fn set_red(&mut self, red: f32) {
// Check the `red` value
self.red.set(red);
}
}
For usage without the standard library you need exclude the std
feature. This
can be done by editing Cargo.toml
:
[dependencies.clampf]
version = "0.1"
default-features = false
or
[dependencies]
clampf = { version = "0.1", default-features = false }