From 967b0421971aa62a09013bd58c8aa5613afb2441 Mon Sep 17 00:00:00 2001 From: laurence Date: Fri, 9 Aug 2013 12:24:55 +0100 Subject: [PATCH] ENH: Read Delaunay Mesh --- .../DelaunayMesh/DelaunayMesh.C | 95 ++++++----- .../DelaunayMesh/DelaunayMeshIO.C | 32 ++-- .../cellShapeControlMesh.C | 149 ------------------ .../conformalVoronoiMesh.C | 2 +- 4 files changed, 62 insertions(+), 216 deletions(-) diff --git a/applications/utilities/mesh/generation/foamyHexMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMesh.C b/applications/utilities/mesh/generation/foamyHexMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMesh.C index 18413046da..3afdf9cf13 100644 --- a/applications/utilities/mesh/generation/foamyHexMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMesh.C +++ b/applications/utilities/mesh/generation/foamyHexMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMesh.C @@ -70,47 +70,48 @@ Foam::DelaunayMesh::DelaunayMesh ) ); - labelIOField types - ( - IOobject - ( - "types", - runTime.timeName(), - meshName, - runTime, - IOobject::READ_IF_PRESENT, - IOobject::NO_WRITE - ) - ); - - labelIOField indices - ( - IOobject - ( - "indices", - runTime.timeName(), - meshName, - runTime, - IOobject::READ_IF_PRESENT, - IOobject::NO_WRITE - ) - ); - - labelIOField processorIndices - ( - IOobject - ( - "processorIndices", - runTime.timeName(), - meshName, - runTime, - IOobject::READ_IF_PRESENT, - IOobject::NO_WRITE - ) - ); - if (pts.headerOk()) { + labelIOField types + ( + IOobject + ( + "types", + runTime.timeName(), + meshName, + runTime, + IOobject::MUST_READ, + IOobject::NO_WRITE + ) + ); + +// Do not read in indices +// labelIOField indices +// ( +// IOobject +// ( +// "indices", +// runTime.timeName(), +// meshName, +// runTime, +// IOobject::MUST_READ, +// IOobject::NO_WRITE +// ) +// ); + + labelIOField processorIndices + ( + IOobject + ( + "processorIndices", + runTime.timeName(), + meshName, + runTime, + IOobject::MUST_READ, + IOobject::NO_WRITE + ) + ); + List pointsToInsert(pts.size()); forAll(pointsToInsert, pI) @@ -119,17 +120,9 @@ Foam::DelaunayMesh::DelaunayMesh Vb ( toPoint(pts[pI]), - (indices.headerOk() ? indices[pI] : -1), - ( - types.headerOk() - ? static_cast(types[pI]) - : Vb::vtInternal - ), - ( - processorIndices.headerOk() - ? processorIndices[pI] - : Pstream::myProcNo() - ) + pI, + static_cast(types[pI]), + processorIndices[pI] ); } @@ -140,6 +133,8 @@ Foam::DelaunayMesh::DelaunayMesh false, false ); + + vertexCount_ = Triangulation::number_of_vertices(); } } diff --git a/applications/utilities/mesh/generation/foamyHexMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMeshIO.C b/applications/utilities/mesh/generation/foamyHexMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMeshIO.C index 1a341348b1..33867a7be5 100644 --- a/applications/utilities/mesh/generation/foamyHexMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMeshIO.C +++ b/applications/utilities/mesh/generation/foamyHexMesh/conformalVoronoiMesh/DelaunayMesh/DelaunayMeshIO.C @@ -361,19 +361,19 @@ Foam::DelaunayMesh::createMesh // Calculate pts and a map of point index to location in pts. label vertI = 0; - labelIOField indices - ( - IOobject - ( - "indices", - time().timeName(), - name, - time(), - IOobject::NO_READ, - IOobject::AUTO_WRITE - ), - Triangulation::number_of_vertices() - ); +// labelIOField indices +// ( +// IOobject +// ( +// "indices", +// time().timeName(), +// name, +// time(), +// IOobject::NO_READ, +// IOobject::AUTO_WRITE +// ), +// Triangulation::number_of_vertices() +// ); labelIOField types ( @@ -414,7 +414,7 @@ Foam::DelaunayMesh::createMesh { vertexMap(labelPair(vit->index(), vit->procIndex())) = vertI; points[vertI] = topoint(vit->point()); - indices[vertI] = vit->index(); +// indices[vertI] = vit->index(); types[vertI] = static_cast