use brep_gizmos::view_cube::ViewCube;
use brep_gizmos::{raster, GizmoCamera, Gizmo, Vec3};
fn main() {
let out = std::env::args().nth(1).unwrap_or_else(|| "viewcube_demo.png".into());
let cube = ViewCube::with_size(360.0);
let eye = Vec3::new(7.0, 7.0, 5.5);
let main = GizmoCamera {
view_proj: raster::test_view_proj([eye.x, eye.y, eye.z], [0.0, 0.0, 0.0], 100.0, 100.0),
eye,
forward: eye.scale(-1.0).normalized(),
up: Vec3::Y,
viewport: [100.0, 100.0],
orthographic: true,
};
let overlay = cube.geometry(&main, Some(ViewCube::FRONT), None);
let mini = cube.mini_camera(&main);
let s = cube.size() as u32;
let png = raster::render_overlay_png(&overlay, &mini, s, s);
std::fs::write(&out, &png).expect("write png");
eprintln!(
"wrote {out} ({} bytes) — iso view, FRONT hovered; faces shown: F (front,+Z), R (right,+X), T (top,+Y)",
png.len()
);
}