Base class for reading a mesh from a file. More...

#include <meshImport.hh>

Inheritance diagram for concepts::ImportMesh:
concepts::Import2dMeshBase concepts::Import2dMesh concepts::Import2dMeshGeneral

Public Member Functions

 ImportMesh (const uint idxStart=1)
 Constructor. More...
 
virtual ~ImportMesh ()
 

Protected Member Functions

template<class T >
void clear_ (std::vector< T * > &field)
 Deletes the content of field of pointers. More...
 
virtual void createCell_ (const MultiIndex< 2 > &idx) throw (concepts::MissingFeature)
 Creation of geometrical cells with element mapping. More...
 
virtual void createCell_ (const MultiIndex< 3 > &idx) throw (concepts::MissingFeature)
 
virtual void createCell_ (const MultiIndex< 4 > &idx) throw (concepts::MissingFeature)
 
virtual void createCell_ (const MultiIndex< 6 > &idx) throw (concepts::MissingFeature)
 
virtual void createCell_ (const MultiIndex< 8 > &idx) throw (concepts::MissingFeature)
 
virtual void createEntity_ (const MultiIndex< 1 > &idx)
 Creation of topological entities Vertex and Edge. More...
 
virtual void createEntity_ (const MultiIndex< 2 > &idx)
 
virtual void createEntity_ (const MultiIndex< 3 > &idx) throw (concepts::MissingFeature)
 Creation of topological entities. More...
 
virtual void createEntity_ (const MultiIndex< 4 > &idx) throw (concepts::MissingFeature)
 
virtual void createEntity_ (const MultiIndex< 6 > &idx) throw (concepts::MissingFeature)
 
virtual void createEntity_ (const MultiIndex< 8 > &idx) throw (concepts::MissingFeature)
 
template<uint dim>
void newCell_ (MultiIndex< dim > i)
 Creates topological entities and a geometrical cell. More...
 
void readAttributes_ (const std::string &bound, const Array< bool > &dimensions)
 
void readCells_ (const std::string &elms, const Array< bool > &dimensions, const std::vector< Real3d > &vertices)
 Reads the file with cell information and creates topological entities and geometrical cells. More...
 
uint readInts_ (const std::string &i, std::vector< int > &v) const
 Reads integers from the string. More...
 
template<class F >
uint readLine_ (const std::string &i, Array< F > &a, bool first=false) const
 Reads line of numbers from the string. More...
 

Protected Attributes

std::vector< Connector1 * > edg_
 
MultiArray< 2, Edge * > Edg_
 
MultiArray< 8, AttributeeightAttr_
 
MultiArray< 4, AttributefourAttr_
 
const uint idxStart_
 Starting point of indices in the files (1 or 0) More...
 
MultiArray< 1, AttributeoneAttr_
 Attributes of entities. More...
 
MultiArray< 6, AttributesixAttr_
 
MultiArray< 3, AttributethreeAttr_
 
MultiArray< 2, AttributetwoAttr_
 
std::vector< Vertex * > vtx_
 List of entities. More...
 
MultiArray< 1, Vertex * > Vtx_
 Array of the entities. More...
 

Detailed Description

Base class for reading a mesh from a file.

The orientation of the edges is determined by the order of the vertices in the coordinate file, i.e. the first vertex in the coordinate file is the first vertex of the edge.

Author
Kersten Schmidt, 2004

Definition at line 32 of file meshImport.hh.

Constructor & Destructor Documentation

◆ ImportMesh()

concepts::ImportMesh::ImportMesh ( const uint  idxStart = 1)
inline

Constructor.

Parameters
idxStartStarting point of indices in the files (1 or 0)

Definition at line 37 of file meshImport.hh.

◆ ~ImportMesh()

virtual concepts::ImportMesh::~ImportMesh ( )
virtual

Member Function Documentation

◆ clear_()

template<class T >
void concepts::ImportMesh::clear_ ( std::vector< T * > &  field)
protected

Deletes the content of field of pointers.

Definition at line 141 of file meshImport.hh.

◆ createCell_() [1/5]

virtual void concepts::ImportMesh::createCell_ ( const MultiIndex< 2 > &  idx)
throw (concepts::MissingFeature
)
protectedvirtual

Creation of geometrical cells with element mapping.

Has to be implemented in derivated classes.

◆ createCell_() [2/5]

virtual void concepts::ImportMesh::createCell_ ( const MultiIndex< 3 > &  idx)
throw (concepts::MissingFeature
)
protectedvirtual

◆ createCell_() [3/5]

virtual void concepts::ImportMesh::createCell_ ( const MultiIndex< 4 > &  idx)
throw (concepts::MissingFeature
)
protectedvirtual

◆ createCell_() [4/5]

virtual void concepts::ImportMesh::createCell_ ( const MultiIndex< 6 > &  idx)
throw (concepts::MissingFeature
)
protectedvirtual

◆ createCell_() [5/5]

virtual void concepts::ImportMesh::createCell_ ( const MultiIndex< 8 > &  idx)
throw (concepts::MissingFeature
)
protectedvirtual

◆ createEntity_() [1/6]

virtual void concepts::ImportMesh::createEntity_ ( const MultiIndex< 1 > &  idx)
protectedvirtual

Creation of topological entities Vertex and Edge.

Reimplemented in concepts::Import2dMeshGeneral, and concepts::Import2dMeshBase.

◆ createEntity_() [2/6]

virtual void concepts::ImportMesh::createEntity_ ( const MultiIndex< 2 > &  idx)
protectedvirtual

◆ createEntity_() [3/6]

virtual void concepts::ImportMesh::createEntity_ ( const MultiIndex< 3 > &  idx)
throw (concepts::MissingFeature
)
protectedvirtual

Creation of topological entities.

Has to be implemented in derivated classes.

Reimplemented in concepts::Import2dMeshGeneral, and concepts::Import2dMeshBase.

◆ createEntity_() [4/6]

virtual void concepts::ImportMesh::createEntity_ ( const MultiIndex< 4 > &  idx)
throw (concepts::MissingFeature
)
protectedvirtual

◆ createEntity_() [5/6]

virtual void concepts::ImportMesh::createEntity_ ( const MultiIndex< 6 > &  idx)
throw (concepts::MissingFeature
)
protectedvirtual

◆ createEntity_() [6/6]

virtual void concepts::ImportMesh::createEntity_ ( const MultiIndex< 8 > &  idx)
throw (concepts::MissingFeature
)
protectedvirtual

◆ newCell_()

template<uint dim>
void concepts::ImportMesh::newCell_ ( MultiIndex< dim >  i)
protected

Creates topological entities and a geometrical cell.

◆ readAttributes_()

void concepts::ImportMesh::readAttributes_ ( const std::string &  bound,
const Array< bool > &  dimensions 
)
protected

◆ readCells_()

void concepts::ImportMesh::readCells_ ( const std::string &  elms,
const Array< bool > &  dimensions,
const std::vector< Real3d > &  vertices 
)
protected

Reads the file with cell information and creates topological entities and geometrical cells.

◆ readInts_()

uint concepts::ImportMesh::readInts_ ( const std::string &  i,
std::vector< int > &  v 
) const
protected

Reads integers from the string.

Returns
Number of integers read

◆ readLine_()

template<class F >
uint concepts::ImportMesh::readLine_ ( const std::string &  i,
Array< F > &  a,
bool  first = false 
) const
protected

Reads line of numbers from the string.

Parameters
iString
aresulting array of integers
firstflag, if the first integer should be taken into the array
Returns
Number of integers read

Definition at line 123 of file meshImport.hh.

Member Data Documentation

◆ edg_

std::vector<Connector1*> concepts::ImportMesh::edg_
protected

Definition at line 47 of file meshImport.hh.

◆ Edg_

MultiArray<2, Edge*> concepts::ImportMesh::Edg_
protected

Definition at line 50 of file meshImport.hh.

◆ eightAttr_

MultiArray<8, Attribute> concepts::ImportMesh::eightAttr_
protected

Definition at line 58 of file meshImport.hh.

◆ fourAttr_

MultiArray<4, Attribute> concepts::ImportMesh::fourAttr_
protected

Definition at line 56 of file meshImport.hh.

◆ idxStart_

const uint concepts::ImportMesh::idxStart_
protected

Starting point of indices in the files (1 or 0)

Definition at line 43 of file meshImport.hh.

◆ oneAttr_

MultiArray<1, Attribute> concepts::ImportMesh::oneAttr_
protected

Attributes of entities.

Definition at line 53 of file meshImport.hh.

◆ sixAttr_

MultiArray<6, Attribute> concepts::ImportMesh::sixAttr_
protected

Definition at line 57 of file meshImport.hh.

◆ threeAttr_

MultiArray<3, Attribute> concepts::ImportMesh::threeAttr_
protected

Definition at line 55 of file meshImport.hh.

◆ twoAttr_

MultiArray<2, Attribute> concepts::ImportMesh::twoAttr_
protected

Definition at line 54 of file meshImport.hh.

◆ vtx_

std::vector<Vertex*> concepts::ImportMesh::vtx_
protected

List of entities.

Definition at line 46 of file meshImport.hh.

◆ Vtx_

MultiArray<1, Vertex*> concepts::ImportMesh::Vtx_
protected

Array of the entities.

Definition at line 49 of file meshImport.hh.


The documentation for this class was generated from the following file:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich