95 pps[0] = base + pDist;
96 pps[1] = base +
CPose3D(0, 0, 0, 0, -
M_PI / 2, 0) + pDist;
97 pps[2] = base +
CPose3D(0, 0, 0, -
M_PI / 2, 0, 0) + pDist;
98 pps[3] = base +
CPose3D(0, 0, 0,
M_PI / 2, 0, 0) + pDist;
99 for (
size_t i = 0; i < 4; i++)
101 base.
x(), base.
y(), base.z(), pps[i].
x(), pps[i].y(), pps[i].z());
102 lines->setLineWidth(5);
103 lines->setColor(0, 0, 1);
110 CDisk::Ptr dsk = mrpt::make_aligned_shared<CDisk>();
124 for (
size_t i = 0; i < 5; i++)
127 CPolyhedron::CreateRandomPolyhedron(
MYRANDG(2, 2));
139 for (
size_t i = 0; i < 3; i++) md(i, i) =
MYRANDG(8.0, 1.0);
140 for (
size_t i = 0; i < 3; i++)
142 size_t ii = (i + 1) % 3;
143 md(i, ii) = md(ii, i) =
MYRANDG(sqrt(md(i, i) * md(ii, ii)));
145 ell->setCovMatrix(md);
146 configRandom(std::dynamic_pointer_cast<CRenderizable>(ell));
153 window.setPos(10, 10);
154 std::this_thread::sleep_for(20ms);
158 mrpt::make_aligned_shared<CGridPlaneXY>(-20, 20, -20, 20, 0, 1);
160 scene1->insert(plane1);
162 mrpt::make_aligned_shared<CAxis>(-5, -5, -5, 5, 5, 5, 2.5, 3,
true));
165 scene1->insert(world);
168 mrpt::make_aligned_shared<CAngularObservationMesh>();
171 CAngularObservationMesh::trace2DSetOfRays(
172 scene1, basePose, aom,
173 CAngularObservationMesh::TDoubleRange::CreateFromAmount(
175 CAngularObservationMesh::TDoubleRange::CreateFromAperture(
177 cout <<
"Elapsed time: " <<
t.Tac() <<
" seconds.\n";
178 aom->setColor(0, 1, 0);
179 aom->setWireframe(
true);
183 aom->getTracedRays(traced);
184 traced->setLineWidth(1.5);
185 traced->setColor(1, 0, 0);
187 scene1->insert(traced);
188 scene1->insert(guides);
198 CSphere::Ptr point = mrpt::make_aligned_shared<CSphere>(0.2);
199 point->setColor(0, 1, 0);
200 point->setPose(basePose);
201 scene1->insert(point);
203 window2.setPos(660, 10);
204 std::this_thread::sleep_for(20ms);
205 window.get3DSceneAndLock() = scene1;
206 window.unlockAccess3DScene();
207 window.setCameraElevationDeg(25.0f);
211 mrpt::make_aligned_shared<CGridPlaneXY>(-20, 20, -20, 20, 0, 1);
213 scene2->insert(plane2);
215 mrpt::make_aligned_shared<CAxis>(-5, -5, -5, 5, 5, 5, 2.5, 3,
true));
216 window2.unlockAccess3DScene();
217 window2.setCameraElevationDeg(25.0f);
226 cout <<
"Random seed: " <<
s <<
'\n';
233 catch (
const exception& e)
235 cout <<
"Error: " << e.what() <<
'.' << endl;
241 cout <<
"Unknown Error.\n";