pub struct CurvesNode {
pub master: Vec<[f32; 2]>,
pub red: Vec<[f32; 2]>,
pub green: Vec<[f32; 2]>,
pub blue: Vec<[f32; 2]>,
/* private fields */
}Expand description
Per-channel tone curve adjustment via a precomputed 256-sample LUT.
Each curve is defined by control points [input, output] in [0, 1] and
interpolated with the Steffen (1990) monotone cubic method (no overshoot).
The master curve is applied to each channel first, then the per-channel curve.
Fields§
§master: Vec<[f32; 2]>Control points for the master curve (applied to every channel).
red: Vec<[f32; 2]>Control points for the red channel curve.
green: Vec<[f32; 2]>Control points for the green channel curve.
blue: Vec<[f32; 2]>Control points for the blue channel curve.
Implementations§
Trait Implementations§
Source§impl Default for CurvesNode
impl Default for CurvesNode
Source§impl RenderNode for CurvesNode
Available on crate feature wgpu only.
impl RenderNode for CurvesNode
Available on crate feature
wgpu only.Source§fn process(
&self,
inputs: &[&Texture],
outputs: &[&Texture],
ctx: &RenderContext,
)
fn process( &self, inputs: &[&Texture], outputs: &[&Texture], ctx: &RenderContext, )
Run the GPU render pass. Read more
Source§fn input_count(&self) -> usize
fn input_count(&self) -> usize
Number of input textures required by this node (default: 1).
Source§fn pass_count(&self) -> usize
fn pass_count(&self) -> usize
Number of render passes (default: 1). Multi-pass nodes (e.g. gaussian
blur) return 2 or more.
Source§impl RenderNodeCpu for CurvesNode
impl RenderNodeCpu for CurvesNode
Auto Trait Implementations§
impl !Freeze for CurvesNode
impl !RefUnwindSafe for CurvesNode
impl !UnwindSafe for CurvesNode
impl Send for CurvesNode
impl Sync for CurvesNode
impl Unpin for CurvesNode
impl UnsafeUnpin for CurvesNode
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more