pub struct CollisionMask {
pub page: usize,
pub size: Size,
pub occupied: Vec<(ElementId, Rect)>,
pub free: Vec<Rect>,
pub collisions: Vec<(ElementId, ElementId, Rect)>,
pub overflow: Vec<ElementId>,
}Expand description
JSON-serializable geometry-derived mask.
Fields§
§page: usizePage index.
size: SizePage size.
occupied: Vec<(ElementId, Rect)>Selected occupied rectangles.
free: Vec<Rect>Disjoint free rectangles.
collisions: Vec<(ElementId, ElementId, Rect)>Pairwise collisions.
overflow: Vec<ElementId>Visual overflow IDs.
Implementations§
Source§impl CollisionMask
impl CollisionMask
Sourcepub fn derive(
scene: &ResolvedScene,
page: usize,
view: MaskView,
) -> Result<Self>
pub fn derive( scene: &ResolvedScene, page: usize, view: MaskView, ) -> Result<Self>
Derives a mask from resolved geometry; bitmap pixels are never queried.
Sourcepub fn derive_bounded(
scene: &ResolvedScene,
page: usize,
view: MaskView,
limits: &ResourceLimits,
) -> Result<Self>
pub fn derive_bounded( scene: &ResolvedScene, page: usize, view: MaskView, limits: &ResourceLimits, ) -> Result<Self>
Derives a mask under the caller’s scene and diagnostic geometry budgets.
Sourcepub fn to_json_bounded(&self, limits: &ResourceLimits) -> Result<Vec<u8>>
pub fn to_json_bounded(&self, limits: &ResourceLimits) -> Result<Vec<u8>>
Serializes stable geometry JSON under caller-supplied budgets.
Trait Implementations§
Source§impl Clone for CollisionMask
impl Clone for CollisionMask
Source§fn clone(&self) -> CollisionMask
fn clone(&self) -> CollisionMask
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CollisionMask
impl Debug for CollisionMask
Source§impl<'de> Deserialize<'de> for CollisionMask
impl<'de> Deserialize<'de> for CollisionMask
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for CollisionMask
Source§impl PartialEq for CollisionMask
impl PartialEq for CollisionMask
Source§impl Serialize for CollisionMask
impl Serialize for CollisionMask
impl StructuralPartialEq for CollisionMask
Auto Trait Implementations§
impl Freeze for CollisionMask
impl RefUnwindSafe for CollisionMask
impl Send for CollisionMask
impl Sync for CollisionMask
impl Unpin for CollisionMask
impl UnsafeUnpin for CollisionMask
impl UnwindSafe for CollisionMask
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<U, T> ToOwnedObj<U> for Twhere
U: FromObjRef<T>,
impl<U, T> ToOwnedObj<U> for Twhere
U: FromObjRef<T>,
Source§fn to_owned_obj(&self, data: FontData<'_>) -> U
fn to_owned_obj(&self, data: FontData<'_>) -> U
Convert this type into
T, using the provided data to resolve any offsets.