Developer Documentation
SplatCloudObjectSelectionPlugin Class Reference
Inheritance diagram for SplatCloudObjectSelectionPlugin:
ScriptInterface KeyInterface INIInterface LoadSaveInterface SelectionInterface LoggingInterface BackupInterface BaseInterface

Public Slots

void loadSelection (int _objectId, const QString &_filename) override
 
QString version () override
 
bool vertexTypeActive ()
 
Scriptable slots
void selectVertices (int _objectId, IdList _vertexList)
 Select given vertices. More...
 
void unselectVertices (int _objectId, IdList _vertexList)
 Unselect given vertices. More...
 
void selectAllVertices (int _objectId)
 Select all vertices. More...
 
void clearVertexSelection (int _objectId)
 Unselect all vertices. More...
 
void invertVertexSelection (int _objectId)
 Invert the current vertex selection. More...
 
IdList getVertexSelection (int _objectId)
 Return a list of all selected vertices. More...
 
void deleteVertexSelection (int _objectId)
 Delete vertices that are currently selected. More...
 
void colorizeVertexSelection (int _objectId, int _r, int _g, int _b, int _a)
 Colorize the vertex selection. More...
 
void lassoSelect (QRegion &_region, PrimitiveType _primitiveType, bool _deselection)
 Lasso selection tool. More...
 

Signals

void updateView () override
 
void updatedObject (int _objectId, const UpdateType &_type) override
 
void nodeVisibilityChanged (int _objectId) override
 
void setSlotDescription (QString _slotName, QString _slotDescription, QStringList _parameters, QStringList _descriptions) override
 
void createBackup (int _objectId, QString _name, UpdateType _type=UPDATE_ALL) override
 
void log (QString _message) override
 
void log (Logtype _type, QString _message) override
 
void addSelectionEnvironment (QString _modeName, QString _description, QString _icon, QString &_handleName) override
 
void registerType (QString _handleName, DataType _type) override
 
void addPrimitiveType (QString _handleName, QString _name, QString _icon, SelectionInterface::PrimitiveType &_typeHandle) override
 
void addSelectionOperations (QString _handleName, QStringList _operationsList, QString _category, SelectionInterface::PrimitiveType _type=0u) override
 
void showToggleSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes) override
 
void showSphereSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes) override
 
void showLassoSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes) override
 
void showVolumeLassoSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes) override
 
void getActiveDataTypes (SelectionInterface::TypeList &_types) override
 
void getActivePrimitiveType (SelectionInterface::PrimitiveType &_type) override
 
void targetObjectsOnly (bool &_targetsOnly) override
 
void registerKeyShortcut (int _key, Qt::KeyboardModifiers _modifiers=Qt::NoModifier) override
 
void deleteObject (int _objectId) override
 
void scriptInfo (QString _functionName)
 
- Signals inherited from BaseInterface
virtual void updateView ()
 Update current view in Main Application. More...
 
virtual void setSlotDescription (QString _slotName, QString _slotDescription, QStringList _parameters, QStringList _descriptions)
 Set a description for a public slot. More...
 
virtual void setRenderer (unsigned int _viewer, QString _rendererName)
 Set a renderer for the given viewer. More...
 
- Signals inherited from BackupInterface
virtual void createBackup (int _objectid, QString _name, UpdateType _type=UPDATE_ALL)
 Tell Backup Plugin to create a backup. More...
 
virtual void aboutToRestore (int _objectid)
 Backup Plugin tells other Plugins that a restore will happen. More...
 
virtual void generateBackup (int _id, QString _name, UpdateType _type)
 This signal is emitted by a BackupPlugin and tells a TypePlugin to generate a backup. More...
 
- Signals inherited from LoggingInterface
virtual void log (Logtype _type, QString _message)=0
 
virtual void log (QString _message)=0
 
- Signals inherited from SelectionInterface
virtual void addSelectionEnvironment (QString _modeName, QString _description, QString _icon, QString &_handleName)
 Add a selection environment in order to provide selection functions for specific data type(s) More...
 
virtual void showToggleSelectionMode (QString _handleName, bool _show, PrimitiveType _associatedTypes)
 Show toggle selection mode in a specified selection environment. More...
 
virtual void addSelectionOperations (QString _handleName, QStringList _operationsList, QString _category, PrimitiveType _type=0u)
 Add non-interactive selection operations for a specific primitive type. More...
 
virtual void selectionOperation (QString _operation)
 Emitted by selection base plugin when a non-interactive selection operation is requested. More...
 
virtual void registerKeyShortcut (int _key, Qt::KeyboardModifiers _modifiers=Qt::NoModifier)
 Register key shortcut. More...
 
- Signals inherited from LoadSaveInterface
virtual void save (int _id, QString _filename)
 Save object to a file. More...
 
virtual void load (QString _filename, DataType _type, int &_id)
 Load object from file with a specific DataType. More...
 
- Signals inherited from KeyInterface
virtual void registerKey (int _key, Qt::KeyboardModifiers _modifiers, QString _description, bool _multiUse=false)
 Register a key-combination for your plugin. More...
 
- Signals inherited from ScriptInterface
virtual void scriptInfo (QString _functionWithParameters)
 Emit this signal if a scriptable function is executed. More...
 
virtual void getScriptingEngine (QScriptEngine *&_engine)
 
virtual void executeFileScript (QString _filename)
 
virtual void getAvailableFunctions (QStringList &_functions)
 

Public Member Functions

 SplatCloudObjectSelectionPlugin ()
 Default constructor. More...
 
QString name () override
 Return a name for the plugin. More...
 
QString description () override
 Return a description of what the plugin is doing. More...
 

Private Slots

void loadIniFile (INIFile &_ini, int _objectId) override
 
void saveIniFile (INIFile &_ini, int _objectId) override
 
void initializePlugin () override
 
void pluginsInitialized () override
 
void noguiSupported () override
 
- Private Slots inherited from BaseInterface
virtual void exit ()
 
virtual QString version ()
 Return a version string for your plugin. More...
 
- Private Slots inherited from SelectionInterface
virtual void loadSelection (int _objId, const QString &_filename)
 Scripting slot for loading selections. More...
 
- Private Slots inherited from KeyInterface
virtual void slotKeyEvent (QKeyEvent *_event)
 Key Event from Main App. More...
 

Private Member Functions

void slotSelectionOperation (const QString _operation) override
 A specific operation is requested. More...
 
void slotToggleSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect) override
 Called whenever the user performs a toggle selection. More...
 
void slotSphereSelection (QMouseEvent *_event, double _radius, SelectionInterface::PrimitiveType _currentType, bool _deselect) override
 Called whenever the user performs a sphere selection. More...
 
void slotLassoSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect) override
 Called whenever the user performs a lasso selection. More...
 
void slotVolumeLassoSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect) override
 Called whenever the user performs a volume lasso selection. More...
 
void slotLoadSelection (const INIFile &_file) override
 Load selection for specific objects in the scene. More...
 
void slotSaveSelection (INIFile &_file) override
 Save selection for all objects in the scene. More...
 
void slotKeyShortcutEvent (int _key, Qt::KeyboardModifiers _modifiers) override
 One of the previously registered keys has been pressed. More...
 
Private methods
void updateSlotDescriptions ()
 Set descriptions for local public slots. More...
 
void setColorForSelection (const int _objectId, const PrimitiveType _primitiveType)
 Set color for selection. More...
 
Template Functions
bool splatCloudDeleteSelection (SplatCloud *_splatCloud, PrimitiveType _primitiveType)
 Delete all selected elements of a SplatCloud. More...
 
void splatCloudToggleSelection (SplatCloud *_splatCloud, uint _index, ACG::Vec3d &_hit_point, PrimitiveType _primitiveType)
 Toggle SplatCloud selection. More...
 
void splatCloudSphereSelection (SplatCloud *_splatCloud, uint _index, const ACG::Vec3d &_hit_point, double _radius, PrimitiveType _primitiveTypes, bool _deselection)
 Use the event to paint selection with a sphere. More...
 
bool splatCloudVolumeSelection (SplatCloud *_splatCloud, ACG::GLState &_state, QRegion *_region, PrimitiveType _primitiveTypes, bool _deselection)
 Surface volume selection tool. More...
 
void splatCloudColorizeSelection (SplatCloud *_splatCloud, PrimitiveType _primitiveTypes, int _r, int _g, int _b, int _a)
 Colorize the selection. More...
 
- Private Member Functions inherited from BaseInterface
virtual void noguiSupported ()
 
virtual ~BaseInterface ()
 Destructor. More...
 
virtual void blockScenegraphUpdates (bool _block)
 Tell the core to prevent scenegraph updates. More...
 
virtual void updatedObject (int _objectId)
 An object has been changed or added by this plugin. More...
 
virtual void updatedObject (int _identifier, const UpdateType &_type)
 An object has been changed or added by this plugin. More...
 
virtual void nodeVisibilityChanged (int _identifier)
 A scenegraph node has been shown or hidden. More...
 
virtual void getCurrentRenderer (unsigned int _viewer, QString &_rendererName)
 Get the current renderer for the given viewer. More...
 
- Private Member Functions inherited from BackupInterface
virtual void createBackup (IdList _objectids, QString _name, std::vector< UpdateType > _types)
 Tell Backup Plugin to create a group backup. More...
 
virtual void undo (int _objectid)
 Tell Backup Plugin to undo the last action of an object. More...
 
virtual void redo (int _objectid)
 Tell Backup Plugin to redo the last action on an object. More...
 
virtual void undo ()
 Tell Backup Plugin to undo the last action. More...
 
virtual void redo ()
 Tell Backup Plugin to redo the last action. More...
 
virtual ~BackupInterface ()
 Destructor. More...
 
virtual void restored (int _objectid)
 Backup Plugin tells other Plugins that a restore has happened. More...
 
- Private Member Functions inherited from LoggingInterface
virtual ~LoggingInterface ()
 Destructor. More...
 
- Private Member Functions inherited from SelectionInterface
virtual ~SelectionInterface ()
 Destructor. More...
 
virtual void registerType (QString _handleName, DataType _type)
 Register data type for a selection environment. More...
 
virtual void addPrimitiveType (QString _handleName, QString _name, QString _icon, PrimitiveType &_typeHandle)
 Provide selection for primitives other than the standard ones. More...
 
virtual void showLassoSelectionMode (QString _handleName, bool _show, PrimitiveType _associatedTypes)
 Show lasso selection mode in a specified selection environment. More...
 
virtual void showVolumeLassoSelectionMode (QString _handleName, bool _show, PrimitiveType _associatedTypes)
 Show volume lasso selection mode in a specified selection environment. More...
 
virtual void showSurfaceLassoSelectionMode (QString _handleName, bool _show, PrimitiveType _associatedTypes)
 Show surface lasso selection mode in a specified selection environment. More...
 
virtual void showSphereSelectionMode (QString _handleName, bool _show, PrimitiveType _associatedTypes)
 Show sphere selection mode in a specified selection environment. More...
 
virtual void showClosestBoundarySelectionMode (QString _handleName, bool _show, PrimitiveType _associatedTypes)
 Show closest boundary selection mode in a specified selection environment. More...
 
virtual void showFloodFillSelectionMode (QString _handleName, bool _show, PrimitiveType _associatedTypes)
 Show flood fill selection mode in a specified selection environment. More...
 
virtual void showComponentsSelectionMode (QString _handleName, bool _show, PrimitiveType _associatedTypes)
 Show connected components selection mode in a specified selection environment. More...
 
virtual void addCustomSelectionMode (QString _handleName, QString _modeName, QString _description, QString _icon, PrimitiveType _associatedTypes, QString &_customIdentifier)
 Add a custom interactive selection mode. More...
 
virtual void addCustomSelectionMode (QString _handleName, QString _modeName, QString _description, QString _icon, PrimitiveType _associatedTypes, QString &_customIdentifier, DataType _objectTypeRestriction)
 Add a custom interactive selection mode. More...
 
virtual void getActiveDataTypes (TypeList &_types)
 Get the data types that the currently active selection environment supports. More...
 
virtual void getActivePrimitiveType (PrimitiveType &_type)
 Get the primitive type that is selected. More...
 
virtual void targetObjectsOnly (bool &_targetsOnly)
 Indicates whether selection should be performed on target objects only. More...
 
virtual void addSelectionParameters (QString _handleName, QWidget *_widget, QString _category, PrimitiveType _type=0u)
 Add interactive selection parameters for a specific primitive type. More...
 
virtual void toggleSelection (QMouseEvent *_event, PrimitiveType _currentType, bool _deselect)
 Emitted by selection base plugin whenever the user performs a toggle selection. More...
 
virtual void lassoSelection (QMouseEvent *_event, PrimitiveType _currentType, bool _deselect)
 Emitted by selection base plugin whenever the user performs a lasso selection. More...
 
virtual void volumeLassoSelection (QMouseEvent *_event, PrimitiveType _currentType, bool _deselect)
 Emitted by selection base plugin whenever the user performs a volume lasso selection. More...
 
virtual void surfaceLassoSelection (QMouseEvent *_event, PrimitiveType _currentType, bool _deselect)
 Emitted by selection base plugin whenever the user performs a surface lasso selection. More...
 
virtual void sphereSelection (QMouseEvent *_event, double _radius, PrimitiveType _currentType, bool _deselect)
 Emitted by selection base plugin whenever the user performs a sphere selection. More...
 
virtual void closestBoundarySelection (QMouseEvent *_event, PrimitiveType _currentType, bool _deselect)
 Emitted by selection base plugin whenever the user performs a closest boundary selection. More...
 
virtual void floodFillSelection (QMouseEvent *_event, PrimitiveType _currentType, bool _deselect)
 Emitted by selection base plugin whenever the user performs a flood fill selection. More...
 
virtual void componentsSelection (QMouseEvent *_event, PrimitiveType _currentType, bool _deselect)
 Emitted by selection base plugin whenever the user performs a connected components selection. More...
 
virtual void customSelection (QMouseEvent *_event, PrimitiveType _currentType, QString _customIdentifier, bool _deselect)
 Emitted by selection base plugin whenever the user performs a custom selection. More...
 
virtual void loadSelection (const INIFile &_file)
 Load selections from ini-file. More...
 
virtual void saveSelection (INIFile &_file)
 Save selections into ini-file. More...
 
virtual void keyShortcutEvent (int _key, Qt::KeyboardModifiers _modifiers=Qt::NoModifier)
 Key shortcut event happened. More...
 
- Private Member Functions inherited from LoadSaveInterface
virtual ~LoadSaveInterface ()
 Destructor. More...
 
virtual void addEmptyObject (DataType _type, int &_id)
 
virtual void copyObject (int _oldId, int &_newId)
 
virtual void emptyObjectAdded (int _id)
 DEPRECATED HERE (Moved to Type Interface)! Emit this signal if an empty object has been created. More...
 
virtual void deleteObject (int _id)
 Delete an object
This signal can be called from any thread.
. More...
 
virtual void deleteAllObjects ()
 Delete all Objects. More...
 
virtual void getAllFileFilters (QStringList &_filters)
 Get all file filters that are registered. More...
 
- Private Member Functions inherited from INIInterface
virtual ~INIInterface ()
 Destructor. More...
 
- Private Member Functions inherited from KeyInterface
virtual void slotKeyReleaseEvent (QKeyEvent *_event)
 Key Release Event from Main App. More...
 
virtual ~KeyInterface ()
 Destructor. More...
 
- Private Member Functions inherited from ScriptInterface
virtual ~ScriptInterface ()
 Destructor. More...
 
virtual void showScriptInEditor (QString _filename)
 
virtual void executeScript (QString _script)
 
virtual void getDescription (QString _function, QString &_description, QStringList &_parameters, QStringList &_descriptions)
 

Private Attributes

Member variables
QString environmentHandle_
 Handle to selection environment. More...
 
SelectionInterface::PrimitiveType vertexType_
 Primitive type handle. More...
 
SelectionInterface::PrimitiveType allSupportedTypes_
 Primitive type handle. More...
 
QPolygon lasso_2Dpoints_
 Used for lasso selection tool. More...
 
QVector< QPoint > volumeLassoPoints_
 Used for volume lasso tool. More...
 

Friends

class SelectVolumeAction
 

Additional Inherited Members

- Private Types inherited from SelectionInterface
typedef std::vector< DataTypeTypeList
 
typedef unsigned int PrimitiveType
 

Detailed Description

Definition at line 85 of file SplatCloudObjectSelectionPlugin.hh.

Constructor & Destructor Documentation

◆ SplatCloudObjectSelectionPlugin()

SplatCloudObjectSelectionPlugin::SplatCloudObjectSelectionPlugin ( )
inline

Default constructor.

Definition at line 101 of file SplatCloudObjectSelectionPlugin.hh.

Member Function Documentation

◆ clearVertexSelection

void SplatCloudObjectSelectionPlugin::clearVertexSelection ( int  _objectId)
slot

Unselect all vertices.

Definition at line 161 of file VertexSelection.cc.

◆ colorizeVertexSelection

void SplatCloudObjectSelectionPlugin::colorizeVertexSelection ( int  _objectId,
int  _r,
int  _g,
int  _b,
int  _a 
)
slot

Colorize the vertex selection.

Definition at line 254 of file VertexSelection.cc.

◆ deleteVertexSelection

void SplatCloudObjectSelectionPlugin::deleteVertexSelection ( int  _objectId)
slot

Delete vertices that are currently selected.

Definition at line 231 of file VertexSelection.cc.

◆ description()

QString SplatCloudObjectSelectionPlugin::description ( )
inlineoverridevirtual

Return a description of what the plugin is doing.

This function has to return a basic description of the plugin

Implements BaseInterface.

Definition at line 176 of file SplatCloudObjectSelectionPlugin.hh.

◆ getVertexSelection

IdList SplatCloudObjectSelectionPlugin::getVertexSelection ( int  _objectId)
slot

Return a list of all selected vertices.

Definition at line 207 of file VertexSelection.cc.

◆ initializePlugin

void SplatCloudObjectSelectionPlugin::initializePlugin ( )
overrideprivateslot

Definition at line 82 of file SplatCloudObjectSelectionPlugin.cc.

◆ invertVertexSelection

void SplatCloudObjectSelectionPlugin::invertVertexSelection ( int  _objectId)
slot

Invert the current vertex selection.

Definition at line 184 of file VertexSelection.cc.

◆ lassoSelect

void SplatCloudObjectSelectionPlugin::lassoSelect ( QRegion &  _region,
PrimitiveType  _primitiveType,
bool  _deselection 
)
slot

Lasso selection tool.

Definition at line 632 of file SplatCloudObjectSelectionPlugin.cc.

◆ loadIniFile

void SplatCloudObjectSelectionPlugin::loadIniFile ( INIFile _ini,
int  _objectId 
)
overrideprivateslot

Definition at line 428 of file SplatCloudObjectSelectionPlugin.cc.

◆ loadSelection

void SplatCloudObjectSelectionPlugin::loadSelection ( int  _objectId,
const QString &  _filename 
)
overrideslot

Definition at line 409 of file SplatCloudObjectSelectionPlugin.cc.

◆ name()

QString SplatCloudObjectSelectionPlugin::name ( )
inlineoverridevirtual

Return a name for the plugin.

This Function has to return the name of the plugin.

Implements BaseInterface.

Definition at line 175 of file SplatCloudObjectSelectionPlugin.hh.

◆ noguiSupported

void SplatCloudObjectSelectionPlugin::noguiSupported ( )
inlineoverrideprivateslot

Definition at line 157 of file SplatCloudObjectSelectionPlugin.hh.

◆ pluginsInitialized

void SplatCloudObjectSelectionPlugin::pluginsInitialized ( )
overrideprivateslot

Definition at line 92 of file SplatCloudObjectSelectionPlugin.cc.

◆ saveIniFile

void SplatCloudObjectSelectionPlugin::saveIniFile ( INIFile _ini,
int  _objectId 
)
overrideprivateslot

Definition at line 482 of file SplatCloudObjectSelectionPlugin.cc.

◆ selectAllVertices

void SplatCloudObjectSelectionPlugin::selectAllVertices ( int  _objectId)
slot

Select all vertices.

Definition at line 138 of file VertexSelection.cc.

◆ selectVertices

void SplatCloudObjectSelectionPlugin::selectVertices ( int  _objectId,
IdList  _vertexList 
)
slot

Select given vertices.

Definition at line 72 of file VertexSelection.cc.

◆ setColorForSelection()

void SplatCloudObjectSelectionPlugin::setColorForSelection ( const int  _objectId,
const PrimitiveType  _primitiveType 
)
private

Set color for selection.

Definition at line 254 of file SplatCloudObjectSelectionPlugin.cc.

◆ slotKeyShortcutEvent()

void SplatCloudObjectSelectionPlugin::slotKeyShortcutEvent ( int  _key,
Qt::KeyboardModifiers  _modifiers 
)
overrideprivatevirtual

One of the previously registered keys has been pressed.

This slot is called whenever the user has pressed one of the registered keys. Note that this is actually handled by the selection base plugin since the different plugins might want to register the same key multiple times.

Parameters
_keyThe pressed key
_modifiersIndicates whether mod-keys have been pressed synchronously

Reimplemented from SelectionInterface.

Definition at line 553 of file SplatCloudObjectSelectionPlugin.cc.

◆ slotLassoSelection()

void SplatCloudObjectSelectionPlugin::slotLassoSelection ( QMouseEvent *  _event,
SelectionInterface::PrimitiveType  _currentType,
bool  _deselect 
)
overrideprivatevirtual

Called whenever the user performs a lasso selection.

This has to be implemented by each type selection plugin if this interactive selection mode should be provided. The metaphor behind it is that the user draws a polygonal line and all primitives which are visible get selected.

Parameters
_eventThe mouse event that currently is performed
_currentTypeThe currently active primitive type
_deselectTrue if entities should be deselected

Reimplemented from SelectionInterface.

Definition at line 341 of file SplatCloudObjectSelectionPlugin.cc.

◆ slotLoadSelection()

void SplatCloudObjectSelectionPlugin::slotLoadSelection ( const INIFile _file)
overrideprivatevirtual

Load selection for specific objects in the scene.

OpenFlipper allows for saving of selections in an INI file (implemented by the different selection plugins by overriding function slotSaveSelection()). So this slot is called each time such INI file is about to be loaded.

Parameters
_fileThe file from which one can read the selection data

Reimplemented from SelectionInterface.

Definition at line 506 of file SplatCloudObjectSelectionPlugin.cc.

◆ slotSaveSelection()

void SplatCloudObjectSelectionPlugin::slotSaveSelection ( INIFile _file)
overrideprivatevirtual

Save selection for all objects in the scene.

Override this slot in order to save selections for a specific data type. These selections are then stored within an INI file and can be loaded via slotLoadSelection().

Parameters
_fileThe file into which one can store selection data

Reimplemented from SelectionInterface.

Definition at line 534 of file SplatCloudObjectSelectionPlugin.cc.

◆ slotSelectionOperation()

void SplatCloudObjectSelectionPlugin::slotSelectionOperation ( const QString  _operation)
overrideprivatevirtual

A specific operation is requested.

This slot is called each time the user has pressed one of the operations buttons (for the various primitive types) offered in the tool box.

Parameters
_operationThe identifier of the operation just as registered via addSelectionOperations

Reimplemented from SelectionInterface.

Definition at line 153 of file SplatCloudObjectSelectionPlugin.cc.

◆ slotSphereSelection()

void SplatCloudObjectSelectionPlugin::slotSphereSelection ( QMouseEvent *  _event,
double  _radius,
SelectionInterface::PrimitiveType  _currentType,
bool  _deselect 
)
overrideprivatevirtual

Called whenever the user performs a sphere selection.

This has to be implemented by each type selection plugin if this interactive selection mode should be provided. The metaphor behind it is that the user draws the selection with a sphere. All primitives inside the current sphere get selected.

Parameters
_eventThe mouse event that currently is performed
_radiusThe current radius of the selection sphere
_currentTypeThe currently active primitive type
_deselectTrue if entities should be deselected

Reimplemented from SelectionInterface.

Definition at line 310 of file SplatCloudObjectSelectionPlugin.cc.

◆ slotToggleSelection()

void SplatCloudObjectSelectionPlugin::slotToggleSelection ( QMouseEvent *  _event,
SelectionInterface::PrimitiveType  _currentType,
bool  _deselect 
)
overrideprivatevirtual

Called whenever the user performs a toggle selection.

This has to be implemented by each type selection plugin if this interactive selection mode should be provided.

Parameters
_eventThe mouse event that occurred
_currentTypeThe currently active primitive type
_deselectTrue if entities should be deselected

Reimplemented from SelectionInterface.

Definition at line 272 of file SplatCloudObjectSelectionPlugin.cc.

◆ slotVolumeLassoSelection()

void SplatCloudObjectSelectionPlugin::slotVolumeLassoSelection ( QMouseEvent *  _event,
SelectionInterface::PrimitiveType  _currentType,
bool  _deselect 
)
overrideprivatevirtual

Called whenever the user performs a volume lasso selection.

This has to be implemented by each type selection plugin if this interactive selection mode should be provided. The metaphor behind it is that the user draws a polygonal line and all primitives which are insinde the volume spanned by the eye position and the polygon get selected.

Parameters
_eventThe mouse event that currently is performed
_currentTypeThe currently active primitive type
_deselectTrue if entities should be deselected

Reimplemented from SelectionInterface.

Definition at line 373 of file SplatCloudObjectSelectionPlugin.cc.

◆ splatCloudColorizeSelection()

void SplatCloudObjectSelectionPlugin::splatCloudColorizeSelection ( SplatCloud _splatCloud,
PrimitiveType  _primitiveTypes,
int  _r,
int  _g,
int  _b,
int  _a 
)
private

Colorize the selection.

Colorize a selection.

Parameters
_splatClouda SplatCloud
_primitiveTypesselection types
_rred rgba color-component
_ggreen rgba color-component
_bblue rgba color-component
_ablue rgba color-component

Definition at line 272 of file SplatCloudObjectSelectionPlugin2.cc.

◆ splatCloudDeleteSelection()

bool SplatCloudObjectSelectionPlugin::splatCloudDeleteSelection ( SplatCloud _splatCloud,
PrimitiveType  _primitiveType 
)
private

Delete all selected elements of a SplatCloud.

Parameters
_splatClouda SplatCloud
_primitiveTypebitmask of active primitive types
Returns
returns true if the SplatCloud was changed (i.e there was something selected that was deleted)

Definition at line 74 of file SplatCloudObjectSelectionPlugin2.cc.

◆ splatCloudSphereSelection()

void SplatCloudObjectSelectionPlugin::splatCloudSphereSelection ( SplatCloud _splatCloud,
uint  _index,
const ACG::Vec3d _hit_point,
double  _radius,
PrimitiveType  _primitiveType,
bool  _deselection 
)
private

Use the event to paint selection with a sphere.

paint selection with a sphere

Parameters
_splatClouda SplatCloud
_indexindex of vertex that was picked
_hit_pointpoint that was picked
_radiusselection sphere radius
_primitiveTypeprimitive types to be selected
_deselectiontrue, if entities should be deselected

Definition at line 140 of file SplatCloudObjectSelectionPlugin2.cc.

◆ splatCloudToggleSelection()

void SplatCloudObjectSelectionPlugin::splatCloudToggleSelection ( SplatCloud _splatCloud,
uint  _index,
ACG::Vec3d _hit_point,
PrimitiveType  _primitiveType 
)
private

Toggle SplatCloud selection.

Toggle the selection state of SplatCloud primitives.

Parameters
_splatClouda SplatCloud
_indexindex of vertex that was picked
_hit_pointpoint that was picked
_primitiveTypeprimitive types to be selected

Definition at line 98 of file SplatCloudObjectSelectionPlugin2.cc.

◆ splatCloudVolumeSelection()

bool SplatCloudObjectSelectionPlugin::splatCloudVolumeSelection ( SplatCloud _splatCloud,
ACG::GLState _state,
QRegion *  _region,
PrimitiveType  _primitiveType,
bool  _deselection 
)
private

Surface volume selection tool.

Select all primitves that are projected to the given region.

Parameters
_splatClouda SplatCloud
_statecurrent gl state
_regionregion
_primitiveTypeprimitive types to be selected
_deselectiontrue, if entities should be deselected
Returns
true, if something was selected

Definition at line 203 of file SplatCloudObjectSelectionPlugin2.cc.

◆ unselectVertices

void SplatCloudObjectSelectionPlugin::unselectVertices ( int  _objectId,
IdList  _vertexList 
)
slot

Unselect given vertices.

Definition at line 105 of file VertexSelection.cc.

◆ updateSlotDescriptions()

void SplatCloudObjectSelectionPlugin::updateSlotDescriptions ( )
private

Set descriptions for local public slots.

Definition at line 137 of file SplatCloudObjectSelectionPlugin.cc.

◆ version

QString SplatCloudObjectSelectionPlugin::version ( )
inlineoverrideslot

Definition at line 202 of file SplatCloudObjectSelectionPlugin.hh.

◆ vertexTypeActive

bool SplatCloudObjectSelectionPlugin::vertexTypeActive ( )
inlineslot

Definition at line 205 of file SplatCloudObjectSelectionPlugin.hh.

Friends And Related Function Documentation

◆ SelectVolumeAction

friend class SelectVolumeAction
friend

Definition at line 103 of file SplatCloudObjectSelectionPlugin.hh.

Member Data Documentation

◆ allSupportedTypes_

SelectionInterface::PrimitiveType SplatCloudObjectSelectionPlugin::allSupportedTypes_
private

Primitive type handle.

Definition at line 261 of file SplatCloudObjectSelectionPlugin.hh.

◆ environmentHandle_

QString SplatCloudObjectSelectionPlugin::environmentHandle_
private

Handle to selection environment.

Definition at line 259 of file SplatCloudObjectSelectionPlugin.hh.

◆ lasso_2Dpoints_

QPolygon SplatCloudObjectSelectionPlugin::lasso_2Dpoints_
private

Used for lasso selection tool.

Definition at line 262 of file SplatCloudObjectSelectionPlugin.hh.

◆ vertexType_

SelectionInterface::PrimitiveType SplatCloudObjectSelectionPlugin::vertexType_
private

Primitive type handle.

Definition at line 260 of file SplatCloudObjectSelectionPlugin.hh.

◆ volumeLassoPoints_

QVector<QPoint> SplatCloudObjectSelectionPlugin::volumeLassoPoints_
private

Used for volume lasso tool.

Definition at line 263 of file SplatCloudObjectSelectionPlugin.hh.


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