use bevy::math::Vec2; use bevy::prelude::Rect; #[macro_export] macro_rules! deref_as { ($outer:ty => $inner:ty) => { impl ::std::ops::Deref for $outer { type Target = $inner; fn deref(&self) -> &Self::Target { &self.0 } } }; (mut $outer:ty => $inner:ty) => { deref_as!($outer => $inner); impl ::std::ops::DerefMut for $outer { fn deref_mut(&mut self) -> &mut Self::Target { &mut self.0 } } } } pub fn translate_rect(rect: Rect, translation: Vec2) -> Rect { Rect::from_corners(rect.min + translation, rect.max + translation) }