foxglove.PointCloud

A collection of N-dimensional points, which may contain additional fields with information like normals, intensity, etc.

RoboticsObservabilityVisualizationData PlatformPhysical AIAutonomyFleet ManagementDeveloper ToolsMCAPROS

Properties

Name Type Description
timestamp object Timestamp of point cloud
frame_id string Frame of reference
pose object The origin of the point cloud relative to the frame of reference
point_stride integer Number of bytes between points in the `data`
fields array Fields in `data`. At least 2 coordinate fields from `x`, `y`, and `z` are required for each point's position; `red`, `green`, `blue`, and `alpha` are optional for customizing each point's color.
data string Point data, interpreted using `fields`
View JSON Schema on GitHub

JSON Schema

foxglove-technologies-pointcloud.json Raw ↑
{
  "title": "foxglove.PointCloud",
  "description": "A collection of N-dimensional points, which may contain additional fields with information like normals, intensity, etc.",
  "$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 point cloud"
    },
    "frame_id": {
      "type": "string",
      "description": "Frame of reference"
    },
    "pose": {
      "title": "foxglove.Pose",
      "description": "The origin of the point cloud relative to the frame of reference",
      "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"
      ]
    },
    "point_stride": {
      "type": "integer",
      "minimum": 0,
      "description": "Number of bytes between points in the `data`"
    },
    "fields": {
      "type": "array",
      "items": {
        "title": "foxglove.PackedElementField",
        "description": "A field present within each element in a byte array of packed elements.",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the field"
          },
          "offset": {
            "type": "integer",
            "minimum": 0,
            "description": "Byte offset from start of data buffer"
          },
          "type": {
            "title": "foxglove.NumericType",
            "description": "Type of data in the field. Integers are stored using little-endian byte order.",
            "oneOf": [
              {
                "title": "UNKNOWN",
                "const": 0,
                "description": "Unknown numeric type"
              },
              {
                "title": "UINT8",
                "const": 1,
                "description": "Unsigned 8-bit integer"
              },
              {
                "title": "INT8",
                "const": 2,
                "description": "Signed 8-bit integer"
              },
              {
                "title": "UINT16",
                "const": 3,
                "description": "Unsigned 16-bit integer"
              },
              {
                "title": "INT16",
                "const": 4,
                "description": "Signed 16-bit integer"
              },
              {
                "title": "UINT32",
                "const": 5,
                "description": "Unsigned 32-bit integer"
              },
              {
                "title": "INT32",
                "const": 6,
                "description": "Signed 32-bit integer"
              },
              {
                "title": "FLOAT32",
                "const": 7,
                "description": "32-bit floating-point number"
              },
              {
                "title": "FLOAT64",
                "const": 8,
                "description": "64-bit floating-point number"
              }
            ]
          }
        },
        "required": [
          "name",
          "offset",
          "type"
        ]
      },
      "description": "Fields in `data`. At least 2 coordinate fields from `x`, `y`, and `z` are required for each point's position; `red`, `green`, `blue`, and `alpha` are optional for customizing each point's color."
    },
    "data": {
      "type": "string",
      "contentEncoding": "base64",
      "description": "Point data, interpreted using `fields`"
    }
  },
  "required": [
    "timestamp",
    "frame_id",
    "pose",
    "point_stride",
    "fields",
    "data"
  ]
}