Skip to main content

RenderStrategy

Trait RenderStrategy 

Source
pub trait RenderStrategy {
    // Required methods
    fn reset_state(&mut self);
    fn last_point(&self) -> Option<Pos2>;
    fn set_last_point(&mut self, point: Pos2);
    fn render_flat(
        &mut self,
        ctx: &mut DrawingContext<'_>,
        render_ctx: &RenderContext,
        start_px: f32,
        start_val: f64,
        end_px: f32,
        end_val: f64,
    );

    // Provided method
    fn render_range(
        &mut self,
        ctx: &mut DrawingContext<'_>,
        render_ctx: &RenderContext,
        px: f32,
        min_val: f64,
        max_val: f64,
    ) { ... }
}
Expand description

Rendering strategy for analog waveforms.

Required Methods§

Source

fn reset_state(&mut self)

Reset state after encountering undefined values.

Source

fn last_point(&self) -> Option<Pos2>

Get the last rendered point (for Range connection).

Source

fn set_last_point(&mut self, point: Pos2)

Set the last rendered point (after Range draws).

Source

fn render_flat( &mut self, ctx: &mut DrawingContext<'_>, render_ctx: &RenderContext, start_px: f32, start_val: f64, end_px: f32, end_val: f64, )

Render a flat segment. Step: horizontal line at start_val, connect to next. Interpolated: line from (start_px, start_val) to (end_px, end_val).

Provided Methods§

Source

fn render_range( &mut self, ctx: &mut DrawingContext<'_>, render_ctx: &RenderContext, px: f32, min_val: f64, max_val: f64, )

Render a range segment (default impl, same for both strategies). Draws vertical bar at px from min_val to max_val.

Implementors§