| FEAT 3
    Finite Element Analysis Toolbox | 
MeshPart mesh tree node class template. More...
#include <mesh_node.hpp>
 
  
| Public Types | |
| typedef MeshNode< RootMesh_, MeshPart< RootMesh_ > > | BaseClass | 
| base class typedef  More... | |
| typedef BaseClass::MeshAtlasType | MeshAtlasType | 
| mesh atlas type  More... | |
| typedef BaseClass::MeshChartType | MeshChartType | 
| mesh chart type  More... | |
| typedef MeshPartNode< RootMeshType > | MeshPartNodeType | 
| the mesh part node type  More... | |
| typedef BaseClass::MeshPartType | MeshPartType | 
| mesh part type  More... | |
| typedef BaseClass::MeshType | MeshType | 
| this mesh type  More... | |
| typedef RootMesh_ | RootMeshType | 
| the root mesh type, has to be a Mesh  More... | |
| Public Member Functions | |
| MeshPartNode (std::unique_ptr< MeshPartType > mesh_part) | |
| Constructor.  More... | |
| virtual | ~MeshPartNode () | 
| virtual destructor  More... | |
| void | adapt (bool recursive=true) | 
| Adapts this mesh node.  More... | |
| bool | adapt_by_name (const String &part_name, bool recursive=false) | 
| Adapts this mesh node.  More... | |
| MeshPartNodeType * | add_mesh_part (const String &part_name, std::unique_ptr< MeshPartType > mesh_part, const String &chart_name="", const MeshChartType *chart=nullptr) | 
| Adds a new mesh-part child node.  More... | |
| MeshPartNodeType * | add_mesh_part_node (const String &part_name, std::unique_ptr< MeshPartNodeType > mesh_part_node, const String &chart_name="", const MeshChartType *chart=nullptr) | 
| Adds a new mesh-part child node.  More... | |
| std::size_t | bytes () const | 
| std::unique_ptr< MeshPartNode > | clone_unique () const | 
| Creates an independent clone of this object and returns a unique pointer to it.  More... | |
| MeshPartType * | find_mesh_part (const String &part_name) | 
| Searches this container for a MeshPart.  More... | |
| const MeshPartType * | find_mesh_part (const String &part_name) const | 
| const MeshChartType * | find_mesh_part_chart (const String &part_name) const | 
| Searches for a chart belonging to a MeshPart by name.  More... | |
| String | find_mesh_part_chart_name (const String &part_name) const | 
| Searches for a chart name belonging to a MeshPart by name.  More... | |
| MeshPartNodeType * | find_mesh_part_node (const String &part_name) | 
| Searches this container for a MeshPartNode.  More... | |
| const MeshPartNodeType * | find_mesh_part_node (const String &part_name) const | 
| MeshType * | get_mesh () | 
| Returns the mesh of this node.  More... | |
| const MeshType * | get_mesh () const | 
| std::deque< String > | get_mesh_part_names (bool no_internals=false) const | 
| Returns the names of all mesh parts of this node.  More... | |
| template<typename ParentType_ > | |
| std::unique_ptr< MeshPartNode > | refine (const ParentType_ &parent) const | 
| Refines this node and its sub-tree.  More... | |
| void | remove_all_mesh_parts () | 
| Removes all mesh parts from this mesh node.  More... | |
| bool | remove_mesh_part (const String &part_name) | 
| Removes a mesh-part and its corresponding node.  More... | |
| void | rename_mesh_parts (const std::map< String, String > &renames) | 
| Renames a set of mesh-parts.  More... | |
| void | set_mesh (std::unique_ptr< MeshType > mesh) | 
| bool | set_mesh_part_chart (const String &part_name, const String &chart_name, const MeshChartType *chart) | 
| Sets the chart for a particular mesh part.  More... | |
| Static Public Member Functions | |
| static std::unique_ptr< MeshPartNode > | make_unique (std::unique_ptr< MeshPartType > mesh_part) | 
| Creates a new MeshPartNode on the heap and returns a unique pointer to it.  More... | |
| static String | name () | 
| Returns the name of the class.  More... | |
| Protected Types | |
| typedef MeshPartNodeContainer::const_iterator | MeshPartNodeConstIterator | 
| submesh node const-iterator type  More... | |
| typedef std::map< String, MeshPartNodeBin > | MeshPartNodeContainer | 
| submesh node bin container type  More... | |
| typedef MeshPartNodeContainer::iterator | MeshPartNodeIterator | 
| submesh node iterator type  More... | |
| typedef MeshPartNodeContainer::reverse_iterator | MeshPartNodeReverseIterator | 
| submesh node reverse-iterator type  More... | |
| Protected Member Functions | |
| void | _clone (const MeshPartNode &other) | 
| void | refine_children (MeshNode &refined_node) const | 
| Refines all child nodes of this node.  More... | |
| void | refine_mesh_parts (MeshNode &refined_node) const | 
| Refines all child MeshPart nodes of this node.  More... | |
| void | refine_mesh_parts (MeshPartNode &refined_node) const | 
| Refines this node's child nodes.  More... | |
| Protected Attributes | |
| std::unique_ptr< MeshType > | _mesh | 
| a pointer to the mesh of this node  More... | |
| MeshPartNodeContainer | _mesh_part_nodes | 
| child submesh nodes  More... | |
MeshPart mesh tree node class template.
This class template implements a mesh tree node containing a MeshPart.
Definition at line 599 of file mesh_node.hpp.
| typedef MeshNode<RootMesh_, MeshPart<RootMesh_> > FEAT::Geometry::MeshPartNode< RootMesh_ >::BaseClass | 
base class typedef
Definition at line 604 of file mesh_node.hpp.
| typedef BaseClass::MeshAtlasType FEAT::Geometry::MeshPartNode< RootMesh_ >::MeshAtlasType | 
mesh atlas type
Definition at line 611 of file mesh_node.hpp.
| typedef BaseClass::MeshChartType FEAT::Geometry::MeshPartNode< RootMesh_ >::MeshChartType | 
mesh chart type
Definition at line 613 of file mesh_node.hpp.
| 
 | protectedinherited | 
submesh node const-iterator type
Definition at line 176 of file mesh_node.hpp.
| 
 | protectedinherited | 
submesh node bin container type
Definition at line 172 of file mesh_node.hpp.
| 
 | protectedinherited | 
submesh node iterator type
Definition at line 174 of file mesh_node.hpp.
| 
 | protectedinherited | 
submesh node reverse-iterator type
Definition at line 178 of file mesh_node.hpp.
| 
 | inherited | 
the mesh part node type
Definition at line 127 of file mesh_node.hpp.
| typedef BaseClass::MeshPartType FEAT::Geometry::MeshPartNode< RootMesh_ >::MeshPartType | 
mesh part type
Definition at line 609 of file mesh_node.hpp.
| typedef BaseClass::MeshType FEAT::Geometry::MeshPartNode< RootMesh_ >::MeshType | 
this mesh type
Definition at line 607 of file mesh_node.hpp.
| 
 | inherited | 
the root mesh type, has to be a Mesh
Definition at line 121 of file mesh_node.hpp.
| 
 | inlineexplicit | 
Constructor.
Definition at line 637 of file mesh_node.hpp.
| 
 | inlinevirtual | 
virtual destructor
Definition at line 643 of file mesh_node.hpp.
| 
 | inlineprotected | 
Definition at line 616 of file mesh_node.hpp.
| 
 | inlineinherited | 
Adapts this mesh node.
This function loops over all MeshPart nodes and uses their associated charts (if given) to adapt the mesh in this node.
| [in] | recursive | If set to true, all mesh_part nodes are adapted prior to adapting this node. | 
Definition at line 481 of file mesh_node.hpp.
| 
 | inlineinherited | 
Adapts this mesh node.
This function adapts this node by a specific chart whose name is given.
| [in] | part_name | The name of the mesh_part node that is to be used for adaption. | 
| [in] | recursive | If set to true, the mesh_part node associated withpart_namewill be adapted prior to adapting this node. | 
true if this node was adapted successfully or false if no node is associated with part_name or if the node did not contain any chart. Definition at line 523 of file mesh_node.hpp.
| 
 | inlineinherited | 
Adds a new mesh-part child node.
| [in] | part_name | The name of the child node. | 
| [in] | mesh_part | A resident unique pointer to the mesh_part to be added. | 
| [in] | chart_name | The name of the chart that the mesh-part is to be linked to. | 
| [in] | chart | A resident pointer to the chart that the subnode is to be associated with. May be nullptr. | 
nullptr. Definition at line 316 of file mesh_node.hpp.
| 
 | inlineinherited | 
Adds a new mesh-part child node.
| [in] | part_name | The name of the child node. | 
| [in] | mesh_part_node | A resident unique pointer to the mesh_part node to be added. | 
| [in] | chart_name | The name of the chart that the mesh-part is to be linked to. | 
| [in] | chart | A resident pointer to the chart that the subnode is to be associated with. May be nullptr. | 
nullptr. Definition at line 281 of file mesh_node.hpp.
| 
 | inlineinherited | 
Definition at line 209 of file mesh_node.hpp.
| 
 | inline | 
Creates an independent clone of this object and returns a unique pointer to it.
Definition at line 666 of file mesh_node.hpp.
| 
 | inlineinherited | 
Searches this container for a MeshPart.
| [in] | part_name | The name of the node associated with the mesh_part to be found. | 
part_name or nullptr if no such node was found. Definition at line 398 of file mesh_node.hpp.
| 
 | inlineinherited | 
Searches this container for a MeshPart.
| [in] | part_name | The name of the node associated with the mesh_part to be found. | 
part_name or nullptr if no such node was found.  Definition at line 405 of file mesh_node.hpp.
| 
 | inlineinherited | 
Searches for a chart belonging to a MeshPart by name.
| [in] | part_name | The name of the node associated with the chart to be found. | 
part_name of nullptr if no such node was found or if the corresponding node did not have a chart. Definition at line 421 of file mesh_node.hpp.
| 
 | inlineinherited | 
Searches for a chart name belonging to a MeshPart by name.
| [in] | part_name | The name of the node associated with the chart to be found. | 
part_name or an empty string is no such node was found. Definition at line 437 of file mesh_node.hpp.
| 
 | inlineinherited | 
Searches this container for a MeshPartNode.
| [in] | part_name | The name of the node to be found. | 
part_name or nullptr if no such node was found. Definition at line 376 of file mesh_node.hpp.
| 
 | inlineinherited | 
Searches this container for a MeshPartNode.
| [in] | part_name | The name of the node to be found. | 
part_name or nullptr if no such node was found.  Definition at line 383 of file mesh_node.hpp.
| 
 | inlineinherited | 
Returns the mesh of this node.
Definition at line 225 of file mesh_node.hpp.
| 
 | inlineinherited | 
Returns the mesh of this node.
Definition at line 231 of file mesh_node.hpp.
| 
 | inlineinherited | 
Returns the names of all mesh parts of this node.
| [in] | no_internals | Specifies whether to skip all internal mesh-parts whose names begin with an underscore. | 
Definition at line 251 of file mesh_node.hpp.
| 
 | inlinestatic | 
Creates a new MeshPartNode on the heap and returns a unique pointer to it.
Definition at line 656 of file mesh_node.hpp.
Referenced by FEAT::Geometry::MeshNode< RootMesh_, ThisMesh_ >::add_mesh_part(), and FEAT::Geometry::MeshPartNode< RootMesh_ >::refine().
| 
 | inlinestatic | 
Returns the name of the class.
Definition at line 709 of file mesh_node.hpp.
| 
 | inline | 
Refines this node and its sub-tree.
| [in] | parent | A transient reference to the parent mesh/cell subset of this node's cell subset. | 
Definition at line 683 of file mesh_node.hpp.
References FEAT::Geometry::MeshNode< RootMesh_, MeshPart< RootMesh_ > >::_mesh, FEAT::Geometry::MeshPartNode< RootMesh_ >::make_unique(), and FEAT::Geometry::MeshPartNode< RootMesh_ >::refine_mesh_parts().
| 
 | inlineprotectedinherited | 
Refines all child nodes of this node.
| [in,out] | refined_node | A reference to the node generated by refining this node. | 
Definition at line 565 of file mesh_node.hpp.
| 
 | inlineprotectedinherited | 
Refines all child MeshPart nodes of this node.
| [in,out] | refined_node | A reference to the node generated by refining this node. | 
Definition at line 577 of file mesh_node.hpp.
| 
 | inlineprotected | 
Refines this node's child nodes.
| [in,out] | refined_node | A transient reference to the node generated from refinement of this node. | 
Definition at line 724 of file mesh_node.hpp.
References FEAT::Geometry::MeshNode< RootMesh_, MeshPart< RootMesh_ > >::_mesh_part_nodes.
Referenced by FEAT::Geometry::MeshPartNode< RootMesh_ >::refine().
| 
 | inlineinherited | 
Removes all mesh parts from this mesh node.
Definition at line 339 of file mesh_node.hpp.
| 
 | inlineinherited | 
Removes a mesh-part and its corresponding node.
| [in] | part_name | The name of the child node to be removed | 
true, if a mesh-part with the corresponding name was removed, otherwise false. Definition at line 333 of file mesh_node.hpp.
| 
 | inlineinherited | 
Renames a set of mesh-parts.
| [in] | renames | A transient map of oldname-newname pairs. | 
Definition at line 449 of file mesh_node.hpp.
| 
 | inlineinherited | 
Definition at line 236 of file mesh_node.hpp.
| 
 | inlineinherited | 
Sets the chart for a particular mesh part.
| [in] | part_name | The name of the mesh part that the chart is to be assigned to. | 
| [in] | chart | A resident pointer to the chart that is to be assigned. May also be nullptr. | 
true if the chart was assigned successfully or false if no mesh part with the specified name was found. Definition at line 357 of file mesh_node.hpp.
| 
 | protectedinherited | 
a pointer to the mesh of this node
Definition at line 182 of file mesh_node.hpp.
| 
 | protectedinherited | 
child submesh nodes
Definition at line 184 of file mesh_node.hpp.