pub enum Primitive {
    None,
    Group {
        primitives: Vec<Primitive>,
    },
    Text {
        content: String,
        bounds: Rectangle,
        color: Color,
        size: f32,
        font: Font,
        horizontal_alignment: Horizontal,
        vertical_alignment: Vertical,
    },
    Quad {
        bounds: Rectangle,
        background: Background,
        border_radius: [f32; 4],
        border_width: f32,
        border_color: Color,
    },
    Image {
        handle: Handle,
        bounds: Rectangle,
    },
    Svg {
        handle: Handle,
        color: Option<Color>,
        bounds: Rectangle,
    },
    Clip {
        bounds: Rectangle,
        content: Box<Primitive>,
    },
    Translate {
        translation: Vector,
        content: Box<Primitive>,
    },
    SolidMesh {
        buffers: Mesh2D<ColoredVertex2D>,
        size: Size,
    },
    GradientMesh {
        buffers: Mesh2D<Vertex2D>,
        size: Size,
        gradient: Gradient,
    },
    Cached {
        cache: Arc<Primitive>,
    },
}
Expand description

A rendering primitive.

Variants§

§

None

An empty primitive

§

Group

Fields

§primitives: Vec<Primitive>

The primitives of the group

A group of primitives

§

Text

Fields

§content: String

The contents of the text

§bounds: Rectangle

The bounds of the text

§color: Color

The color of the text

§size: f32

The size of the text

§font: Font

The font of the text

§horizontal_alignment: Horizontal

The horizontal alignment of the text

§vertical_alignment: Vertical

The vertical alignment of the text

A text primitive

§

Quad

Fields

§bounds: Rectangle

The bounds of the quad

§background: Background

The background of the quad

§border_radius: [f32; 4]

The border radius of the quad

§border_width: f32

The border width of the quad

§border_color: Color

The border color of the quad

A quad primitive

§

Image

Fields

§handle: Handle

The handle of the image

§bounds: Rectangle

The bounds of the image

An image primitive

§

Svg

Fields

§handle: Handle

The path of the SVG file

§color: Option<Color>

The Color filter

§bounds: Rectangle

The bounds of the viewport

An SVG primitive

§

Clip

Fields

§bounds: Rectangle

The bounds of the clip

§content: Box<Primitive>

The content of the clip

A clip primitive

§

Translate

Fields

§translation: Vector

The translation vector

§content: Box<Primitive>

The primitive to translate

A primitive that applies a translation

§

SolidMesh

Fields

§buffers: Mesh2D<ColoredVertex2D>

The vertices and indices of the mesh.

§size: Size

The size of the drawable region of the mesh.

Any geometry that falls out of this region will be clipped.

A low-level primitive to render a mesh of triangles with a solid color.

It can be used to render many kinds of geometry freely.

§

GradientMesh

Fields

§buffers: Mesh2D<Vertex2D>

The vertices and indices of the mesh.

§size: Size

The size of the drawable region of the mesh.

Any geometry that falls out of this region will be clipped.

§gradient: Gradient

The Gradient to apply to the mesh.

A low-level primitive to render a mesh of triangles with a gradient.

It can be used to render many kinds of geometry freely.

§

Cached

Fields

§cache: Arc<Primitive>

The cached primitive

A cached primitive.

This can be useful if you are implementing a widget where primitive generation is expensive.

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Convert the source color to the destination color using the specified method Read more
Convert the source color to the destination color using the bradford method by default Read more
Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Convert into T with values clamped to the color defined bounds Read more
Convert into T. The resulting color might be invalid in its color space Read more
The alignment of pointer.
The type for initializers.
Initializes a with the given initializer. Read more
Dereferences the given pointer. Read more
Mutably dereferences the given pointer. Read more
Drops the object pointed to by the given pointer. Read more
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more