47#ifndef MESHCOMPAREPLUGIN_HH
48#define MESHCOMPAREPLUGIN_HH
55#include <OpenFlipper/BasePlugin/TextureInterface.hh>
60#include <ACG/Scenegraph/PointNode.hh>
62#include "MeshCompareToolbarWidget.hh"
64#include "QChartsPlot.hh"
78 Q_PLUGIN_METADATA(IID
"org.OpenFlipper.Plugins.Plugin-MeshCompare")
83 void updatedObject(
int _id,
const UpdateType& _type);
84 void setSlotDescription(QString _slotName, QString _slotDescription,
85 QStringList _parameters, QStringList _descriptions);
88 void log(
Logtype _type, QString _message);
89 void log(QString _message);
92 void addToolbox( QString _name , QWidget* _widget ,QIcon* _icon);
98 void pluginExists( QString _pluginName ,
bool& _exists );
106 QString
name() {
return (QString(
"MeshCompare")); };
107 QString
description( ) {
return (QString(
"Compare two meshes")); };
108 bool eventFilter(QObject *obj, QEvent *event)
override;
112 void initializePlugin();
113 void pluginsInitialized();
124 void noguiSupported( ) {} ;
129 QString version() {
return QString(
"1.0"); };
143 void compare(
int _sourceId,
int _targetId,
144 bool _computeDist =
true,
145 bool _computeNormal =
true,
146 bool _computeGauss =
true,
147 bool _computeMean =
true,
148 bool _selection_ =
false);
Logtype
Log types for Message Window.
Interface class for backup handling.
Interface class from which all plugins have to be created.
Interface for all Plugins which do logging to the logging window of the framework.
QString name()
Return a name for the plugin.
void slotObjectUpdated(int _identifier, const UpdateType &_type)
Called when an object gets updated.
MeshCompareToolbarWidget * tool_
The toolbar widget of this plugin.
void compare(int _sourceId, int _targetId, bool _computeDist=true, bool _computeNormal=true, bool _computeGauss=true, bool _computeMean=true, bool _selection_=false)
QString description()
Return a description of what the plugin is doing.
double maxGaussCurvatureDev_
Last maximal gauss curvature deviation.
void slotClear()
Clears the visualization.
double lastMaximalDistance()
Get the maximal distance of the last comparison (-1, if no comparison performed so far)
void compareButton()
Triggers comparison of the selected meshes.
double lastMaximalGaussCurvatureDeviation()
Get the maximal gauss curvature deviation of the last comparison (-1, if no comparison performed so f...
double maxMeanCurvatureDev_
Last maximal mean curvature deviation.
void visualizeData(const std::vector< double > &_data, double _maxValue, ACG::SceneGraph::PointNode *_pnode)
Visualize data.
QIcon * toolIcon_
Icon for the toolbar.
double maximalDistance_
Last maximal computed distance.
double maxNormalDeviation_
Last maximal computed normal deviation in degree.
double lastMaximalMeanCurvatureDeviation()
Get the maximal mean curvature deviation of the last comparison (-1, if no comparison performed so fa...
double lastMaximalNormalDeviation()
Get the maximal normal deviation of the last comparison in degree (-1, if no comparison performed so ...
void slotClampBox(bool _checked)
If the checkbox is changed to be checked, the values in the labels will be written into the spin boxe...
Interface class for exporting functions to python.
Interface to call functions across plugins.
Interface for all Plugins which provide scriptable Functions.
Provide texture support for a plugin.
const UpdateType UPDATE_ALL(UpdateTypeSet(1))
Identifier for all updates.