Releases: MRPT/mrpt
Releases · MRPT/mrpt
Release of v2.11.5
Version 2.11.5: Released Dec 21st, 2023
- Changes in libraries:
- \ref mrpt_maps_grp
- New method mrpt::maps::CPointsMap::insertPointFrom() (and associated auxiliary methods) to easily copy points between different point clouds with different fields (timestamp, ring, RGB, etc.).
- \ref mrpt_obs_grp
- mrpt::maps::CSimpleMap changes:
- Added an optional twist field.
- Simplified API for preferred usage with structured binding tuples.
- mrpt::maps::CSimpleMap changes:
- \ref mrpt_system_grp
- More readable results in mrpt::system::unitsFormat() for the special case of exactly
0
.
- More readable results in mrpt::system::unitsFormat() for the special case of exactly
- \ref mrpt_maps_grp
- BUG FIXES:
- Fix filtering of NANs input point clouds in mrpt::maps::CPointsMap::insertAnotherMap().
Release of v2.11.4
Version 2.11.4: Released Dec 15th, 2023
- Changes in apps:
- RawLogViewer: visualize mrpt::obs::CObservationRotatingScan as point cloud + range image + intensity image.
- rawlog-edit:
--info
command now also shows the type of each sensor label.
- Changes in libraries:
- \ref mrpt_maps_grp
- Use nanoflann RKNN search in mrpt::maps::CPointsMap::nn_radius_search()
- Added a new point cloud class mrpt::maps::CPointsMapXYZIRT, including its Python and ROS wrappers.
- \ref mrpt_math_grp
- mrpt::math::KDTreeCapable: Add optional argument maximumSearchDistanceSqr in many API methods to exploit the new nanoflann RKNN search method.
- \ref mrpt_opengl_grp
- mrpt::opengl::PLY_Importer: Add support for importing point clouds with the
timestamp
property per point.
- mrpt::opengl::PLY_Importer: Add support for importing point clouds with the
- \ref mrpt_obs_grp
- mrpt::obs::CObservationRotatingScan:
- Moved from the library mrpt-maps to mrpt-obs, since it no longer requires any mrpt::maps class.
- Complete its implementation: insertion into point cloud, observation likelihood, visualization in RawLogViewer, etc.
- mrpt::obs::CObservationRotatingScan:
- \ref mrpt_maps_grp
- BUG FIXES:
- Fix missing Threads::Threads downstream due to missing
find_dependency(Threads)
in MRPT cmake config files. - Fix broken import of PLY files in SceneViewer3D (empty scene even if correctly imported).
- mrpt::math::CMatrixDynamic constructor from (row,col) was not marked explicit, leading to potential problems.
- mrpt::opengl::Viewport::setViewportPosition() did not handle negative width values as expected (i.e. pixel distances from the opposite corner).
- Fix missing Threads::Threads downstream due to missing
Release of v2.11.3
Version 2.11.3: Released Nov 21st, 2023
- Changes in libraries:
- \ref mrpt_core_grp
- Add the
[[nodiscard]]
attribute to all functions returning a value in<mrpt/core/bits_math.h>
- Add the
- \ref mrpt_maps_grp
- mrpt::maps::COccupancyGridMap3D::insertObservation() now also handles mrpt::obs::CObservationPointCloud
- New virtual interface mrpt::maps::NearestNeighborsCapable, implemented in:
- All mrpt::maps::CPointsMap classes
- All classes derived from mrpt::maps::CVoxelMapOccupancyBase
- mrpt::maps::COccupancyGridMap2D
- mrpt::maps::COccupancyGridMap2D
- New virtual method mrpt::maps::CMetricMap::boundingBox()
- mrpt::maps::TMetricMapInitializer now returns
shared_ptr
s instead of plain pointers. - mrpt::maps::TSetOfMetricMapInitializers::loadFromConfigFile() now throws if it finds a
*_count
entry with an unknown map class name.
- \ref mrpt_math_grp
- New template mrpt::math::confidenceIntervalsFromHistogram()
- \ref mrpt_obs_grp
- mrpt::maps::CMetricMap::loadFromSimpleMap() now automatically calls mrpt::obs::CObservation::load() and mrpt::obs::CObservation::unload() for all observations, so it works with lazy-load datasets.
- \ref mrpt_core_grp
- BUG FIXES:
- Fix compilation errors if using the
MCP_SAVE()
macro with class enum types. - Fix wrong cloud pose in CPointsMap::insertObservation() when inserting an mrpt::obs::CObservationPointCloud.
- Fix potential data race in mrpt::WorkerThreadsPool::pendingTasks()
- Fix compilation errors if using the
Release of v2.11.2
Version 2.11.2: Released Oct 25th, 2023
- Changes in libraries:
- \ref mrpt_gui_grp
- New function mrpt::gui::GetScaledClientSize().
- \ref mrpt_obs_grp
- Fix typo in data field: mrpt::obs::CObservationRange:
sensorConeApperture
->sensorConeAperture
- Fix typo in data field: mrpt::obs::CObservationRange:
- \ref mrpt_ros2bridge_grp
- Address the new field
variance
insensor_msgs/Range
(Closes issue #1270).
- Address the new field
- \ref mrpt_gui_grp
- BUG FIXES:
- Fix wrong rendering of all wxWidgets-based OpenGL windows when using Ubuntu's display settings to change UI to a size different than 100% (Fixes issue #1114).
- Fix ignored sensorPose of mrpt::obs::CObservationPointCloud while inserting them into voxel maps.
Release of v2.11.1
Version 2.11.1: Released Oct 23rd, 2023
- Changes in libraries:
- \ref mrpt_math_grp
- Fix several build warnings introduced in the last version.
- \ref mrpt_maps_grp
- Voxel maps: A voxel is considered occupied if its occupancy is larger than
likelihoodOptions.occupiedThreshold
instead of a fixed0.5
.
- Voxel maps: A voxel is considered occupied if its occupancy is larger than
- \ref mrpt_math_grp
Release of v2.11.0
Version 2.11.0: Released Oct 19th, 2023
- Changes in libraries:
- \ref mrpt_maps_grp
- New voxel map containers, based on Faconti's Bonxai header-only libray (MPL-2.0 license):
- mrpt::maps::CVoxelMap
- mrpt::maps::CVoxelMapRGB
- Example: \ref maps_voxelmap_from_tum_dataset
- Example: \ref maps_voxelmap_simple
- New voxel map containers, based on Faconti's Bonxai header-only libray (MPL-2.0 license):
- \ref mrpt_maps_grp
- BUG FIXES:
- Fix python wrapper FTBFS in armhf and other architectures.
- Fix matrices removeColumns() and removeRows() won't throw if user specified a non-existing index.
Release of v2.10.2
Version 2.10.2: Released Oct 5th, 2023
- Build system:
- ROS: fix missing deps in package.xml needed for build via Nix.
- MRPT and OpenCV versions were until now exposed as macros with 3 hexadecimal digits (e.g.
2.4.0
->0x240
), with a clear limitation of versions greater than 15. Now, both symbolsMRPT_VERSION
andMRPT_OPENCV_VERSION_NUM
use TWO hexadecimal digits per version part, like:2.10.2
->0x010A02
, which is much more general and safe for the future. For backwards compatibility, just make sure your user code only usesMRPT_VERSION>=xxx
orMRPT_VERSION>xxx
comparisons, instead of less-than comparisons (Fixes issue #1285).
- Changes in apps:
- rawlog-edit: Add
--select-label
optional filter to command--remap-timestamps
.
- rawlog-edit: Add
- Changes in libraries:
- mrpt-ros1bridge and mrpt-ros2bridge: Remove leftover printf debugging trace printing
Ok
to console. - \ref mrpt_hwdrivers_grp
- New overload mrpt::hwdrivers::CFFMPEG_InputStream::retrieveFrame() returning the frame PTS (presentation timestamp).
- mrpt-ros1bridge and mrpt-ros2bridge: Remove leftover printf debugging trace printing
- BUG FIXES:
- Fix CSparse "C" linkage build error (OSX Clang). PR #1280
- Fix missing Python wrapping of poses PDF (poses with uncertainty) composition (\oplus and \ominus) operators. (Closes #1281). PR #1283
- Fix wrong Jacobian in mrpt::math::CQuaternion::rpy_and_jacobian() for the case of Gimbal Lock. Thanks @giafranchini for reporting!. PR #1290 (Closes #1289)
- Fix spurious failures in offscreen render unit tests in RISCV64 (Closes #1287).
Release of v2.10.1
Version 2.10.1: Released August 10th, 2023
- Build system:
- Add cmake flag to disable LTO in pymrpt module.
- Add -flto=auto to pymrpt so linking is much faster.
- BUG FIXES:
- Fix "FTBFS when binutils-dev is installed but not libiberty-dev" (Debian bug #1041165)
- pymrpt Debian packaging: triggering of post/pre installation scripts was missing.
Release of v2.10.0
Version 2.10.0: Released July 9th, 2023
- Changes in libraries:
- \ref mrpt_opengl_grp
- Move the parameter eyeDistance2lightShadowExtension from TRenderMatrices to mrpt::opengl::TLightParameters so it can be changed from user code (ABI change).
- New parameter mrpt::opengl::TLightParameters::minimum_shadow_map_extension_ratio
- \ref mrpt_opengl_grp
- Python:
- More pymrpt examples.
- BUG FIXES:
- pymrpt was not automatically built when invoking the python tests using
make test_legacy
.
- pymrpt was not automatically built when invoking the python tests using
Release of v2.9.4
Version 2.9.4: Released July 1st, 2023
- Python:
- pymrpt now ships stub
.pyi
files, for IDEs to autocomplete MRPT Python programs. - maps and multimaps are iterable again (Fixes a regression in v2.9.3)
- timestamps now has a
__str__
operator andto_double()
method.
- pymrpt now ships stub
- Build system:
- Fix several modern cmake warnings.
- BUG FIXES:
- Fix fail to build with libftdi1 v1.4 (Ubuntu Focal).