From b675971e1af6b336a06a5b86ea004f937737cda4 Mon Sep 17 00:00:00 2001 From: themarex <themarex@042f3d55-54a8-47e9-b7fb-15903f145c44> Date: Tue, 3 Jun 2014 09:52:59 +0000 Subject: [PATCH] Fix BulletGL git-svn-id: http://svn.code.sf.net/p/simox/code/trunk@604 042f3d55-54a8-47e9-b7fb-15903f145c44 --- .../BulletEngine/BulletOpenGLViewer.cpp | 31 ------------------- .../BulletEngine/BulletOpenGLViewer.h | 6 ---- .../BulletEngine/BulletRobot.cpp | 6 ---- .../BulletDebugViewerGlut.cpp | 8 +++-- 4 files changed, 5 insertions(+), 46 deletions(-) diff --git a/SimDynamics/DynamicsEngine/BulletEngine/BulletOpenGLViewer.cpp b/SimDynamics/DynamicsEngine/BulletEngine/BulletOpenGLViewer.cpp index c4cb3fa9e..8302203ba 100644 --- a/SimDynamics/DynamicsEngine/BulletEngine/BulletOpenGLViewer.cpp +++ b/SimDynamics/DynamicsEngine/BulletEngine/BulletOpenGLViewer.cpp @@ -27,37 +27,6 @@ BulletOpenGLViewer::BulletOpenGLViewer(DynamicsWorldPtr world) setCameraUp(up); clientResetScene(); - - // register callback - m_dynamicsWorld->setInternalTickCallback(motorPreTickCallback,this,true); -} - -void BulletOpenGLViewer::updateRobotConstraints() -{ - // does not work as expected.... - std::vector<DynamicsRobotPtr> robots = bulletEngine->getRobots(); - for (size_t i=0;i<robots.size();i++) - { - robots[i]->ensureKinematicConstraints(); - } -} - -void BulletOpenGLViewer::motorPreTickCallback (btDynamicsWorld *world, btScalar timeStep) -{ - BulletOpenGLViewer* glViewer = (BulletOpenGLViewer*)world->getWorldUserInfo(); - - glViewer->updateMotors(timeStep); - -} - -void BulletOpenGLViewer::updateMotors(float dt) -{ - std::vector<DynamicsRobotPtr> robots = bulletEngine->getRobots(); - for (size_t i=0;i<robots.size();i++) - { - robots[i]->actuateJoints(dt); - robots[i]->updateSensors(); - } } void BulletOpenGLViewer::clientMoveAndDisplay() diff --git a/SimDynamics/DynamicsEngine/BulletEngine/BulletOpenGLViewer.h b/SimDynamics/DynamicsEngine/BulletEngine/BulletOpenGLViewer.h index f720ecad7..89e37076e 100644 --- a/SimDynamics/DynamicsEngine/BulletEngine/BulletOpenGLViewer.h +++ b/SimDynamics/DynamicsEngine/BulletEngine/BulletOpenGLViewer.h @@ -64,12 +64,6 @@ public: virtual void enableContraintsDebugDrawing(); protected: - static void motorPreTickCallback (btDynamicsWorld *world, btScalar timeStep); - - /*! - Move all joints which are actuated by motors. - */ - void updateMotors(float dt); /*static DemoApplication* Create() { diff --git a/SimDynamics/DynamicsEngine/BulletEngine/BulletRobot.cpp b/SimDynamics/DynamicsEngine/BulletEngine/BulletRobot.cpp index c074cd22a..fba48342c 100644 --- a/SimDynamics/DynamicsEngine/BulletEngine/BulletRobot.cpp +++ b/SimDynamics/DynamicsEngine/BulletEngine/BulletRobot.cpp @@ -954,12 +954,6 @@ void BulletRobot::actuateJoints(btScalar dt) continue; } - if (it->second.node->getName() == "LeftLeg_Joint3") - { - std::cout << "Mode: " << (int) actuation.mode << " : " << posTarget << " " << posActual << std::endl; - controller.debug(); - } - if (actuation.modes.position && actuation.modes.velocity) { hinge->enableAngularMotor(true, diff --git a/SimDynamics/examples/BulletDebugViewer/BulletDebugViewerGlut.cpp b/SimDynamics/examples/BulletDebugViewer/BulletDebugViewerGlut.cpp index 6fe778bc4..febf13c2f 100644 --- a/SimDynamics/examples/BulletDebugViewer/BulletDebugViewerGlut.cpp +++ b/SimDynamics/examples/BulletDebugViewer/BulletDebugViewerGlut.cpp @@ -178,10 +178,12 @@ int main(int argc,char* argv[]) { Eigen::Matrix4f gp = Eigen::Matrix4f::Identity(); //gp(2,3) = 35.0f; - gp(2,3) = 800.0f; - robot->setGlobalPose(gp); + //gp(2,3) = 800.0f; + //robot->setGlobalPose(gp); DynamicsRobotPtr dynRob = world->CreateDynamicsRobot(robot); - dynRob->disableActuation(); + ActuationMode mode; + mode.modes.position = 1; + dynRob->enableActuation(mode); world->addRobot(dynRob); } BulletOpenGLViewer viewer(world); -- GitLab