From b145e59049447631637ed7450ecc57c9b9f3e7cc Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Tue, 25 Oct 2022 14:53:24 +0200 Subject: [PATCH] STYLE: viewFactorsGen with std::vector (reserve) instead of std::list --- .../viewFactorsGen/searchingEngine_CGAL.H | 37 +++++++++++-------- .../viewFactorsGen/viewFactorsGen.C | 5 ++- 2 files changed, 25 insertions(+), 17 deletions(-) diff --git a/applications/utilities/preProcessing/viewFactorsGen/searchingEngine_CGAL.H b/applications/utilities/preProcessing/viewFactorsGen/searchingEngine_CGAL.H index 667470d3f2..796e2a3dc3 100644 --- a/applications/utilities/preProcessing/viewFactorsGen/searchingEngine_CGAL.H +++ b/applications/utilities/preProcessing/viewFactorsGen/searchingEngine_CGAL.H @@ -25,7 +25,7 @@ dict.add("mergeDistance", SMALL); labelList triSurfaceToAgglom(5*nFineFaces); -triSurface localSurface = triangulate +const triSurface localSurface = triangulate ( patches, includePatches, @@ -57,28 +57,35 @@ triSurfaceToAgglom.resize(surfacesMesh.size()); surfacesMesh.setField(triSurfaceToAgglom); -const pointField& pts = surfacesMesh.localPoints(); +std::vector triangles; -std::list triangles; - -for (const auto& triLocal : surfacesMesh.localFaces()) { - point p1l = pts[triLocal[0]]; - point p2l = pts[triLocal[1]]; - point p3l = pts[triLocal[2]]; + const auto& surf = static_cast(surfacesMesh); - Point p1(p1l[0], p1l[1], p1l[2]); - Point p2(p2l[0], p2l[1], p2l[2]); - Point p3(p3l[0], p3l[1], p3l[2]); + triangles.reserve(surf.size()); - Triangle tri(p1, p2, p3); + const pointField& pts = surf.points(); - if (tri.is_degenerate()) + for (const auto& f : surf) { - std::cout << tri << std::endl; + const point& a = pts[f.a()]; + const point& b = pts[f.b()]; + const point& c = pts[f.c()]; + + triangles.emplace_back + ( + Point(a.x(), a.y(), a.z()), + Point(b.x(), b.y(), b.z()), + Point(c.x(), c.y(), c.z()) + ); + + if (triangles.back().is_degenerate()) + { + std::cout << triangles.back() << std::endl; + } } - triangles.push_back(tri); } + // constructs AABB tree Tree tree(triangles.begin(), triangles.end()); diff --git a/applications/utilities/preProcessing/viewFactorsGen/viewFactorsGen.C b/applications/utilities/preProcessing/viewFactorsGen/viewFactorsGen.C index b92b4a91e9..81d40e4871 100644 --- a/applications/utilities/preProcessing/viewFactorsGen/viewFactorsGen.C +++ b/applications/utilities/preProcessing/viewFactorsGen/viewFactorsGen.C @@ -100,6 +100,7 @@ Description #endif #pragma clang diagnostic ignored "-Wbitwise-instead-of-logical" +#include #include #include #include @@ -112,7 +113,7 @@ typedef K::Direction_3 Vector3C; typedef K::Triangle_3 Triangle; typedef K::Segment_3 Segment; -typedef std::list::iterator Iterator; +typedef std::vector::iterator Iterator; typedef CGAL::AABB_triangle_primitive Primitive; typedef CGAL::AABB_traits AABB_triangle_traits; typedef CGAL::AABB_tree Tree; @@ -872,7 +873,7 @@ int main(int argc, char *argv[]) GaussPoints[4][4] = -GaussPoints[4][3]; - List GaussWeights(5); + FixedList GaussWeights; GaussWeights[0].setSize(1); GaussWeights[0] = 2;