10 #include <mrpt/opengl/COpenGLScene.h>
11 #include <mrpt/system/filesystem.h>
12 #include <mrpt/version.h>
22 using namespace mvsim;
47 parseSimulable(jnode, p);
69 const mrpt::optional_ref<mrpt::opengl::COpenGLScene>& viz,
70 const mrpt::optional_ref<mrpt::opengl::COpenGLScene>& physical,
71 [[maybe_unused]]
bool childrenOnly)
74 using namespace std::string_literals;
81 gl_plane_ = mrpt::opengl::CTexturedPlane::Create();
89 mrpt::typemeta::TEnumType<mrpt::opengl::TCullFace>::name2value(
cull_faces_));
98 ASSERT_FILE_EXISTS_(localFileName);
100 mrpt::img::CImage texture;
101 bool textureReadOk = texture.loadFromFile(localFileName);
102 ASSERT_(textureReadOk);
116 mrpt::opengl::CSetOfTexturedTriangles::TTriangle
t;
121 t.vertices[0].uv = {u_min, v_min};
122 t.vertices[1].uv = {u_max, v_min};
123 t.vertices[2].uv = {u_max, v_max};
129 mrpt::opengl::CSetOfTexturedTriangles::TTriangle
t;
134 t.vertices[0].uv = {u_min, v_min};
135 t.vertices[1].uv = {u_max, v_max};
136 t.vertices[2].uv = {u_min, v_max};
144 #if MRPT_VERSION >= 0x240
146 mrpt::typemeta::TEnumType<mrpt::opengl::TCullFace>::name2value(
cull_faces_));
179 getCPose3D().inverseComposePoint(mrpt::math::TPoint3D(worldXY.x, worldXY.y, .0));
187 auto p = myPose + mrpt::poses::CPose3D::FromTranslation(0, 0,
z_);