25 #ifndef PML_COMPONENT_H 26 #define PML_COMPONENT_H 45 class vtkUnstructuredGrid;
60 #include <vtkSelectionNode.h> 61 #include <vtkExtractSelection.h> 117 virtual QPixmap getIcon();
120 virtual void updateProperty(QString name, QVariant value);
128 virtual void setSelected(
const bool b,
const bool recursive =
true);
138 vtkIdType getPointId(
const Atom *a);
148 void selectCell(
Cell* cell,
bool showAtomGlyph);
152 void selectAtom(
const Atom* atom);
163 void unselectItems();
167 void updateSelection();
170 void refreshDisplay();
192 virtual void initDynamicProperties();
217 void create3DStructure();
227 vtkSmartPointer<vtkCell> cellToVTK(
Cell* cell);
266 void createAtomSelectionVTKPipeline();
277 return (result == atomPointIdMap.end()) ? 0 : (result->second);
PhysicalModel * getPhysicalModel()
Definition: PMLComponent.h:133
std::AtomPointIdMap atomPointIdMap
the Atom / vtkPoint Id map
Definition: PMLComponent.h:214
A cell has an unique index in the physical model object, is composed by atoms, and different basic pr...
Definition: Cell.h:46
Exception class to handle abortion in component instanciation.
Definition: AbortException.h:43
QMap< QString, vtkSmartPointer< vtkIdTypeArray > > scCellIdArrayMap
The association structural component <-> vtkIdTypeArray for Cells selection.
Definition: PMLComponent.h:250
std::map< const Atom *, const vtkIdType >::iterator AtomPointIdMapIterator
the iterator corresponding to the AtomPointIdMap map
Definition: PMLComponent.h:77
std::map< const Atom *, const vtkIdType > AtomPointIdMap
definition of the association set (=map in STL) AtomPointIdMap.
Definition: PMLComponent.h:75
vtkSmartPointer< vtkSelection > selectedAtomSelection
The vtkSelection for atom selection.
Definition: PMLComponent.h:245
Definition: Action.cpp:40
Basic component to manage any kind of mesh.
Definition: MeshComponent.h:51
vtkIdType getPointId(const Atom *a)
get the point Id from the corresponding atom, this is the opposite of pml->getAtom(id) ...
Definition: PMLComponent.h:273
vtkSmartPointer< vtkUnstructuredGrid > mainGrid
The 3D grid containing all the cells of the PML.
Definition: PMLComponent.h:211
#define PML_COMPONENT_API
Definition: PMLComponentAPI.h:12
bool neverSelected
the first selection should trigger the pml exporer action (default action)
Definition: PMLComponent.h:203
vtkSmartPointer< vtkPoints > thePoints
Definition: PMLComponent.h:208
This class manages a physical model (PML) CamiTK component.
Definition: PMLComponent.h:99
Definition: MeshSelectionModel.h:51
static QPixmap * myPixmap
the PMLComponent icon
Definition: PMLComponent.h:200
InsertionPolicy
Definition: MeshSelectionModel.h:50
An atom has an unique index in the physical model object, a 3D position, and different basic properti...
Definition: Atom.h:49
This is the main class of this project.
Definition: PhysicalModel.h:86
std::pair< const Atom *, const vtkIdType > AtomPointIdPair
As the PhysicalModel atom index can be different to the node index (continuity in id is not mandatory...
Definition: PMLComponent.h:69
vtkSmartPointer< vtkIdTypeArray > selectedAtomIdArray
The vtkIdTypeArray for atom selection (contains all the id array that corresponds to a selected atom)...
Definition: PMLComponent.h:242
PhysicalModel * physicalModel
The library pml object that uses pmlschema to read the pml information for the xml file...
Definition: PMLComponent.h:197
A structural component is composed either by cell or by atoms.
Definition: StructuralComponent.h:52
A multi-component stores other components, hence providing a way to have an tree representation of co...
Definition: MultiComponent.h:44
QMap< QString, vtkSmartPointer< vtkSelection > > scCellSelectionMap
The association structural component <-> vtkSelection for Cells selection.
Definition: PMLComponent.h:255