Go to the documentation of this file.
18 #ifndef LIBMESH_MESH_TRIANGLE_HOLES_H
19 #define LIBMESH_MESH_TRIANGLE_HOLES_H
21 #include "libmesh/libmesh_config.h"
23 #ifdef LIBMESH_HAVE_TRIANGLE
26 #include "libmesh/mesh_triangle_interface.h"
27 #include "libmesh/point.h"
64 virtual unsigned int n_points()
const = 0;
69 virtual Point point(
const unsigned int n)
const = 0;
82 std::vector<unsigned int> seg;
107 virtual unsigned int n_points()
const override;
109 virtual Point point(
const unsigned int n)
const override;
150 const std::vector<Point> & points);
153 const std::vector<Point> & points,
156 virtual unsigned int n_points()
const override;
158 virtual Point point(
const unsigned int n)
const override;
226 #endif // LIBMESH_HAVE_TRIANGLE
228 #endif // LIBMESH_MESH_TRIANGLE_HOLES_H
A concrete instantiation of the Hole class that describes polygonal (triangular, square,...
std::vector< unsigned int > _segment_indices
virtual ~Hole()
Destructor.
Real _max_area
Maximum area that is allowed for all triangles in this region Default negative maximum area means tha...
virtual Point point(const unsigned int n) const override
Return the nth point defining the hole.
virtual unsigned int n_points() const =0
The number of geometric points which define the hole.
const std::vector< Point > _points
Reference to the vector of points which makes up the hole.
virtual Point point(const unsigned int n) const =0
Return the nth point defining the hole.
The libMesh namespace provides an interface to certain functionality in the library.
virtual std::vector< unsigned int > segment_indices() const
Starting indices of points for a hole with multiple disconnected boundaries.
Point _center
(x,y) location of the center of the hole
virtual Point point(const unsigned int n) const override
Return the nth point defining the hole.
ArbitraryHole(const Point ¢er, const std::vector< Point > &points)
The constructor requires a point which lies in the interior of the hole and a reference to a vector o...
virtual Point inside() const =0
Return an (arbitrary) point which lies inside the hole.
An abstract class for defining a 2-dimensional hole.
virtual unsigned int n_points() const override
The number of geometric points which define the hole.
const Point _center
arbitrary (x,y) location inside the hole
virtual std::vector< unsigned int > segment_indices() const override
Starting indices of points for a hole with multiple disconnected boundaries.
virtual unsigned int n_points() const override
The number of geometric points which define the hole.
Real _radius
circular hole radius
const Point _center
Arbitrary (x,y) location inside the region.
A Point defines a location in LIBMESH_DIM dimensional Real space.
Region(const Point ¢er, Real attribute=0, Real max_area=-std::numeric_limits< Real >::max())
Constructor.
virtual Point inside() const override
Return an (arbitrary) point which lies inside the hole.
Real _attribute
Attribute of the region Default value for attribute is zero.
virtual Point inside() const override
Return an (arbitrary) point which lies inside the hole.
A class for defining a 2-dimensional region for Triangle.
Another concrete instantiation of the hole, this one should be sufficiently general for most non-poly...
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
PolygonHole(const Point ¢er, Real radius, unsigned int n_points)
Constructor specifying the center, radius, and number of points which comprise the hole.
unsigned int _n_points
number of points used to describe the hole.