@foxglove/schemas 0.4.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/settings.json +1 -1
- package/dist/cjs/schemas/typescript/ArrowPrimitive.d.ts +18 -0
- package/dist/cjs/schemas/typescript/ArrowPrimitive.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/ArrowPrimitive.js +4 -0
- package/dist/cjs/schemas/typescript/ArrowPrimitive.js.map +1 -0
- package/dist/cjs/schemas/typescript/CameraCalibration.d.ts +2 -0
- package/dist/cjs/schemas/typescript/CameraCalibration.d.ts.map +1 -1
- package/dist/cjs/schemas/typescript/CompressedImage.d.ts +2 -0
- package/dist/cjs/schemas/typescript/CompressedImage.d.ts.map +1 -1
- package/dist/cjs/schemas/typescript/CubePrimitive.d.ts +13 -0
- package/dist/cjs/schemas/typescript/CubePrimitive.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/CubePrimitive.js +4 -0
- package/dist/cjs/schemas/typescript/CubePrimitive.js.map +1 -0
- package/dist/cjs/schemas/typescript/CylinderPrimitive.d.ts +17 -0
- package/dist/cjs/schemas/typescript/CylinderPrimitive.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/CylinderPrimitive.js +4 -0
- package/dist/cjs/schemas/typescript/CylinderPrimitive.js.map +1 -0
- package/dist/cjs/schemas/typescript/KeyValuePair.d.ts +8 -0
- package/dist/cjs/schemas/typescript/KeyValuePair.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/KeyValuePair.js +4 -0
- package/dist/cjs/schemas/typescript/KeyValuePair.js.map +1 -0
- package/dist/cjs/schemas/typescript/LinePrimitive.d.ts +28 -0
- package/dist/cjs/schemas/typescript/LinePrimitive.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/LinePrimitive.js +4 -0
- package/dist/cjs/schemas/typescript/LinePrimitive.js.map +1 -0
- package/dist/cjs/schemas/typescript/LineType.d.ts +10 -0
- package/dist/cjs/schemas/typescript/LineType.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/LineType.js +15 -0
- package/dist/cjs/schemas/typescript/LineType.js.map +1 -0
- package/dist/cjs/schemas/typescript/ModelPrimitive.d.ts +21 -0
- package/dist/cjs/schemas/typescript/ModelPrimitive.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/ModelPrimitive.js +4 -0
- package/dist/cjs/schemas/typescript/ModelPrimitive.js.map +1 -0
- package/dist/cjs/schemas/typescript/RawImage.d.ts +2 -0
- package/dist/cjs/schemas/typescript/RawImage.d.ts.map +1 -1
- package/dist/cjs/schemas/typescript/SceneEntity.d.ts +43 -0
- package/dist/cjs/schemas/typescript/SceneEntity.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/SceneEntity.js +4 -0
- package/dist/cjs/schemas/typescript/SceneEntity.js.map +1 -0
- package/dist/cjs/schemas/typescript/SceneEntityDeletion.d.ts +12 -0
- package/dist/cjs/schemas/typescript/SceneEntityDeletion.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/SceneEntityDeletion.js +4 -0
- package/dist/cjs/schemas/typescript/SceneEntityDeletion.js.map +1 -0
- package/dist/cjs/schemas/typescript/SceneEntityDeletionType.d.ts +8 -0
- package/dist/cjs/schemas/typescript/SceneEntityDeletionType.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/SceneEntityDeletionType.js +13 -0
- package/dist/cjs/schemas/typescript/SceneEntityDeletionType.js.map +1 -0
- package/dist/cjs/schemas/typescript/SceneUpdate.d.ts +10 -0
- package/dist/cjs/schemas/typescript/SceneUpdate.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/SceneUpdate.js +4 -0
- package/dist/cjs/schemas/typescript/SceneUpdate.js.map +1 -0
- package/dist/cjs/schemas/typescript/SpherePrimitive.d.ts +13 -0
- package/dist/cjs/schemas/typescript/SpherePrimitive.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/SpherePrimitive.js +4 -0
- package/dist/cjs/schemas/typescript/SpherePrimitive.js.map +1 -0
- package/dist/cjs/schemas/typescript/TextPrimitive.d.ts +18 -0
- package/dist/cjs/schemas/typescript/TextPrimitive.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/TextPrimitive.js +4 -0
- package/dist/cjs/schemas/typescript/TextPrimitive.js.map +1 -0
- package/dist/cjs/schemas/typescript/TriangleListPrimitive.d.ts +21 -0
- package/dist/cjs/schemas/typescript/TriangleListPrimitive.d.ts.map +1 -0
- package/dist/cjs/schemas/typescript/TriangleListPrimitive.js +4 -0
- package/dist/cjs/schemas/typescript/TriangleListPrimitive.js.map +1 -0
- package/dist/cjs/schemas/typescript/index.d.ts +14 -0
- package/dist/cjs/schemas/typescript/index.d.ts.map +1 -1
- package/dist/cjs/schemas/typescript/index.js +14 -0
- package/dist/cjs/schemas/typescript/index.js.map +1 -1
- package/dist/cjs/src/generateJsonSchema.test.js +71 -71
- package/dist/cjs/src/generateProto.d.ts.map +1 -1
- package/dist/cjs/src/generateProto.js +21 -3
- package/dist/cjs/src/generateProto.js.map +1 -1
- package/dist/cjs/src/generateProto.test.js +26 -26
- package/dist/cjs/src/generateRos.js +3 -3
- package/dist/cjs/src/generateRos.js.map +1 -1
- package/dist/cjs/src/generateRos.test.js +116 -116
- package/dist/cjs/src/generateTypeScript.test.js +4 -4
- package/dist/cjs/src/schemas.d.ts +15 -1
- package/dist/cjs/src/schemas.d.ts.map +1 -1
- package/dist/cjs/src/schemas.js +559 -79
- package/dist/cjs/src/schemas.js.map +1 -1
- package/dist/cjs/src/schemas.test.js +17 -0
- package/dist/cjs/src/schemas.test.js.map +1 -1
- package/dist/cjs/src/testFixtures.d.ts.map +1 -1
- package/dist/cjs/src/testFixtures.js +1 -0
- package/dist/cjs/src/testFixtures.js.map +1 -1
- package/dist/cjs/src/types.d.ts +19 -17
- package/dist/cjs/src/types.d.ts.map +1 -1
- package/dist/esm/schemas/typescript/ArrowPrimitive.d.ts +18 -0
- package/dist/esm/schemas/typescript/ArrowPrimitive.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/ArrowPrimitive.js +3 -0
- package/dist/esm/schemas/typescript/ArrowPrimitive.js.map +1 -0
- package/dist/esm/schemas/typescript/CameraCalibration.d.ts +2 -0
- package/dist/esm/schemas/typescript/CameraCalibration.d.ts.map +1 -1
- package/dist/esm/schemas/typescript/CompressedImage.d.ts +2 -0
- package/dist/esm/schemas/typescript/CompressedImage.d.ts.map +1 -1
- package/dist/esm/schemas/typescript/CubePrimitive.d.ts +13 -0
- package/dist/esm/schemas/typescript/CubePrimitive.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/CubePrimitive.js +3 -0
- package/dist/esm/schemas/typescript/CubePrimitive.js.map +1 -0
- package/dist/esm/schemas/typescript/CylinderPrimitive.d.ts +17 -0
- package/dist/esm/schemas/typescript/CylinderPrimitive.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/CylinderPrimitive.js +3 -0
- package/dist/esm/schemas/typescript/CylinderPrimitive.js.map +1 -0
- package/dist/esm/schemas/typescript/KeyValuePair.d.ts +8 -0
- package/dist/esm/schemas/typescript/KeyValuePair.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/KeyValuePair.js +3 -0
- package/dist/esm/schemas/typescript/KeyValuePair.js.map +1 -0
- package/dist/esm/schemas/typescript/LinePrimitive.d.ts +28 -0
- package/dist/esm/schemas/typescript/LinePrimitive.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/LinePrimitive.js +3 -0
- package/dist/esm/schemas/typescript/LinePrimitive.js.map +1 -0
- package/dist/esm/schemas/typescript/LineType.d.ts +10 -0
- package/dist/esm/schemas/typescript/LineType.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/LineType.js +12 -0
- package/dist/esm/schemas/typescript/LineType.js.map +1 -0
- package/dist/esm/schemas/typescript/ModelPrimitive.d.ts +21 -0
- package/dist/esm/schemas/typescript/ModelPrimitive.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/ModelPrimitive.js +3 -0
- package/dist/esm/schemas/typescript/ModelPrimitive.js.map +1 -0
- package/dist/esm/schemas/typescript/RawImage.d.ts +2 -0
- package/dist/esm/schemas/typescript/RawImage.d.ts.map +1 -1
- package/dist/esm/schemas/typescript/SceneEntity.d.ts +43 -0
- package/dist/esm/schemas/typescript/SceneEntity.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/SceneEntity.js +3 -0
- package/dist/esm/schemas/typescript/SceneEntity.js.map +1 -0
- package/dist/esm/schemas/typescript/SceneEntityDeletion.d.ts +12 -0
- package/dist/esm/schemas/typescript/SceneEntityDeletion.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/SceneEntityDeletion.js +3 -0
- package/dist/esm/schemas/typescript/SceneEntityDeletion.js.map +1 -0
- package/dist/esm/schemas/typescript/SceneEntityDeletionType.d.ts +8 -0
- package/dist/esm/schemas/typescript/SceneEntityDeletionType.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/SceneEntityDeletionType.js +10 -0
- package/dist/esm/schemas/typescript/SceneEntityDeletionType.js.map +1 -0
- package/dist/esm/schemas/typescript/SceneUpdate.d.ts +10 -0
- package/dist/esm/schemas/typescript/SceneUpdate.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/SceneUpdate.js +3 -0
- package/dist/esm/schemas/typescript/SceneUpdate.js.map +1 -0
- package/dist/esm/schemas/typescript/SpherePrimitive.d.ts +13 -0
- package/dist/esm/schemas/typescript/SpherePrimitive.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/SpherePrimitive.js +3 -0
- package/dist/esm/schemas/typescript/SpherePrimitive.js.map +1 -0
- package/dist/esm/schemas/typescript/TextPrimitive.d.ts +18 -0
- package/dist/esm/schemas/typescript/TextPrimitive.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/TextPrimitive.js +3 -0
- package/dist/esm/schemas/typescript/TextPrimitive.js.map +1 -0
- package/dist/esm/schemas/typescript/TriangleListPrimitive.d.ts +21 -0
- package/dist/esm/schemas/typescript/TriangleListPrimitive.d.ts.map +1 -0
- package/dist/esm/schemas/typescript/TriangleListPrimitive.js +3 -0
- package/dist/esm/schemas/typescript/TriangleListPrimitive.js.map +1 -0
- package/dist/esm/schemas/typescript/index.d.ts +14 -0
- package/dist/esm/schemas/typescript/index.d.ts.map +1 -1
- package/dist/esm/schemas/typescript/index.js +14 -0
- package/dist/esm/schemas/typescript/index.js.map +1 -1
- package/dist/esm/src/generateJsonSchema.test.js +71 -71
- package/dist/esm/src/generateProto.d.ts.map +1 -1
- package/dist/esm/src/generateProto.js +21 -3
- package/dist/esm/src/generateProto.js.map +1 -1
- package/dist/esm/src/generateProto.test.js +26 -26
- package/dist/esm/src/generateRos.js +4 -4
- package/dist/esm/src/generateRos.js.map +1 -1
- package/dist/esm/src/generateRos.test.js +116 -116
- package/dist/esm/src/generateTypeScript.test.js +4 -4
- package/dist/esm/src/schemas.d.ts +15 -1
- package/dist/esm/src/schemas.d.ts.map +1 -1
- package/dist/esm/src/schemas.js +559 -79
- package/dist/esm/src/schemas.js.map +1 -1
- package/dist/esm/src/schemas.test.js +17 -0
- package/dist/esm/src/schemas.test.js.map +1 -1
- package/dist/esm/src/testFixtures.d.ts.map +1 -1
- package/dist/esm/src/testFixtures.js +1 -0
- package/dist/esm/src/testFixtures.js.map +1 -1
- package/dist/esm/src/types.d.ts +19 -17
- package/dist/esm/src/types.d.ts.map +1 -1
- package/jest.config.json +8 -8
- package/package.json +18 -18
- package/schemas/README.md +1069 -13
- package/schemas/jsonschema/ArrowPrimitive.json +96 -0
- package/schemas/jsonschema/CameraCalibration.json +4 -0
- package/schemas/jsonschema/CompressedImage.json +4 -0
- package/schemas/jsonschema/CubePrimitive.json +99 -0
- package/schemas/jsonschema/CylinderPrimitive.json +107 -0
- package/schemas/jsonschema/KeyValuePair.json +16 -0
- package/schemas/jsonschema/LinePrimitive.json +167 -0
- package/schemas/jsonschema/ModelPrimitive.json +116 -0
- package/schemas/jsonschema/RawImage.json +4 -0
- package/schemas/jsonschema/SceneEntity.json +1012 -0
- package/schemas/jsonschema/SceneEntityDeletion.json +44 -0
- package/schemas/jsonschema/SceneUpdate.json +1070 -0
- package/schemas/jsonschema/SpherePrimitive.json +99 -0
- package/schemas/jsonschema/TextPrimitive.json +96 -0
- package/schemas/jsonschema/TriangleListPrimitive.json +138 -0
- package/schemas/proto/foxglove/ArrowPrimitive.proto +29 -0
- package/schemas/proto/foxglove/CameraCalibration.proto +3 -0
- package/schemas/proto/foxglove/CompressedImage.proto +3 -0
- package/schemas/proto/foxglove/CubePrimitive.proto +21 -0
- package/schemas/proto/foxglove/CylinderPrimitive.proto +27 -0
- package/schemas/proto/foxglove/KeyValuePair.proto +14 -0
- package/schemas/proto/foxglove/LinePrimitive.proto +49 -0
- package/schemas/proto/foxglove/ModelPrimitive.proto +33 -0
- package/schemas/proto/foxglove/RawImage.proto +3 -0
- package/schemas/proto/foxglove/SceneEntity.proto +62 -0
- package/schemas/proto/foxglove/SceneEntityDeletion.proto +27 -0
- package/schemas/proto/foxglove/SceneUpdate.proto +17 -0
- package/schemas/proto/foxglove/SpherePrimitive.proto +21 -0
- package/schemas/proto/foxglove/TextPrimitive.proto +29 -0
- package/schemas/proto/foxglove/TriangleListPrimitive.proto +29 -0
- package/schemas/ros1/ArrowPrimitive.msg +22 -0
- package/schemas/ros1/CameraCalibration.msg +3 -0
- package/schemas/ros1/CompressedImage.msg +3 -0
- package/schemas/ros1/CubePrimitive.msg +13 -0
- package/schemas/ros1/CylinderPrimitive.msg +19 -0
- package/schemas/ros1/KeyValuePair.msg +10 -0
- package/schemas/ros1/LinePrimitive.msg +39 -0
- package/schemas/ros1/ModelPrimitive.msg +25 -0
- package/schemas/ros1/RawImage.msg +3 -0
- package/schemas/ros1/SceneEntity.msg +46 -0
- package/schemas/ros1/SceneEntityDeletion.msg +19 -0
- package/schemas/ros1/SceneUpdate.msg +10 -0
- package/schemas/ros1/SpherePrimitive.msg +13 -0
- package/schemas/ros1/TextPrimitive.msg +22 -0
- package/schemas/ros1/TriangleListPrimitive.msg +21 -0
- package/schemas/ros2/ArrowPrimitive.msg +22 -0
- package/schemas/ros2/CameraCalibration.msg +3 -0
- package/schemas/ros2/CompressedImage.msg +3 -0
- package/schemas/ros2/CubePrimitive.msg +13 -0
- package/schemas/ros2/CylinderPrimitive.msg +19 -0
- package/schemas/ros2/KeyValuePair.msg +10 -0
- package/schemas/ros2/LinePrimitive.msg +39 -0
- package/schemas/ros2/ModelPrimitive.msg +25 -0
- package/schemas/ros2/RawImage.msg +3 -0
- package/schemas/ros2/SceneEntity.msg +46 -0
- package/schemas/ros2/SceneEntityDeletion.msg +19 -0
- package/schemas/ros2/SceneUpdate.msg +10 -0
- package/schemas/ros2/SpherePrimitive.msg +13 -0
- package/schemas/ros2/TextPrimitive.msg +22 -0
- package/schemas/ros2/TriangleListPrimitive.msg +21 -0
- package/schemas/typescript/ArrowPrimitive.ts +25 -0
- package/schemas/typescript/CameraCalibration.ts +3 -0
- package/schemas/typescript/CompressedImage.ts +3 -0
- package/schemas/typescript/CubePrimitive.ts +17 -0
- package/schemas/typescript/CylinderPrimitive.ts +23 -0
- package/schemas/typescript/KeyValuePair.ts +10 -0
- package/schemas/typescript/LinePrimitive.ts +37 -0
- package/schemas/typescript/LineType.ts +13 -0
- package/schemas/typescript/ModelPrimitive.ts +29 -0
- package/schemas/typescript/RawImage.ts +3 -0
- package/schemas/typescript/SceneEntity.ts +58 -0
- package/schemas/typescript/SceneEntityDeletion.ts +16 -0
- package/schemas/typescript/SceneEntityDeletionType.ts +10 -0
- package/schemas/typescript/SceneUpdate.ts +13 -0
- package/schemas/typescript/SpherePrimitive.ts +17 -0
- package/schemas/typescript/TextPrimitive.ts +25 -0
- package/schemas/typescript/TriangleListPrimitive.ts +27 -0
- package/schemas/typescript/index.ts +14 -0
- package/src/generateJsonSchema.test.ts +71 -71
- package/src/generateProto.test.ts +26 -26
- package/src/generateProto.ts +33 -4
- package/src/generateRos.test.ts +116 -116
- package/src/generateRos.ts +6 -6
- package/src/generateTypeScript.test.ts +4 -4
- package/src/schemas.test.ts +19 -0
- package/src/schemas.ts +608 -79
- package/src/testFixtures.ts +1 -0
- package/src/types.ts +14 -11
package/src/schemas.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FoxgloveEnumSchema, FoxgloveMessageSchema } from "./types";
|
|
2
2
|
|
|
3
|
-
const
|
|
3
|
+
const Color: FoxgloveMessageSchema = {
|
|
4
4
|
type: "message",
|
|
5
5
|
name: "Color",
|
|
6
6
|
description: "A color in RGBA format",
|
|
@@ -28,7 +28,7 @@ const foxglove_Color: FoxgloveMessageSchema = {
|
|
|
28
28
|
],
|
|
29
29
|
};
|
|
30
30
|
|
|
31
|
-
const
|
|
31
|
+
const Vector2: FoxgloveMessageSchema = {
|
|
32
32
|
type: "message",
|
|
33
33
|
name: "Vector2",
|
|
34
34
|
description: "A vector in 2D space that represents a direction only",
|
|
@@ -46,7 +46,7 @@ const foxglove_Vector2: FoxgloveMessageSchema = {
|
|
|
46
46
|
],
|
|
47
47
|
};
|
|
48
48
|
|
|
49
|
-
const
|
|
49
|
+
const Vector3: FoxgloveMessageSchema = {
|
|
50
50
|
type: "message",
|
|
51
51
|
name: "Vector3",
|
|
52
52
|
description: "A vector in 3D space that represents a direction only",
|
|
@@ -70,7 +70,7 @@ const foxglove_Vector3: FoxgloveMessageSchema = {
|
|
|
70
70
|
],
|
|
71
71
|
};
|
|
72
72
|
|
|
73
|
-
const
|
|
73
|
+
const Point2: FoxgloveMessageSchema = {
|
|
74
74
|
type: "message",
|
|
75
75
|
name: "Point2",
|
|
76
76
|
description: "A point representing a position in 2D space",
|
|
@@ -88,7 +88,7 @@ const foxglove_Point2: FoxgloveMessageSchema = {
|
|
|
88
88
|
],
|
|
89
89
|
};
|
|
90
90
|
|
|
91
|
-
const
|
|
91
|
+
const Point3: FoxgloveMessageSchema = {
|
|
92
92
|
type: "message",
|
|
93
93
|
name: "Point3",
|
|
94
94
|
description: "A point representing a position in 3D space",
|
|
@@ -112,7 +112,7 @@ const foxglove_Point3: FoxgloveMessageSchema = {
|
|
|
112
112
|
],
|
|
113
113
|
};
|
|
114
114
|
|
|
115
|
-
const
|
|
115
|
+
const Quaternion: FoxgloveMessageSchema = {
|
|
116
116
|
type: "message",
|
|
117
117
|
name: "Quaternion",
|
|
118
118
|
description: "A [quaternion](https://eater.net/quaternions) representing a rotation in 3D space",
|
|
@@ -141,7 +141,7 @@ const foxglove_Quaternion: FoxgloveMessageSchema = {
|
|
|
141
141
|
],
|
|
142
142
|
};
|
|
143
143
|
|
|
144
|
-
const
|
|
144
|
+
const Pose: FoxgloveMessageSchema = {
|
|
145
145
|
type: "message",
|
|
146
146
|
name: "Pose",
|
|
147
147
|
description: "A position and orientation for an object or reference frame in 3D space",
|
|
@@ -149,18 +149,512 @@ const foxglove_Pose: FoxgloveMessageSchema = {
|
|
|
149
149
|
fields: [
|
|
150
150
|
{
|
|
151
151
|
name: "position",
|
|
152
|
-
type: { type: "nested", schema:
|
|
152
|
+
type: { type: "nested", schema: Vector3 },
|
|
153
153
|
description: "Point denoting position in 3D space",
|
|
154
154
|
},
|
|
155
155
|
{
|
|
156
156
|
name: "orientation",
|
|
157
|
-
type: { type: "nested", schema:
|
|
157
|
+
type: { type: "nested", schema: Quaternion },
|
|
158
158
|
description: "Quaternion denoting orientation in 3D space",
|
|
159
159
|
},
|
|
160
160
|
],
|
|
161
161
|
};
|
|
162
162
|
|
|
163
|
-
const
|
|
163
|
+
const KeyValuePair: FoxgloveMessageSchema = {
|
|
164
|
+
type: "message",
|
|
165
|
+
name: "KeyValuePair",
|
|
166
|
+
description: "(Experimental, subject to change) A key with its associated value",
|
|
167
|
+
fields: [
|
|
168
|
+
{
|
|
169
|
+
name: "key",
|
|
170
|
+
type: { type: "primitive", name: "string" },
|
|
171
|
+
description: "Key",
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
name: "value",
|
|
175
|
+
type: { type: "primitive", name: "string" },
|
|
176
|
+
description: "Value",
|
|
177
|
+
},
|
|
178
|
+
],
|
|
179
|
+
};
|
|
180
|
+
|
|
181
|
+
const SceneEntityDeletionType: FoxgloveEnumSchema = {
|
|
182
|
+
type: "enum",
|
|
183
|
+
name: "SceneEntityDeletionType",
|
|
184
|
+
protobufParentMessageName: "SceneEntityDeletion",
|
|
185
|
+
protobufEnumName: "Type",
|
|
186
|
+
description:
|
|
187
|
+
"(Experimental, subject to change) An enumeration indicating which entities should match a SceneEntityDeletion command",
|
|
188
|
+
values: [
|
|
189
|
+
{
|
|
190
|
+
value: 0,
|
|
191
|
+
name: "MATCHING_ID",
|
|
192
|
+
description: "Delete the existing entity on the same topic that has the provided `id`",
|
|
193
|
+
},
|
|
194
|
+
{ value: 1, name: "ALL", description: "Delete all existing entities on the same topic" },
|
|
195
|
+
],
|
|
196
|
+
};
|
|
197
|
+
|
|
198
|
+
const SceneEntityDeletion: FoxgloveMessageSchema = {
|
|
199
|
+
type: "message",
|
|
200
|
+
name: "SceneEntityDeletion",
|
|
201
|
+
description: "(Experimental, subject to change) Command to remove previously published entities",
|
|
202
|
+
fields: [
|
|
203
|
+
{
|
|
204
|
+
name: "timestamp",
|
|
205
|
+
type: { type: "primitive", name: "time" },
|
|
206
|
+
description:
|
|
207
|
+
"Timestamp of the deletion. Only matching entities earlier than this timestamp will be deleted.",
|
|
208
|
+
},
|
|
209
|
+
{
|
|
210
|
+
name: "type",
|
|
211
|
+
type: { type: "enum", enum: SceneEntityDeletionType },
|
|
212
|
+
description: "Type of deletion action to perform",
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
name: "id",
|
|
216
|
+
type: { type: "primitive", name: "string" },
|
|
217
|
+
description: "Identifier which must match if `type` is `MATCHING_ID`.",
|
|
218
|
+
},
|
|
219
|
+
],
|
|
220
|
+
};
|
|
221
|
+
|
|
222
|
+
const ArrowPrimitive: FoxgloveMessageSchema = {
|
|
223
|
+
type: "message",
|
|
224
|
+
name: "ArrowPrimitive",
|
|
225
|
+
description: "(Experimental, subject to change) A primitive representing an arrow",
|
|
226
|
+
fields: [
|
|
227
|
+
{
|
|
228
|
+
name: "pose",
|
|
229
|
+
type: { type: "nested", schema: Pose },
|
|
230
|
+
description:
|
|
231
|
+
"Position of the arrow's tail and orientation of the arrow. Identity orientation means the arrow points in the +x direction.",
|
|
232
|
+
},
|
|
233
|
+
{
|
|
234
|
+
name: "shaft_length",
|
|
235
|
+
type: { type: "primitive", name: "float64" },
|
|
236
|
+
description: "Length of the arrow shaft",
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
name: "shaft_diameter",
|
|
240
|
+
type: { type: "primitive", name: "float64" },
|
|
241
|
+
description: "Diameter of the arrow shaft",
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
name: "head_length",
|
|
245
|
+
type: { type: "primitive", name: "float64" },
|
|
246
|
+
description: "Length of the arrow head",
|
|
247
|
+
},
|
|
248
|
+
{
|
|
249
|
+
name: "head_diameter",
|
|
250
|
+
type: { type: "primitive", name: "float64" },
|
|
251
|
+
description: "Diameter of the arrow head",
|
|
252
|
+
},
|
|
253
|
+
{
|
|
254
|
+
name: "color",
|
|
255
|
+
type: { type: "nested", schema: Color },
|
|
256
|
+
description: "Color of the arrow",
|
|
257
|
+
},
|
|
258
|
+
],
|
|
259
|
+
};
|
|
260
|
+
|
|
261
|
+
const CubePrimitive: FoxgloveMessageSchema = {
|
|
262
|
+
type: "message",
|
|
263
|
+
name: "CubePrimitive",
|
|
264
|
+
description:
|
|
265
|
+
"(Experimental, subject to change) A primitive representing a cube or rectangular prism",
|
|
266
|
+
fields: [
|
|
267
|
+
{
|
|
268
|
+
name: "pose",
|
|
269
|
+
type: { type: "nested", schema: Pose },
|
|
270
|
+
description: "Position of the center of the cube and orientation of the cube",
|
|
271
|
+
},
|
|
272
|
+
{
|
|
273
|
+
name: "size",
|
|
274
|
+
type: { type: "nested", schema: Vector3 },
|
|
275
|
+
description: "Size of the cube along each axis",
|
|
276
|
+
},
|
|
277
|
+
{
|
|
278
|
+
name: "color",
|
|
279
|
+
type: { type: "nested", schema: Color },
|
|
280
|
+
description: "Color of the arrow",
|
|
281
|
+
},
|
|
282
|
+
],
|
|
283
|
+
};
|
|
284
|
+
|
|
285
|
+
const SpherePrimitive: FoxgloveMessageSchema = {
|
|
286
|
+
type: "message",
|
|
287
|
+
name: "SpherePrimitive",
|
|
288
|
+
description: "(Experimental, subject to change) A primitive representing a sphere or ellipsoid",
|
|
289
|
+
fields: [
|
|
290
|
+
{
|
|
291
|
+
name: "pose",
|
|
292
|
+
type: { type: "nested", schema: Pose },
|
|
293
|
+
description: "Position of the center of the sphere and orientation of the sphere",
|
|
294
|
+
},
|
|
295
|
+
{
|
|
296
|
+
name: "size",
|
|
297
|
+
type: { type: "nested", schema: Vector3 },
|
|
298
|
+
description: "Size (diameter) of the sphere along each axis",
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
name: "color",
|
|
302
|
+
type: { type: "nested", schema: Color },
|
|
303
|
+
description: "Color of the sphere",
|
|
304
|
+
},
|
|
305
|
+
],
|
|
306
|
+
};
|
|
307
|
+
|
|
308
|
+
const CylinderPrimitive: FoxgloveMessageSchema = {
|
|
309
|
+
type: "message",
|
|
310
|
+
name: "CylinderPrimitive",
|
|
311
|
+
description:
|
|
312
|
+
"(Experimental, subject to change) A primitive representing a cylinder, elliptic cylinder, or truncated cone",
|
|
313
|
+
fields: [
|
|
314
|
+
{
|
|
315
|
+
name: "pose",
|
|
316
|
+
type: { type: "nested", schema: Pose },
|
|
317
|
+
description:
|
|
318
|
+
"Position of the center of the cylinder and orientation of the cylinder. The flat face(s) are perpendicular to the z-axis.",
|
|
319
|
+
},
|
|
320
|
+
{
|
|
321
|
+
name: "size",
|
|
322
|
+
type: { type: "nested", schema: Vector3 },
|
|
323
|
+
description: "Size of the cylinder's bounding box",
|
|
324
|
+
},
|
|
325
|
+
{
|
|
326
|
+
name: "bottom_scale",
|
|
327
|
+
type: { type: "primitive", name: "float64" },
|
|
328
|
+
description:
|
|
329
|
+
"0-1, ratio of the diameter of the cylinder's bottom face (min z) to the bottom of the bounding box",
|
|
330
|
+
},
|
|
331
|
+
{
|
|
332
|
+
name: "top_scale",
|
|
333
|
+
type: { type: "primitive", name: "float64" },
|
|
334
|
+
description:
|
|
335
|
+
"0-1, ratio of the diameter of the cylinder's top face (max z) to the top of the bounding box",
|
|
336
|
+
},
|
|
337
|
+
{
|
|
338
|
+
name: "color",
|
|
339
|
+
type: { type: "nested", schema: Color },
|
|
340
|
+
description: "Color of the cylinder",
|
|
341
|
+
},
|
|
342
|
+
],
|
|
343
|
+
};
|
|
344
|
+
|
|
345
|
+
const LineType: FoxgloveEnumSchema = {
|
|
346
|
+
type: "enum",
|
|
347
|
+
name: "LineType",
|
|
348
|
+
protobufParentMessageName: "LinePrimitive",
|
|
349
|
+
protobufEnumName: "Type",
|
|
350
|
+
description:
|
|
351
|
+
"(Experimental, subject to change) An enumeration indicating how input points should be interpreted to create lines",
|
|
352
|
+
values: [
|
|
353
|
+
{ value: 0, name: "LINE_STRIP", description: "0-1, 1-2, ..., (n-1)-n" },
|
|
354
|
+
{ value: 1, name: "LINE_LOOP", description: "0-1, 1-2, ..., (n-1)-n, n-0" },
|
|
355
|
+
{ value: 2, name: "LINE_LIST", description: "0-1, 2-3, 4-5, ..." },
|
|
356
|
+
],
|
|
357
|
+
};
|
|
358
|
+
|
|
359
|
+
const LinePrimitive: FoxgloveMessageSchema = {
|
|
360
|
+
type: "message",
|
|
361
|
+
name: "LinePrimitive",
|
|
362
|
+
description:
|
|
363
|
+
"(Experimental, subject to change) A primitive representing a series of points connected by lines",
|
|
364
|
+
fields: [
|
|
365
|
+
{
|
|
366
|
+
name: "type",
|
|
367
|
+
type: { type: "enum", enum: LineType },
|
|
368
|
+
description: "Drawing primitive to use for lines",
|
|
369
|
+
},
|
|
370
|
+
{
|
|
371
|
+
name: "pose",
|
|
372
|
+
type: { type: "nested", schema: Pose },
|
|
373
|
+
description: "Origin of lines relative to reference frame",
|
|
374
|
+
},
|
|
375
|
+
{
|
|
376
|
+
name: "thickness",
|
|
377
|
+
type: { type: "primitive", name: "float64" },
|
|
378
|
+
description: "Line thickness",
|
|
379
|
+
},
|
|
380
|
+
{
|
|
381
|
+
name: "scale_invariant",
|
|
382
|
+
type: { type: "primitive", name: "boolean" },
|
|
383
|
+
description:
|
|
384
|
+
"Indicates whether `thickness` is a fixed size in screen pixels (true), or specified in world coordinates and scales with distance from the camera (false)",
|
|
385
|
+
},
|
|
386
|
+
{
|
|
387
|
+
name: "points",
|
|
388
|
+
type: { type: "nested", schema: Point3 },
|
|
389
|
+
array: true,
|
|
390
|
+
description: "Points along the line",
|
|
391
|
+
},
|
|
392
|
+
{
|
|
393
|
+
name: "color",
|
|
394
|
+
type: { type: "nested", schema: Color },
|
|
395
|
+
description:
|
|
396
|
+
"Solid color to use for the whole line. One of `color` or `colors` must be provided.",
|
|
397
|
+
},
|
|
398
|
+
{
|
|
399
|
+
name: "colors",
|
|
400
|
+
type: { type: "nested", schema: Color },
|
|
401
|
+
array: true,
|
|
402
|
+
description:
|
|
403
|
+
"Per-point colors (if specified, must have the same length as `points`). One of `color` or `colors` must be provided.",
|
|
404
|
+
},
|
|
405
|
+
{
|
|
406
|
+
name: "indices",
|
|
407
|
+
type: { type: "primitive", name: "uint32" },
|
|
408
|
+
array: true,
|
|
409
|
+
description:
|
|
410
|
+
"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).",
|
|
411
|
+
},
|
|
412
|
+
],
|
|
413
|
+
};
|
|
414
|
+
|
|
415
|
+
const TextPrimitive: FoxgloveMessageSchema = {
|
|
416
|
+
type: "message",
|
|
417
|
+
name: "TextPrimitive",
|
|
418
|
+
description: "(Experimental, subject to change) A primitive representing a text label",
|
|
419
|
+
fields: [
|
|
420
|
+
{
|
|
421
|
+
name: "pose",
|
|
422
|
+
type: { type: "nested", schema: Pose },
|
|
423
|
+
description:
|
|
424
|
+
"Position of the center of the text box and orientation of the text. Identity orientation means the text is oriented in the xy-plane and flows from -x to +x.",
|
|
425
|
+
},
|
|
426
|
+
{
|
|
427
|
+
name: "billboard",
|
|
428
|
+
type: { type: "primitive", name: "boolean" },
|
|
429
|
+
description:
|
|
430
|
+
"Whether the text should respect `pose.orientation` (false) or always face the camera (true)",
|
|
431
|
+
},
|
|
432
|
+
{
|
|
433
|
+
name: "font_size",
|
|
434
|
+
type: { type: "primitive", name: "float64" },
|
|
435
|
+
description: "Font size (height of one line of text)",
|
|
436
|
+
},
|
|
437
|
+
{
|
|
438
|
+
name: "scale_invariant",
|
|
439
|
+
type: { type: "primitive", name: "boolean" },
|
|
440
|
+
description:
|
|
441
|
+
"Indicates whether `font_size` is a fixed size in screen pixels (true), or specified in world coordinates and scales with distance from the camera (false)",
|
|
442
|
+
},
|
|
443
|
+
{
|
|
444
|
+
name: "color",
|
|
445
|
+
type: { type: "nested", schema: Color },
|
|
446
|
+
description: "Color of the text",
|
|
447
|
+
},
|
|
448
|
+
{
|
|
449
|
+
name: "text",
|
|
450
|
+
type: { type: "primitive", name: "string" },
|
|
451
|
+
description: "Text",
|
|
452
|
+
},
|
|
453
|
+
],
|
|
454
|
+
};
|
|
455
|
+
|
|
456
|
+
const TriangleListPrimitive: FoxgloveMessageSchema = {
|
|
457
|
+
type: "message",
|
|
458
|
+
name: "TriangleListPrimitive",
|
|
459
|
+
description:
|
|
460
|
+
"(Experimental, subject to change) A primitive representing a set of triangles or a surface tiled by triangles",
|
|
461
|
+
fields: [
|
|
462
|
+
{
|
|
463
|
+
name: "pose",
|
|
464
|
+
type: { type: "nested", schema: Pose },
|
|
465
|
+
description: "Origin of triangles relative to reference frame",
|
|
466
|
+
},
|
|
467
|
+
{
|
|
468
|
+
name: "points",
|
|
469
|
+
type: { type: "nested", schema: Point3 },
|
|
470
|
+
array: true,
|
|
471
|
+
description:
|
|
472
|
+
"Vertices to use for triangles, interpreted as a list of triples (0-1-2, 3-4-5, ...)",
|
|
473
|
+
},
|
|
474
|
+
{
|
|
475
|
+
name: "color",
|
|
476
|
+
type: { type: "nested", schema: Color },
|
|
477
|
+
description:
|
|
478
|
+
"Solid color to use for the whole shape. One of `color` or `colors` must be provided.",
|
|
479
|
+
},
|
|
480
|
+
{
|
|
481
|
+
name: "colors",
|
|
482
|
+
type: { type: "nested", schema: Color },
|
|
483
|
+
array: true,
|
|
484
|
+
description:
|
|
485
|
+
"Per-vertex colors (if specified, must have the same length as `points`). One of `color` or `colors` must be provided.",
|
|
486
|
+
},
|
|
487
|
+
{
|
|
488
|
+
name: "indices",
|
|
489
|
+
type: { type: "primitive", name: "uint32" },
|
|
490
|
+
array: true,
|
|
491
|
+
description:
|
|
492
|
+
"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).",
|
|
493
|
+
},
|
|
494
|
+
],
|
|
495
|
+
};
|
|
496
|
+
|
|
497
|
+
const ModelPrimitive: FoxgloveMessageSchema = {
|
|
498
|
+
type: "message",
|
|
499
|
+
name: "ModelPrimitive",
|
|
500
|
+
description:
|
|
501
|
+
"(Experimental, subject to change) A primitive representing a 3D model file loaded from an external URL or embedded data",
|
|
502
|
+
fields: [
|
|
503
|
+
{
|
|
504
|
+
name: "pose",
|
|
505
|
+
type: { type: "nested", schema: Pose },
|
|
506
|
+
description: "Origin of model relative to reference frame",
|
|
507
|
+
},
|
|
508
|
+
{
|
|
509
|
+
name: "scale",
|
|
510
|
+
type: { type: "nested", schema: Vector3 },
|
|
511
|
+
description: "Scale factor to apply to the model along each axis",
|
|
512
|
+
},
|
|
513
|
+
{
|
|
514
|
+
name: "color",
|
|
515
|
+
type: { type: "nested", schema: Color },
|
|
516
|
+
description: "Solid color to use for the whole model if `override_color` is true.",
|
|
517
|
+
},
|
|
518
|
+
{
|
|
519
|
+
name: "override_color",
|
|
520
|
+
type: { type: "primitive", name: "boolean" },
|
|
521
|
+
description:
|
|
522
|
+
"Whether to use the color specified in `color` instead of any materials embedded in the original model.",
|
|
523
|
+
},
|
|
524
|
+
{
|
|
525
|
+
name: "url",
|
|
526
|
+
type: { type: "primitive", name: "string" },
|
|
527
|
+
description: "URL pointing to model file. One of `url` or `data` should be provided.",
|
|
528
|
+
},
|
|
529
|
+
{
|
|
530
|
+
name: "media_type",
|
|
531
|
+
type: { type: "primitive", name: "string" },
|
|
532
|
+
description:
|
|
533
|
+
"[Media type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of embedded model (e.g. `model/gltf-binary`). Required if `data` is provided instead of `url`. Overrides the inferred media type if `url` is provided.",
|
|
534
|
+
},
|
|
535
|
+
{
|
|
536
|
+
name: "data",
|
|
537
|
+
type: { type: "primitive", name: "bytes" },
|
|
538
|
+
description:
|
|
539
|
+
"Embedded model. One of `url` or `data` should be provided. If `data` is provided, `media_type` must be set to indicate the type of the data.",
|
|
540
|
+
},
|
|
541
|
+
],
|
|
542
|
+
};
|
|
543
|
+
|
|
544
|
+
const SceneEntity: FoxgloveMessageSchema = {
|
|
545
|
+
type: "message",
|
|
546
|
+
name: "SceneEntity",
|
|
547
|
+
description:
|
|
548
|
+
"(Experimental, subject to change) A visual element in a 3D scene. An entity may be composed of multiple primitives which all share the same frame of reference.",
|
|
549
|
+
fields: [
|
|
550
|
+
{
|
|
551
|
+
name: "timestamp",
|
|
552
|
+
type: { type: "primitive", name: "time" },
|
|
553
|
+
description: "Timestamp of the entity",
|
|
554
|
+
},
|
|
555
|
+
{
|
|
556
|
+
name: "frame_id",
|
|
557
|
+
type: { type: "primitive", name: "string" },
|
|
558
|
+
description: "Frame of reference",
|
|
559
|
+
},
|
|
560
|
+
{
|
|
561
|
+
name: "id",
|
|
562
|
+
type: { type: "primitive", name: "string" },
|
|
563
|
+
description:
|
|
564
|
+
"Identifier for the entity. A entity will replace any prior entity on the same topic with the same `id`.",
|
|
565
|
+
},
|
|
566
|
+
{
|
|
567
|
+
name: "lifetime",
|
|
568
|
+
type: { type: "primitive", name: "duration" },
|
|
569
|
+
description:
|
|
570
|
+
"Length of time (relative to `timestamp`) after which the entity should be automatically removed. Zero value indicates the entity should remain visible until it is replaced or deleted.",
|
|
571
|
+
},
|
|
572
|
+
{
|
|
573
|
+
name: "frame_locked",
|
|
574
|
+
type: { type: "primitive", name: "boolean" },
|
|
575
|
+
description:
|
|
576
|
+
"Whether the entity should keep its location in the fixed frame (false) or follow the frame specified in `frame_id` as it moves relative to the fixed frame (true)",
|
|
577
|
+
},
|
|
578
|
+
{
|
|
579
|
+
name: "metadata",
|
|
580
|
+
type: { type: "nested", schema: KeyValuePair },
|
|
581
|
+
array: true,
|
|
582
|
+
description:
|
|
583
|
+
"Additional user-provided metadata associated with the entity. Keys must be unique.",
|
|
584
|
+
},
|
|
585
|
+
{
|
|
586
|
+
name: "arrows",
|
|
587
|
+
type: { type: "nested", schema: ArrowPrimitive },
|
|
588
|
+
array: true,
|
|
589
|
+
description: "Arrow primitives",
|
|
590
|
+
},
|
|
591
|
+
{
|
|
592
|
+
name: "cubes",
|
|
593
|
+
type: { type: "nested", schema: CubePrimitive },
|
|
594
|
+
array: true,
|
|
595
|
+
description: "Cube primitives",
|
|
596
|
+
},
|
|
597
|
+
{
|
|
598
|
+
name: "spheres",
|
|
599
|
+
type: { type: "nested", schema: SpherePrimitive },
|
|
600
|
+
array: true,
|
|
601
|
+
description: "Sphere primitives",
|
|
602
|
+
},
|
|
603
|
+
{
|
|
604
|
+
name: "cylinders",
|
|
605
|
+
type: { type: "nested", schema: CylinderPrimitive },
|
|
606
|
+
array: true,
|
|
607
|
+
description: "Cylinder primitives",
|
|
608
|
+
},
|
|
609
|
+
{
|
|
610
|
+
name: "lines",
|
|
611
|
+
type: { type: "nested", schema: LinePrimitive },
|
|
612
|
+
array: true,
|
|
613
|
+
description: "Line primitives",
|
|
614
|
+
},
|
|
615
|
+
{
|
|
616
|
+
name: "triangles",
|
|
617
|
+
type: { type: "nested", schema: TriangleListPrimitive },
|
|
618
|
+
array: true,
|
|
619
|
+
description: "Triangle list primitives",
|
|
620
|
+
},
|
|
621
|
+
{
|
|
622
|
+
name: "texts",
|
|
623
|
+
type: { type: "nested", schema: TextPrimitive },
|
|
624
|
+
array: true,
|
|
625
|
+
description: "Text primitives",
|
|
626
|
+
},
|
|
627
|
+
{
|
|
628
|
+
name: "models",
|
|
629
|
+
type: { type: "nested", schema: ModelPrimitive },
|
|
630
|
+
array: true,
|
|
631
|
+
description: "Model primitives",
|
|
632
|
+
},
|
|
633
|
+
],
|
|
634
|
+
};
|
|
635
|
+
|
|
636
|
+
const SceneUpdate: FoxgloveMessageSchema = {
|
|
637
|
+
type: "message",
|
|
638
|
+
name: "SceneUpdate",
|
|
639
|
+
description:
|
|
640
|
+
"(Experimental, subject to change) An update to the entities displayed in a 3D scene",
|
|
641
|
+
fields: [
|
|
642
|
+
{
|
|
643
|
+
name: "deletions",
|
|
644
|
+
type: { type: "nested", schema: SceneEntityDeletion },
|
|
645
|
+
array: true,
|
|
646
|
+
description: "Scene entities to delete",
|
|
647
|
+
},
|
|
648
|
+
{
|
|
649
|
+
name: "entities",
|
|
650
|
+
type: { type: "nested", schema: SceneEntity },
|
|
651
|
+
array: true,
|
|
652
|
+
description: "Scene entities to add or replace",
|
|
653
|
+
},
|
|
654
|
+
],
|
|
655
|
+
};
|
|
656
|
+
|
|
657
|
+
const CameraCalibration: FoxgloveMessageSchema = {
|
|
164
658
|
type: "message",
|
|
165
659
|
name: "CameraCalibration",
|
|
166
660
|
description: "Camera calibration parameters",
|
|
@@ -170,6 +664,13 @@ const foxglove_CameraCalibration: FoxgloveMessageSchema = {
|
|
|
170
664
|
type: { type: "primitive", name: "time" },
|
|
171
665
|
description: "Timestamp of calibration data",
|
|
172
666
|
},
|
|
667
|
+
{
|
|
668
|
+
name: "frame_id",
|
|
669
|
+
type: { type: "primitive", name: "string" },
|
|
670
|
+
description:
|
|
671
|
+
"Frame of reference for the camera. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image.",
|
|
672
|
+
protobufFieldNumber: 9,
|
|
673
|
+
},
|
|
173
674
|
{
|
|
174
675
|
name: "width",
|
|
175
676
|
type: { type: "primitive", name: "uint32" },
|
|
@@ -250,7 +751,7 @@ This holds for both images of a stereo pair.
|
|
|
250
751
|
],
|
|
251
752
|
};
|
|
252
753
|
|
|
253
|
-
const
|
|
754
|
+
const CompressedImage: FoxgloveMessageSchema = {
|
|
254
755
|
type: "message",
|
|
255
756
|
name: "CompressedImage",
|
|
256
757
|
description: "A compressed image",
|
|
@@ -260,6 +761,13 @@ const foxglove_CompressedImage: FoxgloveMessageSchema = {
|
|
|
260
761
|
type: { type: "primitive", name: "time" },
|
|
261
762
|
description: "Timestamp of image",
|
|
262
763
|
},
|
|
764
|
+
{
|
|
765
|
+
name: "frame_id",
|
|
766
|
+
type: { type: "primitive", name: "string" },
|
|
767
|
+
description:
|
|
768
|
+
"Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image.",
|
|
769
|
+
protobufFieldNumber: 4,
|
|
770
|
+
},
|
|
263
771
|
{
|
|
264
772
|
name: "data",
|
|
265
773
|
type: { type: "primitive", name: "bytes" },
|
|
@@ -273,7 +781,7 @@ const foxglove_CompressedImage: FoxgloveMessageSchema = {
|
|
|
273
781
|
],
|
|
274
782
|
};
|
|
275
783
|
|
|
276
|
-
const
|
|
784
|
+
const RawImage: FoxgloveMessageSchema = {
|
|
277
785
|
type: "message",
|
|
278
786
|
name: "RawImage",
|
|
279
787
|
description: "A raw image",
|
|
@@ -283,6 +791,13 @@ const foxglove_RawImage: FoxgloveMessageSchema = {
|
|
|
283
791
|
type: { type: "primitive", name: "time" },
|
|
284
792
|
description: "Timestamp of image",
|
|
285
793
|
},
|
|
794
|
+
{
|
|
795
|
+
name: "frame_id",
|
|
796
|
+
type: { type: "primitive", name: "string" },
|
|
797
|
+
description:
|
|
798
|
+
"Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image.",
|
|
799
|
+
protobufFieldNumber: 7,
|
|
800
|
+
},
|
|
286
801
|
{
|
|
287
802
|
name: "width",
|
|
288
803
|
type: { type: "primitive", name: "uint32" },
|
|
@@ -311,7 +826,7 @@ const foxglove_RawImage: FoxgloveMessageSchema = {
|
|
|
311
826
|
],
|
|
312
827
|
};
|
|
313
828
|
|
|
314
|
-
const
|
|
829
|
+
const FrameTransform: FoxgloveMessageSchema = {
|
|
315
830
|
type: "message",
|
|
316
831
|
name: "FrameTransform",
|
|
317
832
|
description: "A transform between two reference frames in 3D space",
|
|
@@ -333,18 +848,18 @@ const foxglove_FrameTransform: FoxgloveMessageSchema = {
|
|
|
333
848
|
},
|
|
334
849
|
{
|
|
335
850
|
name: "translation",
|
|
336
|
-
type: { type: "nested", schema:
|
|
851
|
+
type: { type: "nested", schema: Vector3 },
|
|
337
852
|
description: "Translation component of the transform",
|
|
338
853
|
},
|
|
339
854
|
{
|
|
340
855
|
name: "rotation",
|
|
341
|
-
type: { type: "nested", schema:
|
|
856
|
+
type: { type: "nested", schema: Quaternion },
|
|
342
857
|
description: "Rotation component of the transform",
|
|
343
858
|
},
|
|
344
859
|
],
|
|
345
860
|
};
|
|
346
861
|
|
|
347
|
-
const
|
|
862
|
+
const PoseInFrame: FoxgloveMessageSchema = {
|
|
348
863
|
type: "message",
|
|
349
864
|
name: "PoseInFrame",
|
|
350
865
|
description: "A timestamped pose for an object or reference frame in 3D space",
|
|
@@ -361,13 +876,13 @@ const foxglove_PoseInFrame: FoxgloveMessageSchema = {
|
|
|
361
876
|
},
|
|
362
877
|
{
|
|
363
878
|
name: "pose",
|
|
364
|
-
type: { type: "nested", schema:
|
|
879
|
+
type: { type: "nested", schema: Pose },
|
|
365
880
|
description: "Pose in 3D space",
|
|
366
881
|
},
|
|
367
882
|
],
|
|
368
883
|
};
|
|
369
884
|
|
|
370
|
-
const
|
|
885
|
+
const PosesInFrame: FoxgloveMessageSchema = {
|
|
371
886
|
type: "message",
|
|
372
887
|
name: "PosesInFrame",
|
|
373
888
|
description: "An array of timestamped poses for an object or reference frame in 3D space",
|
|
@@ -384,14 +899,14 @@ const foxglove_PosesInFrame: FoxgloveMessageSchema = {
|
|
|
384
899
|
},
|
|
385
900
|
{
|
|
386
901
|
name: "poses",
|
|
387
|
-
type: { type: "nested", schema:
|
|
902
|
+
type: { type: "nested", schema: Pose },
|
|
388
903
|
description: "Poses in 3D space",
|
|
389
904
|
array: true,
|
|
390
905
|
},
|
|
391
906
|
],
|
|
392
907
|
};
|
|
393
908
|
|
|
394
|
-
const
|
|
909
|
+
const GeoJSON: FoxgloveMessageSchema = {
|
|
395
910
|
type: "message",
|
|
396
911
|
name: "GeoJSON",
|
|
397
912
|
description: "GeoJSON data for annotating maps",
|
|
@@ -404,7 +919,7 @@ const foxglove_GeoJSON: FoxgloveMessageSchema = {
|
|
|
404
919
|
],
|
|
405
920
|
};
|
|
406
921
|
|
|
407
|
-
const
|
|
922
|
+
const NumericType: FoxgloveEnumSchema = {
|
|
408
923
|
type: "enum",
|
|
409
924
|
name: "NumericType",
|
|
410
925
|
description: "Numeric type",
|
|
@@ -423,7 +938,7 @@ const foxglove_NumericType: FoxgloveEnumSchema = {
|
|
|
423
938
|
],
|
|
424
939
|
};
|
|
425
940
|
|
|
426
|
-
const
|
|
941
|
+
const PackedElementField: FoxgloveMessageSchema = {
|
|
427
942
|
type: "message",
|
|
428
943
|
name: "PackedElementField",
|
|
429
944
|
description: "A field present within each element in a byte array of packed elements.",
|
|
@@ -440,13 +955,13 @@ const foxglove_PackedElementField: FoxgloveMessageSchema = {
|
|
|
440
955
|
},
|
|
441
956
|
{
|
|
442
957
|
name: "type",
|
|
443
|
-
type: { type: "enum", enum:
|
|
958
|
+
type: { type: "enum", enum: NumericType },
|
|
444
959
|
description: "Type of data in the field. Integers are stored using little-endian byte order.",
|
|
445
960
|
},
|
|
446
961
|
],
|
|
447
962
|
};
|
|
448
963
|
|
|
449
|
-
const
|
|
964
|
+
const Grid: FoxgloveMessageSchema = {
|
|
450
965
|
type: "message",
|
|
451
966
|
name: "Grid",
|
|
452
967
|
description: "A 2D grid of data",
|
|
@@ -463,7 +978,7 @@ const foxglove_Grid: FoxgloveMessageSchema = {
|
|
|
463
978
|
},
|
|
464
979
|
{
|
|
465
980
|
name: "pose",
|
|
466
|
-
type: { type: "nested", schema:
|
|
981
|
+
type: { type: "nested", schema: Pose },
|
|
467
982
|
description:
|
|
468
983
|
"Origin of grid's corner relative to frame of reference; grid is positioned in the x-y plane relative to this origin",
|
|
469
984
|
},
|
|
@@ -474,7 +989,7 @@ const foxglove_Grid: FoxgloveMessageSchema = {
|
|
|
474
989
|
},
|
|
475
990
|
{
|
|
476
991
|
name: "cell_size",
|
|
477
|
-
type: { type: "nested", schema:
|
|
992
|
+
type: { type: "nested", schema: Vector2 },
|
|
478
993
|
description: "Size of single grid cell along x and y axes, relative to `pose`",
|
|
479
994
|
},
|
|
480
995
|
{
|
|
@@ -489,7 +1004,7 @@ const foxglove_Grid: FoxgloveMessageSchema = {
|
|
|
489
1004
|
},
|
|
490
1005
|
{
|
|
491
1006
|
name: "fields",
|
|
492
|
-
type: { type: "nested", schema:
|
|
1007
|
+
type: { type: "nested", schema: PackedElementField },
|
|
493
1008
|
array: true,
|
|
494
1009
|
description: "Fields in `data`",
|
|
495
1010
|
},
|
|
@@ -501,7 +1016,7 @@ const foxglove_Grid: FoxgloveMessageSchema = {
|
|
|
501
1016
|
],
|
|
502
1017
|
};
|
|
503
1018
|
|
|
504
|
-
const
|
|
1019
|
+
const CircleAnnotation: FoxgloveMessageSchema = {
|
|
505
1020
|
type: "message",
|
|
506
1021
|
name: "CircleAnnotation",
|
|
507
1022
|
description: "A circle annotation on a 2D image",
|
|
@@ -513,7 +1028,7 @@ const foxglove_CircleAnnotation: FoxgloveMessageSchema = {
|
|
|
513
1028
|
},
|
|
514
1029
|
{
|
|
515
1030
|
name: "position",
|
|
516
|
-
type: { type: "nested", schema:
|
|
1031
|
+
type: { type: "nested", schema: Point2 },
|
|
517
1032
|
description: "Center of the circle in 2D image coordinates",
|
|
518
1033
|
},
|
|
519
1034
|
{
|
|
@@ -528,18 +1043,18 @@ const foxglove_CircleAnnotation: FoxgloveMessageSchema = {
|
|
|
528
1043
|
},
|
|
529
1044
|
{
|
|
530
1045
|
name: "fill_color",
|
|
531
|
-
type: { type: "nested", schema:
|
|
1046
|
+
type: { type: "nested", schema: Color },
|
|
532
1047
|
description: "Fill color",
|
|
533
1048
|
},
|
|
534
1049
|
{
|
|
535
1050
|
name: "outline_color",
|
|
536
|
-
type: { type: "nested", schema:
|
|
1051
|
+
type: { type: "nested", schema: Color },
|
|
537
1052
|
description: "Outline color",
|
|
538
1053
|
},
|
|
539
1054
|
],
|
|
540
1055
|
};
|
|
541
1056
|
|
|
542
|
-
const
|
|
1057
|
+
const PointsAnnotationType: FoxgloveEnumSchema = {
|
|
543
1058
|
type: "enum",
|
|
544
1059
|
name: "PointsAnnotationType",
|
|
545
1060
|
description: "Type of points annotation",
|
|
@@ -554,7 +1069,7 @@ const foxglove_PointsAnnotationType: FoxgloveEnumSchema = {
|
|
|
554
1069
|
],
|
|
555
1070
|
};
|
|
556
1071
|
|
|
557
|
-
const
|
|
1072
|
+
const PointsAnnotation: FoxgloveMessageSchema = {
|
|
558
1073
|
type: "message",
|
|
559
1074
|
name: "PointsAnnotation",
|
|
560
1075
|
description: "An array of points on a 2D image",
|
|
@@ -566,30 +1081,30 @@ const foxglove_PointsAnnotation: FoxgloveMessageSchema = {
|
|
|
566
1081
|
},
|
|
567
1082
|
{
|
|
568
1083
|
name: "type",
|
|
569
|
-
type: { type: "enum", enum:
|
|
1084
|
+
type: { type: "enum", enum: PointsAnnotationType },
|
|
570
1085
|
description: "Type of points annotation to draw",
|
|
571
1086
|
},
|
|
572
1087
|
{
|
|
573
1088
|
name: "points",
|
|
574
|
-
type: { type: "nested", schema:
|
|
1089
|
+
type: { type: "nested", schema: Point2 },
|
|
575
1090
|
description: "Points in 2D image coordinates",
|
|
576
1091
|
array: true,
|
|
577
1092
|
},
|
|
578
1093
|
{
|
|
579
1094
|
name: "outline_color",
|
|
580
|
-
type: { type: "nested", schema:
|
|
1095
|
+
type: { type: "nested", schema: Color },
|
|
581
1096
|
description: "Outline color",
|
|
582
1097
|
},
|
|
583
1098
|
{
|
|
584
1099
|
name: "outline_colors",
|
|
585
|
-
type: { type: "nested", schema:
|
|
1100
|
+
type: { type: "nested", schema: Color },
|
|
586
1101
|
description:
|
|
587
1102
|
"Per-point colors, if `type` is `POINTS`, or per-segment stroke colors, if `type` is `LINE_LIST`.",
|
|
588
1103
|
array: true,
|
|
589
1104
|
},
|
|
590
1105
|
{
|
|
591
1106
|
name: "fill_color",
|
|
592
|
-
type: { type: "nested", schema:
|
|
1107
|
+
type: { type: "nested", schema: Color },
|
|
593
1108
|
description: "Fill color",
|
|
594
1109
|
},
|
|
595
1110
|
{
|
|
@@ -600,27 +1115,27 @@ const foxglove_PointsAnnotation: FoxgloveMessageSchema = {
|
|
|
600
1115
|
],
|
|
601
1116
|
};
|
|
602
1117
|
|
|
603
|
-
const
|
|
1118
|
+
const ImageAnnotations: FoxgloveMessageSchema = {
|
|
604
1119
|
type: "message",
|
|
605
1120
|
name: "ImageAnnotations",
|
|
606
1121
|
description: "Array of annotations for a 2D image",
|
|
607
1122
|
fields: [
|
|
608
1123
|
{
|
|
609
1124
|
name: "circles",
|
|
610
|
-
type: { type: "nested", schema:
|
|
1125
|
+
type: { type: "nested", schema: CircleAnnotation },
|
|
611
1126
|
description: "Circle annotations",
|
|
612
1127
|
array: true,
|
|
613
1128
|
},
|
|
614
1129
|
{
|
|
615
1130
|
name: "points",
|
|
616
|
-
type: { type: "nested", schema:
|
|
1131
|
+
type: { type: "nested", schema: PointsAnnotation },
|
|
617
1132
|
description: "Points annotations",
|
|
618
1133
|
array: true,
|
|
619
1134
|
},
|
|
620
1135
|
],
|
|
621
1136
|
};
|
|
622
1137
|
|
|
623
|
-
const
|
|
1138
|
+
const PositionCovarianceType: FoxgloveEnumSchema = {
|
|
624
1139
|
type: "enum",
|
|
625
1140
|
name: "PositionCovarianceType",
|
|
626
1141
|
description: "Type of position covariance",
|
|
@@ -634,7 +1149,7 @@ const foxglove_PositionCovarianceType: FoxgloveEnumSchema = {
|
|
|
634
1149
|
],
|
|
635
1150
|
};
|
|
636
1151
|
|
|
637
|
-
const
|
|
1152
|
+
const LocationFix: FoxgloveMessageSchema = {
|
|
638
1153
|
type: "message",
|
|
639
1154
|
name: "LocationFix",
|
|
640
1155
|
description: "A navigation satellite fix for any Global Navigation Satellite System",
|
|
@@ -663,14 +1178,14 @@ const foxglove_LocationFix: FoxgloveMessageSchema = {
|
|
|
663
1178
|
},
|
|
664
1179
|
{
|
|
665
1180
|
name: "position_covariance_type",
|
|
666
|
-
type: { type: "enum", enum:
|
|
1181
|
+
type: { type: "enum", enum: PositionCovarianceType },
|
|
667
1182
|
description:
|
|
668
1183
|
"If `position_covariance` is available, `position_covariance_type` must be set to indicate the type of covariance.",
|
|
669
1184
|
},
|
|
670
1185
|
],
|
|
671
1186
|
};
|
|
672
1187
|
|
|
673
|
-
const
|
|
1188
|
+
const LogLevel: FoxgloveEnumSchema = {
|
|
674
1189
|
type: "enum",
|
|
675
1190
|
name: "LogLevel",
|
|
676
1191
|
description: "Log level",
|
|
@@ -686,7 +1201,7 @@ const foxglove_LogLevel: FoxgloveEnumSchema = {
|
|
|
686
1201
|
],
|
|
687
1202
|
};
|
|
688
1203
|
|
|
689
|
-
const
|
|
1204
|
+
const Log: FoxgloveMessageSchema = {
|
|
690
1205
|
type: "message",
|
|
691
1206
|
name: "Log",
|
|
692
1207
|
description: "A log message",
|
|
@@ -698,7 +1213,7 @@ const foxglove_Log: FoxgloveMessageSchema = {
|
|
|
698
1213
|
},
|
|
699
1214
|
{
|
|
700
1215
|
name: "level",
|
|
701
|
-
type: { type: "enum", enum:
|
|
1216
|
+
type: { type: "enum", enum: LogLevel },
|
|
702
1217
|
description: "Log level",
|
|
703
1218
|
},
|
|
704
1219
|
{
|
|
@@ -724,7 +1239,7 @@ const foxglove_Log: FoxgloveMessageSchema = {
|
|
|
724
1239
|
],
|
|
725
1240
|
};
|
|
726
1241
|
|
|
727
|
-
const
|
|
1242
|
+
const PointCloud: FoxgloveMessageSchema = {
|
|
728
1243
|
type: "message",
|
|
729
1244
|
name: "PointCloud",
|
|
730
1245
|
description:
|
|
@@ -742,7 +1257,7 @@ const foxglove_PointCloud: FoxgloveMessageSchema = {
|
|
|
742
1257
|
},
|
|
743
1258
|
{
|
|
744
1259
|
name: "pose",
|
|
745
|
-
type: { type: "nested", schema:
|
|
1260
|
+
type: { type: "nested", schema: Pose },
|
|
746
1261
|
description: "The origin of the point cloud relative to the frame of reference",
|
|
747
1262
|
},
|
|
748
1263
|
{
|
|
@@ -752,7 +1267,7 @@ const foxglove_PointCloud: FoxgloveMessageSchema = {
|
|
|
752
1267
|
},
|
|
753
1268
|
{
|
|
754
1269
|
name: "fields",
|
|
755
|
-
type: { type: "nested", schema:
|
|
1270
|
+
type: { type: "nested", schema: PackedElementField },
|
|
756
1271
|
array: true,
|
|
757
1272
|
description: "Fields in the `data`",
|
|
758
1273
|
},
|
|
@@ -764,7 +1279,7 @@ const foxglove_PointCloud: FoxgloveMessageSchema = {
|
|
|
764
1279
|
],
|
|
765
1280
|
};
|
|
766
1281
|
|
|
767
|
-
const
|
|
1282
|
+
const LaserScan: FoxgloveMessageSchema = {
|
|
768
1283
|
type: "message",
|
|
769
1284
|
name: "LaserScan",
|
|
770
1285
|
description: "A single scan from a planar laser range-finder",
|
|
@@ -781,7 +1296,7 @@ const foxglove_LaserScan: FoxgloveMessageSchema = {
|
|
|
781
1296
|
},
|
|
782
1297
|
{
|
|
783
1298
|
name: "pose",
|
|
784
|
-
type: { type: "nested", schema:
|
|
1299
|
+
type: { type: "nested", schema: Pose },
|
|
785
1300
|
description:
|
|
786
1301
|
"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",
|
|
787
1302
|
},
|
|
@@ -812,34 +1327,48 @@ const foxglove_LaserScan: FoxgloveMessageSchema = {
|
|
|
812
1327
|
};
|
|
813
1328
|
|
|
814
1329
|
export const foxgloveMessageSchemas = {
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
1330
|
+
ArrowPrimitive,
|
|
1331
|
+
CameraCalibration,
|
|
1332
|
+
CircleAnnotation,
|
|
1333
|
+
Color,
|
|
1334
|
+
CompressedImage,
|
|
1335
|
+
CylinderPrimitive,
|
|
1336
|
+
CubePrimitive,
|
|
1337
|
+
FrameTransform,
|
|
1338
|
+
GeoJSON,
|
|
1339
|
+
Grid,
|
|
1340
|
+
ImageAnnotations,
|
|
1341
|
+
KeyValuePair,
|
|
1342
|
+
LaserScan,
|
|
1343
|
+
LinePrimitive,
|
|
1344
|
+
LocationFix,
|
|
1345
|
+
Log,
|
|
1346
|
+
SceneEntityDeletion,
|
|
1347
|
+
SceneEntity,
|
|
1348
|
+
SceneUpdate,
|
|
1349
|
+
ModelPrimitive,
|
|
1350
|
+
PackedElementField,
|
|
1351
|
+
Point2,
|
|
1352
|
+
Point3,
|
|
1353
|
+
PointCloud,
|
|
1354
|
+
PointsAnnotation,
|
|
1355
|
+
Pose,
|
|
1356
|
+
PoseInFrame,
|
|
1357
|
+
PosesInFrame,
|
|
1358
|
+
Quaternion,
|
|
1359
|
+
RawImage,
|
|
1360
|
+
SpherePrimitive,
|
|
1361
|
+
TextPrimitive,
|
|
1362
|
+
TriangleListPrimitive,
|
|
1363
|
+
Vector2,
|
|
1364
|
+
Vector3,
|
|
838
1365
|
};
|
|
839
1366
|
|
|
840
1367
|
export const foxgloveEnumSchemas = {
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
1368
|
+
LineType,
|
|
1369
|
+
LogLevel,
|
|
1370
|
+
SceneEntityDeletionType,
|
|
1371
|
+
NumericType,
|
|
1372
|
+
PointsAnnotationType,
|
|
1373
|
+
PositionCovarianceType,
|
|
845
1374
|
};
|