Computer Assited Medical Intervention Tool Kit  version 3.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Public Member Functions | Protected Slots | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
camitk::MeshComponent Class Reference

Basic component to manage any kind of mesh. More...

#include <MeshComponent.h>

+ Inheritance diagram for camitk::MeshComponent:

Public Member Functions

void cellPicked (vtkIdType cellId, bool)
 reimplemented to save the last pick point id 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...
 
void pointPicked (vtkIdType pointId, bool)
 reimplemented to save the last pick point id More...
 
void updateProperty (QString, QVariant)
 update property: no specific properties to manage, this is needed to avoid console warnings. More...
 
virtual ~MeshComponent ()
 Destructor. More...
 
Selection management
void addSelection (const QString &name, int fieldType, int contentType)
 Add a selection. More...
 
void removeSelection (const QString &name)
 Remove a selection. More...
 
int getNumberOfSelections () const
 Get the number of selection. More...
 
vtkSmartPointer< vtkSelectionNode > getSelection (const QString &name) const
 Get a selection. More...
 
vtkSmartPointer< vtkSelectionNode > getSelectionAt (int i) const
 Get selection. More...
 
const QMap< QString,
vtkSmartPointer
< vtkSelectionNode > > & 
getSelectionList () const
 Get the selection list. More...
 
void addToSelection (const QString &name, vtkSmartPointer< vtkAbstractArray > array)
 Add to a selection. More...
 
Data management
void addDataArray (const QString &name, vtkSmartPointer< vtkDataArray > data)
 Add data array. More...
 
void removeDataArray (const QString &name)
 Add data array. More...
 
void linkDataToPoints (const QString &name)
 Link data array to points. More...
 
void linkDataToCells (const QString &name)
 Link data array to cells. More...
 
void addPointData (const QString &name, int dataType, vtkSmartPointer< vtkDataArray > data)
 Add point data. More...
 
void addCellData (const QString &name, int dataType, vtkSmartPointer< vtkDataArray > data)
 Add cell data. More...
 
MeshDataModel * getDataModel ()
 get the current data view model (model as the M in Qt MVC design pattern) More...
 
- Public Member Functions inherited from camitk::Component
 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...
 
virtual void setSelected (const bool b, const bool recursive=true)
 Update the selection flag. 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 QObject * getPropertyObject ()
 Get the property object that could be understood by PropertyEditor. 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 void setName (const QString &)
 set 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 QPixmap getIcon ()
 Get the pixmap that will be displayed for this node. More...
 
virtual bool inItalic () const
 A component name is not displayed in italic by default. More...
 
virtual QMenu * getPopupMenu (QWidget *parent=0)
 get the popup menu to display (always return NULL, overwrite this method if you want to give here you own popup) 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 &param)
 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
 
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, setTransformTranslation, double, double, double) delegate3(myFrame
 
resetTransform double double
vtkSmartPointer< vtkAxesActor > 
getFrameAxisActor ()
 Gives the 3D representation of the frame (based on xyz arrows) More...
 
 delegate2 (myFrame, setFrameVisibility, Viewer *, bool) bool getFrameVisibility(Viewer *viewer) const
 
 delegate1 (myFrame, addFrameChild, InterfaceFrame *) delegate1(myFrame
 
- Public Member Functions inherited from camitk::InterfaceProperty
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...
 
- Public Member Functions inherited from camitk::InterfaceNode
virtual ~InterfaceNode ()
 empty virtual destructor, to avoid memory leak More...
 
- Public Member Functions inherited from camitk::InterfaceGeometry
virtual ~InterfaceGeometry ()
 empty virtual destructor, to avoid memory leak More...
 
virtual vtkSmartPointer
< vtkPointSet > 
getPointSet ()=0
 
virtual void setPointSet (vtkSmartPointer< vtkPointSet >)=0
 set the low-level data set. 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 setRenderingModes (const RenderingModes)=0
 
virtual void setEnhancedModes (const EnhancedModes)=0
 set the enhanced mode More...
 
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...
 
- Public Member Functions inherited from camitk::InterfaceFrame
virtual void addFrameChild (InterfaceFrame *frame)=0
 Add the input frame as a child of the current frame. 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 a rotation relative to the current position. 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 setTransformRotation (double aroundX, double aroundY, double aroundZ)=0
 Set the rotation part of the 3D space transformation of the current frame. More...
 

Protected Slots

void changeSelectedSelection (const QModelIndex &current, const QModelIndex &previous)
 called when the selection is modified More...
 

Protected Member Functions

virtual void initDynamicProperties ()
 create and initialize dynamic properties More...
 
virtual void initRepresentation (vtkSmartPointer< vtkPointSet >)
 

Private Member Functions

void init ()
 initialisation of the mesh component members More...
 
virtual void initRepresentation ()
 the concrete building of the 3D objects (Slice/Geometry): none in this case, everything is done by initRepresentation(vtkPointSet) More...
 

Private Attributes

vtkSmartPointer< vtkSelection > currentSelection
 manages current selection using vtk More...
 
QMap< QString, vtkSmartPointer
< vtkDataArray > > 
dataList
 maps a name with a data array More...
 
MeshDataModel * dataModel
 data model (model as the M in Qt MVC design pattern) More...
 
QTableView * dataView
 data GUI View (view as the V in Qt MVC design pattern) More...
 
vtkIdType pickedCellId
 the last picked cell More...
 
vtkIdType pickedPointId
 the last picked point More...
 
QMap< QString, vtkSmartPointer
< vtkSelectionNode > > 
selectionList
 maps a name with a type of selection More...
 
MeshSelectionModel * selectionModel
 selection model (model as the M in Qt MVC design pattern) More...
 
QTableView * selectionView
 selection GUI View (view as the V in Qt MVC design pattern) More...
 

Additional Inherited Members

- Public Types inherited from camitk::Component
enum  Representation { GEOMETRY, SLICE, NO_REPRESENTATION }
 The different representation that can be implemented to represent this Component in the InteractiveViewer. More...
 
- Public Types inherited from camitk::InterfaceGeometry
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...
 
- Public Attributes inherited from camitk::Component
 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 setTransformRotation
 
resetTransform double double
 
 removeFrameChild
 
- Protected Attributes inherited from camitk::Component
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...
 

Detailed Description

Basic component to manage any kind of mesh.

Constructor & Destructor Documentation

camitk::MeshComponent::MeshComponent ( const QString &  file)
throw (AbortException
)

Creates a top-level MeshComponent from a file.

Note
this is only to be used from a Component Extension open(...) or from an Action that creates data from a filter or transformation of a vtkPointSet.

Please consider using MeshComponent(vtkSmartPointer<vtkPointSet> , const QString &)

References init().

camitk::MeshComponent::MeshComponent ( vtkSmartPointer< vtkPointSet >  aPointSet,
const QString &  name 
)

Creates a top-level MeshComponent from a vtkPointSet (and instanciate its 3D representation).

Note
the filename is set to the empty string "".
if aPointSet is NULL, the representation is not initialized, it is the responsability of the subclass to initialize it later
Parameters
aPointSetpoint set of the new MeshComponent
namename to be given to the Component

References init(), initRepresentation(), and camitk::Component::setModified().

camitk::MeshComponent::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).

Note
if aPointSet is NULL, the representation is not initialized, it is the responsability of the subclass to initialize it later
Parameters
parentComponentthe parent component of the new MeshComponent
aPointSetpoint set of the new MeshComponent
namename to be given to the new MeshComponent

References init(), and initRepresentation().

camitk::MeshComponent::~MeshComponent ( )
virtual

Destructor.

References dataView, and selectionView.

Member Function Documentation

void camitk::MeshComponent::addCellData ( const QString &  name,
int  dataType,
vtkSmartPointer< vtkDataArray >  data 
)

Add cell data.

References addDataArray(), and linkDataToCells().

void camitk::MeshComponent::addDataArray ( const QString &  name,
vtkSmartPointer< vtkDataArray >  data 
)

Add data array.

References dataList, and name.

Referenced by addCellData(), and addPointData().

void camitk::MeshComponent::addPointData ( const QString &  name,
int  dataType,
vtkSmartPointer< vtkDataArray >  data 
)

Add point data.

References addDataArray(), and linkDataToPoints().

Referenced by ComputeCurvatures::apply(), and CellDC::createPointData().

void camitk::MeshComponent::addSelection ( const QString &  name,
int  fieldType,
int  contentType 
)
void camitk::MeshComponent::addToSelection ( const QString &  name,
vtkSmartPointer< vtkAbstractArray >  array 
)
void camitk::MeshComponent::cellPicked ( vtkIdType  cellId,
bool   
)
virtual

reimplemented to save the last pick point id

Reimplemented from camitk::Component.

Reimplemented in StructuralComponentDC, and VtkMeshComponent.

References pickedCellId.

Referenced by VtkMeshComponent::cellPicked().

void camitk::MeshComponent::changeSelectedSelection ( const QModelIndex &  current,
const QModelIndex &  previous 
)
protectedslot
MeshDataModel* camitk::MeshComponent::getDataModel ( )
inline

get the current data view model (model as the M in Qt MVC design pattern)

unsigned int camitk::MeshComponent::getNumberOfPropertyWidget ( )
virtual

there is more than one property widgets (to view as tabs in the property explorer)

Reimplemented from camitk::Component.

int camitk::MeshComponent::getNumberOfSelections ( ) const

Get the number of selection.

References selectionList.

Referenced by camitk::MeshSelectionModel::rowCount().

vtkIdType camitk::MeshComponent::getPickedCellId ( )

get the last pick point id,

Returns
-1 if no point where picked

References pickedCellId.

Referenced by MeshPicking::apply().

vtkIdType camitk::MeshComponent::getPickedPointId ( )

get the last pick point id,

Returns
-1 if no point where picked

References pickedPointId.

Referenced by MeshPicking::apply().

QWidget * camitk::MeshComponent::getPropertyWidgetAt ( unsigned int  i,
QWidget *  parent = 0 
)
virtual

the proprety widgets are: default property widget, selection view and data view

Reimplemented from camitk::Component.

References dataView, and selectionView.

vtkSmartPointer< vtkSelectionNode > camitk::MeshComponent::getSelection ( const QString &  name) const

Get a selection.

References name, and selectionList.

Referenced by GenerateModel::apply().

vtkSmartPointer< vtkSelectionNode > camitk::MeshComponent::getSelectionAt ( int  i) const

Get selection.

References selectionList.

Referenced by camitk::MeshSelectionModel::data().

const QMap< QString, vtkSmartPointer< vtkSelectionNode > > & camitk::MeshComponent::getSelectionList ( ) const
void camitk::MeshComponent::init ( )
private
void camitk::MeshComponent::initDynamicProperties ( )
protectedvirtual
void camitk::MeshComponent::initRepresentation ( vtkSmartPointer< vtkPointSet >  originalPointSet)
protectedvirtual
virtual void camitk::MeshComponent::initRepresentation ( )
inlineprivatevirtual

the concrete building of the 3D objects (Slice/Geometry): none in this case, everything is done by initRepresentation(vtkPointSet)

Implements camitk::Component.

Reimplemented in PMManagerDC, StructuralComponentDC, CellDC, and MultiComponentDC.

Referenced by MeshComponent().

void camitk::MeshComponent::linkDataToCells ( const QString &  name)
void camitk::MeshComponent::linkDataToPoints ( const QString &  name)
void camitk::MeshComponent::pointPicked ( vtkIdType  pointId,
bool   
)
virtual

reimplemented to save the last pick point id

Reimplemented from camitk::Component.

Reimplemented in StructuralComponentDC, and VtkMeshComponent.

References pickedPointId.

Referenced by VtkMeshComponent::pointPicked().

void camitk::MeshComponent::removeDataArray ( const QString &  name)
void camitk::MeshComponent::removeSelection ( const QString &  name)
void camitk::MeshComponent::updateProperty ( QString  ,
QVariant   
)
inlinevirtual

update property: no specific properties to manage, this is needed to avoid console warnings.

Reimplemented from camitk::Component.

Reimplemented in ComponentDC, and VtkMeshComponent.

Referenced by VtkMeshComponent::updateProperty().

Member Data Documentation

vtkSmartPointer<vtkSelection> camitk::MeshComponent::currentSelection
private

manages current selection using vtk

Referenced by changeSelectedSelection(), init(), and initRepresentation().

QMap< QString, vtkSmartPointer<vtkDataArray> > camitk::MeshComponent::dataList
private

maps a name with a data array

Referenced by addDataArray(), linkDataToCells(), linkDataToPoints(), and removeDataArray().

MeshDataModel* camitk::MeshComponent::dataModel
private

data model (model as the M in Qt MVC design pattern)

Referenced by init(), linkDataToCells(), linkDataToPoints(), and removeDataArray().

QTableView* camitk::MeshComponent::dataView
private

data GUI View (view as the V in Qt MVC design pattern)

Referenced by getPropertyWidgetAt(), init(), and ~MeshComponent().

vtkIdType camitk::MeshComponent::pickedCellId
private

the last picked cell

Referenced by cellPicked(), getPickedCellId(), and init().

vtkIdType camitk::MeshComponent::pickedPointId
private

the last picked point

Referenced by getPickedPointId(), init(), and pointPicked().

QMap< QString, vtkSmartPointer<vtkSelectionNode> > camitk::MeshComponent::selectionList
private
MeshSelectionModel* camitk::MeshComponent::selectionModel
private

selection model (model as the M in Qt MVC design pattern)

Referenced by addSelection(), addToSelection(), changeSelectedSelection(), init(), and removeSelection().

QTableView* camitk::MeshComponent::selectionView
private

selection GUI View (view as the V in Qt MVC design pattern)

Referenced by addToSelection(), getPropertyWidgetAt(), init(), and ~MeshComponent().


The documentation for this class was generated from the following files: