A class to generate the external surface of a pml to use it just add the cells among which you want to extract an external surface designed for the case where a pml represent several object and thus there are several surface to extract for an example of use see SofaSimulator.cpp. More...
#include <SurfaceExtractor.h>
 Collaboration diagram for SurfaceExtractor:
 Collaboration diagram for SurfaceExtractor:| Public Member Functions | |
| void | AddCell (Cell *c) | 
| try to add a cell in the surface extractor and do it if this cell is not in  More... | |
| void | generateExternalSurface (StructuralComponent &surface, StructuralComponent &surfacePoints) | 
| generate the external surface  More... | |
| void | init () | 
| initialize the extractor  More... | |
| SurfaceExtractor (PhysicalModel *pm) | |
| constructor  More... | |
| ~SurfaceExtractor () | |
| destructor  More... | |
| Private Member Functions | |
| void | equivalent (int size, unsigned int id[]) | 
| check if equivalent of already existing facet  More... | |
| Private Attributes | |
| std::vector< Facet * > | facets | 
| vector with all the facets  More... | |
| PhysicalModel * | pm | 
| the physical model  More... | |
A class to generate the external surface of a pml to use it just add the cells among which you want to extract an external surface designed for the case where a pml represent several object and thus there are several surface to extract for an example of use see SofaSimulator.cpp.
| SurfaceExtractor::SurfaceExtractor | ( | PhysicalModel * | pm | ) | 
constructor
References pm.
| SurfaceExtractor::~SurfaceExtractor | ( | ) | 
destructor
References facets.
| void SurfaceExtractor::AddCell | ( | Cell * | c | ) | 
try to add a cell in the surface extractor and do it if this cell is not in
References equivalent(), Structure::getIndex(), StructuralComponent::getStructure(), Structure::getType(), StructureProperties::HEXAHEDRON, StructureProperties::QUAD, StructureProperties::TETRAHEDRON, StructureProperties::TRIANGLE, and StructureProperties::WEDGE.
Referenced by SofaSimulator::createPml().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | private | 
| void SurfaceExtractor::generateExternalSurface | ( | StructuralComponent & | surface, | 
| StructuralComponent & | surfacePoints | ||
| ) | 
generate the external surface
| surface | add the cells of the surface in the component surface | 
| surfacePoints | add the points of the surface in the component surfacePoints | 
References StructuralComponent::addStructure(), facets, PhysicalModel::getAtom(), StructuralComponent::getCell(), Structure::getIndex(), StructuralComponent::getNumberOfStructures(), StructuralComponent::getStructure(), and pm.
Referenced by SofaSimulator::createPml().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| void SurfaceExtractor::init | ( | ) | 
initialize the extractor
References facets.
Referenced by SofaSimulator::createPml().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | private | 
vector with all the facets
Referenced by equivalent(), generateExternalSurface(), init(), and ~SurfaceExtractor().
| 
 | private | 
the physical model
Referenced by generateExternalSurface(), and SurfaceExtractor().