Magnum::Trade::ObjectData3D class

Three-dimensional object data.

Provides access to object transformation and hierarchy.

Derived classes

class MeshObjectData3D
Three-dimensional mesh object data.

Constructors, destructors, conversion operators

ObjectData3D(std::vector<UnsignedInt> children, const Matrix4& transformation, ObjectInstanceType3D instanceType, UnsignedInt instance, const void* importerState = nullptr) explicit
Constructor.
ObjectData3D(std::vector<UnsignedInt> children, const Matrix4& transformation, const void* importerState = nullptr) explicit
Constructor for empty instance.
ObjectData3D(const ObjectData3D&) deleted
Copying is not allowed.
ObjectData3D(ObjectData3D&&) noexcept
Move constructor.
~ObjectData3D() virtual
Destructor.

Public functions

auto operator=(const ObjectData3D&) -> ObjectData3D& deleted
Copying is not allowed.
auto operator=(ObjectData3D&&) -> ObjectData3D& noexcept
Move assignment.
auto children() -> std::vector<UnsignedInt>&
Child objects.
auto children() const -> const std::vector<UnsignedInt>&
auto transformation() const -> Matrix4
Transformation (relative to parent)
auto instanceType() const -> ObjectInstanceType3D
Instance type.
auto instance() const -> Int
Instance ID.
auto importerState() const -> const void*
Importer-specific state.

Function documentation

Magnum::Trade::ObjectData3D::ObjectData3D(std::vector<UnsignedInt> children, const Matrix4& transformation, ObjectInstanceType3D instanceType, UnsignedInt instance, const void* importerState = nullptr) explicit

Constructor.

Parameters
children Child objects
transformation Transformation (relative to parent)
instanceType Instance type
instance Instance ID
importerState Importer-specific state

Magnum::Trade::ObjectData3D::ObjectData3D(std::vector<UnsignedInt> children, const Matrix4& transformation, const void* importerState = nullptr) explicit

Constructor for empty instance.

Parameters
children Child objects
transformation Transformation (relative to parent)
importerState Importer-specific state

const std::vector<UnsignedInt>& Magnum::Trade::ObjectData3D::children() const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

ObjectInstanceType3D Magnum::Trade::ObjectData3D::instanceType() const

Instance type.

Int Magnum::Trade::ObjectData3D::instance() const

Instance ID.

Returns ID of given camera / light / mesh etc., specified by instanceType()

const void* Magnum::Trade::ObjectData3D::importerState() const

Importer-specific state.

See AbstractImporter::importerState() for more information.