Basic component to manage any kind of mesh. More...
#include <MeshComponent.h>
Inheritance diagram for camitk::MeshComponent:
Collaboration diagram for camitk::MeshComponent:Public Types | |
| enum | DataType { SCALARS = 1 , VECTORS = 2 , TENSORS = 4 , OTHERS = 8 } |
| Data fields can have different dimensions. More... | |
| enum | FieldType { POINTS = 1 , CELLS = 2 , MESH = 4 } |
| Data fields can be applied to one of this. More... | |
| enum | SpecificRepresentation { VECTOR_3D , NORM , FIRST_COMPONENT , SECOND_COMPONENT , THIRD_COMPONENT , COLOR } |
| 3D data can be represented by 1 value in different ways More... | |
| enum | VectorRepresentation { HEDGE_HOG , ARROW , UNSCALED_ARROW } |
| how are vector data represented in 3D More... | |
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 Member Functions | |
| void | cellPicked (vtkIdType cellId, bool) override |
| reimplemented to save the last pick point id | |
| QPixmap | getIcon () override |
| Get the pixmap that will be displayed for this node. | |
| unsigned int | getNumberOfPropertyWidget () override |
| there is more than one property widgets (to view as tabs in the property explorer) | |
| vtkIdType | getPickedCellId () |
| get the last pick point id, | |
| vtkIdType | getPickedPointId () |
| get the last pick point id, | |
| QWidget * | getPropertyWidgetAt (unsigned int i=0) override |
| the proprety widgets are: default property widget, selection view and data view | |
| MeshComponent (Component *parentComponent, vtkSmartPointer< vtkPointSet > aPointSet, const QString &name) | |
| Creates a MeshComponent as a sub component of another Component using a vtkPointSet (and instantiate its 3D representation). | |
| MeshComponent (const QString &file, const QString &name="Mesh") | |
| Creates a top-level MeshComponent from a file. | |
| MeshComponent (vtkSmartPointer< vtkPointSet > aPointSet, const QString &name) | |
| Creates a top-level MeshComponent from a vtkPointSet (and instantiate its 3D representation). | |
| void | pointPicked (vtkIdType pointId, bool) override |
| reimplemented to save the last pick point id | |
| void | setName (const QString &) override |
| set the component name and update frame name | |
| ~MeshComponent () override | |
| Destructor. | |
Selection management | |
The selection are stored using a list of vtkSelectionNode. Since this list is managed through the a Qt model/view, please do not modify directly the vtkSelectionNode and use the methods dedicated to selections. | |
| QList< vtkSmartPointer< vtkSelectionNode > > & | getSelections () |
| Get the selection list. | |
| unsigned int | getNumberOfSelections () const |
| Get the number of selections. | |
| vtkSmartPointer< vtkSelection > | getActiveSelection () const |
| Get active selections. | |
| vtkSmartPointer< vtkSelectionNode > | getSelection (const QString &name) const |
| Get a selection from its name. | |
| vtkSmartPointer< vtkSelectionNode > | getSelectionAt (unsigned int index) const |
| Get a selection from its index in the list. | |
| int | getSelectionIndex (const QString &name) const |
| Get the selection index in the list from its name. | |
| virtual int | addSelection (const QString &name, int fieldType, int contentType, vtkSmartPointer< vtkAbstractArray > array, MeshSelectionModel::InsertionPolicy policy=MeshSelectionModel::REPLACE) |
| Add a selection. | |
| virtual int | addToSelectedSelection (int fieldType, int contentType, vtkSmartPointer< vtkAbstractArray > array, MeshSelectionModel::InsertionPolicy policy=MeshSelectionModel::REPLACE) |
| Add a selection to the currently selected selection. | |
Data management | |
| int | getNumberOfDataArray (int fieldFlag=POINTS|CELLS) |
| Get the number of data arrays of a given type without taking the specific representation into account. | |
| vtkSmartPointer< vtkDataArray > | getDataArray (FieldType fieldType, const QString &arrayName) |
| Get the data array of specified field type and name. | |
| vtkSmartPointer< vtkDataArray > | getDataArray (FieldType fieldType, int index) |
| Get the data array of specified field type and index. | |
| void | addDataArray (FieldType fieldType, const QString &name, vtkSmartPointer< vtkDataArray > data) |
| Add a data array. | |
| void | removeDataArray (FieldType fieldType, const QString &name) |
| Remove a data array. | |
| void | addPointData (const QString &name, vtkSmartPointer< vtkDataArray > data) |
| Add a data array linked to the points. | |
| void | addCellData (const QString &name, vtkSmartPointer< vtkDataArray > data) |
| Add a data array linked to the cells. | |
| MeshDataModel * | getDataModel () |
| Returns the current data view model (model as the M in Qt MVC design pattern) | |
| vtkSmartPointer< vtkFieldData > | getFieldData (FieldType) |
| Returns the corresponding vtkFieldData (point data, cell data or field data) | |
| bool | getDataRepresentationVisibility (FieldType, const QString &) |
| get the current visibility status of a given data (identified with its name) of a given field type | |
| void | setDataRepresentationVisibility (FieldType fieldType, const QString &name, bool visibility, bool blockRefresh=false) |
| set the visibility of a given representation for a given data (identified by its name) of a given field type (create it if needed) By default this->refresh() is called unless blockRefresh is set to true | |
| void | setDataRepresentationOff (int dataType=SCALARS|VECTORS|TENSORS, bool blockRefresh=false) |
| hide all the data representation of a given data type (hide all by default) By default this->refresh() is called unless blockRefresh is set to true | |
InterfacePersistence | |
| |
| virtual QVariant | toVariant () const override |
| virtual void | fromVariant (const QVariant &) override |
| Load data from a QVariant to initialize the current object. | |
Public Member Functions inherited from camitk::Component | |
| Component (QString file, QString name, Representation rep=NO_REPRESENTATION, bool createDefaultFrame=true) | |
| Component constructor for top-level component (please use the other constructor for sub-level components). | |
| Component (Component *parentComponent, const QString &name, Representation rep=NO_REPRESENTATION, bool createDefaultFrame=true) | |
| Component constructor for a Component that is a child of another Component You should not use this constructor for a top-level component. | |
| virtual | ~Component () override |
| default destructor. | |
| Representation | getRepresentation () const |
| return the type of representation concretely implemented by this Component in the InteractiveViewer. | |
| bool | isTopLevel () const |
| return true if this component is a top-level component | |
| Component * | getParentComponent () |
| get the parent component | |
| Component * | getTopLevelComponent () |
| get the top-level component | |
| virtual void | setModified (bool modified=true) |
| set the modified flag | |
| virtual bool | getModified () const |
| set the modified flag | |
| virtual void | setVisibility (QString, bool) |
| set the visibility inside the viewer of the given name (the viewer needs to be a registered viewer) | |
| virtual bool | getVisibility (QString) const |
| get the visibility inside the viewer of the given name | |
| virtual void | refresh () |
| refresh all the viewer that are currently displaying this Component At the end the InterfaceNode modification flag is reset. | |
| virtual bool | isSelected () const |
| Check if this data component is selected. | |
| virtual void | setSelected (const bool b, const bool recursive=true) |
| Update the selection flag. | |
| const QString | getFileName () const |
| get the file name where the data have to be stored/were stored | |
| void | setFileName (const QString &) |
| set the file name where the data have to be stored | |
| bool | event (QEvent *e) override |
| Overriden from QObject, this one is only intercepting signal for dynamic property changed (see constructor). | |
| QMenu * | getActionMenu () |
| Get a QMenu that contains all the action that can be applied to this component. | |
| virtual QUuid | getUuid () const override |
| Get the unique ID of the component. | |
| virtual bool | setUuid (QUuid) override |
| Set the unique ID of the component. | |
| QStringList | getHierarchy () const override |
| bool | isInstanceOf (QString className) const override |
| Assert that a Component instance really inherits from a given className. | |
| QObject * | getPropertyObject () override |
| Get the property object that could be understood by PropertyEditor. | |
| const QObject * | getPropertyObject () const override |
| void | propertyValueChanged (QString name) override |
| This method is called when a dynamic property value has been modified. | |
| void | setIndexOfPropertyExplorerTab (unsigned int index) override final |
| Set the index of the tab in the ProperlyExplorer to select for display. | |
| unsigned int | getIndexOfPropertyExplorerTab () override |
| Get the index of the tab in the ProperlyExplorer to select for display. | |
| Q_INVOKABLE camitk::Property * | getProperty (QString name) override |
| Get a Property given its name. | |
| bool | addProperty (Property *) override |
| Add a new CamiTK property to the component. | |
| virtual QVariant | getPropertyValue (const QString &name) const override |
| get the property QVariant (same as property(const char*)) but check if it exists first. | |
| virtual bool | setPropertyValue (const QString &name, QVariant newValue) override |
| set the property QVariant value (same as setProperty(const char*, newValue)) but check if it exists first. | |
| void | removeChild (InterfaceNode *) override |
| remove a child node. | |
| void | setParent (InterfaceNode *) override |
| set the parent Component. | |
| bool | doubleClicked () override |
| This method is called each time the InterfaceNode is double clicked by the user. | |
| void | addChild (InterfaceNode *) override |
| add a child Component (sub item in the hierarchy), and modify the child's parent to be equal to this instance | |
| void | attachChild (InterfaceNode *) override |
| add a child Component (but leave its parent unchanged) | |
| void | deleteChildren () override final |
| delete all sub Component, but do not delete the pointer (only the top-level component has the right to do that) | |
| QString | getName () const override |
| get the name to be displayed | |
| const ComponentList & | getChildren () const override |
| get the list of the InterfaceNode children (sub items in the hierarchy) | |
| InterfaceNode * | getParent () override |
| get the parent Component | |
| void | setNodeModified (bool) override final |
| Set up the node modification flag. | |
| bool | getNodeModified () const override |
| Get the current modification flag. | |
| bool | inItalic () const override |
| A component name is not displayed in italic by default. | |
| QMenu * | getPopupMenu (QWidget *parent=nullptr) override |
| get the popup menu to display (always return nullptr, overwrite this method if you want to give here you own popup) | |
| virtual void | setFrame (const std::shared_ptr< FrameOfReference > &frame) override |
| Set the FrameOfReference of this object. | |
| virtual const FrameOfReference * | getFrame () const override |
| Get the pointer to this object's FrameOfReference. | |
| virtual QMultiMap< const FrameOfReference *, Component * > | getAllFrames (bool includeChildrenFrames=true) override |
| Get all FrameOfReference owned by this object. | |
| virtual QMultiMap< const Transformation *, Component * > | getAllTransformations (bool includeChildrenTransformations=true) override |
| Get all Transformation owned by this object. | |
| virtual void | setFrameFrom (const InterfaceFrame *) override |
| Modify this object's frame using the given object's frame. | |
| virtual void | resetFrame () override |
| Reset this object's FrameOfReference, that is call setFrame with a newly created frame of reference. | |
| vtkSmartPointer< vtkAxesActor > | getFrameAxisActor (QString viewerName) override |
| get the Frame Actor for a viewer | |
| virtual bool | getFrameVisibility (QString viewerName) const override |
| get the visibility of the Frame axis actor in the named viewer | |
| virtual void | setFrameVisibility (QString viewerName, bool visibility) override |
| set the visibility of the Frame axis actor | |
| 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 RenderingModes | delegate1 (myGeometry, setColorMode, int) delegate1(myGeometry |
| vtkSmartPointer< vtkPointSet > vtkSmartPointer< vtkAlgorithmOutput > const RenderingModes const QString &vtkSmartPointer< vtkProp > | getProp (const QString ¶m) override |
| Return the vtkProp (actors, volumes and annotations) corresponding to the given name. | |
| unsigned int | getNumberOfProp () const override |
| return the number of additional prop | |
| vtkSmartPointer< vtkProp > | getProp (unsigned int index) override |
| return an additional prop by its index | |
| bool | addProp (const QString &name, vtkSmartPointer< vtkProp > prop) override |
| insert an additional prop, defining it by its name (default visibility = false). | |
| bool | removeProp (const QString &name) override |
| remove a given additional prop. | |
| virtual vtkSmartPointer< vtkActor > | get3DCursor () |
| Return an Actor for a 3D cursor on the picked location This should be redefined into something specific. | |
| void | getBounds (double *bounds) override |
| compute the object's bounding box [xmin,xmax, ymin,ymax, zmin,zmax], see Component.cpp | |
| double | getBoundingRadius () override |
| compute the object's bounding sphere radius, | |
| delegate4 (myGeometry, setPointPosition, const unsigned int, const double, const double, const double) delegateAndInvokeChildren1(myGeometry | |
| const RenderingModes const InterfaceGeometry::RenderingModes | getRenderingModes () const override |
| see Component.cpp | |
| delegateAndInvokeChildren1 (myGeometry, setEnhancedModes, const EnhancedModes) virtual const EnhancedModes getEnhancedModes() const override | |
| delegateAndInvokeChildren1Array (myGeometry, setActorColor, const RenderingModes, double, 4) delegateAndInvokeChildren4(myGeometry | |
| const const const const double void | getActorColor (const RenderingModes, double[4], bool ignoreEnhancedModes=false) const override |
| see Component.cpp | |
| 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 >) void setGlyphType(const GlyphTypes type |
| virtual void | setLinesAsTubes (bool isTubes=true, bool radiusFromLength=true, double radiusFactor=1.0/40.0, int numberOfSides=5) override |
| Set the lines as tubes (works only for vtkDataSet representation that contains lines) | |
| vtkSmartPointer< vtkImageData > | delegate1 (mySlice, setOriginalVolume, vtkSmartPointer< vtkImageData >) delegateConstGet0(mySlice |
| vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > | delegateConstGet0 (mySlice, get3DImageActor, vtkSmartPointer< vtkImageActor >) delegateConstGet0(mySlice |
| vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > | delegateGet0 (mySlice, getPixelActor, vtkSmartPointer< vtkActor >) delegate3(mySlice |
| vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double | delegate0 (mySlice, updatePickPlane) delegate1(mySlice |
| vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double int | delegate3 (mySlice, setSlice, double, double, double) delegateConstGet0(mySlice |
| vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double int int | delegate3 (mySlice, setPixelRealPosition, double, double, double) delegate1(mySlice |
| vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double int int vtkSmartPointer< vtkTransform > int | getNumberOfSlices () const override |
| see Component.cpp | |
| int | getSlice () const override |
| see Component.cpp | |
Public Member Functions inherited from camitk::InterfaceProperty | |
| ~InterfaceProperty ()=default | |
| empty virtual destructor, to avoid memory leak | |
Public Member Functions inherited from camitk::InterfaceNode | |
| virtual | ~InterfaceNode ()=default |
| empty virtual destructor, to avoid memory leak | |
Public Member Functions inherited from camitk::InterfaceGeometry | |
| virtual | ~InterfaceGeometry ()=default |
| empty virtual destructor, to avoid memory leak | |
| virtual vtkSmartPointer< vtkPointSet > | getPointSet ()=0 |
| virtual void | setPointSet (vtkSmartPointer< vtkPointSet >)=0 |
| set the low-level data set. | |
| virtual void | setPointData (vtkSmartPointer< vtkDataArray >)=0 |
| set the point data (may contains a lookup table). | |
| virtual void | setMeshWorldTransform (vtkSmartPointer< vtkTransform >)=0 |
| set the transformation for 3D representation | |
| virtual vtkSmartPointer< vtkAlgorithmOutput > | getDataPort () const =0 |
| get the custom algorithm pipeline input. | |
| virtual void | setDataConnection (vtkSmartPointer< vtkAlgorithmOutput >)=0 |
| Set/reset the connection for the InterfaceGeometry internal algorithm. | |
| virtual void | setTexture (vtkSmartPointer< vtkTexture >)=0 |
| Set a texture to this object. | |
| virtual vtkSmartPointer< vtkActor > | getActor (const RenderingModes)=0 |
| Return the actor for the representation mode, nullptr if the actor doesn't exist. | |
| virtual void | updateLabel (const QString &label)=0 |
| update position and text of the label prop | |
| virtual void | setPointPosition (const unsigned int orderNumber, const double x, const double y, const double z)=0 |
| set a given point position | |
| virtual void | setRenderingModes (const RenderingModes)=0 |
| virtual void | setEnhancedModes (const EnhancedModes)=0 |
| set the enhanced mode | |
| virtual const EnhancedModes | getEnhancedModes () const =0 |
| get the current enhanced mode | |
| virtual void | setActorColor (const RenderingModes, double *color)=0 |
| Set the color of given representation modes. | |
| virtual void | setActorColor (const RenderingModes, const double, const double, const double)=0 |
| Set the color of given representation modes. | |
| virtual void | getActorColor (const RenderingModes mode, double *color, bool ignoreEnhancedModes=false) const =0 |
| Get the color of given representation modes in the second parameter. | |
| virtual void | setColor (const double, const double, const double)=0 |
| Set an (r,g,b) color to all representation modes, without changing the opacity. | |
| virtual void | setColor (const double, const double, const double, const double)=0 |
| Set an (r,g,b,a) color to all representation modes. | |
| virtual void | setActorOpacity (const RenderingModes, const double)=0 |
| Set the opacity of this representation modes. WARNING color field (surfaceColor, ...) are not modified! | |
| virtual double | getActorOpacity (const RenderingModes) const =0 |
| Return the opacity of a given renderng mode. | |
| virtual void | setOpacity (const double)=0 |
| Set the opacity of this object. WARNING color field (surfaceColor, ...) are not modified! | |
| virtual void | setMapperScalarRange (double min, double max)=0 |
| Set the mapper scalar range. | |
| 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). | |
| virtual void | setColorMode (int vtkColorMode=VTK_COLOR_MODE_DEFAULT)=0 |
Public Member Functions inherited from camitk::InterfaceBitMap | |
| virtual vtkSmartPointer< vtkImageActor > | get2DImageActor () const =0 |
| Return the vtkImageActor (vtkProp) representing a slice to be displayed in 2D viewers. | |
| virtual vtkSmartPointer< vtkImageActor > | get3DImageActor () const =0 |
| Return the vtkImageActor (vtkProp) representing a slice to be displayed in 3D viewers. | |
| virtual vtkSmartPointer< vtkImageData > | getImageData () const =0 |
| Returns the encapsultaed data structure: the image as a vtkImageData. | |
| virtual int | getNumberOfColors () const =0 |
| Return the number of colors in the images. | |
| virtual vtkSmartPointer< vtkActor > | getPickPlaneActor () const =0 |
| Return the vtkActor used to pick pixels in the slices. | |
| virtual vtkSmartPointer< vtkActor > | getPixelActor ()=0 |
| Return the vtkActor used to pick pixels in the slices. | |
| virtual void | pixelPicked (double, double, double)=0 |
| This method is called when the associated plane has been picked in the InteractiveViewer, the given coordinates is position where the plane was picked. | |
| virtual void | setArbitraryTransform (vtkSmartPointer< vtkTransform >)=0 |
| Set the pointer to the image transformation. | |
| virtual void | setOriginalVolume (vtkSmartPointer< vtkImageData >)=0 |
| set the original volume image data (the source vtkImageData before any reslice) and refresh the vtk pipeline | |
| virtual void | setPixelRealPosition (double, double, double)=0 |
| move the pixel selection green indicator (pixelActor) to the given real position | |
| virtual void | setSlice (double x, double y, double z)=0 |
| Set the slice corresponding to the given image coordinates (in RAI convention) | |
| virtual void | setSlice (int s)=0 |
| Set the current slice index. | |
| virtual void | updatePickPlane ()=0 |
| update the position of the plane surrounding the currently selected slice | |
| virtual | ~InterfaceBitMap ()=default |
| virtual destructor | |
Public Member Functions inherited from camitk::InterfaceFrame | |
| virtual | ~InterfaceFrame ()=default |
| empty virtual destructor, to avoid memory leak | |
Public Member Functions inherited from camitk::InterfacePersistence | |
| virtual | ~InterfacePersistence ()=default |
Static Public Member Functions | |
Enum management and helper methods | |
| static const QMap< int, QString > & | getFieldNames () |
| static method that returns the FieldType enum as a QString | |
| static const QString | getFieldName (const FieldType) |
| helper method that returns the field type as a string | |
| static const QMap< int, QString > & | getDataTypeNames () |
| static method that returns the DataType enum as a QString | |
| static const QString | getDataTypeName (const DataType) |
| Helper method that returns the datatype as a string. | |
| static const DataType | getDataType (vtkSmartPointer< vtkDataArray >) |
| Returns the data type of a data array depending on the number of components of the given data array: | |
| static const QString | getDataTypeName (vtkSmartPointer< vtkDataArray >) |
| Returns the data type string of an data array depending on the number of components of the given data array: If the number of components is different than 1, 3 and 9 (the managed type SCALARS, VECTORS, TENSORS) then the method returns a string equals to the number of components. | |
| static const QString | getSpecificRepresentationName (const SpecificRepresentation) |
| Helper method that returns the SpecificRepresentation as a QString. | |
Protected Slots | |
| void | changeSelectedSelection (const QItemSelection &selected, const QItemSelection &deselected) |
| called when the selection is modified | |
| void | displayTypePolicyChanged (int) |
| called when the datatype for vector data is modified (refresh the data model) | |
| void | removeSelectedData () |
| remove the selected selection | |
| void | removeSelectedSelections () |
| remove the selected selection | |
| void | vectorRepresentationPolicyChanged (int) |
| called when the representation for vector data is modified (remove all actors and refresh the data model) | |
Protected Member Functions | |
| void | initData () |
| initialize data | |
| void | initDynamicProperties () |
| create and initialize dynamic properties | |
| void | initRepresentation (vtkSmartPointer< vtkPointSet >) |
| build the instance of Geometry from the given vtkPointSet | |
| void | initSelection () |
| initialize selections | |
Additional Inherited Members | |
Public Attributes inherited from camitk::Component | |
| setPointSet | |
| vtkSmartPointer< vtkPointSet > | getDataPort |
| vtkSmartPointer< vtkPointSet > vtkSmartPointer< vtkAlgorithmOutput > | getActor |
| vtkSmartPointer< vtkPointSet > vtkSmartPointer< vtkAlgorithmOutput > | vtkSmartPointer< vtkActor > |
| vtkSmartPointer< vtkPointSet > vtkSmartPointer< vtkAlgorithmOutput > const RenderingModes | updateLabel |
| setRenderingModes | |
| setActorColor | |
| const | RenderingModes |
| const const | double |
| const const const | double |
| setColor | |
| 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) override |
| getImageData | |
| vtkSmartPointer< vtkImageData > | get2DImageActor |
| vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > | getPickPlaneActor |
| vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > | pixelPicked |
| vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > | double |
| vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double | setSlice |
| vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double int | getNumberOfColors |
| vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double int int | setArbitraryTransform |
Protected Attributes inherited from camitk::Component | |
| ComponentList | childrenComponent |
| The explorer sub items. | |
| std::shared_ptr< FrameOfReference > | frameOfReference = nullptr |
| The FrameOfReference in which this component's data is represented. | |
| unsigned int | indexOfPropertyExplorerTab |
| The PropertyExplorer tab index to select once refreshed. | |
| bool | isSelectedFlag |
| tells if this particular Component is selected or not | |
| bool | modifiedFlag |
| the modification flag (could be extended to manage a undo/redo list) | |
| QString | myFileName |
| the file name from which the Component is loaded | |
| InterfaceGeometry * | myGeometry |
| myGeometry is the 3d representation of this Component, the Component delegates all InterfaceGeometry activity to myGeometry (delegation pattern) | |
| InterfaceNode * | myParentNode |
| who is the boss? The Component! | |
| InterfaceBitMap * | mySlice |
| mySlice is the slice representation of this data component, the Component delegates all InterfaceBitMap activity to mySlice (delegation pattern) | |
Basic component to manage any kind of mesh.
3D data can be represented by 1 value in different ways
how are vector data represented in 3D
| camitk::MeshComponent::MeshComponent | ( | const QString & | file, |
| const QString & | name = "Mesh" |
||
| ) |
Creates a top-level MeshComponent from a file.
Please consider using MeshComponent(vtkSmartPointer<vtkPointSet> , const QString &)
| camitk::MeshComponent::MeshComponent | ( | vtkSmartPointer< vtkPointSet > | aPointSet, |
| const QString & | name | ||
| ) |
Creates a top-level MeshComponent from a vtkPointSet (and instantiate its 3D representation).
| aPointSet | point set of the new MeshComponent |
| name | name to be given to the Component |
References initRepresentation(), and camitk::Component::setModified().
Here is the call graph for this function:| 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 instantiate its 3D representation).
| parentComponent | the parent component of the new MeshComponent |
| aPointSet | point set of the new MeshComponent |
| name | name to be given to the new MeshComponent |
References initRepresentation().
Here is the call graph for this function:
|
override |
Destructor.
References camitk::InterfaceGeometry::getPointSet(), SCALARS, setDataRepresentationOff(), TENSORS, and VECTORS.
Here is the call graph for this function:| void camitk::MeshComponent::addCellData | ( | const QString & | name, |
| vtkSmartPointer< vtkDataArray > | data | ||
| ) |
Add a data array linked to the cells.
| name | name |
| data | data array |
References addDataArray(), and CELLS.
Referenced by initData().
Here is the call graph for this function:
Here is the caller graph for this function:| void camitk::MeshComponent::addDataArray | ( | FieldType | fieldType, |
| const QString & | name, | ||
| vtkSmartPointer< vtkDataArray > | data | ||
| ) |
Add a data array.
| fieldType | field type |
| name | name given to the array to add |
| data | data array |
References getFieldData(), and setDataRepresentationVisibility().
Referenced by addCellData(), addPointData(), Arrows::update(), and Colors::update().
Here is the call graph for this function:
Here is the caller graph for this function:| void camitk::MeshComponent::addPointData | ( | const QString & | name, |
| vtkSmartPointer< vtkDataArray > | data | ||
| ) |
Add a data array linked to the points.
| name | name |
| data | data array |
References addDataArray(), and POINTS.
Referenced by initData().
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Add a selection.
If the name of the selection already exists, the data of the existing selection are updated according to the SelectionPolicy flag.
| name | name of the selection |
| fieldType | field type of the selection (one of vtkSelectionNode::SelectionField) |
| contentType | content type (one of vtkSelectionNode::SelectionContent) |
| array | array of the selection |
| policy | policy to update the existing selection |
Reimplemented in PMLComponent.
References camitk::MeshSelectionModel::insertSelection().
Referenced by PMLComponent::addSelection(), addToSelectedSelection(), and PMLComponent::updateSelection().
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Add a selection to the currently selected selection.
If there is no selected selection, one is created with the name "Picked Selection".
| fieldType | field type of the selection (one of vtkSelectionNode::SelectionField) |
| contentType | content type (one of vtkSelectionNode::SelectionContent) |
| array | array of the selection |
| policy | policy to updated the selection selection |
References addSelection().
Here is the call graph for this function:
|
overridevirtual |
reimplemented to save the last pick point id
Reimplemented from camitk::Component.
|
protectedslot |
called when the selection is modified
References camitk::Application::getSelectedComponents(), camitk::Component::refresh(), and camitk::Component::setIndexOfPropertyExplorerTab().
Here is the call graph for this function:
|
protectedslot |
called when the datatype for vector data is modified (refresh the data model)
References camitk::MeshDataModel::refresh().
Here is the call graph for this function:
|
overridevirtual |
Load data from a QVariant to initialize the current object.
Reimplemented from camitk::Component.
References camitk::Component::fromVariant(), camitk::InterfaceGeometry::Points, camitk::Component::RenderingModes, camitk::Component::setActorColor, camitk::InterfaceGeometry::setActorOpacity(), camitk::Component::setRenderingModes, camitk::InterfaceGeometry::Surface, and camitk::InterfaceGeometry::Wireframe.
Here is the call graph for this function:| vtkSmartPointer< vtkSelection > camitk::MeshComponent::getActiveSelection | ( | ) | const |
Get active selections.
Referenced by ExtractSelection::apply().
Here is the caller graph for this function:| vtkSmartPointer< vtkDataArray > camitk::MeshComponent::getDataArray | ( | FieldType | fieldType, |
| const QString & | arrayName | ||
| ) |
Get the data array of specified field type and name.
| fieldType | field type |
| arrayName | array name |
References getFieldData().
Referenced by getDataRepresentationVisibility(), removeSelectedData(), and setDataRepresentationVisibility().
Here is the call graph for this function:
Here is the caller graph for this function:| vtkSmartPointer< vtkDataArray > camitk::MeshComponent::getDataArray | ( | FieldType | fieldType, |
| int | index | ||
| ) |
Get the data array of specified field type and index.
| fieldType | field type |
| index | index |
References getFieldData().
Here is the call graph for this function:| MeshDataModel * camitk::MeshComponent::getDataModel | ( | ) |
Returns the current data view model (model as the M in Qt MVC design pattern)
| bool camitk::MeshComponent::getDataRepresentationVisibility | ( | FieldType | field, |
| const QString & | name | ||
| ) |
get the current visibility status of a given data (identified with its name) of a given field type
References getDataArray(), getDataType(), getSpecificRepresentationName(), OTHERS, SCALARS, TENSORS, VECTOR_3D, and VECTORS.
Referenced by camitk::MeshDataModel::data().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Returns the data type of a data array depending on the number of components of the given data array:
References OTHERS, SCALARS, TENSORS, and VECTORS.
Referenced by getDataRepresentationVisibility(), getDataTypeName(), setDataRepresentationOff(), and setDataRepresentationVisibility().
Here is the caller graph for this function:
|
static |
Helper method that returns the datatype as a string.
References getDataTypeNames().
Referenced by camitk::MeshDataModel::data(), and getDataTypeName().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Returns the data type string of an data array depending on the number of components of the given data array: If the number of components is different than 1, 3 and 9 (the managed type SCALARS, VECTORS, TENSORS) then the method returns a string equals to the number of components.
References getDataType(), getDataTypeName(), and OTHERS.
Here is the call graph for this function:
|
static |
static method that returns the DataType enum as a QString
Referenced by camitk::MeshDataFilterModel::filterAcceptsRow(), and getDataTypeName().
Here is the caller graph for this function:| vtkSmartPointer< vtkFieldData > camitk::MeshComponent::getFieldData | ( | FieldType | fieldType | ) |
Returns the corresponding vtkFieldData (point data, cell data or field data)
References CELLS, camitk::InterfaceGeometry::getPointSet(), MESH, and POINTS.
Referenced by addDataArray(), getDataArray(), getDataArray(), removeDataArray(), setDataRepresentationOff(), and setDataRepresentationVisibility().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
helper method that returns the field type as a string
References getFieldNames().
Referenced by camitk::MeshDataModel::data().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
static method that returns the FieldType enum as a QString
Referenced by camitk::MeshDataFilterModel::filterAcceptsRow(), and getFieldName().
Here is the caller graph for this function:
|
overridevirtual |
Get the pixmap that will be displayed for this node.
Reimplemented from camitk::Component.
Reimplemented in PMLComponent, and VtkMeshComponent.
Get the number of data arrays of a given type without taking the specific representation into account.
This method does not take into account:
| fieldFlag | is a FieldType or a combinaison of field types. |
References CELLS, camitk::InterfaceGeometry::getPointSet(), MESH, and POINTS.
Referenced by camitk::MeshDataModel::rowCount().
Here is the call graph for this function:
Here is the caller graph for this function:
|
overridevirtual |
there is more than one property widgets (to view as tabs in the property explorer)
Reimplemented from camitk::Component.
| unsigned int camitk::MeshComponent::getNumberOfSelections | ( | ) | const |
Get the number of selections.
Referenced by PMLComponentExtension::save().
Here is the caller graph for this function:| vtkIdType camitk::MeshComponent::getPickedCellId | ( | ) |
get the last pick point id,
Referenced by MeshPicking::apply().
Here is the caller graph for this function:| vtkIdType camitk::MeshComponent::getPickedPointId | ( | ) |
get the last pick point id,
Referenced by MeshPicking::apply().
Here is the caller graph for this function:
|
overridevirtual |
the proprety widgets are: default property widget, selection view and data view
Reimplemented from camitk::Component.
| vtkSmartPointer< vtkSelectionNode > camitk::MeshComponent::getSelection | ( | const QString & | name | ) | const |
Get a selection from its name.
TODO This method should return a const ref, so that external code cannot modify it
| name | name of the selection |
References getSelectionAt(), and getSelectionIndex().
Referenced by GenerateModel::apply().
Here is the call graph for this function:
Here is the caller graph for this function:| vtkSmartPointer< vtkSelectionNode > camitk::MeshComponent::getSelectionAt | ( | unsigned int | index | ) | const |
Get a selection from its index in the list.
TODO This method should return a const ref, so that external code cannot modify it
| index | index of the selection |
Referenced by getSelection(), and PMLComponentExtension::save().
Here is the caller graph for this function:| int camitk::MeshComponent::getSelectionIndex | ( | const QString & | name | ) | const |
Get the selection index in the list from its name.
| name | name of the selection |
Referenced by PMLComponent::addSelection(), getSelection(), camitk::MeshSelectionModel::insertSelection(), camitk::MeshSelectionModel::removeSelection(), and camitk::MeshSelectionModel::setData().
Here is the caller graph for this function:| QList< vtkSmartPointer< vtkSelectionNode > > & camitk::MeshComponent::getSelections | ( | ) |
Get the selection list.
The selection list contains vtkSelectionNode.
Referenced by camitk::MeshSelectionModel::data(), camitk::MeshSelectionModel::insertSelection(), camitk::MeshSelectionModel::removeSelection(), camitk::MeshSelectionModel::rowCount(), and camitk::MeshSelectionModel::setData().
Here is the caller graph for this function:
|
static |
Helper method that returns the SpecificRepresentation as a QString.
References COLOR, FIRST_COMPONENT, NORM, SECOND_COMPONENT, THIRD_COMPONENT, and VECTOR_3D.
Referenced by getDataRepresentationVisibility(), and setDataRepresentationVisibility().
Here is the caller graph for this function:
|
protected |
initialize data
References addCellData(), addPointData(), camitk::InterfaceGeometry::getPointSet(), camitk::Component::myGeometry, SCALARS, setDataRepresentationOff(), TENSORS, and VECTORS.
Referenced by initRepresentation().
Here is the call graph for this function:
Here is the caller graph for this function:
|
protected |
create and initialize dynamic properties
References camitk::Component::addProperty(), camitk::InterfaceGeometry::getPointSet(), and camitk::Property::setReadOnly().
Referenced by PMLComponent::initDynamicProperties(), and initRepresentation().
Here is the call graph for this function:
Here is the caller graph for this function:
|
protected |
build the instance of Geometry from the given vtkPointSet
References camitk::Component::getName(), initData(), initDynamicProperties(), initSelection(), camitk::Component::myGeometry, camitk::InterfaceGeometry::setPointSet(), and camitk::Component::setVisibility().
Referenced by MeshComponent(), MeshComponent(), ObjComponent::ObjComponent(), OffComponent::OffComponent(), StlComponent::StlComponent(), and VtkMeshComponent::VtkMeshComponent().
Here is the call graph for this function:
Here is the caller graph for this function:
|
protected |
initialize selections
References camitk::Component::addProp(), camitk::Component::getDataPort, and camitk::Component::vtkSmartPointer< vtkActor >.
Referenced by initRepresentation().
Here is the call graph for this function:
Here is the caller graph for this function:
|
overridevirtual |
reimplemented to save the last pick point id
Reimplemented from camitk::Component.
| void camitk::MeshComponent::removeDataArray | ( | FieldType | fieldType, |
| const QString & | name | ||
| ) |
Remove a data array.
| fieldType | field type |
| name | name of the array to remove |
References getFieldData(), camitk::Component::removeProp(), and setDataRepresentationVisibility().
Referenced by removeSelectedData().
Here is the call graph for this function:
Here is the caller graph for this function:
|
protectedslot |
remove the selected selection
References CAMITK_WARNING, getDataArray(), POINTS, and removeDataArray().
Here is the call graph for this function:
|
protectedslot |
remove the selected selection
References camitk::MeshSelectionModel::removeSelection().
Here is the call graph for this function:| void camitk::MeshComponent::setDataRepresentationOff | ( | int | dataType = SCALARS | VECTORS | TENSORS, |
| bool | blockRefresh = false |
||
| ) |
hide all the data representation of a given data type (hide all by default) By default this->refresh() is called unless blockRefresh is set to true
References CELLS, getDataType(), getFieldData(), camitk::Component::getProp(), camitk::Application::getViewer(), POINTS, camitk::Component::refresh(), camitk::MeshDataModel::refresh(), SCALARS, camitk::InteractiveViewer::setColorScale(), camitk::InteractiveViewer::setColorScaleTitle(), TENSORS, and VECTORS.
Referenced by Arrows::hide(), Colors::hide(), initData(), setDataRepresentationVisibility(), vectorRepresentationPolicyChanged(), ~MeshComponent(), and VtkMeshComponent::~VtkMeshComponent().
Here is the call graph for this function:
Here is the caller graph for this function:| void camitk::MeshComponent::setDataRepresentationVisibility | ( | FieldType | fieldType, |
| const QString & | name, | ||
| bool | visibility, | ||
| bool | blockRefresh = false |
||
| ) |
set the visibility of a given representation for a given data (identified by its name) of a given field type (create it if needed) By default this->refresh() is called unless blockRefresh is set to true
References COLOR, getDataArray(), getDataType(), getFieldData(), camitk::Component::getProp(), getSpecificRepresentationName(), MESH, camitk::Component::refresh(), camitk::MeshDataModel::refresh(), SCALARS, camitk::InterfaceGeometry::setColorMode(), setDataRepresentationOff(), TENSORS, VECTOR_3D, and VECTORS.
Referenced by addDataArray(), removeDataArray(), and camitk::MeshDataModel::setData().
Here is the call graph for this function:
Here is the caller graph for this function:
|
overridevirtual |
set the component name and update frame name
Reimplemented from camitk::Component.
References camitk::Component::frameOfReference, camitk::Component::getName(), and camitk::Component::setName().
Referenced by PMLComponent::initDynamicProperties(), and VtkMeshComponent::VtkMeshComponent().
Here is the call graph for this function:
Here is the caller graph for this function:
|
overridevirtual |
Convert all data from the object to a QVariant (usually a QVariantMap)
Reimplemented from camitk::Component.
References camitk::Component::getActorColor(), camitk::Component::getRenderingModes(), camitk::InterfaceGeometry::Points, camitk::InterfaceGeometry::Surface, camitk::Component::toVariant(), and camitk::InterfaceGeometry::Wireframe.
Here is the call graph for this function:
|
protectedslot |
called when the representation for vector data is modified (remove all actors and refresh the data model)
References camitk::MeshDataModel::refresh(), camitk::Component::removeProp(), setDataRepresentationOff(), and VECTORS.
Here is the call graph for this function: