diff options
Diffstat (limited to 'wgpu/src/layer')
| -rw-r--r-- | wgpu/src/layer/image.rs | 30 | ||||
| -rw-r--r-- | wgpu/src/layer/mesh.rs | 97 | ||||
| -rw-r--r-- | wgpu/src/layer/pipeline.rs | 17 | ||||
| -rw-r--r-- | wgpu/src/layer/text.rs | 70 | 
4 files changed, 0 insertions, 214 deletions
| diff --git a/wgpu/src/layer/image.rs b/wgpu/src/layer/image.rs deleted file mode 100644 index facbe192..00000000 --- a/wgpu/src/layer/image.rs +++ /dev/null @@ -1,30 +0,0 @@ -use crate::core::image; -use crate::core::svg; -use crate::core::{Color, Rectangle}; - -/// A raster or vector image. -#[derive(Debug, Clone)] -pub enum Image { -    /// A raster image. -    Raster { -        /// The handle of a raster image. -        handle: image::Handle, - -        /// The filter method of a raster image. -        filter_method: image::FilterMethod, - -        /// The bounds of the image. -        bounds: Rectangle, -    }, -    /// A vector image. -    Vector { -        /// The handle of a vector image. -        handle: svg::Handle, - -        /// The [`Color`] filter -        color: Option<Color>, - -        /// The bounds of the image. -        bounds: Rectangle, -    }, -} diff --git a/wgpu/src/layer/mesh.rs b/wgpu/src/layer/mesh.rs deleted file mode 100644 index 5ed7c654..00000000 --- a/wgpu/src/layer/mesh.rs +++ /dev/null @@ -1,97 +0,0 @@ -//! A collection of triangle primitives. -use crate::core::{Rectangle, Transformation}; -use crate::graphics::mesh; - -/// A mesh of triangles. -#[derive(Debug, Clone, Copy)] -pub enum Mesh<'a> { -    /// A mesh of triangles with a solid color. -    Solid { -        /// The [`Transformation`] for the vertices of the [`Mesh`]. -        transformation: Transformation, - -        /// The vertex and index buffers of the [`Mesh`]. -        buffers: &'a mesh::Indexed<mesh::SolidVertex2D>, - -        /// The clipping bounds of the [`Mesh`]. -        clip_bounds: Rectangle<f32>, -    }, -    /// A mesh of triangles with a gradient color. -    Gradient { -        /// The [`Transformation`] for the vertices of the [`Mesh`]. -        transformation: Transformation, - -        /// The vertex and index buffers of the [`Mesh`]. -        buffers: &'a mesh::Indexed<mesh::GradientVertex2D>, - -        /// The clipping bounds of the [`Mesh`]. -        clip_bounds: Rectangle<f32>, -    }, -} - -impl Mesh<'_> { -    /// Returns the origin of the [`Mesh`]. -    pub fn transformation(&self) -> Transformation { -        match self { -            Self::Solid { transformation, .. } -            | Self::Gradient { transformation, .. } => *transformation, -        } -    } - -    /// Returns the indices of the [`Mesh`]. -    pub fn indices(&self) -> &[u32] { -        match self { -            Self::Solid { buffers, .. } => &buffers.indices, -            Self::Gradient { buffers, .. } => &buffers.indices, -        } -    } - -    /// Returns the clip bounds of the [`Mesh`]. -    pub fn clip_bounds(&self) -> Rectangle<f32> { -        match self { -            Self::Solid { clip_bounds, .. } -            | Self::Gradient { clip_bounds, .. } => *clip_bounds, -        } -    } -} - -/// The result of counting the attributes of a set of meshes. -#[derive(Debug, Clone, Copy, Default)] -pub struct AttributeCount { -    /// The total amount of solid vertices. -    pub solid_vertices: usize, - -    /// The total amount of solid meshes. -    pub solids: usize, - -    /// The total amount of gradient vertices. -    pub gradient_vertices: usize, - -    /// The total amount of gradient meshes. -    pub gradients: usize, - -    /// The total amount of indices. -    pub indices: usize, -} - -/// Returns the number of total vertices & total indices of all [`Mesh`]es. -pub fn attribute_count_of<'a>(meshes: &'a [Mesh<'a>]) -> AttributeCount { -    meshes -        .iter() -        .fold(AttributeCount::default(), |mut count, mesh| { -            match mesh { -                Mesh::Solid { buffers, .. } => { -                    count.solids += 1; -                    count.solid_vertices += buffers.vertices.len(); -                    count.indices += buffers.indices.len(); -                } -                Mesh::Gradient { buffers, .. } => { -                    count.gradients += 1; -                    count.gradient_vertices += buffers.vertices.len(); -                    count.indices += buffers.indices.len(); -                } -            } - -            count -        }) -} diff --git a/wgpu/src/layer/pipeline.rs b/wgpu/src/layer/pipeline.rs deleted file mode 100644 index 6dfe6750..00000000 --- a/wgpu/src/layer/pipeline.rs +++ /dev/null @@ -1,17 +0,0 @@ -use crate::core::Rectangle; -use crate::primitive::pipeline::Primitive; - -use std::sync::Arc; - -#[derive(Clone, Debug)] -/// A custom primitive which can be used to render primitives associated with a custom pipeline. -pub struct Pipeline { -    /// The bounds of the [`Pipeline`]. -    pub bounds: Rectangle, - -    /// The viewport of the [`Pipeline`]. -    pub viewport: Rectangle, - -    /// The [`Primitive`] to render. -    pub primitive: Arc<dyn Primitive>, -} diff --git a/wgpu/src/layer/text.rs b/wgpu/src/layer/text.rs deleted file mode 100644 index b3a00130..00000000 --- a/wgpu/src/layer/text.rs +++ /dev/null @@ -1,70 +0,0 @@ -use crate::core::alignment; -use crate::core::text; -use crate::core::{Color, Font, Pixels, Point, Rectangle, Transformation}; -use crate::graphics; -use crate::graphics::text::editor; -use crate::graphics::text::paragraph; - -/// A text primitive. -#[derive(Debug, Clone)] -pub enum Text<'a> { -    /// A paragraph. -    #[allow(missing_docs)] -    Paragraph { -        paragraph: paragraph::Weak, -        position: Point, -        color: Color, -        clip_bounds: Rectangle, -        transformation: Transformation, -    }, -    /// An editor. -    #[allow(missing_docs)] -    Editor { -        editor: editor::Weak, -        position: Point, -        color: Color, -        clip_bounds: Rectangle, -        transformation: Transformation, -    }, -    /// Some cached text. -    Cached(Cached<'a>), -    /// Some raw text. -    #[allow(missing_docs)] -    Raw { -        raw: graphics::text::Raw, -        transformation: Transformation, -    }, -} - -#[derive(Debug, Clone)] -pub struct Cached<'a> { -    /// The content of the [`Text`]. -    pub content: &'a str, - -    /// The layout bounds of the [`Text`]. -    pub bounds: Rectangle, - -    /// The color of the [`Text`], in __linear RGB_. -    pub color: Color, - -    /// The size of the [`Text`] in logical pixels. -    pub size: Pixels, - -    /// The line height of the [`Text`]. -    pub line_height: text::LineHeight, - -    /// The font of the [`Text`]. -    pub font: Font, - -    /// The horizontal alignment of the [`Text`]. -    pub horizontal_alignment: alignment::Horizontal, - -    /// The vertical alignment of the [`Text`]. -    pub vertical_alignment: alignment::Vertical, - -    /// The shaping strategy of the text. -    pub shaping: text::Shaping, - -    /// The clip bounds of the text. -    pub clip_bounds: Rectangle, -} | 
