namespace RobotNet10.Shared.Sensor; /// /// LaserScan message (sensor_msgs/LaserScan) /// Single scan from a planar laser range-finder /// public struct LaserScan { /// /// Header with timestamp and frame ID /// public Header Header { get; set; } /// /// Start angle of the scan (rad) /// public double AngleMin { get; set; } /// /// End angle of the scan (rad) /// public double AngleMax { get; set; } /// /// Angular distance between measurements (rad) /// public double AngleIncrement { get; set; } /// /// Time between measurements (seconds) - if your scanner /// is moving, this will be used in interpolating position /// of 3d points /// public double TimeIncrement { get; set; } /// /// Time between scans (seconds) /// public double ScanTime { get; set; } /// /// Minimum range value (m) /// public double RangeMin { get; set; } /// /// Maximum range value (m) /// public double RangeMax { get; set; } /// /// Range data (m) /// (Note: values < range_min or > range_max should be discarded) /// public double[] Ranges { get; set; } /// /// Intensity data (device-specific units) /// If your device does not provide intensities, please leave the array empty /// public double[] Intensities { get; set; } /// /// Default constructor /// public LaserScan() { Header = new Header(); AngleMin = 0.0; AngleMax = 0.0; AngleIncrement = 0.0; TimeIncrement = 0.0; ScanTime = 0.0; RangeMin = 0.0; RangeMax = 0.0; Ranges = []; Intensities = []; } }