////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////// More...
#include <unstructured_two_d_mesh_geometry_base.h>
Public Member Functions | |
TriangleMeshOpenCurve (const Vector< TriangleMeshCurveSection * > &curve_section_pt) | |
Constructor. More... | |
virtual | ~TriangleMeshOpenCurve () |
Empty destructor. More... | |
unsigned | nvertices () const |
Number of vertices. More... | |
unsigned | nsegments () const |
Total number of segments. More... | |
void | output (std::ostream &outfile, const unsigned &n_sample=50) |
Output each sub-boundary at n_sample (default: 50) points. More... | |
TriangleMeshPolyLine * | polyline_pt (const unsigned &i) const |
Pointer to i-th constituent polyline. More... | |
TriangleMeshPolyLine * | polyline_pt (const unsigned &i) |
Pointer to i-th constituent polyline. More... | |
Public Member Functions inherited from oomph::TriangleMeshCurve | |
TriangleMeshCurve (const Vector< TriangleMeshCurveSection * > &curve_section_pt) | |
Empty constructor. More... | |
virtual | ~TriangleMeshCurve () |
Empty destructor. More... | |
unsigned | max_boundary_id () |
Return max boundary id of associated curves. More... | |
virtual unsigned | ncurve_section () const |
Number of constituent curves. More... | |
void | enable_polyline_refinement (const double &tolerance=0.08) |
Enable refinement of polylines to create a better representation of curvilinear boundaries (e.g. in free-surface problems). See tutorial for interpretation of the optional argument which specifies the refinement tolerance. It defaults to 0.08 and the smaller the number the finer the surface representation. More... | |
void | set_polyline_refinement_tolerance (const double &tolerance) |
Set tolerance for refinement of polylines to create a better representation of curvilinear boundaries (e.g. in free-surface problems). See tutorial for interpretation of the refinement tolerance. (The smaller the number the finer the surface representation). If set to a negative value, we're switching off refinement – equivalent to calling disable_polyline_refinement() More... | |
double | polyline_refinement_tolerance () |
Get tolerance for refinement of polylines to create a better representation of curvilinear boundaries (e.g. in free-surface problems). See tutorial for interpretation. If it's negative refinement is disabled. More... | |
void | disable_polyline_refinement () |
Disable refinement of polylines. More... | |
void | enable_polyline_unrefinement (const double &tolerance=0.04) |
Enable unrefinement of polylines to avoid unnecessarily large numbers of elements on of curvilinear boundaries (e.g. in free-surface problems). See tutorial for interpretation of the optional argument which specifies the unrefinement tolerance. It defaults to 0.04 and the larger the number the more agressive we are when removing unnecessary vertices on gently curved polylines. More... | |
void | set_polyline_unrefinement_tolerance (const double &tolerance) |
Set tolerance for unrefinement of polylines to avoid unnecessarily large numbers of elements on of curvilinear boundaries (e.g. in free-surface problems). See tutorial for interpretation of the optional argument which specifies the unrefinement tolerance. It defaults to 0.04 and the larger the number the more agressive we are when removing unnecessary vertices on gently curved polylines. If set to a negative value, we're switching off unrefinement – equivalent to calling disable_polyline_unrefinement() More... | |
double | polyline_unrefinement_tolerance () |
Get tolerance for unrefinement of polylines to create a better representation of curvilinear boundaries (e.g. in free-surface problems). See tutorial for interpretation. If it's negative unrefinement is disabled. More... | |
void | disable_polyline_unrefinement () |
Disable unrefinement of polylines. More... | |
virtual TriangleMeshCurveSection * | curve_section_pt (const unsigned &i) const |
Pointer to i-th constituent curve section. More... | |
virtual TriangleMeshCurveSection *& | curve_section_pt (const unsigned &i) |
Pointer to i-th constituent curve section. More... | |
Additional Inherited Members | |
Protected Attributes inherited from oomph::TriangleMeshCurve | |
Vector< TriangleMeshCurveSection * > | Curve_section_pt |
Vector of curve sections. More... | |
////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////
Base class defining an open curve for the Triangle mesh generation Basically used to define internal boundaries on the mesh
Definition at line 1641 of file unstructured_two_d_mesh_geometry_base.h.
oomph::TriangleMeshOpenCurve::TriangleMeshOpenCurve | ( | const Vector< TriangleMeshCurveSection * > & | curve_section_pt | ) |
Constructor.
////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////
Class defining an open curve for the Triangle mesh generation
Definition at line 1836 of file unstructured_two_d_mesh_geometry_base.cc.
References oomph::TriangleMeshCurve::Curve_section_pt, i, oomph::TriangleMeshPolyLine::nvertex(), oomph::ToleranceForVertexMismatchInPolygons::Tolerable_error, and oomph::TriangleMeshPolyLine::vertex_coordinate().
|
inlinevirtual |
Empty destructor.
Definition at line 1649 of file unstructured_two_d_mesh_geometry_base.h.
|
inlinevirtual |
Total number of segments.
Implements oomph::TriangleMeshCurve.
Definition at line 1667 of file unstructured_two_d_mesh_geometry_base.h.
References oomph::TriangleMeshCurve::Curve_section_pt, and oomph::TriangleMeshCurve::ncurve_section().
|
inlinevirtual |
Number of vertices.
Implements oomph::TriangleMeshCurve.
Definition at line 1652 of file unstructured_two_d_mesh_geometry_base.h.
References oomph::TriangleMeshCurve::Curve_section_pt, i, and oomph::TriangleMeshCurve::ncurve_section().
|
inlinevirtual |
Output each sub-boundary at n_sample (default: 50) points.
Implements oomph::TriangleMeshCurve.
Definition at line 1679 of file unstructured_two_d_mesh_geometry_base.h.
References oomph::TriangleMeshCurve::Curve_section_pt, and i.
|
inline |
Pointer to i-th constituent polyline.
Definition at line 1711 of file unstructured_two_d_mesh_geometry_base.h.
References oomph::TriangleMeshCurve::Curve_section_pt, and i.
|
inline |
Pointer to i-th constituent polyline.
Definition at line 1689 of file unstructured_two_d_mesh_geometry_base.h.
References oomph::TriangleMeshCurve::Curve_section_pt, and i.
Referenced by oomph::RefineableTriangleMesh< ELEMENT >::add_vertices_for_non_deletion(), oomph::RefineableTriangleMesh< ELEMENT >::create_temporary_boundary_connections(), oomph::RefineableTriangleMesh< ELEMENT >::restore_boundary_connections(), oomph::RefineableTriangleMesh< ELEMENT >::update_open_curve_after_restart(), oomph::RefineableTriangleMesh< ELEMENT >::update_open_curve_using_elements_area(), and oomph::RefineableTriangleMesh< ELEMENT >::update_open_curve_using_face_mesh().