MCPcopy Create free account
hub / github.com/PickNikRobotics/rviz_visual_tools / TEST_F

Function TEST_F

tests/rvt_test.cpp:123–187  ·  view source on GitHub ↗

Run tests ------------------------------------------------------------------------------ */ Test rpy conversion

Source from the content-addressed store, hash-verified

121/* Run tests ------------------------------------------------------------------------------ */
122// Test rpy conversion
123TEST_F(RVTTest, test_rpy_conversions)
124{
125 // Identity conversions with RPY
126 Eigen::Isometry3d expected_affine = Eigen::Isometry3d::Identity();
127 std::vector<double> xyzrpy;
128 visual_tools_->convertToXYZRPY(expected_affine, xyzrpy);
129 std::vector<double> expected_vector;
130 expected_vector.push_back(0);
131 expected_vector.push_back(0);
132 expected_vector.push_back(0);
133 expected_vector.push_back(0);
134 expected_vector.push_back(0);
135 expected_vector.push_back(0);
136 EXPECT_TRUE(testVector("Identity: ", expected_vector, xyzrpy));
137
138 // Identity conversion back to Eigen
139 Eigen::Isometry3d expected_affine2 = visual_tools_->convertFromXYZRPY(xyzrpy, rvt::XYZ);
140 EXPECT_TRUE(testIsometry3d("Identity convert back", expected_affine, expected_affine2));
141
142 // -------------------------------------------------------------------
143 // Translation conversions to RPY
144 expected_affine.translation().x() = 1;
145 expected_affine.translation().y() = 2;
146 expected_affine.translation().z() = 3;
147 visual_tools_->convertToXYZRPY(expected_affine, xyzrpy);
148 expected_vector[0] = 1;
149 expected_vector[1] = 2;
150 expected_vector[2] = 3;
151 EXPECT_TRUE(testVector("123: ", expected_vector, xyzrpy));
152
153 // Translation convertion back to Eigen
154 expected_affine2 = visual_tools_->convertFromXYZRPY(xyzrpy, rvt::XYZ);
155 EXPECT_TRUE(testIsometry3d("123 convert back", expected_affine, expected_affine2));
156
157 // Translation convertion back to Eigen via long function
158 expected_affine2 = visual_tools_->convertFromXYZRPY(xyzrpy[0], xyzrpy[1], xyzrpy[2], xyzrpy[3],
159 xyzrpy[4], xyzrpy[5], rvt::XYZ);
160 EXPECT_TRUE(testIsometry3d("123 convert back long", expected_affine, expected_affine2));
161
162 // Translation convertion back to Eigen via NEW long function
163 expected_affine2 = visual_tools_->convertFromXYZRPY(xyzrpy[0], xyzrpy[1], xyzrpy[2], xyzrpy[3],
164 xyzrpy[4], xyzrpy[5], rvt::XYZ);
165 EXPECT_TRUE(testIsometry3d("123 convert back new long", expected_affine, expected_affine2));
166
167 // -------------------------------------------------------------------
168 // Rotation conversions to RPY
169 expected_affine = expected_affine * Eigen::AngleAxisd(M_PI, Eigen::Vector3d::UnitX()) *
170 Eigen::AngleAxisd(0.5 * M_PI, Eigen::Vector3d::UnitZ()) *
171 Eigen::AngleAxisd(-0.5 * M_PI, Eigen::Vector3d::UnitX());
172 visual_tools_->convertToXYZRPY(expected_affine, xyzrpy);
173
174 // Rotation convertion back to Eigen
175 expected_affine2 = visual_tools_->convertFromXYZRPY(xyzrpy, rvt::XYZ);
176 EXPECT_TRUE(testIsometry3d("123 convert back", expected_affine, expected_affine2));
177
178 // Rotation convertion back to Eigen via long function
179 expected_affine2 = visual_tools_->convertFromXYZRPY(xyzrpy[0], xyzrpy[1], xyzrpy[2], xyzrpy[3],
180 xyzrpy[4], xyzrpy[5], rvt::XYZ);

Callers

nothing calls this directly

Calls 3

convertToXYZRPYMethod · 0.80
convertFromXYZRPYMethod · 0.80
publishPathMethod · 0.80

Tested by

no test coverage detected