|
From: <hsu...@us...> - 2008-11-07 20:05:21
|
Revision: 6391
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=6391&view=rev
Author: hsujohnhsu
Date: 2008-11-07 20:05:16 +0000 (Fri, 07 Nov 2008)
Log Message:
-----------
ability to tune quick step in xml.
Modified Paths:
--------------
pkg/trunk/3rdparty/gazebo/gazebo_patch.diff
pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_arm_test_headless.world
pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_headless.world
pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_prototype1_headless.world
pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_wg_headless.world
Modified: pkg/trunk/3rdparty/gazebo/gazebo_patch.diff
===================================================================
--- pkg/trunk/3rdparty/gazebo/gazebo_patch.diff 2008-11-07 19:50:50 UTC (rev 6390)
+++ pkg/trunk/3rdparty/gazebo/gazebo_patch.diff 2008-11-07 20:05:16 UTC (rev 6391)
@@ -194,30 +194,6 @@
/// Pointer to the stereo data
public: StereoCameraData *data;
};
-Index: server/physics/MapGeom.cc
-===================================================================
---- server/physics/MapGeom.cc (revision 7049)
-+++ server/physics/MapGeom.cc (working copy)
-@@ -307,7 +307,9 @@
-
- int diff = labs(freePixels - occPixels);
-
-- if (diff > this->granularityP->GetValue())
-+ //if (diff > this->granularityP->GetValue())
-+ // use pixel size for granularity instead of occupancy
-+ if (node->width*node->height > this->granularityP->GetValue())
- {
- float newX, newY;
- float newW, newH;
-@@ -353,7 +355,7 @@
- newY += ceil(newH);
- }
-
-- node->occupied = true;
-+ node->occupied = false;
- node->leaf = false;
- }
- else if (occPixels == 0)
Index: server/physics/SphereGeom.cc
===================================================================
--- server/physics/SphereGeom.cc (revision 7049)
@@ -354,6 +330,30 @@
}
//////////////////////////////////////////////////////////////////////////////
+Index: server/physics/MapGeom.cc
+===================================================================
+--- server/physics/MapGeom.cc (revision 7049)
++++ server/physics/MapGeom.cc (working copy)
+@@ -307,7 +307,9 @@
+
+ int diff = labs(freePixels - occPixels);
+
+- if (diff > this->granularityP->GetValue())
++ //if (diff > this->granularityP->GetValue())
++ // use pixel size for granularity instead of occupancy
++ if (node->width*node->height > this->granularityP->GetValue())
+ {
+ float newX, newY;
+ float newW, newH;
+@@ -353,7 +355,7 @@
+ newY += ceil(newH);
+ }
+
+- node->occupied = true;
++ node->occupied = false;
+ node->leaf = false;
+ }
+ else if (occPixels == 0)
Index: server/physics/Geom.cc
===================================================================
--- server/physics/Geom.cc (revision 7049)
@@ -726,11 +726,13 @@
===================================================================
--- server/physics/ode/ODEPhysics.hh (revision 7049)
+++ server/physics/ode/ODEPhysics.hh (working copy)
-@@ -133,6 +133,7 @@
+@@ -133,6 +133,9 @@
private: ParamT<double> *globalCFMP;
private: ParamT<double> *globalERPP;
+ private: ParamT<bool> *quickStepP;
++ private: ParamT<int> *quickStepItersP;
++ private: ParamT<double> *quickStepWP;
};
/** \}*/
@@ -749,15 +751,17 @@
using namespace gazebo;
////////////////////////////////////////////////////////////////////////////////
-@@ -70,6 +74,7 @@
+@@ -70,6 +74,9 @@
Param::Begin(&this->parameters);
this->globalCFMP = new ParamT<double>("cfm", 10e-5, 0);
this->globalERPP = new ParamT<double>("erp", 0.2, 0);
+ this->quickStepP = new ParamT<bool>("quickStep", false, 0);
++ this->quickStepItersP = new ParamT<int>("quickStepIters", 20, 0);
++ this->quickStepWP = new ParamT<double>("quickStepW", 1.3, 0); /// over_relaxation value for SOR
Param::End();
}
-@@ -88,6 +93,7 @@
+@@ -88,6 +95,7 @@
delete this->globalCFMP;
delete this->globalERPP;
@@ -765,15 +769,17 @@
}
////////////////////////////////////////////////////////////////////////////////
-@@ -103,6 +109,7 @@
+@@ -103,6 +111,9 @@
this->updateRateP->Load(cnode);
this->globalCFMP->Load(cnode);
this->globalERPP->Load(cnode);
+ this->quickStepP->Load(cnode);
++ this->quickStepItersP->Load(cnode);
++ this->quickStepWP->Load(cnode);
}
////////////////////////////////////////////////////////////////////////////////
-@@ -115,6 +122,7 @@
+@@ -115,6 +126,7 @@
stream << prefix << " " << *(this->updateRateP) << "\n";
stream << prefix << " " << *(this->globalCFMP) << "\n";
stream << prefix << " " << *(this->globalERPP) << "\n";
@@ -781,7 +787,16 @@
stream << prefix << "</physics:ode>\n";
}
-@@ -133,13 +141,29 @@
+@@ -126,20 +138,37 @@
+ dWorldSetGravity(this->worldId, g.x, g.y, g.z);
+ dWorldSetCFM(this->worldId, this->globalCFMP->GetValue());
+ dWorldSetERP(this->worldId, this->globalERPP->GetValue());
+-
++ dWorldSetQuickStepNumIterations(this->worldId, this->quickStepItersP->GetValue() );
++ dWorldSetQuickStepW(this->worldId, this->quickStepWP->GetValue() );
+ }
+
+ ////////////////////////////////////////////////////////////////////////////////
// Update the ODE engine
void ODEPhysics::Update()
{
@@ -813,7 +828,7 @@
// Very important to clear out the contact group
dJointGroupEmpty( this->contactGroup );
-@@ -266,15 +290,16 @@
+@@ -266,15 +295,16 @@
contact.surface.mode = dContactSlip1 | dContactSlip2 |
dContactSoftERP | dContactSoftCFM |
dContactBounce | dContactMu2 | dContactApprox1;
Modified: pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_arm_test_headless.world
===================================================================
--- pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_arm_test_headless.world 2008-11-07 19:50:50 UTC (rev 6390)
+++ pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_arm_test_headless.world 2008-11-07 20:05:16 UTC (rev 6391)
@@ -30,6 +30,8 @@
<cfm>0.0000000001</cfm>
<erp>0.2</erp>
<quickStep>true</quickStep>
+ <quickStepIters>3</quickStepIters>
+ <quickStepW>1.3</quickStepW>
</physics:ode>
<!-- Rendering Engine -->
Modified: pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_headless.world
===================================================================
--- pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_headless.world 2008-11-07 19:50:50 UTC (rev 6390)
+++ pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_headless.world 2008-11-07 20:05:16 UTC (rev 6391)
@@ -29,6 +29,8 @@
<cfm>0.000000000001</cfm>
<erp>0.2</erp>
<quickStep>true</quickStep>
+ <quickStepIters>3</quickStepIters>
+ <quickStepW>1.3</quickStepW>
</physics:ode>
<geo:origin>
Modified: pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_prototype1_headless.world
===================================================================
--- pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_prototype1_headless.world 2008-11-07 19:50:50 UTC (rev 6390)
+++ pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_prototype1_headless.world 2008-11-07 20:05:16 UTC (rev 6391)
@@ -29,6 +29,8 @@
<cfm>0.0000000001</cfm>
<erp>0.2</erp>
<quickStep>true</quickStep>
+ <quickStepIters>3</quickStepIters>
+ <quickStepW>1.3</quickStepW>
</physics:ode>
<geo:origin>
Modified: pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_wg_headless.world
===================================================================
--- pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_wg_headless.world 2008-11-07 19:50:50 UTC (rev 6390)
+++ pkg/trunk/robot_descriptions/gazebo_robot_description/world/robot_wg_headless.world 2008-11-07 20:05:16 UTC (rev 6391)
@@ -29,6 +29,8 @@
<cfm>0.0000000001</cfm>
<erp>0.2</erp>
<quickStep>true</quickStep>
+ <quickStepIters>3</quickStepIters>
+ <quickStepW>1.3</quickStepW>
</physics:ode>
<geo:origin>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|