diff --git a/src/layout/layout.rs b/src/layout/layout.rs index 904c2d7..a3eb4b1 100644 --- a/src/layout/layout.rs +++ b/src/layout/layout.rs @@ -735,7 +735,7 @@ impl Layout { .clamp(0.0, f64::INFINITY), ); - inflated_shape.intersects(wrapper.geom()) + inflated_shape.intersects(&wrapper.data.primitive(self).shape()) }) .map(|wrapper| wrapper.data) .next() @@ -751,7 +751,7 @@ impl Layout { .rtree() .locate_in_envelope_intersecting(&RTreeObject::envelope(&shape)) .filter(|wrapper| !self.are_connectable(node, wrapper.data)) - .filter(|wrapper| shape.intersects(wrapper.geom())) + .filter(|wrapper| shape.intersects(&wrapper.data.primitive(self).shape())) .map(|wrapper| wrapper.data) .next() .and_then(|collidee| Some(Collision(shape, collidee)))