From ec313f856c76258bec394ba5d9658c5d00d110f3 Mon Sep 17 00:00:00 2001 From: laurence Date: Fri, 8 Feb 2013 15:42:29 +0000 Subject: [PATCH] ENH: cvMesh: DelaunayMesh: Switch to using dictionary to construct patches --- .../DelaunayMesh/DelaunayMesh.H | 3 +- .../DelaunayMesh/DelaunayMeshIO.C | 28 +++++++++---------- 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMesh.H b/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMesh.H index 9d5b645f69..a3b6426885 100644 --- a/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMesh.H +++ b/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMesh.H @@ -141,8 +141,7 @@ private: const label nInternalFaces, faceList& faces, labelList& owner, - labelList& patchSizes, - labelList& patchStarts, + PtrList& patchDicts, const List >& patchFaces, const List >& patchOwners ) const; diff --git a/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMeshIO.C b/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMeshIO.C index 20172c1da9..c3102f531b 100644 --- a/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMeshIO.C +++ b/applications/utilities/mesh/generation/cvMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMeshIO.C @@ -82,25 +82,27 @@ void Foam::DelaunayMesh::addPatches const label nInternalFaces, faceList& faces, labelList& owner, - labelList& patchSizes, - labelList& patchStarts, + PtrList& patchDicts, const List >& patchFaces, const List >& patchOwners ) const { label nPatches = patchFaces.size(); - patchSizes.setSize(nPatches, -1); - patchStarts.setSize(nPatches, -1); + patchDicts.setSize(nPatches); + forAll(patchDicts, patchI) + { + patchDicts.set(patchI, new dictionary()); + } label nBoundaryFaces = 0; forAll(patchFaces, p) { - patchSizes[p] = patchFaces[p].size(); - patchStarts[p] = nInternalFaces + nBoundaryFaces; + patchDicts[p].set("nFaces", patchFaces[p].size()); + patchDicts[p].set("startFace", nInternalFaces + nBoundaryFaces); - nBoundaryFaces += patchSizes[p]; + nBoundaryFaces += patchFaces[p].size(); } faces.setSize(nInternalFaces + nBoundaryFaces); @@ -346,8 +348,8 @@ Foam::DelaunayMesh::createMesh wordList patchNames(1, "cvMesh_defaultPatch"); wordList patchTypes(1, wallPolyPatch::typeName); - labelList patchSizes(1, 0); - labelList patchStarts(1, 0); + PtrList patchDicts(1); + patchDicts.set(0, new dictionary()); List > patchFaces(1, DynamicList()); List > patchOwners(1, DynamicList