bool PointCloudMoveitFilter::setParams(XmlRpc::XmlRpcValue ¶ms) { try { if (!params.hasMember("point_cloud_topic")) return false; point_cloud_topic_ = static_cast<const std::string&>(params["point_cloud_topic"]); readXmlParam(params, "max_range", &max_range_); readXmlParam(params, "padding_offset", &padding_); readXmlParam(params, "padding_scale", &scale_); readXmlParam(params, "point_subsample", &point_subsample_); if (!params.hasMember("filtered_cloud_topic")) { ROS_ERROR("filtered_cloud_topic is required"); return false; } else { filtered_cloud_topic_ = static_cast<const std::string&>(params["filtered_cloud_topic"]); } if (params.hasMember("filtered_cloud_use_color")) { use_color_ = (bool)params["filtered_cloud_use_color"]; } if (params.hasMember("filtered_cloud_keep_organized")) { keep_organized_ = (bool)params["filtered_cloud_keep_organized"]; } } catch (XmlRpc::XmlRpcException& ex) { ROS_ERROR("XmlRpc Exception: %s", ex.getMessage().c_str()); return false; } return true; }
bool DepthImageOccupancyMapUpdater::setParams(XmlRpc::XmlRpcValue ¶ms) { try { sensor_type_ = (std::string) params["sensor_type"]; if (params.hasMember("image_topic")) image_topic_ = (std::string) params["image_topic"]; if (params.hasMember("queue_size")) queue_size_ = (int)params["queue_size"]; readXmlParam(params, "near_clipping_plane_distance", &near_clipping_plane_distance_); readXmlParam(params, "far_clipping_plane_distance", &far_clipping_plane_distance_); readXmlParam(params, "shadow_threshold", &shadow_threshold_); readXmlParam(params, "padding_scale", &padding_scale_); readXmlParam(params, "padding_offset", &padding_offset_); readXmlParam(params, "skip_vertical_pixels", &skip_vertical_pixels_); readXmlParam(params, "skip_horizontal_pixels", &skip_horizontal_pixels_); } catch (XmlRpc::XmlRpcException &ex) { ROS_ERROR("XmlRpc Exception: %s", ex.getMessage().c_str()); return false; } return true; }
bool PointCloudOctomapUpdater::setParams(XmlRpc::XmlRpcValue ¶ms) { try { if (!params.hasMember("point_cloud_topic")) return false; point_cloud_topic_ = std::string (params["point_cloud_topic"]); readXmlParam(params, "max_range", &max_range_); readXmlParam(params, "shape_padding", &padding_); readXmlParam(params, "shape_scale", &scale_); readXmlParam(params, "point_subsample", &point_subsample_); } catch (XmlRpc::XmlRpcException &ex) { ROS_ERROR("XmlRpc Exception: %s", ex.getMessage().c_str()); return false; } return true; }