    

 ## On this page

  

 

 # MeshAssembly Class Reference

 Last update: 16.07.2025 

describes a finite element mesh [More...](class_mesh_assembly.xhtml#details)

## <a name="pub-types"></a>Public Types

<a id="ae7b41a2f6ccde15f8aec3506307e020c"></a>typedef std::map&lt; [string\_pair\_type](class_mesh_assembly.xhtml#a128c69f0431efa4e8fd8709f8bc1feda), groups::ElementSet &gt; [map\_elementset\_type](class_mesh_assembly.xhtml#ae7b41a2f6ccde15f8aec3506307e020c) a map which associates a string pair ident to an element set. The ident of each set is then: first string: part ident (if empty, it will be a global set), element ident.   
 <a id="a16956f2074794ce5c06c1448d2ebcb56"></a>typedef std::map&lt; [string\_pair\_type](class_mesh_assembly.xhtml#a128c69f0431efa4e8fd8709f8bc1feda), groups::NodeSet &gt; [map\_nodeset\_type](class_mesh_assembly.xhtml#a16956f2074794ce5c06c1448d2ebcb56) a map which associates a string pair ident to a node set The ident of each set is then: first string: part ident (if empty, it will be a global set), element ident.   
 <a id="a50a53dbaea16fbf9aad6fe434be84ad2"></a>typedef std::map&lt; string, [uint](class_mesh_assembly.xhtml#a2c83b7348a2acedf114ab5847ad3ffcd) &gt; [map\_stringindex\_type](class_mesh_assembly.xhtml#a50a53dbaea16fbf9aad6fe434be84ad2) a map which associates integer numbers (often indices) to unique string idents (keys)   
 enum [mesh\_type](class_mesh_assembly.xhtml#a39747b5e329ff6cad0c2c9458e09ab61) { [MESH\_FEM3D](class_mesh_assembly.xhtml#a39747b5e329ff6cad0c2c9458e09ab61a6cf2ba534d3b7dc292674624fe2fb804), [MESH\_RAY](class_mesh_assembly.xhtml#a39747b5e329ff6cad0c2c9458e09ab61adbc5602a93acf50486dcd4dbe4615322), [MESH\_PIXEL](class_mesh_assembly.xhtml#a39747b5e329ff6cad0c2c9458e09ab61a0a0b817fa04782e012ed8a71d47a4077), [MESH\_VOXEL](class_mesh_assembly.xhtml#a39747b5e329ff6cad0c2c9458e09ab61addf58eb35f91b20a257de237ac0ee4e9) } an enum that collects several mesh types [More...](class_mesh_assembly.xhtml#a39747b5e329ff6cad0c2c9458e09ab61)  
 <a id="a74eb338994af85db5ed9dc1008e14616"></a>typedef std::vector&lt; boost::shared\_ptr&lt; MeshPart &gt; &gt; [meshpart\_container\_type](class_mesh_assembly.xhtml#a74eb338994af85db5ed9dc1008e14616) a vector of managed *MeshPart* pointers   
 <a id="aa09603bb39d4601814c67e12d7b5e6a5"></a>typedef boost::function&lt; void(boost::shared\_ptr&lt; MeshPart &gt; [part](class_mesh_assembly.xhtml#a67501b8786da31b7074b2f6c14138fa7)) &gt; [part\_callback\_type](class_mesh_assembly.xhtml#aa09603bb39d4601814c67e12d7b5e6a5) a callback function being invoked when deleting a *MeshPart*   
 <a id="a62f63a2411f614df93d7bf4d251c4a89"></a>typedef common::IteratorWrapper&lt; [meshpart\_container\_type](class_mesh_assembly.xhtml#a74eb338994af85db5ed9dc1008e14616) &gt; [part\_iterator](class_mesh_assembly.xhtml#a62f63a2411f614df93d7bf4d251c4a89) a simple iterator for iterating through the part container   
 <a id="a6a053b98f240f79ff317e47b5b51aa69"></a>typedef common::ReverseIteratorWrapper&lt; [meshpart\_container\_type](class_mesh_assembly.xhtml#a74eb338994af85db5ed9dc1008e14616) &gt; [reverse\_part\_iterator](class_mesh_assembly.xhtml#a6a053b98f240f79ff317e47b5b51aa69) a simple iterator for iterating through the part container   
 <a id="a4704b9efa9ead57768104ff9afc82a92"></a>typedef std::map&lt; string, boost::shared\_ptr&lt; Section &gt; &gt; [section\_container\_type](class_mesh_assembly.xhtml#a4704b9efa9ead57768104ff9afc82a92) a map which associates a string ident to managed pointers of *Section* objects.   
 <a id="a29b7dfe47e419cb349fd7dabf937fedc"></a>typedef common::IteratorWrapper&lt; [section\_container\_type](class_mesh_assembly.xhtml#a4704b9efa9ead57768104ff9afc82a92) &gt; [section\_iterator](class_mesh_assembly.xhtml#a29b7dfe47e419cb349fd7dabf937fedc) a simple iterator for iterating through the section container   
 <a id="a128c69f0431efa4e8fd8709f8bc1feda"></a>typedef std::pair&lt; string, string &gt; [string\_pair\_type](class_mesh_assembly.xhtml#a128c69f0431efa4e8fd8709f8bc1feda) a pair of strings   
 <a id="a2c83b7348a2acedf114ab5847ad3ffcd"></a>typedef number [uint](class_mesh_assembly.xhtml#a2c83b7348a2acedf114ab5847ad3ffcd) number type   
 <a id="ab95f123a6c9bcfee6a343170ef8c5f69"></a>typedef unsigned short [ushort](class_mesh_assembly.xhtml#ab95f123a6c9bcfee6a343170ef8c5f69) unsigned short type   
 ## <a name="pub-methods"></a>Public Member Functions

element::ETManager [element\_types](class_mesh_assembly.xhtml#ab46a13749f4261bf0ad11670e851283c) () returns m\_element\_types by reference [More...](#ab46a13749f4261bf0ad11670e851283c)  
 groups::ElementSet [elementSet](class_mesh_assembly.xhtml#a993e68c0140ccc2962f3f74ce67b4e7d) ([string\_pair\_type](class_mesh_assembly.xhtml#a128c69f0431efa4e8fd8709f8bc1feda) theident) reference getter for the specified element set [More...](#a993e68c0140ccc2962f3f74ce67b4e7d)  
 [map\_elementset\_type](class_mesh_assembly.xhtml#ae7b41a2f6ccde15f8aec3506307e020c) [elementSets](class_mesh_assembly.xhtml#a3156fd41796bbaeb8beed456c1aec70a) () const reference getter for m\_elementSets [More...](#a3156fd41796bbaeb8beed456c1aec70a)  
 Eigen::Vector3i [gridDimension](class_mesh_assembly.xhtml#ab61e0918d34353bb62ce870f218c1ddb) () groups::NodeSet [nodeSet](class_mesh_assembly.xhtml#a2ef949fe1d7aaec54752999d07f17552) ([string\_pair\_type](class_mesh_assembly.xhtml#a128c69f0431efa4e8fd8709f8bc1feda) theident) reference getter for the specified node set [More...](#a2ef949fe1d7aaec54752999d07f17552)  
 [map\_nodeset\_type](class_mesh_assembly.xhtml#a16956f2074794ce5c06c1448d2ebcb56) [nodeSets](class_mesh_assembly.xhtml#a703a617a0b6681acd20338667f7befb1) () const reference getter for m\_nodeSets [More...](#a703a617a0b6681acd20338667f7befb1)  
 size\_t [numParts](class_mesh_assembly.xhtml#a9f1054cb877d246f27121fc98af47ebf) () const MeshPart [part](class_mesh_assembly.xhtml#a67501b8786da31b7074b2f6c14138fa7) ([uint](class_mesh_assembly.xhtml#a2c83b7348a2acedf114ab5847ad3ffcd) theindex) getter for a specific part [More...](#a67501b8786da31b7074b2f6c14138fa7)  
 MeshPart [part](class_mesh_assembly.xhtml#a3e063ad835d0cfcc12ede92702e6731c) (string theident) getter for a specific part [More...](#a3e063ad835d0cfcc12ede92702e6731c)  
 Section [section](class_mesh_assembly.xhtml#a1aad17c456ad972f40c515912e1e798d) (string theident) reference brief getter for a specific section [More...](#a1aad17c456ad972f40c515912e1e798d)  
 SectionTypeManager [section\_types](class_mesh_assembly.xhtml#a9a36d93e6a070883ec70f6217cb3f6c1) () returns m\_section\_types by reference [More...](#a9a36d93e6a070883ec70f6217cb3f6c1)  
 [mesh\_type](class_mesh_assembly.xhtml#a39747b5e329ff6cad0c2c9458e09ab61) [type](class_mesh_assembly.xhtml#a3c883136da5f87f250ba45d2d84ff878) () returns the mesh type [More...](#a3c883136da5f87f250ba45d2d84ff878)  
 <a id="details" name="details"></a>## Detailed Description

describes a finite element mesh

A finite element mesh contains all nodes, elements (and faces/edges) which may be associated to individual parts. Parts are individual scopes, for example multiple points may have the same index, but belong to different parts.



## Member Enumeration Documentation

<a id="a39747b5e329ff6cad0c2c9458e09ab61"></a>## [◆ ](#a39747b5e329ff6cad0c2c9458e09ab61)mesh\_type

 enum [mesh\_type](class_mesh_assembly.xhtml#a39747b5e329ff6cad0c2c9458e09ab61)

an enum that collects several mesh types

Enumerator<a id="a39747b5e329ff6cad0c2c9458e09ab61a6cf2ba534d3b7dc292674624fe2fb804"></a>MESH\_FEM3D a three-dimensional FEM mesh

<a id="a39747b5e329ff6cad0c2c9458e09ab61adbc5602a93acf50486dcd4dbe4615322"></a>MESH\_RAY a 1d ray grid, i.e. single part with nodes following the numbering scheme: index = i\_x

<a id="a39747b5e329ff6cad0c2c9458e09ab61a0a0b817fa04782e012ed8a71d47a4077"></a>MESH\_PIXEL a pixel grid, i.e. single part with nodes following the numbering scheme: index = i\_y + i\_x\*n\_y

<a id="a39747b5e329ff6cad0c2c9458e09ab61addf58eb35f91b20a257de237ac0ee4e9"></a>MESH\_VOXEL a voxel grid, i.e. single part with nodes following the numbering scheme: index = i\_z + i\_y\*n\_z + i\_x\*n\_y\*n\_z





## Member Function Documentation

<a id="ab46a13749f4261bf0ad11670e851283c"></a>## [◆ ](#ab46a13749f4261bf0ad11670e851283c)element\_types()

 element::ETManager element\_types  ( ) 

returns m\_element\_types by reference

Returnsa reference to m\_element\_types 



<a id="a993e68c0140ccc2962f3f74ce67b4e7d"></a>## [◆ ](#a993e68c0140ccc2962f3f74ce67b4e7d)elementSet()

 groups::ElementSet elementSet  ( [string\_pair\_type](class_mesh_assembly.xhtml#a128c69f0431efa4e8fd8709f8bc1feda)  *theident*) 

reference getter for the specified element set

Parameters theidentident of an existing element set Returnsa reference to the element set 



<a id="a3156fd41796bbaeb8beed456c1aec70a"></a>## [◆ ](#a3156fd41796bbaeb8beed456c1aec70a)elementSets()

 [map\_elementset\_type](class_mesh_assembly.xhtml#ae7b41a2f6ccde15f8aec3506307e020c) elementSets  ( )  const

reference getter for m\_elementSets

Returnsa reference to m\_elementSets 



<a id="ab61e0918d34353bb62ce870f218c1ddb"></a>## [◆ ](#ab61e0918d34353bb62ce870f218c1ddb)gridDimension()

 Eigen::Vector3i gridDimension  ( ) 

Returnsa reference to See alsom\_grid\_dimension 



<a id="a2ef949fe1d7aaec54752999d07f17552"></a>## [◆ ](#a2ef949fe1d7aaec54752999d07f17552)nodeSet()

 groups::NodeSet nodeSet  ( [string\_pair\_type](class_mesh_assembly.xhtml#a128c69f0431efa4e8fd8709f8bc1feda)  *theident*) 

reference getter for the specified node set

Parameters theidentident of an existing node set Returnsa reference to the node set 



<a id="a703a617a0b6681acd20338667f7befb1"></a>## [◆ ](#a703a617a0b6681acd20338667f7befb1)nodeSets()

 [map\_nodeset\_type](class_mesh_assembly.xhtml#a16956f2074794ce5c06c1448d2ebcb56) nodeSets  ( )  const

reference getter for m\_nodeSets

Returnsa reference to m\_nodeSets 



<a id="a9f1054cb877d246f27121fc98af47ebf"></a>## [◆ ](#a9f1054cb877d246f27121fc98af47ebf)numParts()

 size\_t numParts  ( )  const

Returnsthe number of allocated parts 



<a id="a67501b8786da31b7074b2f6c14138fa7"></a>## [◆ ](#a67501b8786da31b7074b2f6c14138fa7)part() \[1/2\]

 MeshPart part  ( [uint](class_mesh_assembly.xhtml#a2c83b7348a2acedf114ab5847ad3ffcd)  *theindex*) 

getter for a specific part

Parameters theindexthe index of an existing part Returnsa reference to the part with given index 



<a id="a3e063ad835d0cfcc12ede92702e6731c"></a>## [◆ ](#a3e063ad835d0cfcc12ede92702e6731c)part() \[2/2\]

 MeshPart part  ( string  *theident*) 

getter for a specific part

Parameters theidentthe ident of an existing part Returnsa reference to the part with given ident 



<a id="a1aad17c456ad972f40c515912e1e798d"></a>## [◆ ](#a1aad17c456ad972f40c515912e1e798d)section()

 Section section  ( string  *theident*) 

reference brief getter for a specific section

Parameters theidentident of an existing section Returnsa reference to the section 



<a id="a9a36d93e6a070883ec70f6217cb3f6c1"></a>## [◆ ](#a9a36d93e6a070883ec70f6217cb3f6c1)section\_types()

 SectionTypeManager section\_types  ( ) 

returns m\_section\_types by reference

Returnsa reference to m\_section\_types 



<a id="a3c883136da5f87f250ba45d2d84ff878"></a>## [◆ ](#a3c883136da5f87f250ba45d2d84ff878)type()

 [mesh\_type](class_mesh_assembly.xhtml#a39747b5e329ff6cad0c2c9458e09ab61) type  ( ) 

returns the mesh type

Returnsa reference to See alsom\_type