MCPcopy Create free account
hub / github.com/Robotics-STAR-Lab/RACER / cmdCallback

Function cmdCallback

swarm_exploration/plan_manage/test/process_msg.cpp:107–152  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

105}
106
107void cmdCallback(const quadrotor_msgs::PositionCommandConstPtr& msg) {
108 ROS_INFO_ONCE("start");
109 Eigen::Vector3d pt, v;
110 pt(0) = msg->position.x;
111 pt(1) = msg->position.y;
112 pt(2) = msg->position.z;
113 v(0) = msg->velocity.x;
114 v(1) = msg->velocity.y;
115 v(2) = msg->velocity.z;
116 auto cur_time = ros::Time::now();
117
118 // if (pt(0) > 5 && pt(1) < 3) return;
119
120 if (traj.size() > 0) {
121 distance1 += (pt - traj.back()).norm();
122 }
123
124 traj.push_back(pt);
125 vel.push_back(v);
126 displayTrajWithColor(traj, 0.1, Eigen::Vector4d(1, 0, 0, 1), 0);
127
128 double phi = msg->yaw;
129 yaw.push_back(phi);
130 yaw1.clear();
131 yaw2.clear();
132 for (int k = 0; k < 4; ++k) {
133 int idx = yaw.size() - 1 - 30 * k;
134 if (idx < 0) continue;
135 double phi_k = yaw[idx];
136 Eigen::Vector3d pt_k = traj[idx];
137 Eigen::Matrix3d Rwb;
138 Rwb << cos(phi_k), -sin(phi_k), 0, sin(phi_k), cos(phi_k), 0, 0, 0, 1;
139 for (int i = 0; i < cam1.size(); ++i) {
140 auto p1 = Rwb * cam1[i] + pt_k;
141 auto p2 = Rwb * cam2[i] + pt_k;
142 yaw1.push_back(p1);
143 yaw2.push_back(p2);
144 }
145 }
146 // displayLineList(yaw1, yaw2, 0.02, Eigen::Vector4d(0, 0, 0, 1), 0);
147
148 // std::cout << v(0) << "," << v(1) << "," << v(2) << ",";
149 if (v.norm() < 1e-3) {
150 ROS_INFO("end, distance: %lf", distance1);
151 }
152}
153
154bool endtraj = false;
155void trajCallback(const visualization_msgs::MarkerConstPtr& msg) {

Callers

nothing calls this directly

Calls 3

displayTrajWithColorFunction · 0.70
sizeMethod · 0.45
clearMethod · 0.45

Tested by

no test coverage detected