![]() |
Reference documentation for deal.II version 9.2.0
|
#include <deal.II/opencascade/manifold_lib.h>
Public Member Functions | |
| NURBSPatchManifold (const TopoDS_Face &face, const double tolerance=1e-7) | |
| virtual std::unique_ptr< Manifold< dim, spacedim > > | clone () const override |
| virtual Point< 2 > | pull_back (const Point< spacedim > &space_point) const override |
| virtual Point< spacedim > | push_forward (const Point< 2 > &chart_point) const override |
| virtual DerivativeForm< 1, 2, spacedim > | push_forward_gradient (const Point< 2 > &chart_point) const override |
Public Member Functions inherited from ChartManifold< dim, spacedim, 2 > | |
| ChartManifold (const Tensor< 1, chartdim > &periodicity=Tensor< 1, chartdim >()) | |
| virtual | ~ChartManifold () override=default |
| virtual Point< spacedim > | get_intermediate_point (const Point< spacedim > &p1, const Point< spacedim > &p2, const double w) const override |
| virtual Point< spacedim > | get_new_point (const ArrayView< const Point< spacedim >> &surrounding_points, const ArrayView< const double > &weights) const override |
| virtual void | get_new_points (const ArrayView< const Point< spacedim >> &surrounding_points, const Table< 2, double > &weights, ArrayView< Point< spacedim >> new_points) const override |
| virtual Point< spacedim > | push_forward (const Point< chartdim > &chart_point) const=0 |
| virtual DerivativeForm< 1, chartdim, spacedim > | push_forward_gradient (const Point< chartdim > &chart_point) const |
| virtual Tensor< 1, spacedim > | get_tangent_vector (const Point< spacedim > &x1, const Point< spacedim > &x2) const override |
| const Tensor< 1, chartdim > & | get_periodicity () const |
Public Member Functions inherited from Manifold< dim, spacedim > | |
| virtual | ~Manifold () override=default |
| template<> | |
| Tensor< 1, 2 > | normal_vector (const Triangulation< 2, 2 >::face_iterator &face, const Point< 2 > &p) const |
| template<> | |
| Tensor< 1, 3 > | normal_vector (const Triangulation< 3, 3 >::face_iterator &face, const Point< 3 > &p) const |
| template<> | |
| void | get_normals_at_vertices (const Triangulation< 2, 2 >::face_iterator &face, FaceVertexNormals &n) const |
| template<> | |
| void | get_normals_at_vertices (const Triangulation< 3, 3 >::face_iterator &face, FaceVertexNormals &n) const |
| template<> | |
| Point< 1 > | get_new_point_on_face (const Triangulation< 1, 1 >::face_iterator &) const |
| template<> | |
| Point< 2 > | get_new_point_on_face (const Triangulation< 1, 2 >::face_iterator &) const |
| template<> | |
| Point< 3 > | get_new_point_on_face (const Triangulation< 1, 3 >::face_iterator &) const |
| template<> | |
| Point< 1 > | get_new_point_on_quad (const Triangulation< 1, 1 >::quad_iterator &) const |
| template<> | |
| Point< 2 > | get_new_point_on_quad (const Triangulation< 1, 2 >::quad_iterator &) const |
| template<> | |
| Point< 3 > | get_new_point_on_quad (const Triangulation< 1, 3 >::quad_iterator &) const |
| template<> | |
| Point< 3 > | get_new_point_on_hex (const Triangulation< 3, 3 >::hex_iterator &hex) const |
| virtual Point< spacedim > | project_to_manifold (const ArrayView< const Point< spacedim >> &surrounding_points, const Point< spacedim > &candidate) 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_quad (const typename Triangulation< dim, spacedim >::quad_iterator &quad) const |
| virtual Point< spacedim > | get_new_point_on_hex (const typename Triangulation< dim, spacedim >::hex_iterator &hex) const |
| Point< spacedim > | get_new_point_on_face (const typename Triangulation< dim, spacedim >::face_iterator &face) const |
| Point< spacedim > | get_new_point_on_cell (const typename Triangulation< dim, spacedim >::cell_iterator &cell) const |
| virtual Tensor< 1, spacedim > | normal_vector (const typename Triangulation< dim, spacedim >::face_iterator &face, const Point< spacedim > &p) const |
| virtual void | get_normals_at_vertices (const typename Triangulation< dim, spacedim >::face_iterator &face, FaceVertexNormals &face_vertex_normals) const |
Public Member Functions inherited from Subscriptor | |
| Subscriptor () | |
| Subscriptor (const Subscriptor &) | |
| Subscriptor (Subscriptor &&) noexcept | |
| virtual | ~Subscriptor () |
| Subscriptor & | operator= (const Subscriptor &) |
| Subscriptor & | operator= (Subscriptor &&) noexcept |
| void | subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
| void | unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
| unsigned int | n_subscriptions () const |
| template<typename StreamType > | |
| void | list_subscribers (StreamType &stream) const |
| void | list_subscribers () const |
| template<class Archive > | |
| void | serialize (Archive &ar, const unsigned int version) |
Protected Member Functions | |
| std::tuple< double, double, double, double > | get_uv_bounds () const |
Protected Attributes | |
| TopoDS_Face | face |
| double | tolerance |
Additional Inherited Members | |
Public Types inherited from Manifold< dim, spacedim > | |
| using | FaceVertexNormals = std::array< Tensor< 1, spacedim >, GeometryInfo< dim >::vertices_per_face > |
Static Public Member Functions inherited from Subscriptor | |
| static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
| static ::ExceptionBase & | ExcNoSubscriber (std::string arg1, std::string arg2) |
Manifold description for the face of a CAD imported using OpenCASCADE.
Definition at line 358 of file manifold_lib.h.
| OpenCASCADE::NURBSPatchManifold< dim, spacedim >::NURBSPatchManifold | ( | const TopoDS_Face & | face, |
| const double | tolerance = 1e-7 |
||
| ) |
The constructor takes an OpenCASCADE TopoDS_Face face and an optional tolerance. This class uses the interval OpenCASCADE variables u, v to describe the manifold.
Definition at line 440 of file manifold_lib.cc.
|
overridevirtual |
Clone the current Manifold.
Implements Manifold< dim, spacedim >.
Definition at line 450 of file manifold_lib.cc.
|
overridevirtual |
Pull back the given point from the Euclidean space. Will return the uv coordinates associated with the point space_point.
Implements ChartManifold< dim, spacedim, 2 >.
Definition at line 460 of file manifold_lib.cc.
|
overridevirtual |
Given a chart_point in the uv coordinate system, this method returns the Euclidean coordinates associated.
Definition at line 476 of file manifold_lib.cc.
|
overridevirtual |
Given a point in the spacedim dimensional Euclidean space, this method returns the derivatives of the function \(F\) that maps from the uv coordinate system to the Euclidean coordinate system. In other words, it is a matrix of size \(\text{spacedim}\times\text{chartdim}\).
This function is used in the computations required by the get_tangent_vector() function.
Refer to the general documentation of this class for more information.
Definition at line 486 of file manifold_lib.cc.
|
protected |
Return a tuple representing the minimum and maximum values of u and v. Precisely, it returns (u_min, u_max, v_min, v_max)
Definition at line 517 of file manifold_lib.cc.
|
protected |
An OpenCASCADE TopoDS_Face face given by the CAD.
Definition at line 414 of file manifold_lib.h.
|
protected |
Tolerance used by OpenCASCADE to identify points in each operation.
Definition at line 420 of file manifold_lib.h.
1.8.13