fixed bug not enabling bodies when adding forces or torques in OdeWorld
git-svn-id: svn://anubis/misc/OdeWorld@219 bd8a9e45-a331-0410-811e-c64571078777
This commit is contained in:
1 parent
922046dbf3
commit
54c963fa3b
2 files changed
+20
No files matched your search
+19
@@ -500,25 +500,37 @@ void OdeWorld::Object::setRotation(dReal x, dReal y, dReal z)
|
|||||||
void OdeWorld::Object::addForce(dReal fx, dReal fy, dReal fz)
|
void OdeWorld::Object::addForce(dReal fx, dReal fy, dReal fz)
|
||||||
{
|
{
|
||||||
if (m_body != 0)
|
if (m_body != 0)
|
||||||
|
{
|
||||||
dBodyAddForce(m_body, fx, fy, fz);
|
dBodyAddForce(m_body, fx, fy, fz);
|
||||||
|
enableBody();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void OdeWorld::Object::addForceRel(dReal fx, dReal fy, dReal fz)
|
void OdeWorld::Object::addForceRel(dReal fx, dReal fy, dReal fz)
|
||||||
{
|
{
|
||||||
if (m_body != 0)
|
if (m_body != 0)
|
||||||
|
{
|
||||||
dBodyAddRelForce(m_body, fx, fy, fz);
|
dBodyAddRelForce(m_body, fx, fy, fz);
|
||||||
|
enableBody();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void OdeWorld::Object::addTorque(dReal fx, dReal fy, dReal fz)
|
void OdeWorld::Object::addTorque(dReal fx, dReal fy, dReal fz)
|
||||||
{
|
{
|
||||||
if (m_body != 0)
|
if (m_body != 0)
|
||||||
|
{
|
||||||
dBodyAddTorque(m_body, fx, fy, fz);
|
dBodyAddTorque(m_body, fx, fy, fz);
|
||||||
|
enableBody();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void OdeWorld::Object::addTorqueRel(dReal fx, dReal fy, dReal fz)
|
void OdeWorld::Object::addTorqueRel(dReal fx, dReal fy, dReal fz)
|
||||||
{
|
{
|
||||||
if (m_body != 0)
|
if (m_body != 0)
|
||||||
|
{
|
||||||
dBodyAddRelTorque(m_body, fx, fy, fz);
|
dBodyAddRelTorque(m_body, fx, fy, fz);
|
||||||
|
enableBody();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void OdeWorld::Object::finalize()
|
void OdeWorld::Object::finalize()
|
||||||
@@ -545,3 +557,10 @@ void OdeWorld::Object::setMass(dReal newmass)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void OdeWorld::Object::enableBody()
|
||||||
|
{
|
||||||
|
if (m_body != 0)
|
||||||
|
{
|
||||||
|
dBodyEnable(m_body);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -42,6 +42,7 @@ class OdeWorld
|
|||||||
void finalize();
|
void finalize();
|
||||||
dReal getMass() { return m_mass.mass; }
|
dReal getMass() { return m_mass.mass; }
|
||||||
void setMass(dReal newmass);
|
void setMass(dReal newmass);
|
||||||
|
void enableBody();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
bool m_is_static;
|
bool m_is_static;
|
||||||
|
|||||||
Reference in new issue
Block a user