From 749d4a7026991ac56373c81c945f0f56cc54ae52 Mon Sep 17 00:00:00 2001 From: tim Date: Thu, 28 Feb 2019 10:12:40 -0500 Subject: [PATCH] [occ] Build edge-face map only once --- libsrc/occ/occgenmesh.cpp | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/libsrc/occ/occgenmesh.cpp b/libsrc/occ/occgenmesh.cpp index fb224793..a341dd14 100644 --- a/libsrc/occ/occgenmesh.cpp +++ b/libsrc/occ/occgenmesh.cpp @@ -1031,6 +1031,9 @@ namespace netgen // setting elements per edge + TopTools_IndexedDataMapOfShapeListOfShape edge_face_map; + TopExp::MapShapesAndAncestors(geom.shape, TopAbs_EDGE, TopAbs_FACE, edge_face_map); + for (int i = 1; i <= nedges && !multithread.terminate; i++) { TopoDS_Edge e = TopoDS::Edge (geom.emap(i)); @@ -1050,14 +1053,6 @@ namespace netgen double localh = len/mparam.segmentsperedge; double s0, s1; - // Philippose - 23/01/2009 - // Find all the parent faces of a given edge - // and limit the mesh size of the edge based on the - // mesh size limit of the face - TopTools_IndexedDataMapOfShapeListOfShape edge_face_map; - edge_face_map.Clear(); - - TopExp::MapShapesAndAncestors(geom.shape, TopAbs_EDGE, TopAbs_FACE, edge_face_map); const TopTools_ListOfShape& parent_faces = edge_face_map.FindFromKey(e); TopTools_ListIteratorOfListOfShape parent_face_list;