Rerun C++ SDK
Loading...
Searching...
No Matches
rerun::datatypes::TranslationRotationScale3D Struct Reference

Datatype: Representation of an affine transform via separate translation, rotation & scale. More...

#include <rerun/datatypes/translation_rotation_scale3d.hpp>

Public Member Functions

RERUN_DISABLE_MAYBE_UNINITIALIZED_PUSH TranslationRotationScale3D (const TranslationRotationScale3D &other)
 
RERUN_DISABLE_MAYBE_UNINITIALIZED_POP TranslationRotationScale3D (const std::optional< Vec3D > &translation_, const std::optional< Rotation3D > &rotation_, const std::optional< Scale3D > &scale_, bool from_parent_=false)
 Creates a new 3D transform from translation/rotation/scale.
 
 TranslationRotationScale3D (const Vec3D &translation_, const Rotation3D &rotation_, float uniform_scale, bool from_parent_=false)
 Creates a new 3D transform from translation/rotation/uniform-scale.
 
 TranslationRotationScale3D (const Vec3D &translation_, const Rotation3D &rotation_, bool from_parent_=false)
 Creates a new rigid transform (translation & rotation only).
 
 TranslationRotationScale3D (const Vec3D &translation_, const Scale3D &scale_, bool from_parent_=false)
 From translation & scale only.
 
 TranslationRotationScale3D (const Vec3D &translation_, float uniform_scale, bool from_parent_=false)
 From translation & uniform scale.
 
 TranslationRotationScale3D (const Rotation3D &rotation_, const Scale3D &scale_, bool from_parent_=false)
 From rotation & scale only.
 
 TranslationRotationScale3D (const Rotation3D &rotation_, float uniform_scale, bool from_parent_=false)
 From rotation & uniform scale.
 
 TranslationRotationScale3D (const Vec3D &translation_, bool from_parent_=false)
 From translation only.
 
 TranslationRotationScale3D (const Rotation3D &rotation_, bool from_parent_=false)
 From rotation only.
 
 TranslationRotationScale3D (const Scale3D &scale_, bool from_parent_=false)
 From scale only.
 

Public Attributes

std::optional< rerun::datatypes::Vec3Dtranslation
 3D translation vector, applied last.
 
std::optional< rerun::datatypes::Rotation3Drotation
 3D rotation, applied second.
 
std::optional< rerun::datatypes::Scale3Dscale
 3D scale, applied first.
 
bool from_parent
 If true, this transform is from the parent space to the space where the transform was logged.
 

Static Public Attributes

static const TranslationRotationScale3D IDENTITY
 Identity transformation.
 

Detailed Description

Datatype: Representation of an affine transform via separate translation, rotation & scale.

Constructor & Destructor Documentation

◆ TranslationRotationScale3D() [1/10]

RERUN_DISABLE_MAYBE_UNINITIALIZED_POP rerun::datatypes::TranslationRotationScale3D::TranslationRotationScale3D ( const std::optional< Vec3D > &  translation_,
const std::optional< Rotation3D > &  rotation_,
const std::optional< Scale3D > &  scale_,
bool  from_parent_ = false 
)
inline

Creates a new 3D transform from translation/rotation/scale.

Parameters
translation_3D translation vector, applied last.
rotation_3D rotation, applied second.
scale_3D scale, applied first.
from_parent_If true, this transform is from the parent space to the space where the transform was logged.

If false (default), the transform maps from this space to its parent, i.e. the translation is the position in the parent space.

◆ TranslationRotationScale3D() [2/10]

rerun::datatypes::TranslationRotationScale3D::TranslationRotationScale3D ( const Vec3D translation_,
const Rotation3D rotation_,
float  uniform_scale,
bool  from_parent_ = false 
)
inline

Creates a new 3D transform from translation/rotation/uniform-scale.

Parameters
translation_3D translation vector, applied last.
rotation_3D rotation, applied second.
uniform_scaleUniform scale factor that is applied to all axis equally.
from_parent_If true, this transform is from the parent space to the space where the transform was logged.

If false (default), the transform maps from this space to its parent, i.e. the translation is the position in the parent space.

Implementation note: This explicit overload prevents interpretation of the float as bool, leading to a call to the wrong overload.

◆ TranslationRotationScale3D() [3/10]

rerun::datatypes::TranslationRotationScale3D::TranslationRotationScale3D ( const Vec3D translation_,
const Rotation3D rotation_,
bool  from_parent_ = false 
)
inline

Creates a new rigid transform (translation & rotation only).

Parameters
translation_3D translation vector, applied last.
rotation_3D rotation, applied second.
from_parent_If true, this transform is from the parent space to the space where the transform was logged.

If false (default), the transform maps from this space to its parent, i.e. the translation is the position in the parent space.

◆ TranslationRotationScale3D() [4/10]

rerun::datatypes::TranslationRotationScale3D::TranslationRotationScale3D ( const Vec3D translation_,
const Scale3D scale_,
bool  from_parent_ = false 
)
inline

From translation & scale only.

Parameters
translation_3D translation vector, applied last.
scale_3D scale, applied first.
from_parent_If true, this transform is from the parent space to the space where the transform was logged.

If false (default), the transform maps from this space to its parent, i.e. the translation is the position in the parent space.

◆ TranslationRotationScale3D() [5/10]

rerun::datatypes::TranslationRotationScale3D::TranslationRotationScale3D ( const Vec3D translation_,
float  uniform_scale,
bool  from_parent_ = false 
)
inline

From translation & uniform scale.

Parameters
translation_3D translation vector, applied last.
uniform_scaleUniform scale factor that is applied to all axis equally.
from_parent_If true, this transform is from the parent space to the space where the transform was logged.

If false (default), the transform maps from this space to its parent, i.e. the translation is the position in the parent space.

Implementation note: This explicit overload prevents interpretation of the float as bool, leading to a call to the wrong overload.

◆ TranslationRotationScale3D() [6/10]

rerun::datatypes::TranslationRotationScale3D::TranslationRotationScale3D ( const Rotation3D rotation_,
const Scale3D scale_,
bool  from_parent_ = false 
)
inline

From rotation & scale only.

Parameters
rotation_3D rotation, applied second.
scale_3D scale, applied first.
from_parent_If true, this transform is from the parent space to the space where the transform was logged.

If false (default), the transform maps from this space to its parent, i.e. the translation is the position in the parent space.

◆ TranslationRotationScale3D() [7/10]

rerun::datatypes::TranslationRotationScale3D::TranslationRotationScale3D ( const Rotation3D rotation_,
float  uniform_scale,
bool  from_parent_ = false 
)
inline

From rotation & uniform scale.

Parameters
rotation_3D rotation, applied second.
uniform_scaleUniform scale factor that is applied to all axis equally.
from_parent_If true, this transform is from the parent space to the space where the transform was logged.

If false (default), the transform maps from this space to its parent, i.e. the translation is the position in the parent space.

Implementation note: This explicit overload prevents interpretation of the float as bool, leading to a call to the wrong overload.

◆ TranslationRotationScale3D() [8/10]

rerun::datatypes::TranslationRotationScale3D::TranslationRotationScale3D ( const Vec3D translation_,
bool  from_parent_ = false 
)
inline

From translation only.

Parameters
translation_3D translation.
from_parent_

◆ TranslationRotationScale3D() [9/10]

rerun::datatypes::TranslationRotationScale3D::TranslationRotationScale3D ( const Rotation3D rotation_,
bool  from_parent_ = false 
)
inline

From rotation only.

Parameters
rotation_3D rotation, applied second.
from_parent_If true, this transform is from the parent space to the space where the transform was logged.

If false (default), the transform maps from this space to its parent, i.e. the translation is the position in the parent space.

◆ TranslationRotationScale3D() [10/10]

rerun::datatypes::TranslationRotationScale3D::TranslationRotationScale3D ( const Scale3D scale_,
bool  from_parent_ = false 
)
inline

From scale only.

Parameters
scale_3D scale, applied first.
from_parent_If true, this transform is from the parent space to the space where the transform was logged.

If false (default), the transform maps from this space to its parent, i.e. the translation is the position in the parent space.

Member Data Documentation

◆ from_parent

bool rerun::datatypes::TranslationRotationScale3D::from_parent

If true, this transform is from the parent space to the space where the transform was logged.

If false (default), the transform maps from this space to its parent, i.e. the translation is the position in the parent space.

◆ IDENTITY

const TranslationRotationScale3D rerun::datatypes::TranslationRotationScale3D::IDENTITY
static

Identity transformation.

Applying this transform does not alter an entity's transformation. It has all optional fields set to std::nullopt.


The documentation for this struct was generated from the following file: