MCPcopy Create free account
hub / github.com/OpenWebCAD/node-occ / extractEdgeFromFace

Method extractEdgeFromFace

src/Mesh.cc:334–359  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

332 return 1;
333}
334int Mesh::extractEdgeFromFace(const TopoDS_Face& face, const occHandle(Poly_Triangulation)& triangulation, const std::vector<uint32_t>& translationMap)
335{
336 TopExp_Explorer ex0, ex1;
337
338 for (ex0.Init(face, TopAbs_WIRE); ex0.More(); ex0.Next()) {
339
340 const TopoDS_Wire& wire = TopoDS::Wire(ex0.Current());
341
342 for (ex1.Init(wire, TopAbs_EDGE); ex1.More(); ex1.Next()) {
343
344 const TopoDS_Edge& edge = TopoDS::Edge(ex1.Current());
345
346 // skip degenerated edge
347 if (BRep_Tool::Degenerated(edge))
348 continue;
349
350 if (false) {
351 // skip edge if it is a seam
352 if (BRep_Tool::IsClosed(edge, face))
353 continue;
354 }
355 extractEdge(edge, triangulation, translationMap);
356 }
357 }
358 return 0;
359}
360int Mesh::extractEdge(const TopoDS_Edge& edge, const occHandle(Poly_Triangulation)& triangulation, const std::vector<uint32_t>& translationMap)
361{
362

Callers

nothing calls this directly

Calls 3

WireClass · 0.70
EdgeClass · 0.70
InitMethod · 0.45

Tested by

no test coverage detected