use bytemuck::{Pod, Zeroable}; use glam::{Affine2, Vec2}; #[derive(Copy, Clone, Pod, Zeroable)] #[repr(C)] pub struct Transform { pub coefficients: Affine2, } impl Transform { pub fn new(coefficients: Affine2) -> Self { Transform { coefficients } } pub fn transform_point(&self, point: Vec2) -> Vec2 { self.coefficients.transform_point2(point) } }