diff --git a/robots/icub/icub.urdf b/robots/icub/icub.urdf index 60a5e8de..f9f48351 100644 --- a/robots/icub/icub.urdf +++ b/robots/icub/icub.urdf @@ -5,12 +5,12 @@ - + diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_chest.glb b/robots/icub/icub_description/meshes/visual/glb/icub_chest.glb index 011738c5..cb9c6006 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_chest.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_chest.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_head.glb b/robots/icub/icub_description/meshes/visual/glb/icub_head.glb index 6849dbae..0fb086a5 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_head.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_head.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_ankle_1.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_ankle_1.glb index b914b4cf..7c95816e 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_ankle_1.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_ankle_1.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_ankle_2.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_ankle_2.glb index 33b096cc..9f8fe564 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_ankle_2.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_ankle_2.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_elbow_1.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_elbow_1.glb index 5f8c85a7..e190cda5 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_elbow_1.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_elbow_1.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_foot.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_foot.glb index 2641d9d3..0f73b45e 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_foot.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_foot.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_forearm.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_forearm.glb index becd7d73..fc808997 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_forearm.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_forearm.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_hand.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_hand.glb index b132c856..70251a5c 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_hand.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_hand.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_hip_pitch_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_hip_pitch_link.glb index d7d3bbb6..d748d628 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_hip_pitch_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_hip_pitch_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_hip_roll_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_hip_roll_link.glb index 0652d0f4..6fb0250c 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_hip_roll_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_hip_roll_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_hip_yaw_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_hip_yaw_link.glb index 935295db..b349ae2a 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_hip_yaw_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_hip_yaw_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_lower_leg.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_lower_leg.glb index cc8d1072..44cfeecf 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_lower_leg.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_lower_leg.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_shoulder_pitch_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_shoulder_pitch_link.glb index 137e943d..f6b8b1af 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_shoulder_pitch_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_shoulder_pitch_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_shoulder_roll_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_shoulder_roll_link.glb index 50d59409..7cc9493f 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_shoulder_roll_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_shoulder_roll_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_shoulder_yaw_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_shoulder_yaw_link.glb index 850db008..61267a53 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_shoulder_yaw_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_shoulder_yaw_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_upper_arm.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_upper_arm.glb index c71348e7..f13471c9 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_upper_arm.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_upper_arm.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_upper_leg.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_upper_leg.glb index e2bcb752..66e0037d 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_upper_leg.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_upper_leg.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_l_wrist_1.glb b/robots/icub/icub_description/meshes/visual/glb/icub_l_wrist_1.glb index cb32a514..7e304a82 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_l_wrist_1.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_l_wrist_1.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_lap_belt_1.glb b/robots/icub/icub_description/meshes/visual/glb/icub_lap_belt_1.glb index 582c19a4..c1425075 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_lap_belt_1.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_lap_belt_1.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_lap_belt_2.glb b/robots/icub/icub_description/meshes/visual/glb/icub_lap_belt_2.glb index 3a9520bf..35a4d752 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_lap_belt_2.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_lap_belt_2.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_neck_roll_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_neck_roll_link.glb index 436e7464..c82a6432 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_neck_roll_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_neck_roll_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_neck_yaw_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_neck_yaw_link.glb index 6c7b862d..d632bdbb 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_neck_yaw_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_neck_yaw_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_ankle_1.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_ankle_1.glb index c635115f..f397a09a 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_ankle_1.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_ankle_1.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_ankle_2.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_ankle_2.glb index cd6a2733..2d37df27 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_ankle_2.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_ankle_2.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_elbow_1.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_elbow_1.glb index 36866e41..65b6f885 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_elbow_1.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_elbow_1.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_foot.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_foot.glb index cd105d7d..9a819303 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_foot.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_foot.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_forearm.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_forearm.glb index 4d3b29fe..4e139d74 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_forearm.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_forearm.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_hand.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_hand.glb index f6ad041b..22fbc5d7 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_hand.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_hand.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_hip_pitch_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_hip_pitch_link.glb index 3ebbfe29..a7efb0c6 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_hip_pitch_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_hip_pitch_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_hip_roll_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_hip_roll_link.glb index be1a3e80..925f8e23 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_hip_roll_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_hip_roll_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_hip_yaw_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_hip_yaw_link.glb index 4568aed7..b349ae2a 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_hip_yaw_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_hip_yaw_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_lower_leg.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_lower_leg.glb index 392a76b6..254a35c4 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_lower_leg.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_lower_leg.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_shoulder_pitch_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_shoulder_pitch_link.glb index 8d9c8ef9..c09f0e60 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_shoulder_pitch_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_shoulder_pitch_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_shoulder_roll_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_shoulder_roll_link.glb index edb60970..fe029a9e 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_shoulder_roll_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_shoulder_roll_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_shoulder_yaw_link.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_shoulder_yaw_link.glb index 88f1cd6a..ba261eca 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_shoulder_yaw_link.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_shoulder_yaw_link.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_upper_arm.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_upper_arm.glb index 4ddb4d54..5c335352 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_upper_arm.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_upper_arm.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_upper_leg.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_upper_leg.glb index 05ed083d..c7a170a7 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_upper_leg.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_upper_leg.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_r_wrist_1.glb b/robots/icub/icub_description/meshes/visual/glb/icub_r_wrist_1.glb index eee4db16..cf1ab003 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_r_wrist_1.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_r_wrist_1.glb differ diff --git a/robots/icub/icub_description/meshes/visual/glb/icub_waist.glb b/robots/icub/icub_description/meshes/visual/glb/icub_waist.glb index 9aba8b7a..ee4ba871 100644 Binary files a/robots/icub/icub_description/meshes/visual/glb/icub_waist.glb and b/robots/icub/icub_description/meshes/visual/glb/icub_waist.glb differ diff --git a/src/examples/icub.cpp b/src/examples/icub.cpp index 2ee6c910..10f11f11 100644 --- a/src/examples/icub.cpp +++ b/src/examples/icub.cpp @@ -22,10 +22,14 @@ int main() #endif simu.add_checkerboard_floor(); simu.add_robot(robot); - - // Add some visualizations - // robot->set_draw_axis(imu_config.body->getName()); - // robot->set_draw_axis("r_ankle_2"); + auto ghost = robot->clone_ghost(); + ghost->skeleton()->setPosition(4, -1.57); + ghost->skeleton()->setPosition(5, 1.1); + simu.add_robot(ghost); +#if DART_VERSION_AT_MOST(6, 12, 99) + // fix a bug for older versions of DART + robot->set_color_mode("material"); +#endif simu.set_control_freq(100); // 100 Hz std::vector dofs = { diff --git a/src/robot_dart/robots/a1.cpp b/src/robot_dart/robots/a1.cpp index c272212b..bad17a8e 100644 --- a/src/robot_dart/robots/a1.cpp +++ b/src/robot_dart/robots/a1.cpp @@ -9,10 +9,13 @@ namespace robot_dart { set_color_mode("material"); set_self_collision(true); set_position_enforced(true); + + // put above ground set_base_pose(robot_dart::make_vector({0., 0., 0., 0., 0., 0.5})); + + // standing pose auto names = dof_names(true, true, true); names = std::vector(names.begin() + 6, names.end()); - // standing pose set_positions(robot_dart::make_vector({0.0, 0.67, -1.3, -0.0, 0.67, -1.3, 0.0, 0.67, -1.3, -0.0, 0.67, -1.3}), names); } } // namespace robots diff --git a/src/robot_dart/robots/icub.cpp b/src/robot_dart/robots/icub.cpp index 074e6279..fbfaa03d 100644 --- a/src/robot_dart/robots/icub.cpp +++ b/src/robot_dart/robots/icub.cpp @@ -10,11 +10,9 @@ namespace robot_dart { _ft_foot_right(std::make_shared(joint("r_ankle_roll"), frequency)) { set_color_mode("material"); - set_color_mode("aspect", "right_foot"); - set_color_mode("aspect", "left_foot"); set_position_enforced(true); - skeleton()->setPosition(5, 0.5); + skeleton()->setPosition(5, 0.46); skeleton()->setPosition(2, 1.57); }