Struct rectangle_pack::GroupedRectsToPlace [−][src]
pub struct GroupedRectsToPlace<RectToPlaceId, GroupId = ()> where
RectToPlaceId: Debug + Hash + Eq + Ord + PartialOrd,
GroupId: Debug + Hash + Eq + Ord + PartialOrd, { /* fields omitted */ }
Groups of rectangles that need to be placed into bins.
When placing groups a heuristic is used to determine which groups are the largest. Larger groups are placed first.
A group’s heuristic is computed by calculating the heuristic of all of the rectangles inside the group and then summing them.
Implementations
impl<RectToPlaceId, GroupId> GroupedRectsToPlace<RectToPlaceId, GroupId> where
RectToPlaceId: Debug + Hash + Clone + Eq + Ord + PartialOrd,
GroupId: Debug + Hash + Clone + Eq + Ord + PartialOrd,
[src]
impl<RectToPlaceId, GroupId> GroupedRectsToPlace<RectToPlaceId, GroupId> where
RectToPlaceId: Debug + Hash + Clone + Eq + Ord + PartialOrd,
GroupId: Debug + Hash + Clone + Eq + Ord + PartialOrd,
[src]pub fn new() -> Self
[src]
Create a new LayeredRectGroups
pub fn push_rect(
&mut self,
inbound_id: RectToPlaceId,
group_ids: Option<Vec<GroupId>>,
inbound: RectToInsert
)
[src]
&mut self,
inbound_id: RectToPlaceId,
group_ids: Option<Vec<GroupId>>,
inbound: RectToInsert
)
Push one or more rectangles
Panics
Panics if a Some(Vec<GroupId>)
passed in but the length is 0, as this is likely a
mistake and None
should be used instead.
Trait Implementations
Auto Trait Implementations
impl<RectToPlaceId, GroupId> Send for GroupedRectsToPlace<RectToPlaceId, GroupId> where
GroupId: Send,
RectToPlaceId: Send,
impl<RectToPlaceId, GroupId> Send for GroupedRectsToPlace<RectToPlaceId, GroupId> where
GroupId: Send,
RectToPlaceId: Send,
impl<RectToPlaceId, GroupId> Sync for GroupedRectsToPlace<RectToPlaceId, GroupId> where
GroupId: Sync,
RectToPlaceId: Sync,
impl<RectToPlaceId, GroupId> Sync for GroupedRectsToPlace<RectToPlaceId, GroupId> where
GroupId: Sync,
RectToPlaceId: Sync,
impl<RectToPlaceId, GroupId> Unpin for GroupedRectsToPlace<RectToPlaceId, GroupId>
impl<RectToPlaceId, GroupId> Unpin for GroupedRectsToPlace<RectToPlaceId, GroupId>