use std::f64::consts::{PI, TAU};
use ab_glyph::FontArc;
use glam::{DVec2, dvec2};
use palette::Srgba;
use render_agnostic::{
Renderer, image_registries::image_image_registry::ImageImageRegistry,
renderers::image::ImageRenderer,
};
fn main() {
let mut image_renderer = ImageRenderer::new(
64,
64,
2.0,
DVec2::splat(0.5),
1,
FontArc::try_from_slice(include_bytes!("roboto.ttf")).unwrap(),
ImageImageRegistry::default(),
);
image_renderer.render_rectangle(
DVec2::splat(8.0),
16.0,
16.0,
DVec2::splat(0.0),
0.0,
Srgba::new(1.0, 1.0, 1.0, 1.0),
);
image_renderer.render_rectangle(
dvec2(32.0, 32.0),
16.0,
16.0,
DVec2::splat(0.5),
-PI / 2.0,
Srgba::new(1.0, 0.0, 1.0, 1.0),
);
image_renderer.render_rectangle_lines(
DVec2::splat(40.0),
8.0,
16.0,
DVec2::splat(0.5),
0.0,
1.0,
Srgba::new(0.0, 0.0, 1.0, 1.0),
);
image_renderer.render_rectangle_lines(
DVec2::splat(40.0),
16.0,
16.0,
DVec2::splat(0.0),
0.0,
1.0,
Srgba::new(1.0, 0.0, 0.0, 1.0),
);
image_renderer.render_rectangle_lines(
DVec2::splat(40.0),
8.0,
16.0,
DVec2::splat(0.5),
TAU / 8.0,
1.0,
Srgba::new(0.0, 1.0, 0.0, 1.0),
);
image_renderer
.render_image_onto(image_renderer.black())
.save("rectangles.png")
.unwrap();
}