A 3D component that is used to model products. A product corresponds to
a tree of Objects. Inside the tree, transforms are always inherited from
parent to child and concatenated. Material Categories are inherited from
parent to child, as long as the child does not have one.
Should be handled as additional information for e.g. debugging.
Contains information if an object is valid.
If not, a status code and maybe an additional message inform about what is wrong.
Top-view representation of a Product.
Implemented by an image that is put into a rectangular region.
The origin of the region is aligned with the origin of the Product
but may be moved by an offset.
Spatial transformation of an object, relative to it’s parent object.
All attributes are optional. But, if an attribute exists, all it’s
attributes must exist, too.
The application ordering follows industry standard (X3D, ThreeJS) so first scales then rotates and then positions.
This basically allows to scale and rotate an object undisturbed and then move it to its position.
Think of a cube.
Ordering as Matrices is therefore T///R///S///V
The type of the point
“Origin” - the origin of a product, matches to “Child”
“Child” - a (virtual) child can be placed, matches to “Origin”
“Left” - L-R neighborship, matches to “Right”
“Right” - L-R neighborship, matches to “Left”
“Top” - vertical neighborship, matches to “Bottom”
“Bottom” - vertical neighborship, matches to “Top”
“Front” - front/back neighborship, matches to “Back”
“Back” - front/back neighborship, matches to “Front”
“Alignment” - auxiliary point to support alignments
“Maximum” - marks the maximum of the bbox
“Minimum” - marks the minimum of the bbox
Defines status codes on product and scene level.
200 is default. All other codes than 200 are errors.
Codes <= 1000 are reserved except the predefined ones.
Codes > 1000 are user defined error codes.