open_iA 2024.9
Loading...
Searching...
No Matches
iACylinderObjectVis Class Reference

Visualizes the objects given in a table as cylinders. More...

#include <iACylinderObjectVis.h>

Inheritance diagram for iACylinderObjectVis:
[legend]
Collaboration diagram for iACylinderObjectVis:
[legend]

Public Member Functions

 iACylinderObjectVis (iAObjectsData const *data, QColor const &color, int numberOfCylinderSides=DefaultNumberOfCylinderSides, size_t segmentSkip=1)
 Creates a cylinder object visualization.
 
virtual ~iACylinderObjectVis ()
 
std::vector< vtkSmartPointer< vtkPolyData > > extractSelectedObjects (QColor c) const override
 extract one mesh per selected object
 
IndexType finalObjectPointCount (IndexType objIdx) const override
 Get the number of points representing a given final object.
 
IndexType finalObjectStartPointIdx (IndexType objIdx) const override
 Get the index of the first point of a given final object.
 
vtkPolyData * finalPolyData () override
 
void setContextDiameterFactor (double contextDiameterFactor)
 
void setDiameterFactor (double diameterFactor)
 
void setSelection (std::vector< size_t > const &sortedSelInds, bool selectionActive) override
 
QString visualizationStatistics () const override
 
- Public Member Functions inherited from iALineObjectVis
 iALineObjectVis (iAObjectsData const *data, QColor const &color, size_t segmentSkip)
 
std::vector< vtkSmartPointer< vtkPolyData > > extractSelectedObjects (QColor c) const override
 extract one mesh per selected object
 
vtkPolyData * finalPolyData () override
 
IndexType objectPointCount (IndexType objIdx) const override
 Get the number of points representing a given object.
 
IndexType objectStartPointIdx (IndexType objIdx) const override
 Get the index of the first point of a given object.
 
vtkPolyData * polyData () override
 
void updateValues (std::vector< std::vector< double > > const &values, int straightOrCurved)
 
QString visualizationStatistics () const override
 
- Public Member Functions inherited from iAColoredPolyObjectVis
 iAColoredPolyObjectVis (iAObjectsData const *, QColor const &neutralColor)
 
IndexType allPointCount () const
 Get the number of points in all objects.
 
double const * bounds () override
 
std::shared_ptr< iAObjectVisActorcreateActor (vtkRenderer *ren) override
 create "actor" class for visualizing this data collection
 
std::shared_ptr< iAPolyObjectVisActorcreatePolyActor (vtkRenderer *ren)
 same as createActor, but retrieve derived class more specific for visualizing a 3D colored poly data object; use this if you need to access methods from the iAPolyObjectVisActorclass which are not available through the iAObjectVisActor interface.
 
IndexType finalAllPointCount () const
 Get the number of points in all final objects.
 
std::vector< size_t > const & selection () const
 
void setColor (QColor const &color)
 
void setContextOpacity (int contextAlpha)
 
void setLookupTable (std::shared_ptr< iALookupTable > lut, size_t paramIndex)
 
void setSelectionOpacity (int selectionAlpha)
 
void updateColorSelectionRendering ()
 
void renderSelection (std::vector< size_t > const &sortedSelInds, int classID, QColor const &classColor, QStandardItem *activeClassItem) override
 "legacy" methods for various selection/coloring options, specific to FeatureScout module
 
void renderSingle (IndexType selectedObjID, int classID, QColor const &classColors, QStandardItem *activeClassItem) override
 
void multiClassRendering (QList< QColor > const &colors, QStandardItem *rootItem, double alpha) override
 
void renderOrientationDistribution (vtkImageData *oi) override
 
void renderLengthDistribution (vtkColorTransferFunction *ctFun, vtkFloatArray *extents, double halfInc, int filterID, double const *range) override
 
- Public Member Functions inherited from iAObjectVis
 iAObjectVis (iAObjectsData const *data)
 
virtual ~iAObjectVis ()
 

Static Public Attributes

static const int DefaultNumberOfCylinderSides = 12
 
- Static Public Attributes inherited from iAColoredPolyObjectVis
static const int DefaultContextOpacity = 8
 
static const int DefaultSelectionOpacity = 128
 
- Static Public Attributes inherited from iAObjectVis
static const QColor SelectedColor
 

Additional Inherited Members

- Public Types inherited from iAObjectVis
using IndexType = vtkIdType
 the type used for indices into the data table.
 
- Signals inherited from iAColoredPolyObjectVis
void selectionChanged ()
 
- Signals inherited from iAObjectVis
void dataChanged ()
 
void renderRequired ()
 
- Protected Member Functions inherited from iAColoredPolyObjectVis
void setObjectColor (IndexType objIdx, QColor const &qcolor)
 Set an object to a specified color.
 
void setupColors ()
 Set up the array of colors for each object.
 
void setupOriginalIds ()
 Set up the mapping from object parts to object IDs.
 
- Protected Member Functions inherited from iAObjectVis
QColor getLengthColor (vtkColorTransferFunction *ctFun, IndexType objID) const
 
QColor getOrientationColor (vtkImageData *oi, IndexType objID) const
 
- Protected Attributes inherited from iALineObjectVis
vtkSmartPointer< vtkPolyData > m_linePolyData
 
vtkSmartPointer< vtkPoints > m_points
 
- Protected Attributes inherited from iAColoredPolyObjectVis
QColor m_baseColor
 
vtkSmartPointer< vtkUnsignedCharArray > m_colors
 
int m_contextAlpha
 
std::vector< size_t > m_selection
 
int m_selectionAlpha
 
QColor m_selectionColor
 
- Protected Attributes inherited from iAObjectVis
iAObjectsData const * m_data
 

Detailed Description

Visualizes the objects given in a table as cylinders.

Requires column mappings for start- and end point as well as for radius in the given object table data.

Constructor & Destructor Documentation

◆ iACylinderObjectVis()

iACylinderObjectVis::iACylinderObjectVis ( iAObjectsData const * data,
QColor const & color,
int numberOfCylinderSides = DefaultNumberOfCylinderSides,
size_t segmentSkip = 1 )

Creates a cylinder object visualization.

Parameters
datathe data of the objects
colorthe general color of the visualization
numberOfCylinderSidesquality parameter for cylinder visualization (lower values lead to faster rendering but also less quality; minimum value that makes sense is 3 (then you get a triangular tube)
segmentSkipquality parameter for cylinder visualization (how many segments for curved fibers are skipped; higher values lead to faster rendering but also less accurate representation of curved fibers the default value of 1 means don't skip; larger values skip curved fiber segments

◆ ~iACylinderObjectVis()

iACylinderObjectVis::~iACylinderObjectVis ( )
virtual

Member Function Documentation

◆ extractSelectedObjects()

std::vector< vtkSmartPointer< vtkPolyData > > iACylinderObjectVis::extractSelectedObjects ( QColor c) const
overridevirtual

extract one mesh per selected object

Implements iAColoredPolyObjectVis.

◆ finalObjectPointCount()

iAColoredPolyObjectVis::IndexType iACylinderObjectVis::finalObjectPointCount ( IndexType objIdx) const
overridevirtual

Get the number of points representing a given final object.

Parameters
objIdxthe index of the object.
Returns
the number of points in the final object.

Reimplemented from iAColoredPolyObjectVis.

◆ finalObjectStartPointIdx()

iAColoredPolyObjectVis::IndexType iACylinderObjectVis::finalObjectStartPointIdx ( IndexType objIdx) const
overridevirtual

Get the index of the first point of a given final object.

Parameters
objIdxthe index of the object.
Returns
the index of the first point in the final object.

Reimplemented from iAColoredPolyObjectVis.

◆ finalPolyData()

vtkPolyData * iACylinderObjectVis::finalPolyData ( )
overridevirtual

◆ setContextDiameterFactor()

void iACylinderObjectVis::setContextDiameterFactor ( double contextDiameterFactor)

◆ setDiameterFactor()

void iACylinderObjectVis::setDiameterFactor ( double diameterFactor)

◆ setSelection()

void iACylinderObjectVis::setSelection ( std::vector< size_t > const & sortedSelInds,
bool selectionActive )
overridevirtual

Reimplemented from iAColoredPolyObjectVis.

◆ visualizationStatistics()

QString iACylinderObjectVis::visualizationStatistics ( ) const
overridevirtual

Member Data Documentation

◆ DefaultNumberOfCylinderSides

const int iACylinderObjectVis::DefaultNumberOfCylinderSides = 12
static

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