Draft Canvas types and clock example

This commit is contained in:
Héctor Ramón Jiménez 2020-02-12 03:47:36 +01:00
parent 8daf798e57
commit f436f20eb8
9 changed files with 494 additions and 2 deletions

View file

@ -0,0 +1,39 @@
use iced_native::Point;
use crate::{
canvas::{Fill, Path, Stroke},
triangle,
};
#[derive(Debug)]
pub struct Frame {
width: u32,
height: u32,
buffers: lyon::tessellation::VertexBuffers<triangle::Vertex2D, u16>,
}
impl Frame {
pub(crate) fn new(width: u32, height: u32) -> Frame {
Frame {
width,
height,
buffers: lyon::tessellation::VertexBuffers::new(),
}
}
pub fn width(&self) -> u32 {
self.width
}
pub fn height(&self) -> u32 {
self.height
}
pub fn center(&self) -> Point {
Point::new(self.width as f32 / 2.0, self.height as f32 / 2.0)
}
pub fn fill(&mut self, path: Path, fill: Fill) {}
pub fn stroke(&mut self, path: Path, stroke: Stroke) {}
}