conspire/geometry/bvh/primitive/into/mod.rs
1#[cfg(test)]
2mod test;
3
4use crate::geometry::{
5 bbox::{BoundingBox, Unite},
6 bvh::primitive::Primitive,
7};
8
9impl<const D: usize> From<&[Primitive<D>]> for BoundingBox<D> {
10 fn from(primitives: &[Primitive<D>]) -> Self {
11 primitives
12 .iter()
13 .skip(1)
14 .fold(primitives[0].bounding_box.clone(), |bbox, primitive| {
15 bbox.unite(&primitive.bounding_box)
16 })
17 }
18}