330 {
331 std::vector<std::pair<Vec2d, Vec2d>> result;
332 const Eigen::AlignedBox<double, 3> box(
Vec3d(min.x(), min.y(), z),
Vec3d(max.x(), max.y(), z));
334 const Linef3 &edge =
edges[node.idx];
335
336 if ((edge.a.z() < z) != (edge.b.z() < z)) {
337 const Vec3d p = edge.intersect_plane(z);
338 result.emplace_back(p.head<2>(),
inward[node.idx].template head<2>());
339 }
340 return true;
341 });
342 return result;
343 }
auto intersecting(const G &g)
Definition AABBTreeIndirect.hpp:925
void traverse(const Tree< Dims, T > &tree, Predicate &&pred, Fn &&callback)
Definition AABBTreeIndirect.hpp:986
Eigen::Matrix< double, 3, 1, Eigen::DontAlign > Vec3d
Definition Point.hpp:68
std::vector< Linef3 > edges
Definition SeamPlacer.cpp:326
std::vector< Vec3d > inward
Definition SeamPlacer.cpp:327
AABBTreeIndirect::Tree< 3, double > tree
Definition SeamPlacer.cpp:328