![]() |
Computer Assited Medical Intervention Tool Kit
version 4.0
|
The manager of the Structural component data. More...
#include <StructuralComponentDC.h>
Inherits ComponentDC.
Inherited by CellDC.
Public Member Functions | |
camitk::Geometry * | cellsToGeometry () |
create an Geometry (composed by vtk unstructured grid of n cells) from the managed SC which is a list of cells More... | |
StructuralComponent::ComposedBy | composedBy () |
return if the structural component is a list of cells or of atoms More... | |
virtual void | createPointData () |
create all the point data to display specific information (only works for SCs that have a surface representation). More... | |
virtual void | destroyPointData () |
destroy all the point data More... | |
StructuralComponent * | getSC () |
convenient methods More... | |
StructuralComponentDC (camitk::Component *parent, PMManagerDC *pmManagerDC, StructuralComponent *sc, bool delayRepresentationInit=false) | |
Default constructor, set the 3rd parameter to false to delay the construction of the Geometry (represention of the DC in 3D). More... | |
void | updateAtoms () |
the method to update both atomDCs vector and atomVtkPointsIndexMap More... | |
void | updatePosition (AtomDC *, int atomOrderNr=-1) |
This atom position has been changed, the 3D representation has to be updated. More... | |
virtual | ~StructuralComponentDC () |
destructor More... | |
camitk::Component rewritten | |
This methods are overloaded from camitk::Component to give the StructuralComponentDC and its sub classe CellDC a different behaviour. | |
virtual QPixmap | getIcon () |
Get the pixmap that will be displayed for this node. More... | |
virtual void | setPointSet (vtkSmartPointer< vtkPointSet >) |
if the vtkPointSet is modified externally (e.g. by an operator), change the PM structure More... | |
virtual void | cellPicked (vtkIdType, bool) |
select a specific sub DC using the cell id (do nothing if the SC is not composed by cells) More... | |
virtual void | pointPicked (vtkIdType, bool) |
select a specific sub DC using the point id (do nothing if the SC is not composed by atoms) More... | |
virtual void | setSelected (const bool, const bool recursive=false) |
do not select sub DC if they are AtomDC (AtomDC can only be selected individually) More... | |
virtual void | setEnhancedModes (const EnhancedModes) |
do not set enhanced modes if children are atomDC More... | |
virtual void | setRenderingModes (const RenderingModes) |
set the rendering mode of the StructuralComponent as well as the DC More... | |
virtual void | setActorColor (const RenderingModes, const double, const double, const double) |
Set the color of given representation modes. More... | |
virtual void | setActorColor (const RenderingModes, double[4]) |
virtual void | setColor (const double, const double, const double) |
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) |
Set an (r,g,b,a) color to all representation modes. More... | |
virtual void | addChild (InterfaceNode *) |
add a sub DC: overloaded method to allow change in the physical model data representation More... | |
virtual void | removeChild (InterfaceNode *) |
remove a sub DC: overloaded method to allow change in the physical model data representation More... | |
virtual QMenu * | getPopupMenu (QWidget *parent) |
Overriden method so that we actually can build a popup menu with different actions. More... | |
virtual QObject * | getPropertyObject () |
reimplement this method to give the property object to the property editor More... | |
![]() | |
ComponentDC (camitk::Component *parent, PMManagerDC *pmManagerDC, ::Component *c=NULL) | |
constructors More... | |
::Component * | getComponent () |
return the component that this dc is managing More... | |
virtual PMManagerDC * | getPMManagerDC () |
get the PMManagerDC (given during instanciation), allows one to get PML/Component maps More... | |
virtual void | updateProperty (QString name, QVariant value) |
update a specific property More... | |
virtual | ~ComponentDC () |
virtual void | setOpacity (const double) |
virtual const EnhancedModes | getEnhancedModes () const |
get the current enhanced mode More... | |
virtual const RenderingModes | getRenderingModes () const |
see Component.cpp More... | |
virtual void | setName (const QString &) |
set the name to be displayed More... | |
virtual void | deleteChildren () |
remove a sub DC: overloaded method to avoir deletion of children that are used in more than one SCDC (that have more than one parent) More... | |
virtual vtkSmartPointer< vtkPointSet > | getPointSet () |
return the first non-null subcomponent point set More... | |
![]() | |
virtual unsigned int | getNumberOfPropertyWidget () |
there is more than one property widgets (to view as tabs in the property explorer) More... | |
vtkIdType | getPickedCellId () |
get the last pick point id, More... | |
vtkIdType | getPickedPointId () |
get the last pick point id, More... | |
virtual QWidget * | getPropertyWidgetAt (unsigned int i, QWidget *parent=0) |
the proprety widgets are: default property widget, selection view and data view More... | |
MeshComponent (const QString &file) throw ( AbortException ) | |
Creates a top-level MeshComponent from a file. More... | |
MeshComponent (vtkSmartPointer< vtkPointSet > aPointSet, const QString &name) | |
Creates a top-level MeshComponent from a vtkPointSet (and instanciate its 3D representation). More... | |
MeshComponent (Component *parentComponent, vtkSmartPointer< vtkPointSet > aPointSet, const QString &name) | |
Creates a MeshComponent as a sub component of another Component using a vtkPointSet (and instanciate its 3D representation). More... | |
virtual | ~MeshComponent () |
Destructor. More... | |
QList< vtkSmartPointer< vtkSelectionNode > > & | getSelections () |
Get the selection list. More... | |
unsigned int | getNumberOfSelections () const |
Get the number of selections. More... | |
vtkSmartPointer< vtkSelection > | getActiveSelection () const |
Get active selections. More... | |
vtkSmartPointer< vtkSelectionNode > | getSelection (const QString &name) const |
Get a selection from its name. More... | |
vtkSmartPointer< vtkSelectionNode > | getSelectionAt (unsigned int index) const |
Get a selection from its index in the list. More... | |
int | getSelectionIndex (const QString &name) const |
Get the selection index in the list from its name. More... | |
virtual int | addSelection (const QString &name, int fieldType, int contentType, vtkSmartPointer< vtkAbstractArray > array, MeshSelectionModel::InsertionPolicy policy=MeshSelectionModel::REPLACE) |
Add a selection. More... | |
virtual int | addToSelectedSelection (int fieldType, int contentType, vtkSmartPointer< vtkAbstractArray > array, MeshSelectionModel::InsertionPolicy policy=MeshSelectionModel::REPLACE) |
Add a selection to the currently selected selection. More... | |
vtkSmartPointer< vtkDataArray > | getDataArray (MeshDataModel::FieldType fieldType, const QString &arrayName) |
Get the data array of specified field type and name. More... | |
vtkSmartPointer< vtkDataArray > | getDataArray (MeshDataModel::FieldType fieldType, int index) |
Get the data array of specified field type and index. More... | |
void | addDataArray (MeshDataModel::FieldType fieldType, const QString &name, vtkSmartPointer< vtkDataArray > data) |
Add a data array. More... | |
void | removeDataArray (MeshDataModel::FieldType fieldType, const QString &name) |
Remove a data array. More... | |
void | addPointData (const QString &name, vtkSmartPointer< vtkDataArray > data) |
Add a data array linked to the points. More... | |
void | addCellData (const QString &name, vtkSmartPointer< vtkDataArray > data) |
Add a data array linked to the cells. More... | |
vtkSmartPointer< vtkProp > | getDataProp (MeshDataModel::FieldType fieldType, const QString &name) |
Get the prop associed to the data. More... | |
void | setActiveData (MeshDataModel::FieldType fieldType, const char *name) |
Set the given named scalar data array corresponding to the given field type as the currently active data. More... | |
MeshDataModel * | getDataModel () |
get the current data view model (model as the M in Qt MVC design pattern) 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 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 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 bool | doubleClicked () |
this method is called each time the InterfaceNode is double clicked by the user. 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 | 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 | |
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 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 | setActorColor (const RenderingModes, double *color)=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 | 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 | 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... | |
Static Public Member Functions | |
static vtkSmartPointer< vtkUnstructuredGrid > | structuralComponentToVtk (StructuralComponent *, std::AtomVtkPointsIndexMap *) |
Build an unstructured grid from a Structural Component, and build the correct AtomVtkPointsIndexMap. More... | |
static vtkSmartPointer< vtkUnstructuredGrid > | structuralComponentToVtk (StructuralComponent *) |
Build an unstructured grid from a Structural Component. More... | |
Protected Attributes | |
unsigned int | nrOfAtoms |
nr of atoms More... | |
vtkSmartPointer< vtkDoubleArray > | pointData |
the point data array More... | |
![]() | |
::Component * | myComponent |
the managed Component More... | |
PMManagerDC * | myPMManagerDC |
the PMManagerDC More... | |
![]() | |
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... | |
Private Member Functions | |
camitk::Geometry * | atomsToGeometry () |
create an Geometry (a vtk unstructured grid of 1 poly vertex) from the managed SC which is a list of atoms More... | |
virtual void | initRepresentation () |
the concrete building of the geometry More... | |
Private Attributes | |
std::vector< AtomDC * > | atomDCs |
list of atom DCs. More... | |
std::vector< unsigned int > | cellIdToBeRemoved |
cell ids in the vtk structures to be removed More... | |
StructuralComponentDCPopup * | myPopupMenu |
the popup menu More... | |
StructuralComponentDCProperties * | myProp |
the SC DC properties More... | |
unsigned int | nrOfParts |
cumulative nr of cell and points. More... | |
Static Private Attributes | |
static QPixmap * | myPixmap = NULL |
the StructuralComponentDC 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 | |
![]() | |
void | changeSelectedSelection (const QItemSelection &selected, const QItemSelection &deselected) |
called when the selection is modified More... | |
void | removeSelectedData () |
remove the selected selection More... | |
void | removeSelectedSelections () |
remove the selected selection More... | |
![]() | |
virtual void | initData () |
initialize data More... | |
virtual void | initDynamicProperties () |
create and initialize dynamic properties More... | |
virtual void | initRepresentation (vtkSmartPointer< vtkPointSet >) |
virtual void | initSelection () |
initialize selections More... | |
The manager of the Structural component data.
Maintains a map to tell at what position is a give atom in the vtkPoints list. This class gives also a conveniant method to save a StructuralComponent in a vtk unstructured grid.
StructuralComponentDC::StructuralComponentDC | ( | camitk::Component * | parent, |
PMManagerDC * | pmManagerDC, | ||
StructuralComponent * | sc, | ||
bool | delayRepresentationInit = false |
||
) |
Default constructor, set the 3rd parameter to false to delay the construction of the Geometry (represention of the DC in 3D).
delayRepresentationInit should always be set to true when the constructor is called by a sub-class (see CellDC constructor). If delayRepresentationInit is false (default) and if the default mode is visible, then the SCDC constructor will build an Geometry considering a SC not a sub-class (i.e. Cell).
References PMManagerDC::addStructuralComponentDCPair(), StructuralComponent::ATOMS, camitk::Component::attachChild(), StructuralComponent::CELLS, StructuralComponent::composedBy(), PMManagerDC::getDC(), StructuralComponent::getMode(), Component::getName(), StructuralComponent::getNumberOfStructures(), getSC(), StructuralComponent::getStructure(), initRepresentation(), ComponentDC::myPMManagerDC, myPopupMenu, myProp, nrOfAtoms, nrOfParts, pointData, PMManagerDC::progressOneStep(), camitk::Component::setName(), and camitk::Component::setVisibility().
|
virtual |
destructor
References destroyPointData(), myPopupMenu, and myProp.
|
virtual |
add a sub DC: overloaded method to allow change in the physical model data representation
References camitk::Component::addChild(), StructuralComponent::addStructureIfNotIn(), and getSC().
|
private |
create an Geometry (a vtk unstructured grid of 1 poly vertex) from the managed SC which is a list of atoms
References camitk::Component::childrenComponent, camitk::Component::getName(), Atom::getPosition(), getSC(), ComponentDC::myPMManagerDC, nrOfAtoms, and PMManagerDC::toDCRenderingMode().
Referenced by initRepresentation().
|
virtual |
select a specific sub DC using the cell id (do nothing if the SC is not composed by cells)
Reimplemented from camitk::MeshComponent.
References StructuralComponent::CELLS, camitk::Component::childrenComponent, composedBy(), and getSC().
Geometry * StructuralComponentDC::cellsToGeometry | ( | ) |
create an Geometry (composed by vtk unstructured grid of n cells) from the managed SC which is a list of cells
References atomDCs, camitk::Component::childrenComponent, CellDC::getCell(), camitk::Component::getChildren(), camitk::Component::getName(), StructuralComponent::getNumberOfStructures(), AtomDC::getOrderNumberInSCDC(), getSC(), Structure::getType(), StructureProperties::HEXAHEDRON, StructureProperties::LINE, ComponentDC::myPMManagerDC, nrOfAtoms, nrOfParts, StructureProperties::POLY_LINE, StructureProperties::POLY_VERTEX, StructureProperties::PYRAMID, StructureProperties::QUAD, camitk::Geometry::setActorColor(), StructureProperties::TETRAHEDRON, PMManagerDC::toDCRenderingMode(), StructureProperties::TRIANGLE, and StructureProperties::WEDGE.
Referenced by initRepresentation().
StructuralComponent::ComposedBy StructuralComponentDC::composedBy | ( | ) |
return if the structural component is a list of cells or of atoms
References StructuralComponent::composedBy(), and getSC().
Referenced by cellPicked(), createPointData(), initRepresentation(), pointPicked(), setEnhancedModes(), setPointSet(), setSelected(), updateAtoms(), and updatePosition().
|
virtual |
create all the point data to display specific information (only works for SCs that have a surface representation).
This will automatically fills up the AtomDC point data pointers.
Reimplemented from ComponentDC.
Reimplemented in CellDC.
References atomDCs, StructuralComponent::CELLS, composedBy(), getSC(), pointData, and camitk::InterfaceGeometry::setPointData().
|
virtual |
destroy all the point data
Reimplemented from ComponentDC.
Reimplemented in CellDC.
References atomDCs, pointData, and camitk::InterfaceGeometry::setPointData().
Referenced by ~StructuralComponentDC().
|
virtual |
Get the pixmap that will be displayed for this node.
Reimplemented from camitk::MeshComponent.
Reimplemented in CellDC.
References myPixmap.
|
virtual |
Overriden method so that we actually can build a popup menu with different actions.
Reimplemented from camitk::Component.
References myPopupMenu.
|
virtual |
reimplement this method to give the property object to the property editor
Reimplemented from ComponentDC.
Reimplemented in CellDC.
References myProp.
|
inline |
convenient methods
Referenced by addChild(), AnyDecoration::AnyDecoration(), atomsToGeometry(), cellPicked(), cellsToGeometry(), composedBy(), createPointData(), StructuralComponentDCProperties::event(), CellDC::initRepresentation(), initRepresentation(), pointPicked(), removeChild(), setActorColor(), setColor(), setEnhancedModes(), StructuralComponentDCProperties::setName(), setPointSet(), setRenderingModes(), setSelected(), StructuralComponentDC(), updateAtoms(), updatePosition(), and StructuralComponentDCProperties::updateProperties().
|
privatevirtual |
the concrete building of the geometry
Reimplemented from camitk::MeshComponent.
Reimplemented in CellDC.
References StructuralComponent::ATOMS, atomsToGeometry(), StructuralComponent::CELLS, cellsToGeometry(), composedBy(), getSC(), camitk::Component::myGeometry, and updateAtoms().
Referenced by StructuralComponentDC().
|
virtual |
select a specific sub DC using the point id (do nothing if the SC is not composed by atoms)
Reimplemented from camitk::MeshComponent.
References atomDCs, StructuralComponent::ATOMS, CAMITK_ERROR, StructuralComponent::CELLS, camitk::Component::childrenComponent, composedBy(), camitk::Component::getName(), and getSC().
|
virtual |
remove a sub DC: overloaded method to allow change in the physical model data representation
References cellIdToBeRemoved, camitk::Component::childrenComponent, getSC(), camitk::Component::removeChild(), and StructuralComponent::removeStructure().
|
virtual |
Set the color of given representation modes.
Implements camitk::InterfaceGeometry.
References camitk::Component::getActorColor(), getSC(), camitk::Component::setActorColor, and StructuralComponent::setColor().
|
virtual |
References getSC(), camitk::Component::setActorColor, and StructuralComponent::setColor().
Set an (r,g,b) color to all representation modes, without changing the opacity.
Implements camitk::InterfaceGeometry.
References getSC(), StructuralComponent::setColor(), and camitk::Component::setColor.
|
virtual |
Set an (r,g,b,a) color to all representation modes.
Implements camitk::InterfaceGeometry.
References getSC(), StructuralComponent::setColor(), and camitk::Component::setColor.
|
virtual |
do not set enhanced modes if children are atomDC
Implements camitk::InterfaceGeometry.
References StructuralComponent::ATOMS, composedBy(), getSC(), and camitk::InterfaceGeometry::setEnhancedModes().
|
virtual |
if the vtkPointSet is modified externally (e.g. by an operator), change the PM structure
Implements camitk::InterfaceGeometry.
References atomDCs, StructuralComponent::ATOMS, StructuralComponent::CELLS, camitk::Component::childrenComponent, composedBy(), getSC(), camitk::Component::getTopLevelComponent(), camitk::Component::myGeometry, camitk::Component::setModified(), camitk::Component::setPointSet, and AtomDC::setPosition().
|
virtual |
set the rendering mode of the StructuralComponent as well as the DC
Implements camitk::InterfaceGeometry.
References getSC(), ComponentDC::myPMManagerDC, StructuralComponent::setMode(), camitk::Component::setRenderingModes, and PMManagerDC::toPMRenderingMode().
|
virtual |
do not select sub DC if they are AtomDC (AtomDC can only be selected individually)
Reimplemented from camitk::Component.
Reimplemented in CellDC.
References StructuralComponent::ATOMS, composedBy(), getSC(), and camitk::Component::setSelected().
|
static |
Build an unstructured grid from a Structural Component, and build the correct AtomVtkPointsIndexMap.
References StructuralComponent::getNumberOfCells(), StructuralComponent::getNumberOfStructures(), Atom::getPosition(), StructuralComponent::getStructure(), Structure::getType(), StructureProperties::HEXAHEDRON, StructureProperties::LINE, StructureProperties::POLY_LINE, StructureProperties::POLY_VERTEX, StructureProperties::PYRAMID, StructureProperties::QUAD, StructureProperties::TETRAHEDRON, StructureProperties::TRIANGLE, and StructureProperties::WEDGE.
Referenced by AnyDecoration::AnyDecoration(), and structuralComponentToVtk().
|
static |
Build an unstructured grid from a Structural Component.
References myPixmap, and structuralComponentToVtk().
void StructuralComponentDC::updateAtoms | ( | ) |
the method to update both atomDCs vector and atomVtkPointsIndexMap
References atomDCs, StructuralComponent::ATOMS, StructuralComponent::CELLS, camitk::Component::childrenComponent, composedBy(), camitk::Component::getChildren(), getSC(), nrOfAtoms, nrOfParts, and AtomDC::registerIndexInSCDC().
Referenced by CellDC::initRepresentation(), and initRepresentation().
void StructuralComponentDC::updatePosition | ( | AtomDC * | modifiedAtomDC, |
int | atomOrderNr = -1 |
||
) |
This atom position has been changed, the 3D representation has to be updated.
For optimization reason: if you know the atom order nr in this SCDC, please give it! An atom in the cell position has been changed this method starts the update cascade process, consisting in updating all the 3D representation of the all the components containing this component, then of all the components containing all the components containing this component... etc... up to the PM void updatePosition(AtomDC *, CellDC *);
References StructuralComponent::ATOMS, composedBy(), AtomDC::getAtom(), AtomDC::getOrderNumberInSCDC(), Atom::getPosition(), getSC(), camitk::Component::isInstanceOf(), camitk::Component::myGeometry, and camitk::InterfaceGeometry::setPointPosition().
|
private |
list of atom DCs.
This list is used only when the structural component is made of cells. This list is here to speed up the application: When you need atom's DC you could always call the PMManager::getDC method, but that is at a high cost. So why not maintain the list of the Atom DCs of the structural component. This list is build/update in the updateAtoms method.
Referenced by cellsToGeometry(), createPointData(), destroyPointData(), pointPicked(), setPointSet(), and updateAtoms().
|
private |
cell ids in the vtk structures to be removed
Referenced by removeChild().
|
staticprivate |
the StructuralComponentDC pixmap
Referenced by getIcon(), and structuralComponentToVtk().
|
private |
the popup menu
Referenced by getPopupMenu(), StructuralComponentDC(), and ~StructuralComponentDC().
|
private |
the SC DC properties
Referenced by getPropertyObject(), StructuralComponentDC(), and ~StructuralComponentDC().
|
protected |
nr of atoms
Referenced by atomsToGeometry(), cellsToGeometry(), StructuralComponentDC(), and updateAtoms().
|
private |
cumulative nr of cell and points.
Example: if sc=[c0,c1] , c0=[a0,a2,a3] and c1=[a1,a2,a4,a0] then nrOfParts = 1 + 3 + 1 + 4 = 9. Updated in updateAtoms()
Referenced by cellsToGeometry(), StructuralComponentDC(), and updateAtoms().
|
protected |
the point data array
Referenced by CellDC::createPointData(), createPointData(), CellDC::destroyPointData(), destroyPointData(), and StructuralComponentDC().