Rerun C++ SDK
|
Archetype: 3D boxes with half-extents and optional center, rotations, colors etc. More...
#include <rerun/archetypes/boxes3d.hpp>
Public Types | |
using | IndicatorComponent = rerun::components::IndicatorComponent< IndicatorComponentName > |
Indicator component, used to identify the archetype when converting to a list of components. | |
Public Member Functions | |
Boxes3D (Boxes3D &&other)=default | |
Boxes3D | with_centers (Collection< rerun::components::PoseTranslation3D > _centers) && |
Optional center positions of the boxes. | |
Boxes3D | with_rotation_axis_angles (Collection< rerun::components::PoseRotationAxisAngle > _rotation_axis_angles) && |
Rotations via axis + angle. | |
Boxes3D | with_quaternions (Collection< rerun::components::PoseRotationQuat > _quaternions) && |
Rotations via quaternion. | |
Boxes3D | with_colors (Collection< rerun::components::Color > _colors) && |
Optional colors for the boxes. | |
Boxes3D | with_radii (Collection< rerun::components::Radius > _radii) && |
Optional radii for the lines that make up the boxes. | |
Boxes3D | with_fill_mode (rerun::components::FillMode _fill_mode) && |
Optionally choose whether the boxes are drawn with lines or solid. | |
Boxes3D | with_labels (Collection< rerun::components::Text > _labels) && |
Optional text labels for the boxes. | |
Boxes3D | with_show_labels (rerun::components::ShowLabels _show_labels) && |
Optional choice of whether the text labels should be shown by default. | |
Boxes3D | with_class_ids (Collection< rerun::components::ClassId > _class_ids) && |
Optional components::ClassId s for the boxes. | |
Static Public Member Functions | |
static Boxes3D | from_half_sizes (Collection< components::HalfSize3D > half_sizes) |
Creates new Boxes3D with half_sizes centered around the local origin. | |
static Boxes3D | from_centers_and_half_sizes (Collection< components::PoseTranslation3D > centers, Collection< components::HalfSize3D > half_sizes) |
Creates new Boxes3D with centers and half_sizes . | |
static Boxes3D | from_sizes (const std::vector< datatypes::Vec3D > &sizes) |
Creates new Boxes3D with half_sizes created from (full) sizes. | |
static Boxes3D | from_centers_and_sizes (Collection< components::PoseTranslation3D > centers, const std::vector< datatypes::Vec3D > &sizes) |
Creates new Boxes3D with centers and half_sizes created from centers and (full) sizes. | |
static Boxes3D | from_mins_and_sizes (const std::vector< datatypes::Vec3D > &mins, const std::vector< datatypes::Vec3D > &sizes) |
Creates new Boxes3D with half_sizes and centers created from minimums and (full) sizes. | |
Public Attributes | |
Collection< rerun::components::HalfSize3D > | half_sizes |
All half-extents that make up the batch of boxes. | |
std::optional< Collection< rerun::components::PoseTranslation3D > > | centers |
Optional center positions of the boxes. | |
std::optional< Collection< rerun::components::PoseRotationAxisAngle > > | rotation_axis_angles |
Rotations via axis + angle. | |
std::optional< Collection< rerun::components::PoseRotationQuat > > | quaternions |
Rotations via quaternion. | |
std::optional< Collection< rerun::components::Color > > | colors |
Optional colors for the boxes. | |
std::optional< Collection< rerun::components::Radius > > | radii |
Optional radii for the lines that make up the boxes. | |
std::optional< rerun::components::FillMode > | fill_mode |
Optionally choose whether the boxes are drawn with lines or solid. | |
std::optional< Collection< rerun::components::Text > > | labels |
Optional text labels for the boxes. | |
std::optional< rerun::components::ShowLabels > | show_labels |
Optional choice of whether the text labels should be shown by default. | |
std::optional< Collection< rerun::components::ClassId > > | class_ids |
Optional components::ClassId s for the boxes. | |
Static Public Attributes | |
static constexpr const char | IndicatorComponentName [] = "rerun.components.Boxes3DIndicator" |
Archetype: 3D boxes with half-extents and optional center, rotations, colors etc.
Note that orienting and placing the box is handled via [archetypes.InstancePoses3D]
. Some of its component are repeated here for convenience. If there's more instance poses than half sizes, the last half size will be repeated for the remaining poses.
|
static |
Creates new Boxes3D
with half_sizes
created from (full) sizes.
TODO(#3285): Does not preserve data as-is and instead creates half-sizes from the input data. TODO(andreas): This should not take an std::vector.
|
inlinestatic |
Creates new Boxes3D
with centers
and half_sizes
created from centers and (full) sizes.
TODO(#3285): Does not preserve data as-is and instead creates centers and half-sizes from the input data. TODO(andreas): This should not take an std::vector.
|
static |
Creates new Boxes3D
with half_sizes
and centers
created from minimums and (full) sizes.
TODO(#3285): Does not preserve data as-is and instead creates centers and half-sizes from the input data. TODO(andreas): This should not take an std::vector.
|
inline |
Optional center positions of the boxes.
If not specified, the centers will be at (0, 0, 0). Note that this uses a components::PoseTranslation3D
which is also used by archetypes::InstancePoses3D
.
|
inline |
Rotations via axis + angle.
If no rotation is specified, the axes of the boxes align with the axes of the local coordinate system. Note that this uses a components::PoseRotationAxisAngle
which is also used by archetypes::InstancePoses3D
.
|
inline |
Rotations via quaternion.
If no rotation is specified, the axes of the boxes align with the axes of the local coordinate system. Note that this uses a components::PoseRotationQuat
which is also used by archetypes::InstancePoses3D
.
|
inline |
Optional text labels for the boxes.
If there's a single label present, it will be placed at the center of the entity. Otherwise, each instance will have its own label.
|
inline |
Optional components::ClassId
s for the boxes.
The components::ClassId
provides colors and labels if not specified explicitly.
std::optional<Collection<rerun::components::PoseTranslation3D> > rerun::archetypes::Boxes3D::centers |
Optional center positions of the boxes.
If not specified, the centers will be at (0, 0, 0). Note that this uses a components::PoseTranslation3D
which is also used by archetypes::InstancePoses3D
.
std::optional<Collection<rerun::components::PoseRotationAxisAngle> > rerun::archetypes::Boxes3D::rotation_axis_angles |
Rotations via axis + angle.
If no rotation is specified, the axes of the boxes align with the axes of the local coordinate system. Note that this uses a components::PoseRotationAxisAngle
which is also used by archetypes::InstancePoses3D
.
std::optional<Collection<rerun::components::PoseRotationQuat> > rerun::archetypes::Boxes3D::quaternions |
Rotations via quaternion.
If no rotation is specified, the axes of the boxes align with the axes of the local coordinate system. Note that this uses a components::PoseRotationQuat
which is also used by archetypes::InstancePoses3D
.
std::optional<Collection<rerun::components::Text> > rerun::archetypes::Boxes3D::labels |
Optional text labels for the boxes.
If there's a single label present, it will be placed at the center of the entity. Otherwise, each instance will have its own label.
std::optional<Collection<rerun::components::ClassId> > rerun::archetypes::Boxes3D::class_ids |
Optional components::ClassId
s for the boxes.
The components::ClassId
provides colors and labels if not specified explicitly.