IsotropicRemesherPlugin.hh 1.93 KB
Newer Older
Jan Möbius's avatar
 
Jan Möbius committed
1
2
3
4
5
6
7
8
9
10
11
12

#ifndef ISOTROPICREMESHERPLUGIN_HH
#define ISOTROPICREMESHERPLUGIN_HH

#include <QtGui>

#include <OpenFlipper/BasePlugin/BaseInterface.hh>
#include <OpenFlipper/BasePlugin/ToolboxInterface.hh>
#include <OpenFlipper/BasePlugin/LoggingInterface.hh>
#include <OpenFlipper/BasePlugin/RPCInterface.hh>
#include <OpenFlipper/common/Types.hh>
#include <ObjectTypes/TriangleMesh/TriangleMesh.hh>
Jan Möbius's avatar
Jan Möbius committed
13
#include <ObjectTypes/PolyMesh/PolyMesh.hh>
Jan Möbius's avatar
 
Jan Möbius committed
14
15
16
17
18
19
20
21
22
23
24
25

#include "IsotropicRemesherToolbox.hh"


class IsotropicRemesherPlugin : public QObject, BaseInterface, ToolboxInterface, LoggingInterface, RPCInterface
{
Q_OBJECT
Q_INTERFACES(BaseInterface)
Q_INTERFACES(ToolboxInterface)
Q_INTERFACES(LoggingInterface)
Q_INTERFACES(RPCInterface)

Jan Möbius's avatar
Jan Möbius committed
26

Jan Möbius's avatar
 
Jan Möbius committed
27
signals:
Jan Möbius's avatar
Jan Möbius committed
28
29
  
  //BaseInterface
Jan Möbius's avatar
 
Jan Möbius committed
30
31
32
33
34
35
  void updateView();
  void updatedObject(int);

  void setSlotDescription(QString     _slotName,   QString     _slotDescription,
                          QStringList _parameters, QStringList _descriptions);

Jan Möbius's avatar
Jan Möbius committed
36
  //LoggingInterface:
Jan Möbius's avatar
 
Jan Möbius committed
37
38
39
  void log( Logtype _type, QString _message );
  void log( QString _message );

Jan Möbius's avatar
Jan Möbius committed
40
  // RPC Interface
Jan Möbius's avatar
 
Jan Möbius committed
41
42
  void pluginExists( QString _pluginName , bool& _exists  ) ;
  void functionExists( QString _pluginName , QString _functionName , bool& _exists  );
Jan Möbius's avatar
Jan Möbius committed
43
44
45
  
  // ToolboxInterface
  void addToolbox( QString _name  , QWidget* _widget );   
Jan Möbius's avatar
 
Jan Möbius committed
46
47
48

private slots:

Jan Möbius's avatar
Jan Möbius committed
49
50
  // BaseInterface
  void initializePlugin();  
Jan Möbius's avatar
 
Jan Möbius committed
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
  void pluginsInitialized(); // BaseInterface

public :

  ~IsotropicRemesherPlugin() {};

  QString name() { return (QString("IsotropicRemesher")); };
  QString description( ) { return (QString("an isotropic remesher")); };

//GUI
private :
  IsotropicRemesherToolBox* tool_;

private slots:
  void slotRemesh();

  void slotSetMinLength();
  void slotSetMaxLength();
  void slotSetMeanLength();

//scripting functions
public slots:
  void isotropicRemesh(int _objectID, double _targetEdgeLength );


public slots:
  QString version() { return QString("1.0"); };
};

#endif //ISOTROPICREMESHERPLUGIN_HH