change default damping model for mass spring to the angular momentum conserving one
This commit is contained in:
@@ -425,12 +425,12 @@ public:
|
|||||||
|
|
||||||
m_robotSim.setGravity(btVector3(0, 0, -10));
|
m_robotSim.setGravity(btVector3(0, 0, -10));
|
||||||
b3RobotSimulatorLoadDeformableBodyArgs args(2, .01, 0.006);
|
b3RobotSimulatorLoadDeformableBodyArgs args(2, .01, 0.006);
|
||||||
args.m_springElasticStiffness = .1;
|
args.m_springElasticStiffness = 1;
|
||||||
args.m_springDampingStiffness = .0004;
|
args.m_springDampingStiffness = .01;
|
||||||
args.m_springBendingStiffness = 1;
|
args.m_springBendingStiffness = .1;
|
||||||
args.m_frictionCoeff = 1;
|
args.m_frictionCoeff = 10;
|
||||||
args.m_useSelfCollision = false;
|
args.m_useSelfCollision = false;
|
||||||
// args.m_useFaceContact = true;
|
args.m_useFaceContact = true;
|
||||||
args.m_useBendingSprings = true;
|
args.m_useBendingSprings = true;
|
||||||
args.m_startPosition.setValue(0, 0, 0);
|
args.m_startPosition.setValue(0, 0, 0);
|
||||||
args.m_startOrientation.setValue(0, 0, 1, 1);
|
args.m_startOrientation.setValue(0, 0, 1, 1);
|
||||||
@@ -476,7 +476,7 @@ public:
|
|||||||
revoluteJoint2.m_jointType = ePoint2PointType;
|
revoluteJoint2.m_jointType = ePoint2PointType;
|
||||||
m_robotSim.createConstraint(0, 2, 0, 4, &revoluteJoint1);
|
m_robotSim.createConstraint(0, 2, 0, 4, &revoluteJoint1);
|
||||||
m_robotSim.createConstraint(0, 3, 0, 6, &revoluteJoint2);
|
m_robotSim.createConstraint(0, 3, 0, 6, &revoluteJoint2);
|
||||||
m_robotSim.setNumSimulationSubSteps(8);
|
m_robotSim.setNumSimulationSubSteps(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((m_options & eSOFTBODY_MULTIBODY_COUPLING) != 0)
|
if ((m_options & eSOFTBODY_MULTIBODY_COUPLING) != 0)
|
||||||
|
|||||||
@@ -8148,7 +8148,7 @@ bool PhysicsServerCommandProcessor::processLoadSoftBodyCommand(const struct Shar
|
|||||||
{
|
{
|
||||||
spring_bending_stiffness = clientCmd.m_loadSoftBodyArguments.m_springBendingStiffness;
|
spring_bending_stiffness = clientCmd.m_loadSoftBodyArguments.m_springBendingStiffness;
|
||||||
}
|
}
|
||||||
btDeformableLagrangianForce* springForce = new btDeformableMassSpringForce(spring_elastic_stiffness, spring_damping_stiffness, false, spring_bending_stiffness);
|
btDeformableLagrangianForce* springForce = new btDeformableMassSpringForce(spring_elastic_stiffness, spring_damping_stiffness, true, spring_bending_stiffness);
|
||||||
deformWorld->addForce(psb, springForce);
|
deformWorld->addForce(psb, springForce);
|
||||||
m_data->m_lf.push_back(springForce);
|
m_data->m_lf.push_back(springForce);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user