Initial commit

This commit is contained in:
2026-07-13 09:25:40 +07:00
parent c08ff54676
commit bccfb156d7
1938 changed files with 641646 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
using CartographerSharp.Sensor;
namespace RobotNet10.RobotApp.SLAM.Cartographer.Helpers;
/// <summary>
/// Point cloud data in both base_link and sensor (lidar) frame.
/// Pipeline produces both so Cartographer gets base_link for trajectory and MCL gets sensor_frame without re-transform.
/// </summary>
public sealed class RangeDataPayload
{
/// <summary>Point cloud in base_link (robot) frame — for Cartographer ITrajectoryBuilder.AddSensorData.</summary>
public TimedPointCloudData BaseLink { get; set; }
/// <summary>Point cloud in sensor (lidar) frame — for MCL OnScan (beam angles relative to sensor). SensorPipeline always produces this.</summary>
public TimedPointCloudData SensorFrame { get; set; }
/// <summary>Actual minimum angle (radians) of filtered point cloud in sensor frame — for MCL scan conversion.</summary>
public double ActualAngleMin { get; set; }
/// <summary>Actual maximum angle (radians) of filtered point cloud in sensor frame — for MCL scan conversion.</summary>
public double ActualAngleMax { get; set; }
/// <summary>Actual angle increment (radians) from original scan — for MCL scan conversion.</summary>
public double ActualAngleIncrement { get; set; }
}