Magnum::Trade::ObjectData2D class

Two-dimensional object data.

Provides access to object transformation and hierarchy.

Derived classes

class MeshObjectData2D
Two-dimensional mesh object data.

Constructors, destructors, conversion operators

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

Public functions

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

Function documentation

Magnum::Trade::ObjectData2D::ObjectData2D(std::vector<UnsignedInt> children, const Matrix3& transformation, ObjectInstanceType2D 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::ObjectData2D::ObjectData2D(std::vector<UnsignedInt> children, const Matrix3& 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::ObjectData2D::children() const

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

ObjectInstanceType2D Magnum::Trade::ObjectData2D::instanceType() const

Instance type.

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

Instance ID.

Returns ID of given camera / light / mesh etc., specified by instanceType(). If instanceType() is ObjectInstanceType2D::Empty, this function returns -1.

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

Importer-specific state.

See AbstractImporter::importerState() for more information.