1 #include <SimoxUtility/math/pose/pose.h>
24 draw(gc, l, simox::color::GlasbeyLUT::at(_color_offset, 255));
28 draw(gch, l, simox::color::GlasbeyLUT::at(_color_offset, 255));
41 const auto&
s = side(gch);
42 const std::string name =
"grasp_" +
s.name +
"_" +
std::to_string(_color_offset++);
44 .file(
s.hand_model_package,
s.hand_model_path)
58 float ax_len,
float ax_width,
61 draw(side.
name, side, l, ax_len, ax_width, color_up, color_trans);
64 const std::string& name,
66 float ax_len,
float ax_width,
70 ax_len, ax_width, color_up, color_trans);
77 draw(
"", side, l, gpose, ax_len, ax_width, color_up, color_trans);
80 const std::string& name,
85 const Eigen::Vector3f hand_up =
86 simox::math::orientation(gpose) * side.
hand_up.normalized() * ax_len;
88 const Eigen::Vector3f transversal_outward =
89 simox::math::orientation(gpose) * side.
hand_transverse.normalized() * ax_len;
91 const Eigen::Vector3f tcp_pos = simox::math::position(gpose);
96 .fromTo(tcp_pos, tcp_pos + hand_up));
100 .fromTo(tcp_pos, tcp_pos + transversal_outward));
103 const grasp_candidate_drawer::side_data&
114 const auto nh =
rnh->getArm(
s);
115 const auto nh_w_rob = nh.addRobot(
robot);
116 auto&
data = _sides[
s];
118 data.hand_model_package = nh.getHandModelPackage();
119 data.hand_model_path = nh.getHandModelPath();
120 data.tcp_2_hroot = nh_w_rob.getTcp2HandRootTransform();