ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
ecvGenericFiltersTool Class Referenceabstract

Generic Filters Tool interface. More...

#include <ecvGenericFiltersTool.h>

Inheritance diagram for ecvGenericFiltersTool:
Collaboration diagram for ecvGenericFiltersTool:

Public Types

enum  FilterType {
  CLIP_FILTER , SLICE_FILTER , DECIMATE_FILTER , ISOSURFACE_FILTER ,
  THRESHOLD_FILTER , SMOOTH_FILTER , PROBE_FILTER , STREAMLINE_FILTER ,
  GLYPH_FILTER
}
 

Signals

void boxModified (const ccBBox *box)
 Signal sent each time the box is modified. More...
 

Public Member Functions

 ecvGenericFiltersTool (FilterType mode=FilterType::CLIP_FILTER)
 Default constructor. More...
 
virtual ~ecvGenericFiltersTool ()=default
 Desctructor. More...
 
virtual void showInteractor (bool state)=0
 
virtual bool setInputData (ccHObject *entity, int viewport=0)=0
 
virtual void unregisterFilter ()=0
 
virtual void intersectMode ()=0
 
virtual void unionMode ()=0
 
virtual void trimMode ()=0
 
virtual void resetMode ()=0
 
virtual bool start ()=0
 
virtual void reset ()=0
 
virtual void restore ()=0
 
virtual void clear ()=0
 
virtual void update ()
 
virtual void getOutput (std::vector< ccHObject * > &outputSlices, std::vector< ccPolyline * > &outputContours) const =0
 
virtual ccHObjectgetOutput () const =0
 
virtual void setNegative (bool state)=0
 
virtual void showOutline (bool state)=0
 Whether to show the box or not. More...
 
virtual QWidget * getFilterWidget ()=0
 
virtual const ccBBoxgetBox ()=0
 Returns the box extents. More...
 
virtual void setBox (const ccBBox &box)=0
 Sets the box extents. More...
 
virtual void shift (const CCVector3 &v)=0
 Shifts the current box. More...
 
virtual void set (const ccBBox &extents, const ccGLMatrix &transformation)=0
 Manually sets the box parameters. More...
 
virtual void get (ccBBox &extents, ccGLMatrix &transformation)=0
 
FilterType getFilterType ()
 

Protected Member Functions

virtual bool buildUp ()
 Builds primitive. More...
 
virtual void initialize (ecvGenericVisualizer3D *viewer=nullptr)=0
 

Protected Attributes

bool m_showOutline = false
 
ccBBox m_box
 
FilterType m_filterType
 
ccHObjectm_associatedEntity
 

Detailed Description

Generic Filters Tool interface.

Definition at line 22 of file ecvGenericFiltersTool.h.

Member Enumeration Documentation

◆ FilterType

Enumerator
CLIP_FILTER 
SLICE_FILTER 
DECIMATE_FILTER 
ISOSURFACE_FILTER 
THRESHOLD_FILTER 
SMOOTH_FILTER 
PROBE_FILTER 
STREAMLINE_FILTER 
GLYPH_FILTER 

Definition at line 25 of file ecvGenericFiltersTool.h.

Constructor & Destructor Documentation

◆ ecvGenericFiltersTool()

ecvGenericFiltersTool::ecvGenericFiltersTool ( FilterType  mode = FilterType::CLIP_FILTER)

Default constructor.

Parameters
modeFilterType mode

◆ ~ecvGenericFiltersTool()

virtual ecvGenericFiltersTool::~ecvGenericFiltersTool ( )
virtualdefault

Desctructor.

Member Function Documentation

◆ boxModified

void ecvGenericFiltersTool::boxModified ( const ccBBox box)
signal

Signal sent each time the box is modified.

◆ buildUp()

virtual bool ecvGenericFiltersTool::buildUp ( )
inlineprotectedvirtual

Builds primitive.

Transformation will be applied afterwards!

Returns
success

Definition at line 99 of file ecvGenericFiltersTool.h.

◆ clear()

virtual void ecvGenericFiltersTool::clear ( )
pure virtual

◆ get()

virtual void ecvGenericFiltersTool::get ( ccBBox extents,
ccGLMatrix transformation 
)
pure virtual

Referenced by ecvFilterTool::stop().

◆ getBox()

virtual const ccBBox& ecvGenericFiltersTool::getBox ( )
pure virtual

Returns the box extents.

Referenced by ecvFilterTool::shiftBox().

◆ getFilterType()

FilterType ecvGenericFiltersTool::getFilterType ( )
inline

Definition at line 92 of file ecvGenericFiltersTool.h.

Referenced by ecvFilterTool::setFilter().

◆ getFilterWidget()

virtual QWidget* ecvGenericFiltersTool::getFilterWidget ( )
pure virtual

◆ getOutput() [1/2]

virtual ccHObject* ecvGenericFiltersTool::getOutput ( ) const
pure virtual

◆ getOutput() [2/2]

virtual void ecvGenericFiltersTool::getOutput ( std::vector< ccHObject * > &  outputSlices,
std::vector< ccPolyline * > &  outputContours 
) const
pure virtual

Referenced by ecvFilterTool::getSlice().

◆ initialize()

virtual void ecvGenericFiltersTool::initialize ( ecvGenericVisualizer3D viewer = nullptr)
protectedpure virtual

◆ intersectMode()

virtual void ecvGenericFiltersTool::intersectMode ( )
pure virtual

◆ reset()

virtual void ecvGenericFiltersTool::reset ( )
pure virtual

Referenced by ecvFilterTool::reset().

◆ resetMode()

virtual void ecvGenericFiltersTool::resetMode ( )
pure virtual

◆ restore()

virtual void ecvGenericFiltersTool::restore ( )
pure virtual

◆ set()

virtual void ecvGenericFiltersTool::set ( const ccBBox extents,
const ccGLMatrix transformation 
)
pure virtual

Manually sets the box parameters.

◆ setBox()

virtual void ecvGenericFiltersTool::setBox ( const ccBBox box)
pure virtual

Sets the box extents.

◆ setInputData()

virtual bool ecvGenericFiltersTool::setInputData ( ccHObject entity,
int  viewport = 0 
)
pure virtual

Referenced by ecvFilterTool::start().

◆ setNegative()

virtual void ecvGenericFiltersTool::setNegative ( bool  state)
pure virtual

◆ shift()

virtual void ecvGenericFiltersTool::shift ( const CCVector3 v)
pure virtual

Shifts the current box.

Referenced by ecvFilterTool::shiftBox().

◆ showInteractor()

virtual void ecvGenericFiltersTool::showInteractor ( bool  state)
pure virtual

◆ showOutline()

virtual void ecvGenericFiltersTool::showOutline ( bool  state)
pure virtual

Whether to show the box or not.

Referenced by ecvFilterTool::start(), and ecvFilterTool::toggleBox().

◆ start()

virtual bool ecvGenericFiltersTool::start ( )
pure virtual

Referenced by ecvFilterTool::start().

◆ trimMode()

virtual void ecvGenericFiltersTool::trimMode ( )
pure virtual

◆ unionMode()

virtual void ecvGenericFiltersTool::unionMode ( )
pure virtual

◆ unregisterFilter()

virtual void ecvGenericFiltersTool::unregisterFilter ( )
pure virtual

Referenced by ecvFilterTool::stop().

◆ update()

virtual void ecvGenericFiltersTool::update ( )
virtual

Member Data Documentation

◆ m_associatedEntity

ccHObject* ecvGenericFiltersTool::m_associatedEntity
protected

Definition at line 108 of file ecvGenericFiltersTool.h.

◆ m_box

ccBBox ecvGenericFiltersTool::m_box
protected

Definition at line 105 of file ecvGenericFiltersTool.h.

◆ m_filterType

FilterType ecvGenericFiltersTool::m_filterType
protected

Definition at line 107 of file ecvGenericFiltersTool.h.

◆ m_showOutline

bool ecvGenericFiltersTool::m_showOutline = false
protected

Definition at line 103 of file ecvGenericFiltersTool.h.


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