{ "title": "foxglove.LaserScan", "description": "A single scan from a planar laser range-finder", "$comment": "Generated by https://github.com/foxglove/foxglove-sdk", "type": "object", "properties": { "timestamp": { "type": "object", "title": "time", "properties": { "sec": { "type": "integer", "minimum": 0 }, "nsec": { "type": "integer", "minimum": 0, "maximum": 999999999 } }, "description": "Timestamp of scan" }, "frame_id": { "type": "string", "description": "Frame of reference" }, "pose": { "title": "foxglove.Pose", "description": "Origin of scan relative to frame of reference; points are positioned in the x-y plane relative to this origin; angles are interpreted as counterclockwise rotations around the z axis with 0 rad being in the +x direction", "type": "object", "properties": { "position": { "title": "foxglove.Vector3", "description": "Point denoting position in 3D space", "type": "object", "properties": { "x": { "type": "number", "description": "x component" }, "y": { "type": "number", "description": "y component" }, "z": { "type": "number", "description": "z component" } }, "required": [ "x", "y", "z" ] }, "orientation": { "title": "foxglove.Quaternion", "description": "Quaternion denoting orientation in 3D space", "type": "object", "properties": { "x": { "type": "number", "description": "x value" }, "y": { "type": "number", "description": "y value" }, "z": { "type": "number", "description": "z value" }, "w": { "type": "number", "description": "w value" } }, "required": [ "x", "y", "z", "w" ] } }, "required": [ "position", "orientation" ] }, "start_angle": { "type": "number", "description": "Bearing of first point, in radians" }, "end_angle": { "type": "number", "description": "Bearing of last point, in radians" }, "ranges": { "type": "array", "items": { "type": "number" }, "description": "Distance of detections from origin; assumed to be at equally-spaced angles between `start_angle` and `end_angle`" }, "intensities": { "type": "array", "items": { "type": "number" }, "description": "Intensity of detections" } }, "required": [ "timestamp", "frame_id", "pose", "start_angle", "end_angle", "ranges", "intensities" ] }