Revision c555e848e7be6e0b9f1f84f37a463246c1cf7378 authored by Thomas Fischer on 06 October 2021, 08:28:54 UTC, committed by Thomas Fischer on 06 October 2021, 08:52:56 UTC
1 parent a225d03
BoundaryElementsOnSurface.h
/**
* \file
* \copyright
* Copyright (c) 2012-2021, OpenGeoSys Community (http://www.opengeosys.org)
* Distributed under a Modified BSD License.
* See accompanying file LICENSE.txt or
* http://www.opengeosys.org/project/license
*/
#pragma once
#include <vector>
namespace GeoLib
{
class Surface;
}
namespace MeshLib
{
class Mesh;
class Element;
}
namespace MeshGeoToolsLib
{
class MeshNodeSearcher;
/**
* This class collects element faces located along a surface.
* Note that internal faces are not collected in this class.
*/
class BoundaryElementsOnSurface
{
public:
/**
* Constructor
* @param mesh a mesh object
* @param mshNodeSearcher a MeshNodeSearcher object which is internally used to search mesh nodes
* @param sfc a surface object where face elements are searched for
*/
BoundaryElementsOnSurface(MeshLib::Mesh const& mesh,
MeshNodeSearcher const& mshNodeSearcher,
GeoLib::Surface const& sfc);
/// destructor
virtual ~BoundaryElementsOnSurface();
/// return the mesh object
MeshLib::Mesh const& getMesh() const {return _mesh;}
/**
* Deploying this method the user can get access to the underlying
* GeoLib::Surface.
* @return the underlying GeoLib::Surface
*/
GeoLib::Surface const& getSurface() const {return _sfc;}
/**
* Return the vector of boundary elements (i.e. faces). The elements are unsorted.
*/
std::vector<MeshLib::Element*> const& getBoundaryElements() const {return _boundary_elements;}
private:
MeshLib::Mesh const& _mesh;
GeoLib::Surface const& _sfc;
std::vector<MeshLib::Element*> _boundary_elements;
};
} // end namespace MeshGeoToolsLib
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...