17 #ifndef dealii_occ_boundary_lib_h 18 #define dealii_occ_boundary_lib_h 20 #include <deal.II/base/config.h> 22 #ifdef DEAL_II_WITH_OPENCASCADE 24 #include <deal.II/opencascade/utilities.h> 25 #include <deal.II/grid/manifold.h> 29 #include <Adaptor3d_Curve.hxx> 30 #include <Adaptor3d_HCurve.hxx> 31 #include <BRepAdaptor_Curve.hxx> 34 DEAL_II_NAMESPACE_OPEN
64 template <
int dim,
int spacedim>
82 virtual std::unique_ptr<Manifold<dim,spacedim> >
clone()
const override;
105 const TopoDS_Shape
sh;
134 template <
int dim,
int spacedim>
149 virtual std::unique_ptr<Manifold<dim,spacedim> >
clone()
const override;
171 const TopoDS_Shape
sh;
229 template <
int dim,
int spacedim>
244 virtual std::unique_ptr<Manifold<dim,spacedim> >
clone()
const override;
263 const TopoDS_Shape
sh;
290 template <
int dim,
int spacedim>
303 virtual std::unique_ptr<Manifold<dim,spacedim> >
clone()
const override;
323 const TopoDS_Shape
sh;
350 template <
int dim,
int spacedim>
364 virtual std::unique_ptr<Manifold<dim,spacedim> >
clone()
const override;
401 std::tuple<double, double, double, double>
420 DEAL_II_NAMESPACE_CLOSE
423 #endif // DEAL_II_WITH_OPENCASCADE
virtual Point< 2 > pull_back(const Point< spacedim > &space_point) const override
virtual Point< spacedim > project_to_manifold(const ArrayView< const Point< spacedim >> &surrounding_points, const Point< spacedim > &candidate) const override
virtual std::unique_ptr< Manifold< dim, spacedim > > clone() const override
virtual Point< spacedim > project_to_manifold(const ArrayView< const Point< spacedim >> &surrounding_points, const Point< spacedim > &candidate) const override
virtual std::unique_ptr< Manifold< dim, spacedim > > clone() const override
virtual Point< spacedim > push_forward(const Point< 1 > &chart_point) const override
const Tensor< 1, spacedim > direction
virtual Point< spacedim > push_forward(const Point< 2 > &chart_point) const override
NormalToMeshProjectionBoundary(const TopoDS_Shape &sh, const double tolerance=1e-7)
virtual std::unique_ptr< Manifold< dim, spacedim > > clone() const override
virtual std::unique_ptr< Manifold< dim, spacedim > > clone() const override
virtual std::unique_ptr< Manifold< dim, spacedim > > clone() const override
Handle_Adaptor3d_HCurve curve
virtual Point< spacedim > project_to_manifold(const ArrayView< const Point< spacedim >> &surrounding_points, const Point< spacedim > &candidate) const override
ArclengthProjectionLineManifold(const TopoDS_Shape &sh, const double tolerance=1e-7)
virtual Point< 1 > pull_back(const Point< spacedim > &space_point) const override
std::tuple< double, double, double, double > get_uv_bounds() const
virtual DerivativeForm< 1, 2, spacedim > push_forward_gradient(const Point< 2 > &chart_point) const override
NormalProjectionBoundary(const TopoDS_Shape &sh, const double tolerance=1e-7)
DirectionalProjectionBoundary(const TopoDS_Shape &sh, const Tensor< 1, spacedim > &direction, const double tolerance=1e-7)