/* This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #ifndef ParticlesH #define ParticlesH #define STATIC_THRESHOLD 0.17f // efine STATIC_THRESHOLD 0.03f const double m_Kd = 0.02f; // DAMPING FACTOR const double m_Kr = 0.8f; // 1.0 = SUPERBALL BOUNCE 0.0 = DEAD WEIGHT const double m_Ksh = 5.0f; // HOOK'S SPRING CONSTANT const double m_Ksd = 0.1f; // SPRING DAMPING CONSTANT const double m_Csf = 0.9f; // Default Static Friction const double m_Ckf = 0.7f; // Default Kinetic Friction #include "dumb3d.h" using namespace Math3D; class TSpring { public: TSpring(); ~TSpring(); // void Init(TParticnp1, TParticle *np2, double nKs= 0.5f, double nKd= 0.002f, // double nrestLen= -1.0f); void Init(double nrestLen, double nKs = 0.5f, double nKd = 0.002f); bool ComputateForces(vector3 pPosition1, vector3 pPosition2); void Render(); vector3 vForce1, vForce2; double restLen; // LENGTH OF SPRING AT REST double Ks; // SPRING CONSTANT double Kd; // SPRING DAMPING private: }; //--------------------------------------------------------------------------- #endif