diff options
author | 2023-10-24 05:34:03 +0200 | |
---|---|---|
committer | 2024-02-02 02:24:45 +0100 | |
commit | f4d66486016076bb339a338bc589645119962d1e (patch) | |
tree | bbb9c4d996216893296cf4323857323542d6e757 /wgpu | |
parent | a6e91d13d5d43796d0e6bb570fb4f010cf27921a (diff) | |
download | iced-f4d66486016076bb339a338bc589645119962d1e.tar.gz iced-f4d66486016076bb339a338bc589645119962d1e.tar.bz2 iced-f4d66486016076bb339a338bc589645119962d1e.zip |
Introduce `with_transformation` to `Renderer` trait
Diffstat (limited to 'wgpu')
-rw-r--r-- | wgpu/src/backend.rs | 4 | ||||
-rw-r--r-- | wgpu/src/geometry.rs | 3 | ||||
-rw-r--r-- | wgpu/src/image.rs | 3 | ||||
-rw-r--r-- | wgpu/src/layer.rs | 20 | ||||
-rw-r--r-- | wgpu/src/layer/mesh.rs | 3 | ||||
-rw-r--r-- | wgpu/src/layer/text.rs | 6 | ||||
-rw-r--r-- | wgpu/src/quad.rs | 4 | ||||
-rw-r--r-- | wgpu/src/text.rs | 20 | ||||
-rw-r--r-- | wgpu/src/triangle.rs | 4 |
9 files changed, 33 insertions, 34 deletions
diff --git a/wgpu/src/backend.rs b/wgpu/src/backend.rs index e86e52c4..77b6fa83 100644 --- a/wgpu/src/backend.rs +++ b/wgpu/src/backend.rs @@ -1,7 +1,7 @@ -use crate::core::{Color, Size}; +use crate::core::{Color, Size, Transformation}; use crate::graphics::backend; use crate::graphics::color; -use crate::graphics::{Transformation, Viewport}; +use crate::graphics::Viewport; use crate::primitive::pipeline; use crate::primitive::{self, Primitive}; use crate::quad; diff --git a/wgpu/src/geometry.rs b/wgpu/src/geometry.rs index d0660edc..8cfcfff0 100644 --- a/wgpu/src/geometry.rs +++ b/wgpu/src/geometry.rs @@ -1,6 +1,6 @@ //! Build and draw geometry. use crate::core::text::LineHeight; -use crate::core::{Pixels, Point, Rectangle, Size, Vector}; +use crate::core::{Pixels, Point, Rectangle, Size, Transformation, Vector}; use crate::graphics::color; use crate::graphics::geometry::fill::{self, Fill}; use crate::graphics::geometry::{ @@ -8,7 +8,6 @@ use crate::graphics::geometry::{ }; use crate::graphics::gradient::{self, Gradient}; use crate::graphics::mesh::{self, Mesh}; -use crate::graphics::Transformation; use crate::primitive::{self, Primitive}; use lyon::geom::euclid; diff --git a/wgpu/src/image.rs b/wgpu/src/image.rs index 1e5d3ee0..06c22870 100644 --- a/wgpu/src/image.rs +++ b/wgpu/src/image.rs @@ -8,8 +8,7 @@ mod vector; use atlas::Atlas; -use crate::core::{Rectangle, Size}; -use crate::graphics::Transformation; +use crate::core::{Rectangle, Size, Transformation}; use crate::layer; use crate::Buffer; diff --git a/wgpu/src/layer.rs b/wgpu/src/layer.rs index 4a2e72df..12588849 100644 --- a/wgpu/src/layer.rs +++ b/wgpu/src/layer.rs @@ -12,10 +12,12 @@ pub use text::Text; use crate::core; use crate::core::alignment; -use crate::core::{Color, Font, Pixels, Point, Rectangle, Size, Vector}; +use crate::core::{ + Color, Font, Pixels, Point, Rectangle, Size, Transformation, Vector, +}; use crate::graphics; use crate::graphics::color; -use crate::graphics::{Transformation, Viewport}; +use crate::graphics::Viewport; use crate::primitive::{self, Primitive}; use crate::quad::{self, Quad}; @@ -130,10 +132,10 @@ impl<'a> Layer<'a> { layer.text.push(Text::Paragraph { paragraph: paragraph.clone(), - position: *position * transformation, + position: *position, color: *color, - clip_bounds: *clip_bounds * transformation, - scale: transformation.scale_factor(), + clip_bounds: *clip_bounds, + transformation, }); } Primitive::Editor { @@ -146,10 +148,10 @@ impl<'a> Layer<'a> { layer.text.push(Text::Editor { editor: editor.clone(), - position: *position * transformation, + position: *position, color: *color, - clip_bounds: *clip_bounds * transformation, - scale: transformation.scale_factor(), + clip_bounds: *clip_bounds, + transformation, }); } Primitive::Text { @@ -168,7 +170,7 @@ impl<'a> Layer<'a> { layer.text.push(Text::Cached(text::Cached { content, - bounds: *bounds * transformation, + bounds: *bounds + transformation.translation(), size: *size * transformation.scale_factor(), line_height: *line_height, color: *color, diff --git a/wgpu/src/layer/mesh.rs b/wgpu/src/layer/mesh.rs index af3dc74a..5ed7c654 100644 --- a/wgpu/src/layer/mesh.rs +++ b/wgpu/src/layer/mesh.rs @@ -1,7 +1,6 @@ //! A collection of triangle primitives. -use crate::core::Rectangle; +use crate::core::{Rectangle, Transformation}; use crate::graphics::mesh; -use crate::graphics::Transformation; /// A mesh of triangles. #[derive(Debug, Clone, Copy)] diff --git a/wgpu/src/layer/text.rs b/wgpu/src/layer/text.rs index 2a09aecc..4c2b66a4 100644 --- a/wgpu/src/layer/text.rs +++ b/wgpu/src/layer/text.rs @@ -1,6 +1,6 @@ use crate::core::alignment; use crate::core::text; -use crate::core::{Color, Font, Pixels, Point, Rectangle}; +use crate::core::{Color, Font, Pixels, Point, Rectangle, Transformation}; use crate::graphics; use crate::graphics::text::editor; use crate::graphics::text::paragraph; @@ -15,7 +15,7 @@ pub enum Text<'a> { position: Point, color: Color, clip_bounds: Rectangle, - scale: f32, + transformation: Transformation, }, /// An editor. #[allow(missing_docs)] @@ -24,7 +24,7 @@ pub enum Text<'a> { position: Point, color: Color, clip_bounds: Rectangle, - scale: f32, + transformation: Transformation, }, /// Some cached text. Cached(Cached<'a>), diff --git a/wgpu/src/quad.rs b/wgpu/src/quad.rs index 5a45187e..b932f54f 100644 --- a/wgpu/src/quad.rs +++ b/wgpu/src/quad.rs @@ -4,9 +4,9 @@ mod solid; use gradient::Gradient; use solid::Solid; -use crate::core::{Background, Rectangle}; +use crate::core::{Background, Rectangle, Transformation}; +use crate::graphics; use crate::graphics::color; -use crate::graphics::{self, Transformation}; use bytemuck::{Pod, Zeroable}; diff --git a/wgpu/src/text.rs b/wgpu/src/text.rs index 4a151073..cffe57cb 100644 --- a/wgpu/src/text.rs +++ b/wgpu/src/text.rs @@ -1,5 +1,5 @@ use crate::core::alignment; -use crate::core::{Rectangle, Size}; +use crate::core::{Rectangle, Size, Transformation}; use crate::graphics::color; use crate::graphics::text::cache::{self, Cache}; use crate::graphics::text::{font_system, to_color, Editor, Paragraph}; @@ -124,13 +124,13 @@ impl Pipeline { vertical_alignment, color, clip_bounds, - scale, + transformation, ) = match section { Text::Paragraph { position, color, clip_bounds, - scale, + transformation, .. } => { use crate::core::text::Paragraph as _; @@ -147,14 +147,14 @@ impl Pipeline { paragraph.vertical_alignment(), *color, *clip_bounds, - *scale, + *transformation, ) } Text::Editor { position, color, clip_bounds, - scale, + transformation, .. } => { use crate::core::text::Editor as _; @@ -171,7 +171,7 @@ impl Pipeline { alignment::Vertical::Top, *color, *clip_bounds, - *scale, + *transformation, ) } Text::Cached(text) => { @@ -191,7 +191,7 @@ impl Pipeline { text.vertical_alignment, text.color, text.clip_bounds, - 1.0, + Transformation::IDENTITY, ) } Text::Raw(text) => { @@ -211,12 +211,12 @@ impl Pipeline { alignment::Vertical::Top, text.color, text.clip_bounds, - 1.0, + Transformation::IDENTITY, ) } }; - let bounds = bounds * scale_factor; + let bounds = bounds * transformation * scale_factor; let left = match horizontal_alignment { alignment::Horizontal::Left => bounds.x, @@ -241,7 +241,7 @@ impl Pipeline { buffer, left, top, - scale: scale * scale_factor, + scale: scale_factor * transformation.scale_factor(), bounds: glyphon::TextBounds { left: clip_bounds.x as i32, top: clip_bounds.y as i32, diff --git a/wgpu/src/triangle.rs b/wgpu/src/triangle.rs index 28a7b1b3..2bb6f307 100644 --- a/wgpu/src/triangle.rs +++ b/wgpu/src/triangle.rs @@ -1,8 +1,8 @@ //! Draw meshes of triangles. mod msaa; -use crate::core::Size; -use crate::graphics::{Antialiasing, Transformation}; +use crate::core::{Size, Transformation}; +use crate::graphics::Antialiasing; use crate::layer::mesh::{self, Mesh}; use crate::Buffer; |