![]() |
Computer Assited Medical Intervention Tool Kit
version 4.0
|
The manager of the Atom data. More...
#include <AtomDC.h>
Inherits camitk::Component.
Public Member Functions | |
void | addPointData (StructuralComponentDC *, double *) |
add a ptr to a pointData for this atom corresponding to the given SCDC More... | |
AtomDC (camitk::Component *parent, PMManagerDC *pmManagerDC, Atom *) | |
void | clearPointData () |
clear the point data ptr list More... | |
Atom * | getAtom () |
get the atom this dc is representing More... | |
AtomDecoration * | getDecoration (const QString &name, camitk::GeometricObject::Geometry t) |
get a decoration of the AtomDC using its name. More... | |
int | getOrderNumberInSCDC (StructuralComponentDC *) |
knowing a StructuralComponentDC get the order number of this AtomDC in it (return -1 if not found) More... | |
virtual PMManagerDC * | getPMManagerDC () |
get the PMManagerDC (given during instanciation), allows one to get PML/Component maps More... | |
void | getPosition (double &, double &, double &) |
get the current position for this atom More... | |
unsigned int | registerIndexInSCDC (const std::IndexInParentItemPair) |
register a StructuralComponentDC and this AtomDC corresponding order number in it (NOTE: this method replace the previous index if there was one) More... | |
void | resetAlreadyMovedFlag () |
reset the alreadyMoved flag to false, see alreadyMoved property More... | |
void | setPosition (double, double, double) |
set a new position for this atom More... | |
unsigned int | unregisterIndexInSCDC (StructuralComponentDC *) |
unregister a StructuralComponentDC item from the map More... | |
void | updatePointData (const double) |
update point data value More... | |
void | updatePosition () |
update the position of the 3D representation and launch the update position cascade process (updating all the 3D representation of all the SC/cells containing this atom, then of all the SC containing all the cells containing this atom...) More... | |
virtual | ~AtomDC () |
Redefined from camitk::Component | |
virtual void | setParent (InterfaceNode *) |
An AtomDC can have more than one parent... More... | |
virtual QPixmap | getIcon () |
Get the pixmap that will be displayed for this node. More... | |
void | pointPicked (vtkIdType, bool) |
picking is selecting/unselecting More... | |
virtual void | setSelected (const bool, const bool recursive=false) |
when seleceted add a sphere glyph around the atom position and set the enhanced mode to Normal More... | |
virtual void | setEnhancedModes (const EnhancedModes) |
do nothing here (the enhanced mode is controled by the setSelected method) More... | |
virtual void | setName (const QString &) |
set the name of the atom as well as the name of the DC More... | |
virtual void | setPointSet (vtkSmartPointer< vtkPointSet >) |
if the vtkPointSet is modified externally (e.g. by an operator), change the PM structure More... | |
virtual QMenu * | getPopupMenu (QWidget *parent) |
Overriden method so that we actually can build a popup menu with different actions. More... | |
virtual QWidget * | getPropertyWidget (QWidget *parent=0) |
reimplement this method to give the property widget to the app More... | |
virtual QObject * | getPropertyObject () |
reimplement this method to give the property object to the property editor More... | |
virtual bool | doubleClicked () |
overloaded method, allows one to set the point when double clicked More... | |
![]() | |
Component (const QString &file, const QString &name, Representation rep=NO_REPRESENTATION) | |
Component constructor for top-level component (please use the other constructor for sub-level components). More... | |
Component (Component *parentComponent, const QString &name, Representation rep=NO_REPRESENTATION) throw (AbortException) | |
Component constructor for a Component that is a child of another Component You should not use this constructor for a top-level component. More... | |
virtual | ~Component () |
default destructor. More... | |
Representation | getRepresentation () const |
return the type of representation concretely implemented by this Component in the InteractiveViewer. More... | |
bool | isTopLevel () const |
return true if this component is a top-level component More... | |
virtual Component * | getParentComponent () |
get the parent component More... | |
virtual Component * | getTopLevelComponent () |
get the top-level component More... | |
virtual InterfaceFrame * | getFrame () |
get the associated frame More... | |
virtual void | setModified (bool modified=true) |
set the modified flag More... | |
virtual bool | getModified () const |
set the modified flag More... | |
virtual void | setVisibility (Viewer *, bool) |
set the visibility for a viewer More... | |
virtual bool | getVisibility (Viewer *) const |
get the visibility of a viewer More... | |
virtual void | refresh () const |
refresh all the viewer that are currently displaying this Component More... | |
virtual void | refreshInterfaceNode () |
Asks all viewers that are currently displaying this Component to rebuild the representation of the InterfaceNode for this Component. More... | |
virtual bool | isSelected () const |
Check if this data component is selected. More... | |
const QString | getFileName () const |
get the file name where the data have to be stored/were stored More... | |
void | setFileName (const QString &) |
set the file name where the data have to be stored More... | |
bool | event (QEvent *e) |
Overriden from QObject, this one is only intercepting signal for dynamic property changed (see constructor). More... | |
QMenu * | getActionMenu () |
Get a QMenu that contains all the action that can be applied to this component. More... | |
QStringList | getHierarchy () |
bool | isInstanceOf (QString className) |
Assert that a Component instance really inherits from a given className. More... | |
virtual unsigned int | getNumberOfPropertyWidget () |
get the number of alternative property widgets More... | |
virtual QWidget * | getPropertyWidgetAt (unsigned int i, QWidget *parent=0) |
Get the ith alternative property widget. More... | |
void | updateProperty (QString name, QVariant value) |
update property: if you override this method, do not forget to call the superclass method for the property not managed locally in order to properly manage all inherited dynamic properties. More... | |
virtual Q_INVOKABLE Property * | getProperty (QString name) |
Get a Property given its name. More... | |
virtual bool | addProperty (Property *) |
Add a new CamiTK property to the component. More... | |
virtual void | addChild (InterfaceNode *) |
add a child Component (sub item in the hierarchy), and modify the child's parent to be equal to this instance More... | |
virtual void | attachChild (InterfaceNode *) |
add a child Component (but leave its parent unchanged) More... | |
virtual void | removeChild (InterfaceNode *) |
remove from the the sub item vector. More... | |
virtual void | setParent (InterfaceNode *) |
set the parent Component. This method automatically remove this Component from its previous (if already had one parent Component) More... | |
virtual void | deleteChildren () |
delete all sub Component, but do not delete the pointer (only the top-level component has the right to do that) More... | |
virtual QString | getName () const |
get the name to be displayed More... | |
virtual const ComponentList & | getChildren () |
get the list of the InterfaceNode children (sub items in the hierarchy) More... | |
virtual InterfaceNode * | getParent () |
get the parent Component More... | |
virtual bool | inItalic () const |
A component name is not displayed in italic by default. More... | |
const QString | getLabel () const |
void | setLabel (QString newName) |
set the string used to display the label, do the same as setName More... | |
delegateGet0 (myGeometry, getPointSet, vtkSmartPointer< vtkPointSet >) delegate1(myGeometry | |
vtkSmartPointer< vtkPointSet > | delegate1 (myGeometry, setPointData, vtkSmartPointer< vtkDataArray >) delegateConstGet0(myGeometry |
vtkSmartPointer< vtkPointSet > vtkSmartPointer< vtkAlgorithmOutput > | delegate1 (myGeometry, setDataConnection, vtkSmartPointer< vtkAlgorithmOutput >) delegateGet1(myGeometry |
vtkSmartPointer< vtkPointSet > vtkSmartPointer< vtkAlgorithmOutput > const virtual RenderingModes vtkSmartPointer< vtkProp > | getProp (const QString ¶m) |
Return the vtkProp (actors, volumes and annotations) corresponding to the given name. More... | |
virtual unsigned int | getNumberOfProp () const |
return the number of additional prop More... | |
virtual vtkSmartPointer< vtkProp > | getProp (unsigned int index) |
return an additional prop by its index More... | |
virtual bool | addProp (const QString &name, vtkSmartPointer< vtkProp > prop) |
insert an additional prop, defining it by its name (default visibility = false). More... | |
virtual bool | removeProp (const QString &name) |
remove a given additional prop. More... | |
virtual void | cellPicked (vtkIdType, bool) |
an inherited class can redefine this method something specific. More... | |
virtual void | getBounds (double *bounds) |
compute the object's bounding box [xmin,xmax, ymin,ymax, zmin,zmax], see Component.cpp More... | |
virtual double | getBoundingRadius () |
compute the object's bounding sphere radius, More... | |
delegate4 (myGeometry, setPointPosition, const unsigned int, const double, const double, const double) delegateAndInvokeChildren1(myGeometry | |
const virtual RenderingModes const InterfaceGeometry::RenderingModes | getRenderingModes () const |
see Component.cpp More... | |
delegateAndInvokeChildren1 (myGeometry, setEnhancedModes, const EnhancedModes) delegateConstGet0(myGeometry | |
const EnhancedModes | delegateAndInvokeChildren1Array (myGeometry, setActorColor, const RenderingModes, double, 4) delegateAndInvokeChildren4(myGeometry |
const EnhancedModes const const const const virtual double void | getActorColor (const RenderingModes, double [4]) |
see Component.cpp More... | |
delegateAndInvokeChildren3 (myGeometry, setColor, const double, const double, const double) delegateAndInvokeChildren4(myGeometry | |
const const const const double | delegateAndInvokeChildren2 (myGeometry, setActorOpacity, const RenderingModes, const double) delegateConstGet1(myGeometry |
const const const const double const RenderingModes | delegateAndInvokeChildren1 (myGeometry, setOpacity, const double) delegate2(myGeometry |
const const const const double const RenderingModes double | delegate1 (myGeometry, setTexture, vtkSmartPointer< vtkTexture >) virtual void setGlyphType(const GlyphTypes type |
delegate1 (myGeometry, setLinesAsTubes, bool) delegate1(myGeometry | |
delegateConstGet0 (mySlice, getImageData, vtkSmartPointer< vtkImageData >) delegate1(mySlice | |
vtkSmartPointer< vtkImageData > | delegateConstGet0 (mySlice, get2DImageActor, vtkSmartPointer< vtkImageActor >) delegateConstGet0(mySlice |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > | delegateConstGet0 (mySlice, getPickPlaneActor, vtkSmartPointer< vtkActor >) delegateGet0(mySlice |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > | delegate3 (mySlice, pixelPicked, double, double, double) delegate0(mySlice |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > updatePickPlane | delegate1 (mySlice, setSlice, int) delegate3(mySlice |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > updatePickPlane double | delegate1 (mySlice, setRotationX, double) delegate1(mySlice |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > updatePickPlane double double | delegate1 (mySlice, setRotationZ, double) delegateConstGet0(mySlice |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > updatePickPlane double double int | delegate3 (mySlice, setPixelRealPosition, double, double, double) delegate1(mySlice |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > updatePickPlane double double int virtual vtkSmartPointer< vtkTransform > double | getRotationX () const |
see Component.cpp More... | |
virtual double | getRotationY () const |
see Component.cpp More... | |
virtual double | getRotationZ () const |
see Component.cpp More... | |
virtual int | getNumberOfSlices () const |
see Component.cpp More... | |
virtual int | getSlice () const |
see Component.cpp More... | |
const QString & | getFrameName () const |
Hierarchy accessors / Modifyers. More... | |
delegate1 (myFrame, setFrameName, QString) InterfaceFrame *getParentFrame() const | |
void | setParentFrame (InterfaceFrame *frame, bool keepTransform=true) |
Set the parent frame and update or not its transform during the parent transition. More... | |
const QVector< InterfaceFrame * > & | getChildrenFrame () const |
Get the Children Frames from the current Frame in the Frame Hierarchy The Frame hierarchy may not be the same as the Component Hierarchy. More... | |
const vtkSmartPointer< vtkTransform > | getTransformFromWorld () const |
Transforms accessors / Modifyers. More... | |
const vtkSmartPointer< vtkTransform > | getTransform () const |
Get the transformation with respect to the parent frame. More... | |
const vtkSmartPointer< vtkTransform > | getTransformFromFrame (InterfaceFrame *frame) const |
Compute the transformation from any other frame to the current frame. More... | |
delegate1 (myFrame, setTransform, vtkSmartPointer< vtkTransform >) delegate0(myFrame | |
resetTransform | delegate3 (myFrame, translate, double, double, double) delegate3(myFrame |
resetTransform double | delegate3 (myFrame, rotateVTK, double, double, double) delegate3(myFrame |
resetTransform double double | delegate3 (myFrame, setTransformTranslationVTK, double, double, double) delegate3(myFrame |
resetTransform double double double | delegate3 (myFrame, setTransformRotationVTK, double, double, double) vtkSmartPointer< vtkAxesActor > getFrameAxisActor() |
delegate2 (myFrame, setFrameVisibility, Viewer *, bool) bool getFrameVisibility(Viewer *viewer) const | |
delegate1 (myFrame, addFrameChild, InterfaceFrame *) delegate1(myFrame | |
![]() | |
virtual unsigned int | getIndexOfPropertyExplorerTab ()=0 |
Get the index of the tab in the PropertyExplorer to select for display. More... | |
virtual void | setIndexOfPropertyExplorerTab (unsigned int index)=0 |
Set the index of the tab in the PropertyExplorer to select for display. More... | |
virtual | ~InterfaceProperty () |
empty virtual destructor, to avoid memory leak More... | |
![]() | |
virtual | ~InterfaceNode () |
empty virtual destructor, to avoid memory leak More... | |
![]() | |
virtual | ~InterfaceGeometry () |
empty virtual destructor, to avoid memory leak More... | |
virtual vtkSmartPointer< vtkPointSet > | getPointSet ()=0 |
virtual void | setPointData (vtkSmartPointer< vtkDataArray >)=0 |
set the point data (may contains a lookup table). More... | |
virtual void | setMeshWorldTransform (vtkSmartPointer< vtkTransform >)=0 |
set the transformation for 3D representation More... | |
virtual vtkSmartPointer< vtkAlgorithmOutput > | getDataPort () const =0 |
get the custom algorithm pipeline input. More... | |
virtual void | setDataConnection (vtkSmartPointer< vtkAlgorithmOutput >)=0 |
Set/reset the connection for the InterfaceGeometry internal algorithm. More... | |
virtual vtkSmartPointer< vtkActor > | getActor (const RenderingModes)=0 |
Return the actor for the representation mode, NULL if the actor doesn't exist. More... | |
virtual void | setTexture (vtkSmartPointer< vtkTexture >)=0 |
Set a texture to this object. More... | |
virtual void | setPointPosition (const unsigned int orderNumber, const double x, const double y, const double z)=0 |
set a given point position More... | |
virtual void | setRenderingModes (const RenderingModes)=0 |
virtual const EnhancedModes | getEnhancedModes () const =0 |
get the current enhanced mode More... | |
virtual void | setActorColor (const RenderingModes, double *color)=0 |
Set the color of given representation modes. More... | |
virtual void | setActorColor (const RenderingModes, const double, const double, const double)=0 |
Set the color of given representation modes. More... | |
virtual void | getActorColor (const RenderingModes, double *color)=0 |
Get the color of given representation modes in the second parameter. More... | |
virtual void | setColor (const double, const double, const double)=0 |
Set an (r,g,b) color to all representation modes, without changing the opacity. More... | |
virtual void | setColor (const double, const double, const double, const double)=0 |
Set an (r,g,b,a) color to all representation modes. More... | |
virtual void | setActorOpacity (const RenderingModes, const double)=0 |
Set the opacity of this representation modes. WARNING color field (surfaceColor, ...) are not modified! More... | |
virtual double | getActorOpacity (const RenderingModes) const =0 |
Return the opacity of a given renderng mode. More... | |
virtual void | setOpacity (const double)=0 |
Set the opacity of this object. WARNING color field (surfaceColor, ...) are not modified! More... | |
virtual void | setMapperScalarRange (double min, double max)=0 |
Set the mapper scalar range. More... | |
virtual void | setGlyphType (const GlyphTypes type, const double size=0.0)=0 |
Set the glyph type (a glyph is a geometric representation attached to every point in the input dataset). More... | |
virtual void | setLinesAsTubes (bool)=0 |
set the lines as tubes (works only for vtkDataSet representation that contains lines) More... | |
![]() | |
virtual void | addFrameChild (InterfaceFrame *frame)=0 |
Add the input frame as a child of the current frame. More... | |
virtual vtkSmartPointer< vtkAxesActor > | getFrameAxisActor ()=0 |
Gives the 3D representation of the frame (based on xyz arrows) More... | |
virtual bool | getFrameVisibility (Viewer *viewer) const =0 |
Get the Component Frame visibility for a given viewer. More... | |
virtual void | removeFrameChild (InterfaceFrame *frame)=0 |
Remove the input frame as a child of the current frame. More... | |
virtual void | setFrameVisibility (Viewer *viewer, bool visible)=0 |
Set the Component Frame visible for a given viewer. More... | |
virtual | ~InterfaceFrame () |
empty virtual destructor, to avoid memory leak More... | |
virtual void | setFrameName (QString name)=0 |
Set the Frame Unique identifyer. More... | |
virtual InterfaceFrame * | getParentFrame () const =0 |
Get the parent frame. More... | |
virtual void | setTransform (vtkSmartPointer< vtkTransform > transform)=0 |
Set the current input frame position (according to its parent Frame) More... | |
virtual void | resetTransform ()=0 |
Set the current frame transform to identity. More... | |
virtual void | translate (double x, double y, double z)=0 |
Apply a translation relative to the current position. More... | |
virtual void | rotate (double aroundX, double aroundY, double aroundZ)=0 |
Apply rotations relative to the current position in the alphabetical order (X, Y, Z). More... | |
virtual void | rotateVTK (double aroundX, double aroundY, double aroundZ)=0 |
Apply a rotation relative to the current position, using the VTK rotation order (Z, X, Y) More... | |
virtual void | setTransformTranslation (double x, double y, double z)=0 |
Set the translation part of the 3D space transformation of the current frame. More... | |
virtual void | setTransformTranslationVTK (double x, double y, double z)=0 |
Set the translation part of the 3D space transformation of the current frame. More... | |
virtual void | setTransformRotation (double aroundX, double aroundY, double aroundZ)=0 |
Set the rotation part of the 3D space transformation of the current frame. More... | |
virtual void | setTransformRotationVTK (double aroundX, double aroundY, double aroundZ)=0 |
Set the rotation part of the 3D space transformation of the current frame. More... | |
Private Member Functions | |
virtual void | initRepresentation () |
the concrete building of the geometry More... | |
Private Attributes | |
bool | alreadyMoved |
true if the atom has been already moved by another SC This is a way to solve the bug which occurs when 2 selected cells has this atom in common. More... | |
QMap< QString, AtomDecoration * > | decorations |
list of decorations attached to this AtomDC More... | |
Atom * | myAtom |
The atom the dc is representing. More... | |
PMManagerDC * | myPMManagerDC |
the PMManagerDC More... | |
AtomDCPopup * | myPopupMenu |
the popup menu More... | |
AtomDCProperties * | myProp |
the atom'properties More... | |
std::IndexInParentItemMap | mySCDCindexes |
correspondance between a SCDC and the order number of this atom dc in a particular SCDC (parent items). More... | |
std::vector< double * > | pointData |
list of all the point data adresses More... | |
std::set< StructuralComponentDC * > | pointDataSC |
list of all the SC who asked for a point data in this AtomDC More... | |
Static Private Attributes | |
static QPixmap * | myPixmap = NULL |
the AtomDC pixmap More... | |
Additional Inherited Members | |
![]() | |
enum | Representation { GEOMETRY, SLICE, NO_REPRESENTATION } |
The different representation that can be implemented to represent this Component in the InteractiveViewer. More... | |
![]() | |
enum | EnhancedMode { Normal = 0x0, Hidden = 0x1, Shaded = 0x2, Highlighted = 0x4 } |
(and QFlags EnhancedModes) handle the way the rendering actors will be enhanced or not (from completely hidden to highlighted) More... | |
enum | GlyphType { NoGlyph = 0x0, Sphere = 0x1 } |
(and QFlags GlyphTypes) is the type of glyph attached to the geometry representation More... | |
enum | RenderingMode { None = 0x0, Surface = 0x1, Wireframe = 0x2, Points = 0x4 } |
(and QFlags RenderingModes) handle actor rendering options (render this InterfaceGeometry as a surface, a wireframe and set of points). More... | |
![]() | |
setPointSet | |
vtkSmartPointer< vtkPointSet > | getDataPort |
vtkSmartPointer< vtkPointSet > vtkSmartPointer< vtkAlgorithmOutput > | getActor |
vtkSmartPointer< vtkPointSet > vtkSmartPointer< vtkAlgorithmOutput > | vtkSmartPointer< vtkActor > |
setRenderingModes | |
getEnhancedModes | |
const EnhancedModes | setActorColor |
const EnhancedModes const | RenderingModes |
const EnhancedModes const const | double |
const EnhancedModes const const const | double |
setColor | |
const | double |
const const | double |
const const const | double |
const const const const double | getActorOpacity |
const const const const double | double |
const const const const double const RenderingModes | setMapperScalarRange |
const const const const double const RenderingModes | double |
const const const const double const RenderingModes double const double | size = 0.0) |
setMeshWorldTransform | |
setOriginalVolume | |
vtkSmartPointer< vtkImageData > | get3DImageActor |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > | getPixelActor |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > updatePickPlane | setSlice |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > updatePickPlane | double |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > updatePickPlane double | setRotationY |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > updatePickPlane double double | getNumberOfColors |
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > updatePickPlane double double int | setImageWorldTransform |
resetTransform | rotate |
resetTransform | double |
resetTransform double | setTransformTranslation |
resetTransform double | double |
resetTransform double double | setTransformRotation |
resetTransform double double | double |
removeFrameChild | |
![]() | |
ComponentList | childrenComponent |
The explorer sub items. More... | |
unsigned int | indexOfPropertyExplorerTab |
The PropertyExplorer tab index to select once refreshed. More... | |
bool | isSelectedFlag |
tells if this particular Component is selected or not More... | |
bool | modifiedFlag |
the modificatio flag (could be extended to manage a undo/redo list) More... | |
QString | myFileName |
the file name from which the Component is loaded More... | |
InterfaceFrame * | myFrame |
myFrame is the pose (position and orientation) of the Component in the world frame, the Component delegates all InterfaceFrame activity to myFrame (delegation pattern) More... | |
InterfaceGeometry * | myGeometry |
myGeometry is the 3d representation of this Component, the Component delegates all InterfaceGeometry activity to myGeometry (delegation pattern) More... | |
InterfaceNode * | myParentNode |
who is the boss? The Component! More... | |
InterfaceBitMap * | mySlice |
mySlice is the slice representation of this data component, the Component delegates all InterfaceBitMap activity to mySlice (delegation pattern) More... | |
The manager of the Atom data.
AtomDC are only created in the StructuralComponentDC constructor, which garanties that each atom has ONE AND ONLY ONE DC. But as Atom can be referenced by more than one Component (StructuralComponent or Cell) AtomDC is a particular type of DC that can have more than one parent DC (setParent is rewritten here).
AtomDC::AtomDC | ( | camitk::Component * | parent, |
PMManagerDC * | pmManagerDC, | ||
Atom * | a | ||
) |
|
virtual |
References decorations, myPopupMenu, and myProp.
void AtomDC::addPointData | ( | StructuralComponentDC * | sc, |
double * | ptr | ||
) |
add a ptr to a pointData for this atom corresponding to the given SCDC
References pointData, and pointDataSC.
void AtomDC::clearPointData | ( | ) |
clear the point data ptr list
References pointData.
|
virtual |
overloaded method, allows one to set the point when double clicked
Reimplemented from camitk::Component.
References CAMITK_INFO, Structure::getIndex(), and myAtom.
|
inline |
get the atom this dc is representing
Referenced by AtomDecoration::AtomDecoration(), LoadsEditor::createDCLoads(), AtomDCProperties::event(), AtomDCProperties::getIndex(), AtomDCProperties::getPosition(), AtomDCProperties::setIndex(), StructuralComponentDC::updatePosition(), AtomDCProperties::updateProperties(), AtomDCWidget::updateProperties(), and AtomDCWidget::usedInTableClicked().
AtomDecoration * AtomDC::getDecoration | ( | const QString & | name, |
camitk::GeometricObject::Geometry | t | ||
) |
get a decoration of the AtomDC using its name.
If the AtomDC has no decoration using this name, create a new one using the given type.
name | the decoration name |
t | the decoration type |
References decorations.
|
virtual |
Get the pixmap that will be displayed for this node.
If you want your component to have a nice pixmap displayed in the explorer, for example, you just need to
And that all folks! A nice icon will be now used to display your component!
Reimplemented from camitk::Component.
References myPixmap.
int AtomDC::getOrderNumberInSCDC | ( | StructuralComponentDC * | parent | ) |
knowing a StructuralComponentDC get the order number of this AtomDC in it (return -1 if not found)
References mySCDCindexes.
Referenced by StructuralComponentDC::cellsToGeometry(), and StructuralComponentDC::updatePosition().
|
inlinevirtual |
get the PMManagerDC (given during instanciation), allows one to get PML/Component maps
Referenced by AtomDCWidget::usedInTableClicked().
|
virtual |
Overriden method so that we actually can build a popup menu with different actions.
Reimplemented from camitk::Component.
References myPopupMenu.
get the current position for this atom
References Atom::getPosition(), and myAtom.
Referenced by CellDC::initRepresentation().
|
virtual |
reimplement this method to give the property object to the property editor
Reimplemented from camitk::Component.
References myProp.
|
virtual |
reimplement this method to give the property widget to the app
References PMManagerDC::getAtomDCWidget(), and myPMManagerDC.
|
privatevirtual |
the concrete building of the geometry
Implements camitk::Component.
References camitk::Component::getName(), Atom::getPosition(), camitk::Component::isSelectedFlag, myAtom, camitk::Component::myGeometry, and setSelected().
Referenced by AtomDC().
|
virtual |
unsigned int AtomDC::registerIndexInSCDC | ( | const std::IndexInParentItemPair | p | ) |
register a StructuralComponentDC and this AtomDC corresponding order number in it (NOTE: this method replace the previous index if there was one)
References mySCDCindexes, and unregisterIndexInSCDC().
Referenced by StructuralComponentDC::updateAtoms().
void AtomDC::resetAlreadyMovedFlag | ( | ) |
reset the alreadyMoved flag to false, see alreadyMoved property
References alreadyMoved, and myPixmap.
Referenced by LoadsSimulationDriver::resetPositions(), AtomDCProperties::setPosition(), and LoadsSimulationDriver::updatePositions().
|
virtual |
do nothing here (the enhanced mode is controled by the setSelected method)
Implements camitk::InterfaceGeometry.
|
virtual |
set the name of the atom as well as the name of the DC
Reimplemented from camitk::Component.
References myAtom, Structure::setName(), and camitk::Component::setName().
|
virtual |
An AtomDC can have more than one parent...
myParentDC is the first DC (atom list).
|
virtual |
if the vtkPointSet is modified externally (e.g. by an operator), change the PM structure
Implements camitk::InterfaceGeometry.
References camitk::Component::getTopLevelComponent(), camitk::Component::setModified(), and setPosition().
set a new position for this atom
References alreadyMoved, myAtom, Atom::setPosition(), and updatePosition().
Referenced by LoadsSimulationDriver::resetPositions(), setPointSet(), StructuralComponentDC::setPointSet(), AtomDCProperties::setPosition(), and LoadsSimulationDriver::updatePositions().
|
virtual |
when seleceted add a sphere glyph around the atom position and set the enhanced mode to Normal
Reimplemented from camitk::Component.
References PMManagerDC::computeBoundingRadius(), PMManagerDC::getBoundingRadius(), camitk::InterfaceGeometry::getProp(), camitk::Component::isSelectedFlag, camitk::Component::myGeometry, myPMManagerDC, camitk::InterfaceGeometry::setGlyphType(), camitk::Component::setSelected(), and camitk::InterfaceGeometry::Sphere.
Referenced by initRepresentation(), and pointPicked().
unsigned int AtomDC::unregisterIndexInSCDC | ( | StructuralComponentDC * | parent | ) |
unregister a StructuralComponentDC item from the map
References mySCDCindexes.
Referenced by registerIndexInSCDC().
void AtomDC::updatePointData | ( | const double | value | ) |
update point data value
References pointData, and pointDataSC.
void AtomDC::updatePosition | ( | ) |
update the position of the 3D representation and launch the update position cascade process (updating all the 3D representation of all the SC/cells containing this atom, then of all the SC containing all the cells containing this atom...)
References PMManagerDC::getDC(), Structure::getNumberOfStructuralComponents(), Atom::getPosition(), Structure::getStructuralComponent(), myAtom, camitk::Component::myGeometry, myPMManagerDC, mySCDCindexes, camitk::Component::setModified(), and camitk::InterfaceGeometry::setPointPosition().
Referenced by setPosition().
|
private |
true if the atom has been already moved by another SC This is a way to solve the bug which occurs when 2 selected cells has this atom in common.
The call of setRealTransformation() being sequencial, the first cell will move the atom first, and then the second cell will move it again... Set to false when setTranform(...) is called with the identity. Set to true when updatePosition is called
Referenced by AtomDC(), resetAlreadyMovedFlag(), and setPosition().
|
private |
list of decorations attached to this AtomDC
Referenced by getDecoration(), and ~AtomDC().
|
private |
The atom the dc is representing.
Referenced by AtomDC(), doubleClicked(), getPosition(), initRepresentation(), setName(), setPosition(), and updatePosition().
|
staticprivate |
the AtomDC pixmap
Referenced by getIcon(), and resetAlreadyMovedFlag().
|
private |
the PMManagerDC
Referenced by AtomDC(), getPropertyWidget(), setSelected(), and updatePosition().
|
private |
the popup menu
Referenced by AtomDC(), getPopupMenu(), and ~AtomDC().
|
private |
the atom'properties
Referenced by AtomDC(), getPropertyObject(), and ~AtomDC().
|
private |
correspondance between a SCDC and the order number of this atom dc in a particular SCDC (parent items).
Referenced by getOrderNumberInSCDC(), registerIndexInSCDC(), unregisterIndexInSCDC(), and updatePosition().
|
private |
list of all the point data adresses
Referenced by addPointData(), clearPointData(), and updatePointData().
|
private |
list of all the SC who asked for a point data in this AtomDC
Referenced by addPointData(), and updatePointData().