Rerun C++ SDK
|
Archetype: 3D boxes with half-extents and optional center, rotations, colors etc. More...
#include <rerun/archetypes/boxes3d.hpp>
Public Member Functions | |
Boxes3D (Boxes3D &&other)=default | |
Boxes3D (const Boxes3D &other)=default | |
Boxes3D & | operator= (const Boxes3D &other)=default |
Boxes3D & | operator= (Boxes3D &&other)=default |
Boxes3D | with_half_sizes (const Collection< rerun::components::HalfSize3D > &_half_sizes) && |
All half-extents that make up the batch of boxes. | |
Boxes3D | with_centers (const Collection< rerun::components::PoseTranslation3D > &_centers) && |
Optional center positions of the boxes. | |
Boxes3D | with_rotation_axis_angles (const Collection< rerun::components::PoseRotationAxisAngle > &_rotation_axis_angles) && |
Rotations via axis + angle. | |
Boxes3D | with_quaternions (const Collection< rerun::components::PoseRotationQuat > &_quaternions) && |
Rotations via quaternion. | |
Boxes3D | with_colors (const Collection< rerun::components::Color > &_colors) && |
Optional colors for the boxes. | |
Boxes3D | with_radii (const Collection< rerun::components::Radius > &_radii) && |
Optional radii for the lines that make up the boxes. | |
Boxes3D | with_fill_mode (const rerun::components::FillMode &_fill_mode) && |
Optionally choose whether the boxes are drawn with lines or solid. | |
Boxes3D | with_many_fill_mode (const Collection< rerun::components::FillMode > &_fill_mode) && |
This method makes it possible to pack multiple fill_mode in a single component batch. | |
Boxes3D | with_labels (const Collection< rerun::components::Text > &_labels) && |
Optional text labels for the boxes. | |
Boxes3D | with_show_labels (const rerun::components::ShowLabels &_show_labels) && |
Whether the text labels should be shown. | |
Boxes3D | with_many_show_labels (const Collection< rerun::components::ShowLabels > &_show_labels) && |
This method makes it possible to pack multiple show_labels in a single component batch. | |
Boxes3D | with_class_ids (const Collection< rerun::components::ClassId > &_class_ids) && |
Optional components::ClassId s for the boxes. | |
Collection< ComponentColumn > | columns (const Collection< uint32_t > &lengths_) |
Partitions the component data into multiple sub-batches. | |
Collection< ComponentColumn > | columns () |
Partitions the component data into unit-length sub-batches. | |
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. | |
static Boxes3D | update_fields () |
Update only some specific fields of a Boxes3D . | |
static Boxes3D | clear_fields () |
Clear all the fields of a Boxes3D . | |
Public Attributes | |
std::optional< ComponentBatch > | half_sizes |
All half-extents that make up the batch of boxes. | |
std::optional< ComponentBatch > | centers |
Optional center positions of the boxes. | |
std::optional< ComponentBatch > | rotation_axis_angles |
Rotations via axis + angle. | |
std::optional< ComponentBatch > | quaternions |
Rotations via quaternion. | |
std::optional< ComponentBatch > | colors |
Optional colors for the boxes. | |
std::optional< ComponentBatch > | radii |
Optional radii for the lines that make up the boxes. | |
std::optional< ComponentBatch > | fill_mode |
Optionally choose whether the boxes are drawn with lines or solid. | |
std::optional< ComponentBatch > | labels |
Optional text labels for the boxes. | |
std::optional< ComponentBatch > | show_labels |
Whether the text labels should be shown. | |
std::optional< ComponentBatch > | class_ids |
Optional components::ClassId s for the boxes. | |
Static Public Attributes | |
static constexpr const char | ArchetypeName [] = "rerun.archetypes.Boxes3D" |
The name of the archetype as used in ComponentDescriptor s. | |
static constexpr auto | Descriptor_half_sizes |
ComponentDescriptor for the half_sizes field. | |
static constexpr auto | Descriptor_centers |
ComponentDescriptor for the centers field. | |
static constexpr auto | Descriptor_rotation_axis_angles |
ComponentDescriptor for the rotation_axis_angles field. | |
static constexpr auto | Descriptor_quaternions |
ComponentDescriptor for the quaternions field. | |
static constexpr auto | Descriptor_colors |
ComponentDescriptor for the colors field. | |
static constexpr auto | Descriptor_radii |
ComponentDescriptor for the radii field. | |
static constexpr auto | Descriptor_fill_mode |
ComponentDescriptor for the fill_mode field. | |
static constexpr auto | Descriptor_labels |
ComponentDescriptor for the labels field. | |
static constexpr auto | Descriptor_show_labels |
ComponentDescriptor for the show_labels field. | |
static constexpr auto | Descriptor_class_ids |
ComponentDescriptor for the class_ids field. | |
Archetype: 3D boxes with half-extents and optional center, rotations, colors etc.
If there's more instance poses than half sizes, the last box's orientation will be repeated for the remaining poses. Orienting and placing boxes forms a separate transform that is applied prior to archetypes::InstancePoses3D
and archetypes::Transform3D
.
|
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).
|
inline |
Rotations via axis + angle.
If no rotation is specified, the axes of the boxes align with the axes of the local coordinate system.
|
inline |
Rotations via quaternion.
If no rotation is specified, the axes of the boxes align with the axes of the local coordinate system.
|
inline |
This method makes it possible to pack multiple fill_mode
in a single component batch.
This only makes sense when used in conjunction with columns
. with_fill_mode
should be used when logging a single row's worth of data.
|
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 |
Whether the text labels should be shown.
If not set, labels will automatically appear when there is exactly one label for this entity or the number of instances on this entity is under a certain threshold.
|
inline |
This method makes it possible to pack multiple show_labels
in a single component batch.
This only makes sense when used in conjunction with columns
. with_show_labels
should be used when logging a single row's worth of data.
|
inline |
Optional components::ClassId
s for the boxes.
The components::ClassId
provides colors and labels if not specified explicitly.
Collection< ComponentColumn > rerun::archetypes::Boxes3D::columns | ( | const Collection< uint32_t > & | lengths_ | ) |
Partitions the component data into multiple sub-batches.
Specifically, this transforms the existing ComponentBatch
data into ComponentColumn
s instead, via ComponentBatch::partitioned
.
This makes it possible to use RecordingStream::send_columns
to send columnar data directly into Rerun.
The specified lengths
must sum to the total length of the component batch.
Collection< ComponentColumn > rerun::archetypes::Boxes3D::columns | ( | ) |
Partitions the component data into unit-length sub-batches.
This is semantically similar to calling columns
with std::vector<uint32_t>(n, 1)
, where n
is automatically guessed.
std::optional<ComponentBatch> rerun::archetypes::Boxes3D::centers |
Optional center positions of the boxes.
If not specified, the centers will be at (0, 0, 0).
std::optional<ComponentBatch> 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.
std::optional<ComponentBatch> 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.
std::optional<ComponentBatch> 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<ComponentBatch> rerun::archetypes::Boxes3D::show_labels |
Whether the text labels should be shown.
If not set, labels will automatically appear when there is exactly one label for this entity or the number of instances on this entity is under a certain threshold.
std::optional<ComponentBatch> rerun::archetypes::Boxes3D::class_ids |
Optional components::ClassId
s for the boxes.
The components::ClassId
provides colors and labels if not specified explicitly.
|
staticconstexpr |
ComponentDescriptor
for the half_sizes
field.
|
staticconstexpr |
ComponentDescriptor
for the centers
field.
|
staticconstexpr |
ComponentDescriptor
for the rotation_axis_angles
field.
|
staticconstexpr |
ComponentDescriptor
for the quaternions
field.
|
staticconstexpr |
ComponentDescriptor
for the colors
field.
|
staticconstexpr |
ComponentDescriptor
for the radii
field.
|
staticconstexpr |
ComponentDescriptor
for the fill_mode
field.
|
staticconstexpr |
ComponentDescriptor
for the labels
field.
|
staticconstexpr |
ComponentDescriptor
for the show_labels
field.
|
staticconstexpr |
ComponentDescriptor
for the class_ids
field.