 |
Computer Assited Medical Intervention Tool Kit
version 4.1
|
Go to the documentation of this file.
106 bool setIndex(
const unsigned int)
override;
154 return (std::string(className) == std::string(
"Cell"));
bool setIndex(const unsigned int) override
set the index.
Definition: Cell.cpp:139
ComposedBy
What this structural component is made of.
Definition: StructuralComponent.h:172
void addStructuralComponent(StructuralComponent *) override
add a particular StructuralComponent in the list (and set parentSC if null)
Definition: Cell.h:160
double surface()
Compute the surface of the cell.
Definition: Cell.cpp:490
StructuralComponent * getQuadFaces()
Return a new structural component directly representing the Cell as a list of quad faces (when possib...
Definition: Cell.cpp:384
the structure is a wedge (like the Pink Floyd's "Dark Side Of the Moon" prism), it must be a cell and...
Definition: StructureProperties.h:157
the structure is a tetrahedron, it must be a cell and have sub-structures that are atoms
Definition: StructureProperties.h:156
unsigned int getNumberOfStructures() const
get the number of structures
Definition: StructuralComponent.h:251
GeometricType
Geometric type gives information about which kind of geometric representation is the structure.
Definition: StructureProperties.h:128
~Cell() override
the destructor, my tailor. BECAREFUL: the atoms should not not be deleted here...
Definition: Cell.cpp:118
bool addGlobalIndexCellPair(std::GlobalIndexStructurePair)
add or update a pair to the cell map.
Definition: PhysicalModel.cpp:632
StructureProperties::GeometricType getType() const
get the type of index
Definition: Structure.cpp:39
An atom has an unique index in the physical model object, a 3D position, and different basic properti...
Definition: Atom.h:48
Cell(PhysicalModel *myPM, const StructureProperties::GeometricType t)
constructor that generates a unique index
Definition: Cell.cpp:36
std::pair< unsigned int, Structure * > GlobalIndexStructurePair
definition of a couple (=STL pair) (int , Structure *) this associates a global cell/atom index to th...
Definition: PhysicalModel.h:65
void removeFromParents()
this tell the parent components that this component is removed from memory.
Definition: modeling/libraries/pml/Component.cpp:48
void xmlPrint(std::ostream &, const StructuralComponent *) override
print to an output stream in "pseudo" XML format.
Definition: Cell.cpp:179
double * normal()
compute the normal of the facet Warning : Only available for QUAD and TRIANGLE type cells
Definition: Cell.cpp:458
double volume()
Compute the volume of the cell.
Definition: Cell.cpp:542
CellProperties * getProperties()
return the property
Definition: Cell.cpp:226
Properties * properties
Definition: modeling/libraries/pml/Component.h:117
unsigned int getNumberOfStructuralComponents() const
get the number of StructuralComponent that are using this structure
Definition: Structure.h:116
Atom * getAtom(const unsigned int id)
Get the atom that has the global index given in parameters.
Definition: PhysicalModel.h:384
unsigned int getIndex() const
get the structure unique index (stored in its property)
Definition: Structure.cpp:29
StructuralComponent::ComposedBy composedBy() override
overloaded from Structural component, always return StructuralComponent::ATOMS
Definition: Cell.h:156
void setColor(const StructuralComponentProperties::Color c)
Set the new color (using a StructuralComponentProperties::Color enum)
Definition: StructuralComponent.cpp:104
void deleteProperties()
delete the "properties" pointer and set it to NULL
Definition: modeling/libraries/pml/Component.cpp:42
Describes and manages the properties attached to cells.
Definition: CellProperties.h:43
A structural component is composed either by cell or by atoms.
Definition: StructuralComponent.h:51
bool makePrintData(const StructuralComponent *)
is this sc the one that will be the one that will make the cell to print out all its data or is this ...
Definition: Cell.cpp:147
Pure virtual class that represent an element of the structure. This implies that every structure coul...
Definition: Structure.h:42
void addStructure(Structure *s, bool check=true)
Add a Structure in the list (and tells the structure to add this structural component in its list).
Definition: StructuralComponent.h:211
A class that manages the structural component properties.
Definition: StructuralComponentProperties.h:43
StructuralComponent(PhysicalModel *)
Default Constructor.
Definition: StructuralComponent.cpp:36
virtual void addStructuralComponent(StructuralComponent *)
add a particular StructuralComponent in the list
Definition: Structure.h:127
This is the main class of this project. Following a nice concept, a physical model is able to represe...
Definition: PhysicalModel.h:85
invalid geometry type
Definition: StructureProperties.h:151
A cell has an unique index in the physical model object, is composed by atoms, and different basic pr...
Definition: Cell.h:45
StructuralComponent * getTriangleFaces()
Return a new structural component directly representing the Cell as a list of triangular faces (when ...
Definition: Cell.cpp:231
the structure has a quad base and one vertex outside the defined base plane (like an egyptian pyramid...
Definition: StructureProperties.h:158
StructureProperties * properties
Property of the current structure.
Definition: Structure.h:103
const StructuralComponent * getParentSC()
Get the direct parent structural that own this cell.
Definition: Cell.h:138
std::vector< Structure * > structures
List of the structure representing this component, all the structure in this list are either all Atom...
Definition: StructuralComponent.h:202
double * getColor() const
Get the color.
Definition: StructuralComponent.cpp:115
the structure is a hexahedron, it must be a cell and have sub-structures that are atoms
Definition: StructureProperties.h:159
no color given, decided by the GUI
Definition: StructuralComponentProperties.h:49
StructuralComponent * atomList
List of all the atoms of this structural component, build the first time.
Definition: StructuralComponent.h:206
the structure is a triangle, i.e it must be a cell composed of 3 atoms
Definition: StructureProperties.h:154
the structure is a simple line, i.e it must be a cell composed of only 2 atoms
Definition: StructureProperties.h:153
void deleteAllStructures() override
This method overload the one defined in StructuralComponent.
Definition: Cell.cpp:215
Structure * getStructure(const unsigned int) const
get a structure by its index (fisrt structure is at index 0)
Definition: StructuralComponent.h:219
bool isInstanceOf(const char *) const override
return true only if the parameter is equal to "MultiComponent"
Definition: Cell.h:152
Cell * getCell(unsigned int) const override
get cell by order number (not cell index)
Definition: StructuralComponent.cpp:196
the structure is a poly vertex, i.e it must be a cell and it is a point clouds
Definition: StructureProperties.h:161
the structure is an atom, and hence should be represented by a single point
Definition: StructureProperties.h:152
StructuralComponent * parentSC
Keep a reference to the direct parent structural component.
Definition: Cell.h:147
the structure is a quad, i.e it must be a cell composed of 4 atoms
Definition: StructureProperties.h:155
virtual bool setIndex(const unsigned int)
set the index.
Definition: Structure.cpp:33
unsigned int getNumberOfCells() const override
get the total nr of cell of the component
Definition: StructuralComponent.cpp:182
double signedVolumeTriangle(double p1[3], double p2[3], double p3[3])
Compute the volume of a triangle with the origin of the coordinate system.
Definition: Cell.cpp:594
the structural component is made of atoms
Definition: StructuralComponent.h:175
StructuralComponent * getStructuralComponent(unsigned int i)
get a particular StructuralComponent that is using this structure
Definition: Structure.h:119
bool isExclusive() const
tell if this component is exclusive or not
Definition: modeling/libraries/pml/Component.h:143
the structure is a polyline, i.e it must be a cell and the order of the atom in the cell are arranged...
Definition: StructureProperties.h:160
PhysicalModel * getPhysicalModel() const
get the physical model
Definition: modeling/libraries/pml/Component.h:183
void plannedNumberOfStructures(const unsigned int)
optimize the I/O of the std:vector structures.
Definition: StructuralComponent.h:269