Skip to content

Releases: MRPT/mrpt

Release of v2.11.5

21 Dec 18:10
2.11.5
83cb50c
Compare
Choose a tag to compare

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.
    • \ref mrpt_system_grp
      • More readable results in mrpt::system::unitsFormat() for the special case of exactly 0.
  • BUG FIXES:
    • Fix filtering of NANs input point clouds in mrpt::maps::CPointsMap::insertAnotherMap().

Release of v2.11.4

15 Dec 09:15
2.11.4
aa7b1df
Compare
Choose a tag to compare

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.
    • \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.
  • 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).

Release of v2.11.3

22 Nov 21:19
2.11.3
3901411
Compare
Choose a tag to compare

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>
    • \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_ptrs 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.
  • 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()

Release of v2.11.2

25 Oct 15:14
2.11.2
cbe133f
Compare
Choose a tag to compare

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
    • \ref mrpt_ros2bridge_grp
      • Address the new field variance in sensor_msgs/Range (Closes issue #1270).
  • 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

23 Oct 14:11
2.11.1
0219e77
Compare
Choose a tag to compare

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 fixed 0.5.

Release of v2.11.0

18 Oct 23:06
2.11.0
932019c
Compare
Choose a tag to compare

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
  • 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

04 Oct 22:13
2.10.2
aad8f34
Compare
Choose a tag to compare

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 symbols MRPT_VERSION and MRPT_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 uses MRPT_VERSION>=xxx or MRPT_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.
  • 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).
  • 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

10 Aug 07:14
2.10.1
27757fb
Compare
Choose a tag to compare

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

08 Jul 22:20
2.10.0
9abe4e1
Compare
Choose a tag to compare

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
  • Python:
    • More pymrpt examples.
  • BUG FIXES:
    • pymrpt was not automatically built when invoking the python tests using make test_legacy.

Release of v2.9.4

01 Jul 09:22
2.9.4
93af46d
Compare
Choose a tag to compare

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 and to_double() method.
  • Build system:
    • Fix several modern cmake warnings.
  • BUG FIXES:
    • Fix fail to build with libftdi1 v1.4 (Ubuntu Focal).