use skia_safe::{Canvas, Color4f, ColorSpace, Font, Paint, Point}; use twclient::world::World; const TEE_RADIUS: f32 = 16.0; pub struct TeeRenderer {} impl TeeRenderer { pub fn new() -> Self { Self {} } pub fn draw(&mut self, world: &World, canvas: &mut Canvas) { let tee_paint = Paint::new( Color4f { a: 1.0, r: 0.2, g: 0.0, b: 0.2, }, &ColorSpace::new_srgb(), ); let name_paint = Paint::new( Color4f { a: 1.0, r: 1.0, g: 1.0, b: 0.0, }, &ColorSpace::new_srgb(), ); for t in world.tees.values() { let origin = Point { x: t.x as f32, y: t.y as f32, }; canvas.draw_circle(origin, TEE_RADIUS, &tee_paint); canvas.draw_str( t.name.as_str(), (origin.x, origin.y - 20.0), &Font::default(), &name_paint, ); } } }