pub fn intersecting_pairs(
mesh_a: &Mesh,
bvh_a: &Bvh,
mesh_b: &Mesh,
bvh_b: &Bvh,
xf: &Rigid,
out: &mut Vec<(TriangleId, TriangleId)>,
) -> Result<usize>Expand description
Appends to out every pair (a, b) of an alive triangle a of A and an
alive triangle b of B that intersect or touch, with B placed in A’s space
by xf, and returns how many were appended. The appended pairs are sorted
by (a, b); elements already in out are kept and stay in front.
The test is exact, as for intersects. Passing the same mesh twice means
two coincident copies: with Rigid::IDENTITY every (t, t) is a pair,
along with every pair of neighbouring triangles.
§Errors
As for intersects, and QueryError::OutOfMemory when out cannot
grow. On any error out keeps its original length.