29 #include <pml/StructuralComponent.h>
30 #include <pml/MultiComponent.h>
31 #include <pml/PhysicalModel.h>
36 #include <QProgressDialog>
49 #include <vtkPoints.h>
50 #include <vtkSmartPointer.h>
69 using namespace camitk;
76 typedef std::pair< ::Component *, ComponentDC *> ComponentDCPair;
84 typedef std::map < ::Component *, ComponentDC *> ComponentDCMap;
86 typedef std::map < ::Component *, ComponentDC *>::iterator ComponentDCMapIterator;
91 typedef std::pair<Atom *, AtomDC *> AtomDCPair;
97 typedef std::map <Atom *, AtomDC *> AtomDCMap;
99 typedef std::map <Atom *, AtomDC *>::iterator AtomDCMapIterator;
124 bool getModified()
const;
127 virtual void setName(
const QString &);
130 virtual QMenu * getPopupMenu(QWidget* parent);
133 void progressOneStep();
136 virtual QPixmap getIcon();
149 void createPointData();
152 void destroyPointData();
205 PhysicalModel *getPhysicalModel();
208 virtual double getBoundingRadius();
211 virtual void getBounds(
double bounds[6]);
214 void computeBoundingRadius();
217 InterfaceGeometry::RenderingModes toDCRenderingMode(::RenderingMode::Mode);
220 ::RenderingMode::Mode toPMRenderingMode(InterfaceGeometry::RenderingModes);
238 void addMultiComponentDCPair(std::ComponentDCPair);
241 void addStructuralComponentDCPair(std::ComponentDCPair);
244 void addCellDCPair(std::ComponentDCPair);
247 void addAtomDCPair(std::AtomDCPair);
256 QWidget *getAtomDCWidget(
AtomDC *adc = NULL, QWidget *parent = NULL);
266 void buildPhysicalModelDCs();
271 virtual void initRepresentation();
318 return initialBoundingRadius;
323 return myLoadsManager;
329 return (
ComponentDC *) getDC(dynamic_cast<StructuralComponent *>(mc));
331 return (
ComponentDC *) getDC(dynamic_cast<MultiComponent *>(mc));
354 std::AtomDCMapIterator result = myADCMap.find(a);
355 return (result == myADCMap.end()) ? NULL : (result->second);