1      Definition

A Data Type representing a rectangle (2D Bounding Box) or right parallelepiped (3D Bounding Box) containing a 2D or 3D Visual Object, respectively.

2      Functional Requirements

The rectangle or right parallelepiped is defined, respectively, by

  1. Rectangle (2D): 3 vertices not on a straight line.
  2. Right Parallelepiped (3D): 4 vertices not on a plane.

The Visual Object (Content) may fit exactly in the rectangle/parallelepiped and have the same axes of the rectangle/parallelepiped.

Content may be absent.

3      Syntax

https://schemas.mpai.community/OSD/V1.1/data/BoundingBox.json

4      Semantics

Label Size Description
Header N1 Bytes BoundingBox Header
– Standard-BoundingBox 9 Bytes The characters “OSD-BBX-V”
– Version N2 Bytes Major version – 1 or 2 characters
– Dot-separator 1 Byte The character “.”
– Subversion N3 Bytes Minor version – 1 or 2 characters
MInstanceID N4 Bytes Identifier of M-Instance
BoundingBoxID N5 Bytes Identifier of BoundingBox.
Dimensions 2 Bytes One of 2D, 3D
BoundingBoxData
N6 Bytes Data about BoundingBox
– CartPositions 12/24 Bytes The Positions of the selected vertices of the rectangle/parallelepiped.
– BBXContent N7 Bytes One Content type of Visual2DStaticFormats of Visual3DStaticFormats depending on the value of Dimensions.
DescrMetadata N6 Bytes Descriptive Metadata