foxglove.FrameTransforms

An array of FrameTransform messages

RoboticsObservabilityVisualizationData PlatformPhysical AIAutonomyFleet ManagementDeveloper ToolsMCAPROS

Properties

Name Type Description
transforms array Array of transforms
View JSON Schema on GitHub

JSON Schema

foxglove-technologies-frametransforms.json Raw ↑
{
  "title": "foxglove.FrameTransforms",
  "description": "An array of FrameTransform messages",
  "$comment": "Generated by https://github.com/foxglove/foxglove-sdk",
  "type": "object",
  "properties": {
    "transforms": {
      "type": "array",
      "items": {
        "title": "foxglove.FrameTransform",
        "description": "A transform between two reference frames in 3D space. The transform defines the position and orientation of a child frame within a parent frame. Translation moves the origin of the child frame relative to the parent origin. The rotation changes the orientation of the child frame around its origin.\n\nExamples:\n\n- With translation (x=1, y=0, z=0) and identity rotation (x=0, y=0, z=0, w=1), a point at (x=0, y=0, z=0) in the child frame maps to (x=1, y=0, z=0) in the parent frame.\n\n- With translation (x=1, y=2, z=0) and a 90-degree rotation around the z-axis (x=0, y=0, z=0.707, w=0.707), a point at (x=1, y=0, z=0) in the child frame maps to (x=-1, y=3, z=0) in the parent frame.",
        "type": "object",
        "properties": {
          "timestamp": {
            "type": "object",
            "title": "time",
            "properties": {
              "sec": {
                "type": "integer",
                "minimum": 0
              },
              "nsec": {
                "type": "integer",
                "minimum": 0,
                "maximum": 999999999
              }
            },
            "description": "Timestamp of transform"
          },
          "parent_frame_id": {
            "type": "string",
            "description": "Name of the parent frame"
          },
          "child_frame_id": {
            "type": "string",
            "description": "Name of the child frame"
          },
          "translation": {
            "title": "foxglove.Vector3",
            "description": "Translation component of the transform, representing the position of the child frame's origin in the parent frame.",
            "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"
            ]
          },
          "rotation": {
            "title": "foxglove.Quaternion",
            "description": "Rotation component of the transform, representing the orientation of the child frame in the parent frame",
            "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": [
          "timestamp",
          "parent_frame_id",
          "child_frame_id",
          "translation",
          "rotation"
        ]
      },
      "description": "Array of transforms"
    }
  },
  "required": [
    "transforms"
  ]
}