Developer Documentation
|
Public Member Functions | |
OVMPropertyModel (MeshT *mesh, int objectID, QObject *parent=0) | |
virtual void | updateWidget (const QModelIndexList &selectedIndices) |
Updates the widget. More... | |
void | resetPicking () |
Disables picking. More... | |
virtual void | pickProperty () |
Toggle picking on and off. More... | |
virtual void | pickModeChanged (const std::string &_mode) |
Handles changing of pick mode. More... | |
virtual void | mouseEvent (QMouseEvent *_event) |
Handles mouse events for picking. More... | |
virtual bool | parseHeader (QString header, PropertyVisualizer *&propVis, unsigned int &n) |
Parses the property file header. More... | |
![]() | |
OVMPropertyModelSubclass (QObject *parent=0) | |
![]() | |
virtual void | pickModeChanged (const std::string &_mode) override |
virtual void | mouseEvent (QMouseEvent *_event) override |
SingleObjectPropertyModel (QObject *parent=0) | |
virtual int | rowCount (const QModelIndex &parent=QModelIndex()) const override |
virtual QVariant | data (const QModelIndex &index, int role=Qt::DisplayRole) const override |
virtual QVariant | headerData (int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override |
virtual QModelIndex | index (int row, int column, QModelIndex const &parent=QModelIndex()) const override |
virtual void | objectUpdated () override |
Revisualizes visualized properties. More... | |
virtual void | visualize (QModelIndexList selectedIndices, QWidgetList widgets=QWidgetList()) override |
Visualizes the selected properties. More... | |
virtual void | removeProperty (QModelIndexList selectedIndices) override |
Removes the selected properties. More... | |
virtual void | duplicateProperty (QModelIndexList selectedIndices) override |
Duplicates the selected properties. More... | |
virtual void | gatherProperties () override |
Searches for properties and creates PropertyVisualizers. More... | |
virtual void | clear (QModelIndexList selectedIndices) override |
Clears the selected property visualization. More... | |
void | hideWidget () override |
Hides the widget. More... | |
QWidget * | getWidget () override |
Returns the widget. More... | |
virtual void | updateWidget (const QModelIndexList &selectedIndices) override |
Updates the widget. More... | |
void | connectLogs (PropertyVisualizer *propViz) override |
Connects the PropertyVisualizer log signals with the log slot. More... | |
virtual PropertyInfo | getPropertyInfo (const QModelIndex index) const override |
Returns the property info for the property with the given index. More... | |
virtual QScriptValue | getScriptObject (const QModelIndex index, QScriptContext *ctx) |
Returns a qscript object that can be used to access visualisation parameters. More... | |
![]() | |
virtual void | pickModeChanged (const std::string &_mode) |
virtual void | mouseEvent (QMouseEvent *_event) |
PropertyModel (QObject *parent=0) | |
virtual int | rowCount (const QModelIndex &parent=QModelIndex()) const =0 |
virtual QVariant | data (const QModelIndex &index, int role=Qt::DisplayRole) const =0 |
virtual QVariant | headerData (int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const =0 |
virtual QModelIndex | index (int row, int column, QModelIndex const &parent=QModelIndex()) const =0 |
virtual void | objectUpdated ()=0 |
Revisualizes visualized properties. More... | |
virtual void | visualize (QModelIndexList selectedIndices, QWidgetList widgets=QWidgetList())=0 |
Visualizes the selected properties. More... | |
virtual void | removeProperty (QModelIndexList selectedIndices)=0 |
Removes the selected properties. More... | |
virtual void | duplicateProperty (QModelIndexList selectedIndices)=0 |
Duplicates the selected properties. More... | |
virtual void | gatherProperties ()=0 |
Searches for properties and creates PropertyVisualizers. More... | |
virtual void | clear (QModelIndexList selectedIndices)=0 |
Clears the selected property visualization. More... | |
virtual void | hideWidget ()=0 |
Hides the widget. More... | |
virtual QWidget * | getWidget ()=0 |
Returns the widget. More... | |
virtual void | updateWidget (const QModelIndexList &selectedIndices)=0 |
Updates the widget. More... | |
virtual void | connectLogs (PropertyVisualizer *propViz)=0 |
Connects the PropertyVisualizer log signals with the log slot. More... | |
virtual PropertyInfo | getPropertyInfo (const QModelIndex index) const =0 |
Returns the property info for the property with the given index. More... | |
QModelIndex | indexFromFancyPropName (const QString &propName) const |
Returns the index of the property with the given name. More... | |
QModelIndex | indexFromPlainPropName (const QString &propName) const |
Returns the index of the property with the given name. More... | |
Static Public Member Functions | |
static bool | isBoolType (const PropertyInfo &propInfo) |
static bool | isBoolType (const TypeInfoWrapper &typeInfo) |
static bool | isIntType (const PropertyInfo &propInfo) |
static bool | isIntType (const TypeInfoWrapper &typeInfo) |
static bool | isDoubleType (const PropertyInfo &propInfo) |
static bool | isDoubleType (const TypeInfoWrapper &typeInfo) |
static bool | isUnsignedIntType (const PropertyInfo &propInfo) |
static bool | isUnsignedIntType (const TypeInfoWrapper &typeInfo) |
static bool | isVec3dType (const PropertyInfo &propInfo) |
static bool | isVec3dType (const TypeInfoWrapper &typeInfo) |
static bool | isVec3dOVMType (const PropertyInfo &propInfo) |
static bool | isVec3dOVMType (const TypeInfoWrapper &typeInfo) |
static bool | isVec3fType (const PropertyInfo &propInfo) |
static bool | isVec3fType (const TypeInfoWrapper &typeInfo) |
static bool | isVectorType (const PropertyInfo &propInfo) |
static bool | isVectorType (const TypeInfoWrapper &typeInfo) |
static bool | isVectorOVMType (const PropertyInfo &propInfo) |
static bool | isVectorOVMType (const TypeInfoWrapper &typeInfo) |
static bool | isMatrix3x3Type (const PropertyInfo &propInfo) |
static bool | isMatrix3x3Type (const TypeInfoWrapper &typeInfo) |
Protected Member Functions | |
virtual QString | getLoadFilenameFilter () |
Returns the filename filter for loading. More... | |
virtual QString | getSaveFilenameFilter (unsigned int propId) |
Returns the filename filter for saving. More... | |
![]() | |
PropertyVisualizer * | getPropertyVisualizer (QString propName, PropertyInfo::ENTITY_FILTER filter, TypeInfoWrapper typeInfo) |
Returns a PropertyVisualizer. More... | |
bool | isPropertyFree (QString propName, PropertyInfo::ENTITY_FILTER filter, TypeInfoWrapper typeInfo) |
Checks if the property name is still available. More... | |
QString | getLoadFilename () |
Asks the user for a file to load. More... | |
virtual QString | getLoadFilenameFilter () |
Returns the filename filter for loading. More... | |
QString | getSaveFilename (unsigned int propId) |
Asks the user for a file to load. More... | |
virtual QString | getSaveFilenameFilter (unsigned int propId) |
Returns the filename filter for saving. More... | |
virtual QString | getDefaultSaveFilename (unsigned int propId) |
Returns the default file name. More... | |
void | saveProperty (unsigned int propId) |
Saves property. More... | |
void | loadProperty () |
Loads property. More... | |
virtual void | setPropertyFromFile (QTextStream &file_stream, unsigned int n, PropertyVisualizer *propVis) |
Sets the property values from a given file. More... | |
virtual bool | parseHeader (QString header, PropertyVisualizer *&propVis, unsigned int &n) |
Parses the property file header. More... | |
Private Types | |
typedef std::set< TypeInfoWrapper > | TypeInfoWrapperSet |
Private Member Functions | |
virtual void | combine () |
Combines two properties. More... | |
bool | combinable (PropertyVisualizer *propertyVisualizer1, PropertyVisualizer *propertyVisualizer2) const |
Checks if two properties are combinable. More... | |
virtual void | saveProperty () |
Saves the currently slected properties. More... | |
template<typename PropIter > | |
void | gatherProperties (MeshT *mesh, PropIter props_first, PropIter props_last, PropertyInfo::ENTITY_FILTER filter) |
Searches for properties with a specific entity type and creates visualizers. More... | |
void | gatherProperties () |
Searches for all properties and creates the visualizers. More... | |
bool | isSupported (OpenVolumeMesh::BasePropertyPtr *const baseProp) const |
Checks if visualizing this property is supported. More... | |
bool | isSupported (QString friendlyName) const |
Checks if visualizing this type of property is supported. More... | |
bool | isNew (OpenVolumeMesh::BasePropertyPtr *const baseProp, PropertyInfo::ENTITY_FILTER filter) const |
Checks if we already created a PropertyVisualizer for this property. More... | |
bool | isPropertyFree (QString propName, PropertyInfo::ENTITY_FILTER filter, TypeInfoWrapper typeInfo) |
Checks if a property name is still available for an entity type and a property type. More... | |
TypeInfoWrapper | getSupportedTypeInfoWrapper (OpenVolumeMesh::BasePropertyPtr *const baseProp) const |
Returns the TypeInfoWrapper for the property if it is supported. More... | |
TypeInfoWrapper | getSupportedTypeInfoWrapper (QString friendlyName, PropertyInfo::ENTITY_FILTER filter) const |
Returns the TypeInfoWrapper for the type of property if it is supported. More... | |
bool | isEntityType (const TypeInfoWrapper &typeInfo, PropertyInfo::ENTITY_FILTER entity_type) const |
void | addPropertyVisualizer (OpenVolumeMesh::BasePropertyPtr *const baseProp, MeshT *mesh, PropertyInfo::ENTITY_FILTER filter) |
Adds a new PropertyVisualizer. More... | |
void | addProperty (QString propName, QString friendlyTypeName, PropertyInfo::ENTITY_FILTER filter) |
Adds a new property to the mesh. More... | |
void | initializeSupportedPropertyTypes () |
Private Attributes | |
MeshT * | mesh_ |
int | objectID_ |
QPushButton | bCombine |
const PropertyInfo * | mCombineProperty1 |
const PropertyInfo * | mCombineProperty2 |
LoadSaveWidget | mLoadSaveWidget |
PickWidget | mPickWidget |
bool | pickModeActive |
std::string | lastPickMode |
Viewer::ActionMode | lastActionMode |
TypeInfoWrapperSet | supportedPropertyTypes |
Additional Inherited Members | |
![]() | |
virtual void | slotCombine () |
virtual void | slotSaveProperty () |
virtual void | slotLoadProperty () |
virtual void | slotPickProperty () |
![]() | |
void | log (Logtype _type, QString _message) |
void | log (QString _message) |
![]() | |
std::vector< PropertyVisualizer * > | propertyVisualizers |
QWidget * | widgets |
QModelIndexList | currentlySelectedIndices |
std::vector< unsigned int > | currentlyVisualizedIndices |
Definition at line 73 of file OVMPropertyModelT.hh.
|
private |
Definition at line 202 of file OVMPropertyModelT.hh.
OVMPropertyModel< MeshT >::OVMPropertyModel | ( | MeshT * | mesh, |
int | objectID, | ||
QObject * | parent = 0 |
||
) |
Definition at line 47 of file OVMPropertyModelT_impl.hh.
|
inlinevirtual |
Definition at line 77 of file OVMPropertyModelT.hh.
|
private |
Adds a new property to the mesh.
propName | The name of the property that should be added. |
friendlyTypeName | The type of the property. |
filter | The entity type of the property. |
This method adds a new property to the mesh. The types "Vec3d", "Vec3d", "double", "unsigned int", "int" and "bool" can be added for every entity type.
Definition at line 811 of file OVMPropertyModelT_impl.hh.
|
private |
Adds a new PropertyVisualizer.
baseProp | A pointer to the property that should be visualized. |
mesh | A pointer to the mesh whose properties should be visualized. |
filter | The entity type that should be visualized. |
This method creates a new PropertyVisualizer depending on the provieded parameters and adds it to the list of PropertyVisualizers.
Definition at line 780 of file OVMPropertyModelT_impl.hh.
|
private |
Checks if two properties are combinable.
propertyVisualizer1 | First PropertyVisualizer for combination. |
propertyVisualizer2 | Second PropertyVisualizer for combination. |
If the user selects two properties which are both of a vector type (Vec3f or Vec3d) they can be combined. This method will check if the two provided PropertyVisualizers can be comined. Currently PropertyVisualizers can only be combined if both visualize a property with a vector type and the same entity type.
Definition at line 398 of file OVMPropertyModelT_impl.hh.
|
privatevirtual |
Combines two properties.
If the user selects two properties which are both of a vector type (Vec3f or Vec3d) they can be combined. This method will create a new PropertyVisualizer (an OVMPropertyVisualizerVectorFieldDifference<MeshT> to be exact) but not an additional property.
Reimplemented from OVMPropertyModelSubclass.
Definition at line 368 of file OVMPropertyModelT_impl.hh.
|
privatevirtual |
Searches for all properties and creates the visualizers.
Reimplemented from SingleObjectPropertyModel.
Definition at line 424 of file OVMPropertyModelT_impl.hh.
|
private |
Searches for properties with a specific entity type and creates visualizers.
Definition at line 410 of file OVMPropertyModelT_impl.hh.
|
protectedvirtual |
Returns the filename filter for loading.
Reimplemented from SingleObjectPropertyModel.
Definition at line 309 of file OVMPropertyModelT_impl.hh.
|
protectedvirtual |
Returns the filename filter for saving.
Reimplemented from SingleObjectPropertyModel.
Definition at line 323 of file OVMPropertyModelT_impl.hh.
|
private |
Returns the TypeInfoWrapper for the property if it is supported.
baseProp | A pointer to the property. |
Definition at line 506 of file OVMPropertyModelT_impl.hh.
|
private |
Returns the TypeInfoWrapper for the type of property if it is supported.
Returns the TypeInfoWrapper for the type of property and entity if it is supported.
friendlyName | The type we want to visualize in text form. |
filter | The type of the entity |
Definition at line 528 of file OVMPropertyModelT_impl.hh.
|
private |
Definition at line 991 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 542 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 548 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 576 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 582 of file OVMPropertyModelT_impl.hh.
|
private |
Definition at line 702 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 559 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 565 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 685 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 691 of file OVMPropertyModelT_impl.hh.
|
private |
Checks if we already created a PropertyVisualizer for this property.
baseProp | A pointer to the property. |
filter | The entity type. |
Definition at line 486 of file OVMPropertyModelT_impl.hh.
|
private |
Checks if a property name is still available for an entity type and a property type.
propName | The name of the property. |
filter | The entity type of the property. |
typeInfo | The type of the property. |
Definition at line 354 of file OVMPropertyModelT_impl.hh.
|
private |
Checks if visualizing this property is supported.
baseProp | A pointer to the property that we want to visualize. |
Definition at line 447 of file OVMPropertyModelT_impl.hh.
|
private |
Checks if visualizing this type of property is supported.
Checks if visualizing this property is supported.
friendlyName | The type we want to visualize in text form. |
Currently supported are the types "bool", "int", "unsigned int", "double", "Vec3d" "Vec3dOVM" and "Vec3f"
Definition at line 465 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 593 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 599 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 627 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 633 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 610 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 616 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 644 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 650 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 673 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 679 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 661 of file OVMPropertyModelT_impl.hh.
|
static |
Definition at line 667 of file OVMPropertyModelT_impl.hh.
|
virtual |
Handles mouse events for picking.
If picking mode is active this method will find the picked entity and display its handle and value in the PickWidget.
Reimplemented from SingleObjectPropertyModel.
Definition at line 167 of file OVMPropertyModelT_impl.hh.
|
virtual |
Parses the property file header.
header | The header. | |
[out] | propVis | The PropertyVisualizer that will visualize the new property. |
[out] | n | The number of values stored in the file |
When loading a property from a file this method parses the header placed in the file's first line. If parsing was successfull a new property and a PropertyVisualizer will be created.
Reimplemented from SingleObjectPropertyModel.
Definition at line 213 of file OVMPropertyModelT_impl.hh.
|
virtual |
Handles changing of pick mode.
Reimplemented from SingleObjectPropertyModel.
Definition at line 148 of file OVMPropertyModelT_impl.hh.
|
virtual |
Toggle picking on and off.
This method will start and stop the picking.
Reimplemented from OVMPropertyModelSubclass.
Definition at line 132 of file OVMPropertyModelT_impl.hh.
void OVMPropertyModel< MeshT >::resetPicking |
Disables picking.
Definition at line 119 of file OVMPropertyModelT_impl.hh.
|
privatevirtual |
Saves the currently slected properties.
Reimplemented from OVMPropertyModelSubclass.
Definition at line 376 of file OVMPropertyModelT_impl.hh.
|
virtual |
Updates the widget.
Reimplemented from SingleObjectPropertyModel.
Definition at line 85 of file OVMPropertyModelT_impl.hh.
|
private |
Definition at line 190 of file OVMPropertyModelT.hh.
|
private |
Definition at line 200 of file OVMPropertyModelT.hh.
|
private |
Definition at line 199 of file OVMPropertyModelT.hh.
|
private |
Definition at line 191 of file OVMPropertyModelT.hh.
|
private |
Definition at line 192 of file OVMPropertyModelT.hh.
|
private |
Definition at line 186 of file OVMPropertyModelT.hh.
|
private |
Definition at line 194 of file OVMPropertyModelT.hh.
|
private |
Definition at line 196 of file OVMPropertyModelT.hh.
|
private |
Definition at line 188 of file OVMPropertyModelT.hh.
|
private |
Definition at line 198 of file OVMPropertyModelT.hh.
|
private |
Definition at line 203 of file OVMPropertyModelT.hh.