Skip to content

Datatypes

The Telekinesis ecosystem uses a set of datatypes for inputs and outputs across components (e.g. Skills, APIs). They are defined in the datatypes package and support serialization for transport.

Scalar and Primitive

  • Bool — single boolean
  • Int — 32-bit signed integer
  • Float — 32-bit float
  • String — UTF-8 string

2D / 3D Geometry

  • Boxes3D — 3D bounding boxes (half-sizes, centers, rotations)
  • Boxes2D — 2D bounding boxes (multiple formats)
  • Circles — 2D circles (centers, radii)
  • Ellipses — 2D ellipses (centers, axes, angles)
  • Lines — 2D lines (rho, theta)

Points and Meshes

Vectors and Matrices

Positions

Image and Color

Containers and Parts

  • Part — part with ID, 6-DOF pose, optional dimensions and state
  • Tray — tray with ID, pose, dimensions, slot count, and optional parts
  • Bin — bin with ID, pose, and optional parts

Assets and Annotations

Generic

  • Array — arbitrary NumPy ndarray (for serialization)

Enums

  • Enums — enumeration types (e.g. Box2DFormat, ColorModel, PartState) used by Boxes2D, Image, Part, and others.