diff --git a/source/RobotAPI/components/DSObstacleAvoidance/DSObstacleAvoidance.cpp b/source/RobotAPI/components/DSObstacleAvoidance/DSObstacleAvoidance.cpp index 4a83bdedaabbabcc2f46bc4e2815a826ee661156..a1be9a1ff18a6d9c86a570b75d5b9079f9ae8b68 100644 --- a/source/RobotAPI/components/DSObstacleAvoidance/DSObstacleAvoidance.cpp +++ b/source/RobotAPI/components/DSObstacleAvoidance/DSObstacleAvoidance.cpp @@ -549,17 +549,23 @@ armarx::DSObstacleAvoidance::run_visualization() Layer layer_sms = arviz.layer("safety_margins"); Layer layer_rps = arviz.layer("reference_points"); Layer layer_bbs = arviz.layer("bounding_boxes"); - Color color = Color::red(255, 128); - Color color_m = Color::red(255, 64); - - if (not m_doa.cfg.only_2d) - { - color = Color::blue(255, 128); - color_m = Color::blue(255, 64); - } for (const obstacledetection::Obstacle& obstacle : getObstacles()) { + Color color = Color::orange(255, 128); + Color color_m = Color::orange(255, 64); + + if (obstacle.name == "human") + { + color = Color::red(255, 128); + color_m = Color::red(255, 64); + } + else if (not m_doa.cfg.only_2d) + { + color = Color::blue(255, 128); + color_m = Color::blue(255, 64); + } + const double safetyMarginZ = m_doa.cfg.only_2d ? 1 : obstacle.safetyMarginZ; const double posZ = m_doa.cfg.only_2d ? 1 : obstacle.posZ; const double refPosZ = m_doa.cfg.only_2d ? 1 : obstacle.refPosZ; @@ -574,6 +580,7 @@ armarx::DSObstacleAvoidance::run_visualization() if (m_doa.cfg.only_2d) { + layer_obs.add(Cylindroid{obstacle.name} .pose(pose) .axisLengths(dim.head<2>()) diff --git a/source/RobotAPI/components/DynamicObstacleManager/DynamicObstacleManager.cpp b/source/RobotAPI/components/DynamicObstacleManager/DynamicObstacleManager.cpp index 46515a2c2f9a61acbaf63c186920478dab82cb1c..e712e30ccb2978fdc7caa0210b919773b7dce46b 100644 --- a/source/RobotAPI/components/DynamicObstacleManager/DynamicObstacleManager.cpp +++ b/source/RobotAPI/components/DynamicObstacleManager/DynamicObstacleManager.cpp @@ -234,7 +234,9 @@ namespace armarx void DynamicObstacleManager::wait_unitl_obstacles_are_ready(const Ice::Current&) { - usleep(m_min_value_for_accepting); + ARMARX_INFO << "Waiting for obstacles to get ready"; + usleep(2.0 * m_min_value_for_accepting); + ARMARX_INFO << "Finished waiting for obstacles"; }