AnimaL |
Tutorial |
Documentation |
00001 #ifndef animal_massSpringEngine_GUI_h_________________________ 00002 #define animal_massSpringEngine_GUI_h_________________________ 00003 00004 #include <animal/X3DTK/X3D/massSpringNode/massSpringNode.h> 00005 00006 #include "massspringenginedesigner.h" 00007 00008 namespace X3DTK 00009 { 00010 namespace Qt 00011 { 00012 00017 class MassSpringEngineQt: public MassSpringEngineDesigner 00018 { 00019 Q_OBJECT // must include this if you use Qt signals/slots 00020 00021 public: 00022 00024 MassSpringEngineQt( AMassSpringEngine * massSpring); 00025 00027 ~MassSpringEngineQt(); 00028 00030 //QWidget * createQWidget(X3DTK::X3D::X3DNode * node); 00031 00032 public slots: 00033 00035 void setIntegrationMethod( int methodID ); 00036 00038 void setMaxCGiterations( int maxvalue ); 00039 00041 void setImplicitEulerDampingRatio( float r ); 00042 00044 void setImplicitEulerDividerThreshold( float r ); 00045 00047 void setIsotropy( int isotropy ); 00048 00050 void setMmidSubsteps( int nb ); 00051 00053 void setExponentialDamping( float value ); 00054 00056 void toggleExponentialDamping( bool ); 00057 00059 void toggleGravity(bool); 00060 00062 void setXgravity( float ); 00064 void setYgravity( float ); 00066 void setZgravity( float ); 00067 00069 void setThresholdDistance(float value); 00070 00072 void setCompressed_ok(bool); 00073 00075 void setElongated_ok(bool); 00076 00078 void setDisplayMassSpring(bool); 00079 00081 void setPointWidth(int w); 00082 00084 void setLineWidth(int w); 00085 00086 void toggleDebugInfo(bool); 00087 00088 protected: 00089 AMassSpringEngine * _massSpringEngine; 00090 00091 signals: 00092 void changed(); 00093 }; 00094 00095 QWidget * createMassSpringNodeQWidget( X3D::MassSpringNode* node, QWidget * parent); 00096 00097 }//Qt 00098 }//X3DTK 00099 #endif