Skip to main content

DrawContextExt

Trait DrawContextExt 

Source
pub trait DrawContextExt: DrawContext {
    // Provided methods
    fn fill<B: Into<Brush>>(&mut self, path: &Path, brush: B) { ... }
    fn stroke<B: Into<Brush>>(&mut self, path: &Path, stroke: &Stroke, brush: B) { ... }
    fn fill_rounded_rect<B: Into<Brush>>(
        &mut self,
        rect: Rect,
        corner_radius: CornerRadius,
        brush: B,
    ) { ... }
    fn sdf<F: FnMut(&mut dyn SdfBuilder)>(&mut self, f: F) { ... }
    fn billboard<F: FnMut(&mut dyn DrawContext)>(
        &mut self,
        size: Size,
        transform: Mat4,
        facing: BillboardFacing,
        f: F,
    ) { ... }
    fn viewport_3d<F: FnMut(&mut dyn DrawContext)>(
        &mut self,
        rect: Rect,
        camera: &Camera,
        f: F,
    ) { ... }
}
Expand description

Extension trait for DrawContext that provides ergonomic generic methods

These methods are implemented on concrete types and provide convenient APIs using impl Into<Brush> for colors and brushes.

Provided Methods§

Source

fn fill<B: Into<Brush>>(&mut self, path: &Path, brush: B)

Fill a path with a color or brush

Source

fn stroke<B: Into<Brush>>(&mut self, path: &Path, stroke: &Stroke, brush: B)

Stroke a path with a color or brush

Source

fn fill_rounded_rect<B: Into<Brush>>( &mut self, rect: Rect, corner_radius: CornerRadius, brush: B, )

Fill a rectangle with a color or brush

Source

fn sdf<F: FnMut(&mut dyn SdfBuilder)>(&mut self, f: F)

Build SDF shapes with a closure (convenience wrapper)

Source

fn billboard<F: FnMut(&mut dyn DrawContext)>( &mut self, size: Size, transform: Mat4, facing: BillboardFacing, f: F, )

Embed 2D content as a billboard (convenience wrapper)

Source

fn viewport_3d<F: FnMut(&mut dyn DrawContext)>( &mut self, rect: Rect, camera: &Camera, f: F, )

Embed a 3D viewport (convenience wrapper)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§