Foxglove Technologies · Schema
foxglove.LinePrimitive
A primitive representing a series of points connected by lines
RoboticsObservabilityVisualizationData PlatformPhysical AIAutonomyFleet ManagementDeveloper ToolsMCAPROS
Properties
| Name | Type | Description |
|---|---|---|
| type | object | Drawing primitive to use for lines |
| pose | object | Origin of lines relative to reference frame |
| thickness | number | Line thickness |
| scale_invariant | boolean | Indicates whether `thickness` is a fixed size in screen pixels (true), or specified in world coordinates and scales with distance from the camera (false) |
| points | array | Points along the line |
| color | object | Solid color to use for the whole line. Ignored if `colors` is non-empty. |
| colors | array | Per-point colors (if non-empty, must have the same length as `points`). |
| indices | array | Indices into the `points` and `colors` attribute arrays, which can be used to avoid duplicating attribute data. If omitted or empty, indexing will not be used. This default behavior is equivalent to s |
JSON Schema
{
"title": "foxglove.LinePrimitive",
"description": "A primitive representing a series of points connected by lines",
"$comment": "Generated by https://github.com/foxglove/foxglove-sdk",
"type": "object",
"properties": {
"type": {
"title": "foxglove.LineType",
"description": "Drawing primitive to use for lines",
"oneOf": [
{
"title": "LINE_STRIP",
"const": 0,
"description": "Connected line segments: 0-1, 1-2, ..., (n-1)-n"
},
{
"title": "LINE_LOOP",
"const": 1,
"description": "Closed polygon: 0-1, 1-2, ..., (n-1)-n, n-0"
},
{
"title": "LINE_LIST",
"const": 2,
"description": "Individual line segments: 0-1, 2-3, 4-5, ..."
}
]
},
"pose": {
"title": "foxglove.Pose",
"description": "Origin of lines relative to reference frame",
"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"
]
},
"thickness": {
"type": "number",
"description": "Line thickness"
},
"scale_invariant": {
"type": "boolean",
"description": "Indicates whether `thickness` is a fixed size in screen pixels (true), or specified in world coordinates and scales with distance from the camera (false)"
},
"points": {
"type": "array",
"items": {
"title": "foxglove.Point3",
"description": "A point representing a position in 3D space",
"type": "object",
"properties": {
"x": {
"type": "number",
"description": "x coordinate position"
},
"y": {
"type": "number",
"description": "y coordinate position"
},
"z": {
"type": "number",
"description": "z coordinate position"
}
},
"required": [
"x",
"y",
"z"
]
},
"description": "Points along the line"
},
"color": {
"title": "foxglove.Color",
"description": "Solid color to use for the whole line. Ignored if `colors` is non-empty.",
"type": "object",
"properties": {
"r": {
"type": "number",
"description": "Red value between 0 and 1"
},
"g": {
"type": "number",
"description": "Green value between 0 and 1"
},
"b": {
"type": "number",
"description": "Blue value between 0 and 1"
},
"a": {
"type": "number",
"description": "Alpha value between 0 and 1"
}
},
"required": [
"r",
"g",
"b",
"a"
]
},
"colors": {
"type": "array",
"items": {
"title": "foxglove.Color",
"description": "A color in RGBA format",
"type": "object",
"properties": {
"r": {
"type": "number",
"description": "Red value between 0 and 1"
},
"g": {
"type": "number",
"description": "Green value between 0 and 1"
},
"b": {
"type": "number",
"description": "Blue value between 0 and 1"
},
"a": {
"type": "number",
"description": "Alpha value between 0 and 1"
}
},
"required": [
"r",
"g",
"b",
"a"
]
},
"description": "Per-point colors (if non-empty, must have the same length as `points`)."
},
"indices": {
"type": "array",
"items": {
"type": "integer",
"minimum": 0
},
"description": "Indices into the `points` and `colors` attribute arrays, which can be used to avoid duplicating attribute data.\n\nIf omitted or empty, indexing will not be used. This default behavior is equivalent to specifying [0, 1, ..., N-1] for the indices (where N is the number of `points` provided)."
}
},
"required": [
"type",
"pose",
"thickness",
"scale_invariant",
"points",
"color",
"colors",
"indices"
]
}