16 #ifndef dealii_tria_boundary_lib_h 17 #define dealii_tria_boundary_lib_h 20 #include <deal.II/base/config.h> 21 #include <deal.II/grid/tria_boundary.h> 23 DEAL_II_NAMESPACE_OPEN
53 template <
int dim,
int spacedim = dim>
63 const unsigned int axis = 0);
78 virtual std::unique_ptr<Manifold<dim,spacedim> >
clone()
const override;
85 get_new_point_on_line (
const typename Triangulation<dim,spacedim>::line_iterator &line)
const override;
92 get_new_point_on_quad (
const typename Triangulation<dim,spacedim>::quad_iterator &quad)
const override;
127 double get_radius ()
const;
220 const double radius_1,
227 virtual std::unique_ptr<Manifold<dim,dim> >
clone()
const override;
260 std::vector<
Point<dim> > &points)
const override;
271 std::vector<
Point<dim> > &points)
const override;
326 get_intermediate_points_between_points (
const Point<dim> &p0,
354 template <
int dim,
int spacedim=dim>
362 const double radius = 1.0);
367 virtual std::unique_ptr<Manifold<dim,spacedim> >
clone()
const override;
375 get_new_point_on_line (
const typename Triangulation<dim,spacedim>::line_iterator &line)
const override;
383 get_new_point_on_quad (
const typename Triangulation<dim,spacedim>::quad_iterator &quad)
const override;
509 const double radius = 1.0);
514 virtual std::unique_ptr<Manifold<dim,dim> >
clone()
const override;
536 std::vector<
Point<dim> > &points)
const override;
546 std::vector<
Point<dim> > &points)
const override;
589 virtual std::unique_ptr<Manifold<dim,dim> >
clone()
const override;
622 const double inner_radius = -1,
623 const double outer_radius = -1);
628 virtual std::unique_ptr<Manifold<dim,dim> >
clone()
const override;
650 std::vector<
Point<dim> > &points)
const override;
660 std::vector<
Point<dim> > &points)
const override;
677 const double outer_radius;
692 template <
int dim,
int spacedim>
704 virtual std::unique_ptr<Manifold<dim,spacedim> >
clone()
const override;
711 get_new_point_on_line (
const typename Triangulation<dim,spacedim>::line_iterator &line)
const override;
717 get_new_point_on_quad (
const typename Triangulation<dim,spacedim>::quad_iterator &quad)
const override;
723 const typename Triangulation< dim, spacedim >::line_iterator &line,
730 const typename Triangulation< dim, spacedim >::quad_iterator &quad,
749 double get_correct_angle(
const double angle,
const double x,
const double y)
const;
795 const Triangulation<1>::line_iterator &,
800 const Triangulation<3>::quad_iterator &quad,
801 std::vector<
Point<3> > &points)
const;
839 DEAL_II_NAMESPACE_CLOSE
virtual Point< spacedim > get_new_point_on_quad(const typename Triangulation< dim, spacedim >::quad_iterator &quad) const override
virtual std::unique_ptr< Manifold< dim, dim > > clone() const override
virtual void get_intermediate_points_on_line(const typename Triangulation< dim, spacedim >::line_iterator &line, std::vector< Point< spacedim > > &points) const
const Point< spacedim > point_on_axis
virtual void get_normals_at_vertices(const typename Triangulation< dim, spacedim >::face_iterator &face, typename Boundary< dim, spacedim >::FaceVertexNormals &face_vertex_normals) const override
const Point< spacedim > direction
bool compute_radius_automatically
virtual void get_normals_at_vertices(const typename Triangulation< dim, spacedim >::face_iterator &face, typename Boundary< dim, spacedim >::FaceVertexNormals &face_vertex_normals) const override
virtual void get_intermediate_points_on_quad(const typename Triangulation< dim >::quad_iterator &quad, std::vector< Point< dim > > &points) const override
virtual void get_normals_at_vertices(const typename Triangulation< dim >::face_iterator &face, typename Boundary< dim >::FaceVertexNormals &face_vertex_normals) const override
virtual Point< spacedim > get_new_point_on_line(const typename Triangulation< dim, spacedim >::line_iterator &line) const override
virtual void get_intermediate_points_on_quad(const typename Triangulation< dim, spacedim >::quad_iterator &quad, std::vector< Point< spacedim > > &points) const
virtual Point< spacedim > get_new_point_on_line(const typename Triangulation< dim, spacedim >::line_iterator &line) const
virtual Point< spacedim > get_new_point_on_line(const typename Triangulation< dim, spacedim >::line_iterator &line) const override
#define DeclException0(Exception0)
virtual void get_intermediate_points_on_quad(const typename Triangulation< dim, spacedim >::quad_iterator &quad, std::vector< Point< spacedim > > &points) const override
virtual Point< dim > get_new_point_on_quad(const typename Triangulation< dim >::quad_iterator &quad) const override
const Point< spacedim > center
virtual void get_intermediate_points_on_line(const typename Triangulation< dim, spacedim >::line_iterator &line, std::vector< Point< spacedim > > &points) const override
virtual void get_normals_at_vertices(const typename Triangulation< dim >::face_iterator &face, typename Boundary< dim >::FaceVertexNormals &face_vertex_normals) const override
virtual std::unique_ptr< Manifold< dim, spacedim > > clone() const override
virtual Point< spacedim > get_new_point_on_quad(const typename Triangulation< dim, spacedim >::quad_iterator &quad) const
virtual void get_normals_at_vertices(const typename Triangulation< dim, spacedim >::face_iterator &face, typename Manifold< dim, spacedim >::FaceVertexNormals &face_vertex_normals) const override
virtual Tensor< 1, spacedim > normal_vector(const typename Triangulation< dim, spacedim >::face_iterator &face, const Point< spacedim > &p) const override
virtual Point< dim > get_new_point_on_quad(const typename Triangulation< dim >::quad_iterator &quad) const override
virtual std::unique_ptr< Manifold< dim, spacedim > > clone() const override
virtual void get_intermediate_points_on_line(const typename Triangulation< dim, spacedim >::line_iterator &line, std::vector< Point< spacedim > > &points) const override
virtual void get_intermediate_points_on_quad(const typename Triangulation< dim >::quad_iterator &quad, std::vector< Point< dim > > &points) const override
const double inner_radius
virtual Point< spacedim > get_new_point_on_quad(const typename Triangulation< dim, spacedim >::quad_iterator &quad) const override
virtual std::unique_ptr< Manifold< dim, spacedim > > clone() const override
virtual void get_intermediate_points_on_quad(const typename Triangulation< dim, spacedim >::quad_iterator &quad, std::vector< Point< spacedim > > &points) const override