40 : nh_(nh), rest_helper_(host, node_name, 10000), visualizer_(nh)
52 catch (
const std::exception& ex)
54 ROS_FATAL(
"Exception during destruction of PickClient: %s", ex.what());
58 ROS_FATAL(
"Exception during destruction of PickClient");
74 for (
const auto&
param : params)
76 const auto& name =
param[
"name"];
77 if (name ==
"max_grasps")
79 cfg.max_grasps =
param[
"value"];
81 if (name ==
"cluster_max_curvature")
83 cfg.cluster_max_curvature =
param[
"value"];
85 else if (name ==
"cluster_max_dimension")
87 cfg.cluster_max_dimension =
param[
"value"];
89 else if (name ==
"clustering_discontinuity_factor")
91 cfg.clustering_discontinuity_factor =
param[
"value"];
93 else if (name ==
"clustering_max_surface_rmse")
95 cfg.clustering_max_surface_rmse =
param[
"value"];
97 else if (name ==
"clustering_patch_size")
99 cfg.clustering_patch_size =
param[
"value"];
106 rc_pick_client::pickModuleConfig cfg;
115 nh_.
param(
"cluster_max_curvature", cfg.cluster_max_curvature, cfg.cluster_max_curvature);
116 nh_.
param(
"cluster_max_dimension", cfg.cluster_max_dimension, cfg.cluster_max_dimension);
117 nh_.
param(
"clustering_discontinuity_factor", cfg.clustering_discontinuity_factor,
118 cfg.clustering_discontinuity_factor);
119 nh_.
param(
"clustering_max_surface_rmse", cfg.clustering_max_surface_rmse, cfg.clustering_max_surface_rmse);
120 nh_.
param(
"clustering_patch_size", cfg.clustering_patch_size, cfg.clustering_patch_size);
121 nh_.
param(
"max_grasps", cfg.max_grasps, cfg.max_grasps);
124 nh_.
setParam(
"cluster_max_curvature", cfg.cluster_max_curvature);
125 nh_.
setParam(
"cluster_max_dimension", cfg.cluster_max_dimension);
126 nh_.
setParam(
"clustering_discontinuity_factor", cfg.clustering_discontinuity_factor);
127 nh_.
setParam(
"clustering_max_surface_rmse", cfg.clustering_max_surface_rmse);
128 nh_.
setParam(
"clustering_patch_size", cfg.clustering_patch_size);
132 using ReconfServer = dynamic_reconfigure::Server<rc_pick_client::pickModuleConfig>;
133 server_ = std::unique_ptr<ReconfServer>(
new ReconfServer(
nh_));
139 json js_params, js_param;
140 js_param[
"name"] =
"cluster_max_curvature";
141 js_param[
"value"] = config.cluster_max_curvature;
142 js_params.push_back(js_param);
143 js_param[
"name"] =
"clustering_discontinuity_factor";
144 js_param[
"value"] = config.clustering_discontinuity_factor;
145 js_params.push_back(js_param);
146 js_param[
"name"] =
"clustering_max_surface_rmse";
147 js_param[
"value"] = config.clustering_max_surface_rmse;
148 js_params.push_back(js_param);
149 js_param[
"name"] =
"max_grasps";
150 js_param[
"value"] = config.max_grasps;
151 js_params.push_back(js_param);