100{
103 auto min_coords = group.
regions.front().start_coordinates;
104 auto max_coords = group.
regions.front().end_coordinates;
105
106 for (const auto& region : group.regions) {
107 for (size_t i = 0; i < min_coords.size() && i < region.start_coordinates.size(); ++i) {
108 min_coords[i] = std::min(min_coords[i], region.start_coordinates[i]);
109 }
110 for (size_t i = 0; i < max_coords.size() && i < region.end_coordinates.size(); ++i) {
111 max_coords[i] = std::max(max_coords[i], region.end_coordinates[i]);
112 }
113 }
114
115 Region bounds(min_coords, max_coords);
117 return bounds;
118}
void set_region_attribute(Region ®ion, const std::string &key, std::any value)
Set an attribute value on a Region.
std::vector< Region > regions
Collection of regions belonging to this group.
Represents a point or span in N-dimensional space.