diff --git a/.gitignore b/.gitignore old mode 100644 new mode 100755 diff --git a/.gitmodules b/.gitmodules old mode 100644 new mode 100755 diff --git a/LICENSE b/LICENSE old mode 100644 new mode 100755 diff --git a/data/blender/car.blend b/data/blender/car.blend old mode 100644 new mode 100755 diff --git a/data/blender/car.dae b/data/blender/car.dae old mode 100644 new mode 100755 diff --git a/data/blender/darpa.blend b/data/blender/darpa.blend old mode 100644 new mode 100755 diff --git a/data/blender/darpareduced.blend b/data/blender/darpareduced.blend old mode 100644 new mode 100755 diff --git a/data/blender/groundcrouch.blend b/data/blender/groundcrouch.blend old mode 100644 new mode 100755 diff --git a/data/blender/hyq.blend b/data/blender/hyq.blend old mode 100644 new mode 100755 diff --git a/data/blender/hyq.blend1 b/data/blender/hyq.blend1 old mode 100644 new mode 100755 diff --git a/data/blender/obstacle.blend b/data/blender/obstacle.blend old mode 100644 new mode 100755 diff --git a/data/blender/stair.blend b/data/blender/stair.blend old mode 100644 new mode 100755 diff --git a/data/blender/stair_bauzil.blend b/data/blender/stair_bauzil.blend old mode 100644 new mode 100755 diff --git a/data/blender/truck.blend b/data/blender/truck.blend old mode 100644 new mode 100755 diff --git a/data/blender/truck.blend1 b/data/blender/truck.blend1 old mode 100644 new mode 100755 diff --git a/data/hyq_description/meshes/leg/lowerlegreduced.dae b/data/hyq_description/meshes/leg/lowerlegreduced.dae old mode 100644 new mode 100755 diff --git a/data/hyq_description/srdf/hyq.srdf b/data/hyq_description/srdf/hyq.srdf old mode 100644 new mode 100755 diff --git a/data/hyq_description/urdf/hyq.urdf b/data/hyq_description/urdf/hyq.urdf old mode 100644 new mode 100755 diff --git a/data/meshes/car.dae b/data/meshes/car.dae old mode 100644 new mode 100755 diff --git a/data/meshes/chair.stl b/data/meshes/chair.stl old mode 100644 new mode 100755 diff --git a/data/meshes/climb.stl b/data/meshes/climb.stl old mode 100644 new mode 100755 diff --git a/data/meshes/darpa.stl b/data/meshes/darpa.stl old mode 100644 new mode 100755 diff --git a/data/meshes/darpareduced.stl b/data/meshes/darpareduced.stl old mode 100644 new mode 100755 diff --git a/data/meshes/ground_table.stl b/data/meshes/ground_table.stl old mode 100644 new mode 100755 diff --git a/data/meshes/ground_tablec.stl b/data/meshes/ground_tablec.stl old mode 100644 new mode 100755 diff --git a/data/meshes/groundcrouch.stl b/data/meshes/groundcrouch.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hrp2_larm_rom.stl b/data/meshes/hrp2_larm_rom.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hrp2_lleg_rom.stl b/data/meshes/hrp2_lleg_rom.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hrp2_rarm_rom.stl b/data/meshes/hrp2_rarm_rom.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hrp2_rleg_rom.stl b/data/meshes/hrp2_rleg_rom.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hrp2_rom.stl b/data/meshes/hrp2_rom.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hrp2_trunk.stl b/data/meshes/hrp2_trunk.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hrp2_trunk_body.stl b/data/meshes/hrp2_trunk_body.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hrp2_trunk_body_view.dae b/data/meshes/hrp2_trunk_body_view.dae old mode 100644 new mode 100755 diff --git a/data/meshes/hrp2_trunk_torso.dae b/data/meshes/hrp2_trunk_torso.dae old mode 100644 new mode 100755 diff --git a/data/meshes/hrp2_trunk_torso.stl b/data/meshes/hrp2_trunk_torso.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hrp2_trunk_torso_view.dae b/data/meshes/hrp2_trunk_torso_view.dae old mode 100644 new mode 100755 diff --git a/data/meshes/hyq/hyq_all.stl b/data/meshes/hyq/hyq_all.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hyq/hyq_lfleg_rom.stl b/data/meshes/hyq/hyq_lfleg_rom.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hyq/hyq_lhleg_rom.stl b/data/meshes/hyq/hyq_lhleg_rom.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hyq/hyq_rfleg_rom.stl b/data/meshes/hyq/hyq_rfleg_rom.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hyq/hyq_rhleg_rom.stl b/data/meshes/hyq/hyq_rhleg_rom.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hyq/hyq_rom.stl b/data/meshes/hyq/hyq_rom.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hyq/hyq_trunk.stl b/data/meshes/hyq/hyq_trunk.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hyq/hyq_trunk_large.stl b/data/meshes/hyq/hyq_trunk_large.stl old mode 100644 new mode 100755 diff --git a/data/meshes/hyq/lfleg.obj b/data/meshes/hyq/lfleg.obj old mode 100644 new mode 100755 diff --git a/data/meshes/hyq/lhleg.obj b/data/meshes/hyq/lhleg.obj old mode 100644 new mode 100755 diff --git a/data/meshes/hyq/rfleg.obj b/data/meshes/hyq/rfleg.obj old mode 100644 new mode 100755 diff --git a/data/meshes/hyq/rhleg.obj b/data/meshes/hyq/rhleg.obj old mode 100644 new mode 100755 diff --git a/data/meshes/stair_bauzil.stl b/data/meshes/stair_bauzil.stl old mode 100644 new mode 100755 diff --git a/data/meshes/stair_bauzil_reduced.stl b/data/meshes/stair_bauzil_reduced.stl old mode 100644 new mode 100755 diff --git a/data/meshes/stepladder.mtl b/data/meshes/stepladder.mtl old mode 100644 new mode 100755 diff --git a/data/meshes/stepladder.stl b/data/meshes/stepladder.stl old mode 100644 new mode 100755 diff --git a/data/meshes/truck.stl b/data/meshes/truck.stl old mode 100644 new mode 100755 diff --git a/data/meshes/truck_vision.stl b/data/meshes/truck_vision.stl old mode 100644 new mode 100755 diff --git a/data/roms/centers.txt b/data/roms/centers.txt old mode 100644 new mode 100755 diff --git a/data/roms/centers.txt~ b/data/roms/centers.txt~ old mode 100644 new mode 100755 diff --git a/data/roms/comlArm.erom b/data/roms/comlArm.erom old mode 100644 new mode 100755 diff --git a/data/roms/comlArm.obj b/data/roms/comlArm.obj old mode 100644 new mode 100755 diff --git a/data/roms/comlArmSimplified.mtl b/data/roms/comlArmSimplified.mtl old mode 100644 new mode 100755 diff --git a/data/roms/comlArmSimplified.obj b/data/roms/comlArmSimplified.obj old mode 100644 new mode 100755 diff --git a/data/roms/comlLeg.erom b/data/roms/comlLeg.erom old mode 100644 new mode 100755 diff --git a/data/roms/comlLeg.obj b/data/roms/comlLeg.obj old mode 100644 new mode 100755 diff --git a/data/roms/comlLegSimplified.mtl b/data/roms/comlLegSimplified.mtl old mode 100644 new mode 100755 diff --git a/data/roms/comlLegSimplified.obj b/data/roms/comlLegSimplified.obj old mode 100644 new mode 100755 diff --git a/data/roms/comrArm.erom b/data/roms/comrArm.erom old mode 100644 new mode 100755 diff --git a/data/roms/comrArm.obj b/data/roms/comrArm.obj old mode 100644 new mode 100755 diff --git a/data/roms/comrArmSimplified.mtl b/data/roms/comrArmSimplified.mtl old mode 100644 new mode 100755 diff --git a/data/roms/comrArmSimplified.obj b/data/roms/comrArmSimplified.obj old mode 100644 new mode 100755 diff --git a/data/roms/comrLeg.erom b/data/roms/comrLeg.erom old mode 100644 new mode 100755 diff --git a/data/roms/comrLeg.obj b/data/roms/comrLeg.obj old mode 100644 new mode 100755 diff --git a/data/roms/comrLegSimplified.mtl b/data/roms/comrLegSimplified.mtl old mode 100644 new mode 100755 diff --git a/data/roms/comrLegSimplified.obj b/data/roms/comrLegSimplified.obj old mode 100644 new mode 100755 diff --git a/data/roms/hyq/lfleg.erom b/data/roms/hyq/lfleg.erom old mode 100644 new mode 100755 diff --git a/data/roms/hyq/lhleg.erom b/data/roms/hyq/lhleg.erom old mode 100644 new mode 100755 diff --git a/data/roms/hyq/rfleg.erom b/data/roms/hyq/rfleg.erom old mode 100644 new mode 100755 diff --git a/data/roms/hyq/rhleg.erom b/data/roms/hyq/rhleg.erom old mode 100644 new mode 100755 diff --git a/data/roms/larm.erom b/data/roms/larm.erom old mode 100644 new mode 100755 diff --git a/data/roms/larm.mtl b/data/roms/larm.mtl old mode 100644 new mode 100755 diff --git a/data/roms/larm.obj b/data/roms/larm.obj old mode 100644 new mode 100755 diff --git a/data/roms/larm_simplified.mtl b/data/roms/larm_simplified.mtl old mode 100644 new mode 100755 diff --git a/data/roms/larm_simplified.obj b/data/roms/larm_simplified.obj old mode 100644 new mode 100755 diff --git a/data/roms/lleg.erom b/data/roms/lleg.erom old mode 100644 new mode 100755 diff --git a/data/roms/lleg.mtl b/data/roms/lleg.mtl old mode 100644 new mode 100755 diff --git a/data/roms/lleg.obj b/data/roms/lleg.obj old mode 100644 new mode 100755 diff --git a/data/roms/lleg_simplified.mtl b/data/roms/lleg_simplified.mtl old mode 100644 new mode 100755 diff --git a/data/roms/lleg_simplified.obj b/data/roms/lleg_simplified.obj old mode 100644 new mode 100755 diff --git a/data/roms/phantom/lf.erom b/data/roms/phantom/lf.erom old mode 100644 new mode 100755 diff --git a/data/roms/phantom/lm.erom b/data/roms/phantom/lm.erom old mode 100644 new mode 100755 diff --git a/data/roms/phantom/lr.erom b/data/roms/phantom/lr.erom old mode 100644 new mode 100755 diff --git a/data/roms/phantom/rf.erom b/data/roms/phantom/rf.erom old mode 100644 new mode 100755 diff --git a/data/roms/phantom/rm.erom b/data/roms/phantom/rm.erom old mode 100644 new mode 100755 diff --git a/data/roms/phantom/rr.erom b/data/roms/phantom/rr.erom old mode 100644 new mode 100755 diff --git a/data/roms/rarm.erom b/data/roms/rarm.erom old mode 100644 new mode 100755 diff --git a/data/roms/rarm.mtl b/data/roms/rarm.mtl old mode 100644 new mode 100755 diff --git a/data/roms/rarm.obj b/data/roms/rarm.obj old mode 100644 new mode 100755 diff --git a/data/roms/rarm_simplified.mtl b/data/roms/rarm_simplified.mtl old mode 100644 new mode 100755 diff --git a/data/roms/rarm_simplified.obj b/data/roms/rarm_simplified.obj old mode 100644 new mode 100755 diff --git a/data/roms/rleg.erom b/data/roms/rleg.erom old mode 100644 new mode 100755 diff --git a/data/roms/rleg.mtl b/data/roms/rleg.mtl old mode 100644 new mode 100755 diff --git a/data/roms/rleg.obj b/data/roms/rleg.obj old mode 100644 new mode 100755 diff --git a/data/roms/rleg_simplified.mtl b/data/roms/rleg_simplified.mtl old mode 100644 new mode 100755 diff --git a/data/roms/rleg_simplified.obj b/data/roms/rleg_simplified.obj old mode 100644 new mode 100755 diff --git a/data/srdf/car.srdf b/data/srdf/car.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/climb.srdf b/data/srdf/climb.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/darpa.srdf b/data/srdf/darpa.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/ground.srdf b/data/srdf/ground.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/groundcrouch.srdf b/data/srdf/groundcrouch.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hrp2_larm_rom.srdf b/data/srdf/hrp2_larm_rom.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hrp2_lleg_rom.srdf b/data/srdf/hrp2_lleg_rom.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hrp2_rarm_rom.srdf b/data/srdf/hrp2_rarm_rom.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hrp2_rleg_rom.srdf b/data/srdf/hrp2_rleg_rom.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hrp2_rom.srdf b/data/srdf/hrp2_rom.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hrp2_trunk.srdf b/data/srdf/hrp2_trunk.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hrp2_trunk_flexible.srdf b/data/srdf/hrp2_trunk_flexible.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hyq/hrp2_trunk.srdf b/data/srdf/hyq/hrp2_trunk.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hyq/hyq_lfleg_rom.srdf b/data/srdf/hyq/hyq_lfleg_rom.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hyq/hyq_lhleg_rom.srdf b/data/srdf/hyq/hyq_lhleg_rom.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hyq/hyq_rfleg_rom.srdf b/data/srdf/hyq/hyq_rfleg_rom.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hyq/hyq_rhleg_rom.srdf b/data/srdf/hyq/hyq_rhleg_rom.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hyq/hyq_rom.srdf b/data/srdf/hyq/hyq_rom.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hyq/hyq_trunk.srdf b/data/srdf/hyq/hyq_trunk.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/hyq/hyq_trunk_large.srdf b/data/srdf/hyq/hyq_trunk_large.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/scene_wall.srdf b/data/srdf/scene_wall.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/stair_bauzil.srdf b/data/srdf/stair_bauzil.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/stepladder.srdf b/data/srdf/stepladder.srdf old mode 100644 new mode 100755 diff --git a/data/srdf/truck.srdf b/data/srdf/truck.srdf old mode 100644 new mode 100755 diff --git a/data/urdf/car.urdf b/data/urdf/car.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/climb.urdf b/data/urdf/climb.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/darpa.urdf b/data/urdf/darpa.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/ground.urdf b/data/urdf/ground.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/groundcrouch.urdf b/data/urdf/groundcrouch.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hrp2_larm_rom.urdf b/data/urdf/hrp2_larm_rom.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hrp2_lleg_rom.urdf b/data/urdf/hrp2_lleg_rom.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hrp2_rarm_rom.urdf b/data/urdf/hrp2_rarm_rom.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hrp2_rleg_rom.urdf b/data/urdf/hrp2_rleg_rom.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hrp2_rom.urdf b/data/urdf/hrp2_rom.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hrp2_trunk.urdf b/data/urdf/hrp2_trunk.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hrp2_trunk08.urdf b/data/urdf/hrp2_trunk08.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hrp2_trunk_flexible.urdf b/data/urdf/hrp2_trunk_flexible.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hyq/hyq_lfleg_rom.urdf b/data/urdf/hyq/hyq_lfleg_rom.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hyq/hyq_lhleg_rom.urdf b/data/urdf/hyq/hyq_lhleg_rom.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hyq/hyq_rfleg_rom.urdf b/data/urdf/hyq/hyq_rfleg_rom.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hyq/hyq_rhleg_rom.urdf b/data/urdf/hyq/hyq_rhleg_rom.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hyq/hyq_rom.urdf b/data/urdf/hyq/hyq_rom.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hyq/hyq_trunk.urdf b/data/urdf/hyq/hyq_trunk.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/hyq/hyq_trunk_large.urdf b/data/urdf/hyq/hyq_trunk_large.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/scene_wall.urdf b/data/urdf/scene_wall.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/stair_bauzil.urdf b/data/urdf/stair_bauzil.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/stepladder.urdf b/data/urdf/stepladder.urdf old mode 100644 new mode 100755 diff --git a/data/urdf/truck.urdf b/data/urdf/truck.urdf old mode 100644 new mode 100755 diff --git a/doc/Doxyfile.extra.in b/doc/Doxyfile.extra.in old mode 100644 new mode 100755 diff --git a/idl/hpp/corbaserver/rbprm/rbprmbuilder.idl b/idl/hpp/corbaserver/rbprm/rbprmbuilder.idl index e933f8d54a968a9baa5ded53cedfb6a0b0d00e81..34164d2b842649abd50f98b3497351930f5bb71a 100755 --- a/idl/hpp/corbaserver/rbprm/rbprmbuilder.idl +++ b/idl/hpp/corbaserver/rbprm/rbprmbuilder.idl @@ -178,6 +178,13 @@ module hpp /// \param path path computed. floatSeqSeq interpolate(in double timestep, in double path) raises (Error); + /// Provided a path has already been computed, interpolates it and generates the statically stable + /// constact configurations along it. setStartState and setEndState must have been called prior + /// to this function. If these conditions are not met an error is raised. + /// \param timestep normalized step for generation along the path (ie the path has a length of 1). + /// \param path path computed. + floatSeqSeq interpolateConfigs(in floatSeqSeq configs) raises (Error); + /// Saves the last computed states by the function interpolate in a filename. /// Raises an error if interpolate has not been called, or the file could not be opened. /// \param filename name of the file used to save the contacts. diff --git a/out/stair_bauzil/2.ogv b/out/stair_bauzil/2.ogv old mode 100644 new mode 100755 diff --git a/out/stair_bauzil/3.ogv b/out/stair_bauzil/3.ogv old mode 100644 new mode 100755 diff --git a/out/stair_bauzil/4.ogv b/out/stair_bauzil/4.ogv old mode 100644 new mode 100755 diff --git a/out/stair_bauzil/fourth.csv b/out/stair_bauzil/fourth.csv old mode 100644 new mode 100755 diff --git a/out/stair_bauzil/fourthchoice b/out/stair_bauzil/fourthchoice old mode 100644 new mode 100755 diff --git a/out/stair_bauzil/secondchoice b/out/stair_bauzil/secondchoice old mode 100644 new mode 100755 diff --git a/out/stair_bauzil/secondchoice.csv b/out/stair_bauzil/secondchoice.csv old mode 100644 new mode 100755 diff --git a/out/stair_bauzil/thirdchoice b/out/stair_bauzil/thirdchoice old mode 100644 new mode 100755 diff --git a/out/stair_bauzil/thirdchoice.csv b/out/stair_bauzil/thirdchoice.csv old mode 100644 new mode 100755 diff --git a/profile/profile.py b/profile/profile.py old mode 100644 new mode 100755 diff --git a/script/scenarios/car_hrp2_interp.py b/script/scenarios/car_hrp2_interp.py old mode 100644 new mode 100755 diff --git a/script/scenarios/car_hrp2_path.py b/script/scenarios/car_hrp2_path.py old mode 100644 new mode 100755 diff --git a/script/scenarios/darpa_hrp2_interp.py b/script/scenarios/darpa_hrp2_interp.py old mode 100644 new mode 100755 diff --git a/script/scenarios/darpa_hrp2_path.py b/script/scenarios/darpa_hrp2_path.py old mode 100644 new mode 100755 diff --git a/script/scenarios/darpa_hyq_interp.py b/script/scenarios/darpa_hyq_interp.py old mode 100644 new mode 100755 index 741f62ea38d467de2d0ce1606c9eaabe65093b38..e8c5562323c75efcfde3408cc98a99391f32ee98 --- a/script/scenarios/darpa_hyq_interp.py +++ b/script/scenarios/darpa_hyq_interp.py @@ -33,7 +33,7 @@ rfoot = 'rf_foot_joint' rLegOffset = [0.,0,0.] rLegNormal = [0,1,0] rLegx = 0.02; rLegy = 0.02 -fullBody.addLimb(rLegId,rLeg,rfoot,rLegOffset,rLegNormal, rLegx, rLegy, nbSamples, "forward", 0.1) +fullBody.addLimb(rLegId,rLeg,rfoot,rLegOffset,rLegNormal, rLegx, rLegy, nbSamples, "manipulability", 0.1) #~ fullBody.addLimb(rLegId,rLeg,rfoot,rLegOffset,rLegNormal, rLegx, rLegy, nbSamples, "manipulability", 0.05) #~ fullBody.addLimb(rLegId,rLeg,rfoot,rLegOffset,rLegNormal, rLegx, rLegy, nbSamples, "random", 0.05) @@ -43,7 +43,7 @@ lfoot = 'lh_foot_joint' lLegOffset = [0,0,0] lLegNormal = [0,1,0] lLegx = 0.02; lLegy = 0.02 -fullBody.addLimb(lLegId,lLeg,lfoot,lLegOffset,rLegNormal, lLegx, lLegy, nbSamples, "forward", 0.05) +fullBody.addLimb(lLegId,lLeg,lfoot,lLegOffset,rLegNormal, lLegx, lLegy, nbSamples, "manipulability", 0.05) #~ fullBody.addLimb(lLegId,lLeg,lfoot,lLegOffset,rLegNormal, lLegx, lLegy, nbSamples, "manipulability", 0.05) #~ fullBody.addLimb(lLegId,lLeg,lfoot,lLegOffset,rLegNormal, lLegx, lLegy, nbSamples, "random", 0.05) @@ -53,7 +53,7 @@ rHand = 'rh_foot_joint' rArmOffset = [0.,0,-0.] rArmNormal = [0,1,0] rArmx = 0.02; rArmy = 0.02 -fullBody.addLimb(rarmId,rarm,rHand,rArmOffset,rArmNormal, rArmx, rArmy, nbSamples, "forward", 0.05) +fullBody.addLimb(rarmId,rarm,rHand,rArmOffset,rArmNormal, rArmx, rArmy, nbSamples, "manipulability", 0.05) #~ fullBody.addLimb(rarmId,rarm,rHand,rArmOffset,rArmNormal, rArmx, rArmy, nbSamples, "manipulability", 0.05) #~ fullBody.addLimb(rarmId,rarm,rHand,rArmOffset,rArmNormal, rArmx, rArmy, nbSamples, "random", 0.05) diff --git a/script/scenarios/darpa_hyq_path.py b/script/scenarios/darpa_hyq_path.py old mode 100644 new mode 100755 index 5898046914a564da195ce7b8d6307af3aa4c5997..b18f33930514ae8290a38510c7ee73b05c72d5d4 --- a/script/scenarios/darpa_hyq_path.py +++ b/script/scenarios/darpa_hyq_path.py @@ -52,7 +52,7 @@ f.close() from hpp.gepetto import PathPlayer pp = PathPlayer (rbprmBuilder.client.basic, r) -#~ rbprmBuilder.exportPath (r, ps.client.problem, 1, 0.1, "darpa_hyq_path.txt") +rbprmBuilder.exportPath (r, ps.client.problem, 1, 0.1, "darpa_hyq_robust_20_path.txt") #~ pp.fromFile("/home/stonneau/dev/hpp/src/hpp-rbprm-corba/script/paths/stair.path") #~ #~ pp (2) diff --git a/script/scenarios/ground_crouch_hyq_interp.py b/script/scenarios/ground_crouch_hyq_interp.py old mode 100644 new mode 100755 index 4383eac2349f22482cb01c1f94d7db18d35fe49b..76774043dd8ae9a746b4e643038f9da1910b020f --- a/script/scenarios/ground_crouch_hyq_interp.py +++ b/script/scenarios/ground_crouch_hyq_interp.py @@ -79,7 +79,7 @@ r(q_init) configs = fullBody.interpolate(0.1) r.loadObstacleModel ('hpp-rbprm-corba', "groundcrouch", "contact") -fullBody.exportAll(r, configs, 'obstacle_hyq_robust_1'); +fullBody.exportAll(r, configs, 'obstacle_hyq_robust_10'); i = 0; r (configs[i]); i=i+1; i-1 diff --git a/script/scenarios/ground_crouch_hyq_path.py b/script/scenarios/ground_crouch_hyq_path.py old mode 100644 new mode 100755 index 8ddbf8d5efba361965ad4b71a82ff02a010a9a3e..29b3ed1518d4ece915b753677a64904456a2356e --- a/script/scenarios/ground_crouch_hyq_path.py +++ b/script/scenarios/ground_crouch_hyq_path.py @@ -46,7 +46,7 @@ t = ps.solve () f = open('log.txt', 'a') f.write("path computation " + str(t) + "\n") f.close() -rbprmBuilder.exportPath (r, ps.client.problem, 1, 0.1, "obstacle_hyq_path.txt") +rbprmBuilder.exportPath (r, ps.client.problem, 1, 0.1, "obstacle_hyq_robust_10_path.txt") from hpp.gepetto import PathPlayer diff --git a/script/scenarios/hrp2_walkgen.py b/script/scenarios/hrp2_walkgen.py old mode 100644 new mode 100755 diff --git a/script/scenarios/josephload.py b/script/scenarios/josephload.py old mode 100644 new mode 100755 diff --git a/script/scenarios/josephpath.py b/script/scenarios/josephpath.py old mode 100644 new mode 100755 diff --git a/script/scenarios/stair_bauzil_hrp2_interp.py b/script/scenarios/stair_bauzil_hrp2_interp.py old mode 100644 new mode 100755 diff --git a/script/scenarios/stair_bauzil_hrp2_path.py b/script/scenarios/stair_bauzil_hrp2_path.py old mode 100644 new mode 100755 diff --git a/script/scenarios/stair_bauzil_hyq_interp.py b/script/scenarios/stair_bauzil_hyq_interp.py old mode 100644 new mode 100755 diff --git a/script/scenarios/stair_bauzil_hyq_path.py b/script/scenarios/stair_bauzil_hyq_path.py old mode 100644 new mode 100755 diff --git a/script/scenarios/standing_hrp2_interp.py b/script/scenarios/standing_hrp2_interp.py old mode 100644 new mode 100755 diff --git a/script/scenarios/standing_hrp2_path.py b/script/scenarios/standing_hrp2_path.py old mode 100644 new mode 100755 diff --git a/script/scenarios/truck_hrp2_interp.py b/script/scenarios/truck_hrp2_interp.py old mode 100644 new mode 100755 diff --git a/script/scenarios/truck_hrp2_path.py b/script/scenarios/truck_hrp2_path.py old mode 100644 new mode 100755 diff --git a/script/tools/admissibleRootPositionsFromEffector.py b/script/tools/admissibleRootPositionsFromEffector.py old mode 100644 new mode 100755 diff --git a/script/tools/check_motion.py b/script/tools/check_motion.py new file mode 100755 index 0000000000000000000000000000000000000000..f4ad4cc0e9fb2cebbfd489c612eb462f3617975c --- /dev/null +++ b/script/tools/check_motion.py @@ -0,0 +1,36 @@ +from hpp.corbaserver.rbprm.rbprmfullbody import FullBody +from hpp.gepetto import Viewer +from hpp.corbaserver.rbprm.problem_solver import ProblemSolver + +packageName = "hrp2_14_description" +meshPackageName = "hrp2_14_description" +rootJointType = "freeflyer" +## +# Information to retrieve urdf and srdf files. +urdfName = "hrp2_14" +urdfSuffix = "_reduced" +srdfSuffix = "" + +fullBody = FullBody () + +fullBody.loadFullBodyModel(urdfName, rootJointType, meshPackageName, packageName, urdfSuffix, srdfSuffix) + +ps = ProblemSolver( fullBody ) +r = Viewer (ps) + +justin = "/home/stonneau/dev/justin/hrp2-motions/standup/" + +def check(csv): + qs=[] + file = open(justin+csv,"r+"); + # first retrieve frame range + for line in file.readlines(): + objs = line.rstrip("\n").split(" "); + objs.pop(0) + q = fullBody.getCurrentConfig(); + for i in range (0, len(q)-1): + q[i+7] = float(objs[i]) + qs.append(q) + return qs + +configs = check("standup_2015_11_16_16_23_35.pos") diff --git a/script/tools/generateROMs.py b/script/tools/generateROMs.py old mode 100644 new mode 100755 diff --git a/script/tools/generateROMsHyq.py b/script/tools/generateROMsHyq.py old mode 100644 new mode 100755 diff --git a/script/tools/generateROMsPhantom.py b/script/tools/generateROMsPhantom.py old mode 100644 new mode 100755 diff --git a/script/tools/loadobj.py b/script/tools/loadobj.py old mode 100644 new mode 100755 diff --git a/script/tools/quaternion.py b/script/tools/quaternion.py old mode 100644 new mode 100755 diff --git a/src/hpp/corbaserver/rbprm/rbprmfullbody.py b/src/hpp/corbaserver/rbprm/rbprmfullbody.py index 30fa95c00f0f9ec692b570e45cca22af071d83fb..c3d4cc00cbe89162bf2ef9a3ec32618ca1775c09 100755 --- a/src/hpp/corbaserver/rbprm/rbprmfullbody.py +++ b/src/hpp/corbaserver/rbprm/rbprmfullbody.py @@ -176,6 +176,14 @@ class FullBody (object): def interpolate(self, stepsize, pathId = 1): return self.client.rbprm.rbprm.interpolate(stepsize, pathId) + ## Given start and goal states + # generate a contact sequence over a list of configurations + # + # \param stepSize discretization step + # \param pathId Id of the path to compute from + def interpolateConfigs(self, configs): + return self.client.rbprm.rbprm.interpolateConfigs(configs) + ## Create octree nodes representation for a given limb # # \param stepSize discretization step diff --git a/src/rbprmbuilder.impl.cc b/src/rbprmbuilder.impl.cc index a44e660a6209716bcc4d8a29ebc98629bd7ced10..ac245ec83df928f87d920f946353eaf5b12b686a 100755 --- a/src/rbprmbuilder.impl.cc +++ b/src/rbprmbuilder.impl.cc @@ -210,6 +210,18 @@ namespace hpp { return config; } + std::vector<model::Configuration_t> doubleDofArrayToConfig (const model::DevicePtr_t& robot, + const hpp::floatSeqSeq& doubleDofArray) + { + std::size_t configsDim = (std::size_t)doubleDofArray.length(); + std::vector<model::Configuration_t> res; + for (std::size_t iConfig = 0; iConfig < configsDim; iConfig++) + { + res.push_back(dofArrayToConfig(robot, doubleDofArray[iConfig])); + } + return res; + } + std::vector<std::string> stringConversion(const hpp::Names_t& dofArray) { std::vector<std::string> res; @@ -416,6 +428,49 @@ namespace hpp { } } + floatSeqSeq* RbprmBuilder::interpolateConfigs(const hpp::floatSeqSeq& configs) throw (hpp::Error) + { + try + { + if(startState_.configuration_.rows() == 0) + { + throw std::runtime_error ("Start state not initialized, can not interpolate "); + } + if(endState_.configuration_.rows() == 0) + { + throw std::runtime_error ("End state not initialized, can not interpolate "); + } + hpp::rbprm::RbPrmInterpolationPtr_t interpolator = rbprm::RbPrmInterpolation::create(fullBody_,startState_,endState_); + std::vector<model::Configuration_t> configurations = doubleDofArrayToConfig(fullBody_->device_, configs); + lastStatesComputed_ = interpolator->Interpolate(problemSolver_->collisionObstacles(),configurations); + hpp::floatSeqSeq *res; + res = new hpp::floatSeqSeq (); + + res->length (lastStatesComputed_.size ()); + std::size_t i=0; + std::size_t id = 0; + for(std::vector<State>::const_iterator cit = lastStatesComputed_.begin(); cit != lastStatesComputed_.end(); ++cit, ++id) + { + std::cout << "ID " << id; + cit->print(); + const core::Configuration_t config = cit->configuration_; + _CORBA_ULong size = (_CORBA_ULong) config.size (); + double* dofArray = hpp::floatSeq::allocbuf(size); + hpp::floatSeq floats (size, size, dofArray, true); + //convert the config in dofseq + for (model::size_type j=0 ; j < config.size() ; ++j) { + dofArray[j] = config [j]; + } + (*res) [i] = floats; + ++i; + } + return res; + } + catch(std::runtime_error& e) + { + throw Error(e.what()); + } + } floatSeqSeq* RbprmBuilder::interpolate(double timestep, double path) throw (hpp::Error) { @@ -436,7 +491,7 @@ namespace hpp { throw std::runtime_error ("No path computed, cannot interpolate "); } - hpp::rbprm::RbPrmInterpolationPtr_t interpolator = rbprm::RbPrmInterpolation::create(problemSolver_->paths()[pathId],fullBody_,startState_,endState_); + hpp::rbprm::RbPrmInterpolationPtr_t interpolator = rbprm::RbPrmInterpolation::create(fullBody_,startState_,endState_,problemSolver_->paths()[pathId]); lastStatesComputed_ = interpolator->Interpolate(problemSolver_->collisionObstacles(),timestep); hpp::floatSeqSeq *res; diff --git a/src/rbprmbuilder.impl.hh b/src/rbprmbuilder.impl.hh index 0e596f230bd0d9613eee87a9891574fc68c69b64..c48993661217bb145118f6f8e42eb2500cc56e62 100755 --- a/src/rbprmbuilder.impl.hh +++ b/src/rbprmbuilder.impl.hh @@ -115,6 +115,7 @@ namespace hpp { virtual void setStartState(const hpp::floatSeq& configuration, const hpp::Names_t& contactLimbs) throw (hpp::Error); virtual void setEndState(const hpp::floatSeq& configuration, const hpp::Names_t& contactLimbs) throw (hpp::Error); virtual hpp::floatSeqSeq* interpolate(double timestep, double path) throw (hpp::Error); + virtual hpp::floatSeqSeq* interpolateConfigs(const hpp::floatSeqSeq& configs) throw (hpp::Error); virtual void saveComputedStates(const char* filepath) throw (hpp::Error); virtual hpp::floatSeqSeq* GetOctreeBoxes(const char* limbName, const hpp::floatSeq& configuration) throw (hpp::Error); virtual hpp::floatSeq* getOctreeTransform(const char* limbName, const hpp::floatSeq& configuration) throw (hpp::Error);