/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | cfMesh: A library for mesh generation
\\ / O peration |
\\ / A nd | Author: Franjo Juretic (franjo.juretic@c-fields.com)
\\/ M anipulation | Copyright (C) Creative Fields, Ltd.
-------------------------------------------------------------------------------
License
This file is part of cfMesh.
cfMesh is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 3 of the License, or (at your
option) any later version.
cfMesh is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with cfMesh. If not, see .
Description
\*---------------------------------------------------------------------------*/
#include "triSurfaceRemoveFacets.H"
#include "triSurfModifier.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
void triSurfaceRemoveFacets::markFacetsForRemoval(boolList& removeFacet) const
{
removeFacet.setSize(surf_.size());
removeFacet = false;
const geometricSurfacePatchList& patches = surf_.patches();
//- mark patches which will be removed
boolList removePatch(patches.size(), false);
forAll(patches, patchI)
{
if( selectedEntities_.contains(patches[patchI].name()) )
removePatch[patchI] = true;
}
//- select facets affected by the deletion of a patch
forAll(surf_, triI)
{
if( removePatch[surf_[triI].region()] )
removeFacet[triI] = true;
}
//- mark facets contained in selected subsets
DynList