Releases: MRPT/mrpt
Releases · MRPT/mrpt
Release of v2.5.0
Version 2.5.0: Released July 18th, 2022
- Changes in applications:
- RawLogViewer:
- New time-line UI for quickly navigating and selecting observations.
- New application:
- ros-map-yaml2mrpt: CLI tool to import ROS map_server maps into MRPT formats.
- RawLogViewer:
- Changes in libraries:
- \ref mrpt_containers_grp
- New functions mrpt::containers::find_closest() and mrpt::containers::find_closest_with_tolerance().
- mrpt::containers::yaml now also keeps information about line and column positions for each token, see mrpt::containers::yaml::node_t::marks
- \ref mrpt_core_grp
- mrpt::Clock::toDouble() now returns 0 for default-constructed (invalid) time_point.
- \ref mrpt_opengl_grp
- mrpt::opengl::CMesh supports having (x,y) limits with
maxCoord<minCoord
for flipped elevation and image meshes. - New flag mrpt::opengl::CAssimpModel::LoadFlags::IgnoreMaterialColor for mrpt::opengl::CAssimpModel::loadScene()
- A new rendering mode for default no-perspective transformations.
See mrpt::opengl::CCamera::setNoProjection()
- mrpt::opengl::CMesh supports having (x,y) limits with
- \ref mrpt_poses_grp
- Add correct displacement covariance calculation between two poses with cross-correlation via new method mrpt::poses::CPose3DQuatPDFGaussian::inverseCompositionCrossCorrelation() (Closes #1242)
- \ref mrpt_system_grp
- New funtions mrpt::system::toAbsolutePath(), mrpt::system::pathJoin()
- Most functions in \ref filesystem ported to C++17 std::filesystem
- \ref mrpt_tfest_grp
- New method TMatchingPairList::overallSquareError() for SE(3) poses (CPose3D).
- \ref mrpt_containers_grp
- Deprecations:
- The following macros, which were already deprecated, have been removed:
ASSERT_BELOW_
,ASSERT_ABOVE_()
,ASSERT_BELOWEQ_()
,ASSERT_ABOVEEQ_()
- The following macros, which were already deprecated, have been removed:
- Build system:
- Update fallback embedded version of octomap to v1.9.6
- BUG FIXES:
- FIX: OpenGL API errors if several CWxGLCanvasBase instances are updated simultaneously in the same program.
- mrpt::opengl::COpenGLViewport would throw if an uninitialized image is passed for rendering in "image mode".
- mrpt::system::formatTimeInterval() reported an incorrect number of milliseconds.
- Fix detection of Boost python module.
- Calling mrpt::opengl::CRenderizable::setColor_u8() did not force a regeneration of opengl buffer objects in all cases.
Release of v2.4.10
Version 2.4.10: Relased June 24th, 2022
- Changes in applications:
- ptg-configurator:
- New menu action to export selected path to matlab/octave script.
- RawLogViewer:
- Visual improvements and display of timestamps in local time too.
- ptg-configurator:
- Changes in libraries:
- \ref mrpt_poses_grp
- Adds covariance mapping to SE(3) for GTSAM (Closes #1229)
- \ref mrpt_ros1bridge_grp
- Import mrptToROSLoggerCallback() from the now obsolete mrpt_bridge package into mrpt::ros1bridge.
- \ref mrpt_poses_grp
- Build system
- Fix ROS version detection; select ROS2 if packages for both versions are found.
- BUG FIXES:
- Fix mrpt-comms rare timeout in busy build farms.
- mrpt::ros1bridge and mrpt::ros2bridge were not correctly exporting the
fromROS()
function for LaserScan messages.
Release of v2.4.9
Version 2.4.9: Released June 7th, 2022
- Changes in libraries
- \ref mrpt_math_grp
- new method mrpt::math::TPlane::signedDistance()
- \ref mrpt_ros2bridge_grp
- Fixed missing
find_package()
in module config.cmake file.
- Fixed missing
- \ref mrpt_math_grp
- BUG FIXES:
Release of v2.4.8
Version 2.4.8: Released May 26th, 2022
- Build system:
- Fixed various ROS-level public dependencies.
Release of v2.4.7
Version 2.4.7: Released May 26th, 2022
- Examples:
- gui_depth_camera_distortion: Added option to change distortion model.
- Build system
- Fixed ROS-level public dependency on suitesparse.
- Enable tinyxml2 for ROS builds.
- Changes in libraries:
- \ref mrpt_maps_grp
- Method mrpt::maps::CPointsMap::addFrom() removed, it overlapped with mrpt::maps::CPointsMap::insertAnotherMap()
- New optional parameter in mrpt::maps::CPointsMap::insertAnotherMap()
- \ref mrpt_obs_grp
- New option mrpt::obs::T3DPointsProjectionParams::onlyPointsWithIntensityColor
- \ref mrpt_maps_grp
Release of v2.4.5
Version 2.4.5: Released May 22nd, 2022
- Changes in libraries:
- New module mrpt_ros2bridge_grp to support conversions to/from ROS2 data types and MRPT classes.
- Build system:
- Fix detection of dependencies for both ROS1 and ROS2.
Release of v2.4.4
Version 2.4.4: Released March 5th, 2022
- New web-based applications
- All MRPT modules (including \ref mrpt_opengl_grp and mrpt-nanogui) are now compatible with Emscripten so they can run as Javascript + wasm on any modern browser.
- Changes in applications:
- RawlogViewer:
- Browse dialog: Smarter coloring of pointclouds; check all & none buttons for sensor layers.
- rawlog-edit:
- Operation
--camera-params
now also works for mrpt::obs::CObservation3DRangeScan observations. - New operation
--describe
.
- Operation
- RawlogViewer:
- Changes in libraries:
- \ref mrpt_poses_grp
- mrpt::poses::CPose3DQuat: Remove use of obsolete base class std::iterator.
- \ref mrpt_poses_grp
- 3rdparty libraries:
- Updated libfyaml to v0.7.12.
- Build system:
- Allow using libfyaml-dev system package if found.
- ROS package.xml: update dependencies so all sensors and mrpt-ros1bridge are enabled.
- Fix detection of ROS1 native
*_msgs
packages as build dependencies.
- BUG FIXES:
- ASSERT_NEAR_() did not work correctly when arguments were expressions with operators.
- Fixed incorrect parsing of strings with whitespaces in mrpt::from_string<>() when converting to std::string
- mrpt::obs::CObservation3DRangeScan::get_unproj_lut() was ignoring the depth camera distortion model and always assumed plumb_bob.
- mrpt::ros1bridge converter for IMU observations now correctly handles missing IMU readings (ROS convention of "-1" in covariance).
Release of v2.4.3
Version 2.4.3: Released Feb 22nd, 2022
- Changes in applications:
- navlog-viewer:
- The timestamp is now always shown.
- navlog-viewer:
- BUG FIXES:
- Do not run offscreen rendering unit tests in MIPS arch, since they seem to fail in autobuilders.
- mrpt::vision::checkerBoardCameraCalibration() did not return the distortion model (so if parameters are printed, it would look like no distortion at all!).
- mrpt::gui::CDisplayWindowGUI::createManagedSubWindow() created the subwindows helper UI on top of the other user windows. It now remains on the back of other windows.
Release of v2.4.2
Version 2.4.2: Released Feb 3rd, 2022
- Changes in libraries:
- \ref mrpt_containers_grp
- mrpt::container::yaml::operator(size_t) added, conditionally to
size_t
being a different type thanuint64_t
and such (Fixes build errors on OSX).
- mrpt::container::yaml::operator(size_t) added, conditionally to
- \ref mrpt_core_grp
- mrpt::callStackBackTrace() (and exception backtraces) now only use BFD to solve for line numbers in DEBUG builds, to avoid the large delay in processing each exception.
- New method mrpt::WorkerThreadsPool::size().
- \ref mrpt_expr_grp
- ExprTk updated to latest version.
- \ref mrpt_gui_grp
- GUI windows can now have custom icons via mrpt::gui::CDisplayWindowGUI::setIcon() or mrpt::gui::CDisplayWindowGUI::setIconFromData()
- \ref mrpt_img_grp
- New static method mrpt::img::CImage::LoadFromFile()
- \ref mrpt_math_grp
- Vector and matrix classes: add [[nodiscard]] to static "constructor" methods to avoid mistakes.
- \ref mrpt_opengl_grp
- mrpt::opengl::CFBORender now does not rely on GLUT to create opengl contexts, but on EGL.
- \ref mrpt_typemeta_grp
- Add syntactic sugar function mrpt::typemeta::str2enum<>().
- \ref mrpt_containers_grp
- BUG FIXES:
- mrpt::opengl::CFBORender did only render the
main
viewport, it now processes all of them. - Fix FTBFS with ffmpeg 5.0 (Debian Bug #1004585)
- mrpt::opengl::CFBORender did only render the
Release of v2.4.1
Version 2.4.1: Released Jan 5th, 2022
- Changes in build system:
- Disable -flto in nanogui (to avoid an Eigen regression).
- Changes in applications:
- rawlog-edit:
- New flag
--externals-filename-format
- New flag
- RawlogViewer:
- Better handling of exceptions failing to load delayed-load images.
- rawlog-edit:
- Changes in libraries:
- \ref mrpt_core_grp
- Remove unused header
<mrpt/3rdparty/llvm/propagate_const.h>
.
- Remove unused header
- \ref mrpt_graphs_grp
- mrpt::graphs::CDijkstra now has an optional maximum topological search range.
- \ref mrpt_math_grp
- New geometry functions:
- mrpt::math::intersect(const TPolygon2D& subject, const TPolygon2D& clipping)
- mrpt::math::signedArea(const mrpt::math::TPolygon2D& p)
- New geometry functions:
- \ref mrpt_obs_grp
- New function mrpt::obs::format_externals_filename()
- Embedded copy of nanoflann: upgraded to v1.4.0.
- \ref mrpt_core_grp
- BUG FIXES:
- Fix bug in mrpt::math::getAngle(const TPlane&, const TPlane&).
- Fix exception if mrpt::opengl::CFBORender is used with setProjectiveFromPinhole() camera models.
- Fix CMake Warning at cmakemodules/FindFilesystem.cmake and failure to detect the std::filesystem feature in some g++ versions.
- Fix numerical innacuracies with planar bounding boxes, fixed via new
epsilon
parameter in mrpt::math::TBoundingBox::intersection() - Fix sluggish rendering in opengl+wxWidgets controls (e.g. within RawLogViewer, etc.).