Rerun C++ SDK
Loading...
Searching...
No Matches
rerun::archetypes::Capsules3D Struct Reference

Archetype: 3D capsules; cylinders with hemispherical caps. More...

#include <rerun/archetypes/capsules3d.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

 Capsules3D (Capsules3D &&other)=default
 
Capsules3D with_translations (Collection< rerun::components::PoseTranslation3D > _translations) &&
 Optional translations of the capsules.
 
Capsules3D with_rotation_axis_angles (Collection< rerun::components::PoseRotationAxisAngle > _rotation_axis_angles) &&
 Rotations via axis + angle.
 
Capsules3D with_quaternions (Collection< rerun::components::PoseRotationQuat > _quaternions) &&
 Rotations via quaternion.
 
Capsules3D with_colors (Collection< rerun::components::Color > _colors) &&
 Optional colors for the capsules.
 
Capsules3D with_labels (Collection< rerun::components::Text > _labels) &&
 Optional text labels for the capsules, which will be located at their centers.
 
Capsules3D with_show_labels (rerun::components::ShowLabels _show_labels) &&
 Optional choice of whether the text labels should be shown by default.
 
Capsules3D with_class_ids (Collection< rerun::components::ClassId > _class_ids) &&
 Optional class ID for the ellipsoids.
 

Static Public Member Functions

static Capsules3D from_lengths_and_radii (const std::vector< float > &lengths, const std::vector< float > &radii)
 Creates a new Capsules3D with the given axis-aligned lengths and radii.
 

Public Attributes

Collection< rerun::components::Lengthlengths
 Lengths of the capsules, defined as the distance between the centers of the endcaps.
 
Collection< rerun::components::Radiusradii
 Radii of the capsules.
 
std::optional< Collection< rerun::components::PoseTranslation3D > > translations
 Optional translations of the capsules.
 
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 capsules.
 
std::optional< Collection< rerun::components::Text > > labels
 Optional text labels for the capsules, which will be located at their centers.
 
std::optional< rerun::components::ShowLabelsshow_labels
 Optional choice of whether the text labels should be shown by default.
 
std::optional< Collection< rerun::components::ClassId > > class_ids
 Optional class ID for the ellipsoids.
 

Static Public Attributes

static constexpr const char IndicatorComponentName []
 

Detailed Description

Archetype: 3D capsules; cylinders with hemispherical caps.

Capsules are defined by two endpoints (the centers of their end cap spheres), which are located at (0, 0, 0) and (0, 0, length), that is, extending along the positive direction of the Z axis. Capsules in other orientations may be produced by applying a rotation to the entity or instances.

Example

Batch of capsules

image

#include <rerun.hpp>
int main() {
const auto rec = rerun::RecordingStream("rerun_example_capsule3d_batch");
rec.spawn().exit_on_failure();
rec.log(
"capsules",
rerun::Capsules3D::from_lengths_and_radii(
{0.0f, 2.0f, 4.0f, 6.0f, 8.0f},
{1.0f, 0.5f, 0.5f, 0.5f, 1.0f}
)
rerun::Rgba32(255, 0, 0),
rerun::Rgba32(188, 188, 0),
rerun::Rgba32(0, 255, 0),
rerun::Rgba32(0, 188, 188),
rerun::Rgba32(0, 0, 255),
})
{0.0f, 0.0f, 0.0f},
{2.0f, 0.0f, 0.0f},
{4.0f, 0.0f, 0.0f},
{6.0f, 0.0f, 0.0f},
{8.0f, 0.0f, 0.0f},
})
rerun::RotationAxisAngle({1.0f, 0.0f, 0.0f}, rerun::Angle::degrees(-22.5)),
rerun::RotationAxisAngle({1.0f, 0.0f, 0.0f}, rerun::Angle::degrees(-45.0)),
rerun::RotationAxisAngle({1.0f, 0.0f, 0.0f}, rerun::Angle::degrees(-67.5)),
rerun::RotationAxisAngle({1.0f, 0.0f, 0.0f}, rerun::Angle::degrees(-90.0)),
})
);
}
A RecordingStream handles everything related to logging data into Rerun.
Definition recording_stream.hpp:60
Capsules3D with_translations(Collection< rerun::components::PoseTranslation3D > _translations) &&
Optional translations of the capsules.
Definition capsules3d.hpp:158
Capsules3D with_colors(Collection< rerun::components::Color > _colors) &&
Optional colors for the capsules.
Definition capsules3d.hpp:189
Capsules3D with_rotation_axis_angles(Collection< rerun::components::PoseRotationAxisAngle > _rotation_axis_angles) &&
Rotations via axis + angle.
Definition capsules3d.hpp:169
static Angle degrees(float degrees_)
New angle in degrees.
Definition angle.hpp:39
Datatype: An RGBA color with unmultiplied/separate alpha, in sRGB gamma space with linear alpha.
Definition rgba32.hpp:27
Datatype: 3D rotation represented by a rotation around a given axis.
Definition rotation_axis_angle.hpp:21

Member Function Documentation

◆ from_lengths_and_radii()

static Capsules3D rerun::archetypes::Capsules3D::from_lengths_and_radii ( const std::vector< float > &  lengths,
const std::vector< float > &  radii 
)
static

Creates a new Capsules3D with the given axis-aligned lengths and radii.

For multiple capsules, you should generally follow this with Capsules3D::with_translations() and one of the rotation methods, in order to move them apart from each other.

◆ with_translations()

Capsules3D rerun::archetypes::Capsules3D::with_translations ( Collection< rerun::components::PoseTranslation3D _translations) &&
inline

Optional translations of the capsules.

If not specified, one end of each capsule will be at (0, 0, 0). Note that this uses a components::PoseTranslation3D which is also used by archetypes::InstancePoses3D.

◆ with_rotation_axis_angles()

Capsules3D rerun::archetypes::Capsules3D::with_rotation_axis_angles ( Collection< rerun::components::PoseRotationAxisAngle _rotation_axis_angles) &&
inline

Rotations via axis + angle.

If no rotation is specified, the capsules align with the +Z axis of the local coordinate system. Note that this uses a components::PoseRotationAxisAngle which is also used by archetypes::InstancePoses3D.

◆ with_quaternions()

Capsules3D rerun::archetypes::Capsules3D::with_quaternions ( Collection< rerun::components::PoseRotationQuat _quaternions) &&
inline

Rotations via quaternion.

If no rotation is specified, the capsules align with the +Z axis of the local coordinate system. Note that this uses a components::PoseRotationQuat which is also used by archetypes::InstancePoses3D.

◆ with_class_ids()

Capsules3D rerun::archetypes::Capsules3D::with_class_ids ( Collection< rerun::components::ClassId _class_ids) &&
inline

Optional class ID for the ellipsoids.

The class ID provides colors and labels if not specified explicitly.

Member Data Documentation

◆ translations

std::optional<Collection<rerun::components::PoseTranslation3D> > rerun::archetypes::Capsules3D::translations

Optional translations of the capsules.

If not specified, one end of each capsule will be at (0, 0, 0). Note that this uses a components::PoseTranslation3D which is also used by archetypes::InstancePoses3D.

◆ rotation_axis_angles

std::optional<Collection<rerun::components::PoseRotationAxisAngle> > rerun::archetypes::Capsules3D::rotation_axis_angles

Rotations via axis + angle.

If no rotation is specified, the capsules align with the +Z axis of the local coordinate system. Note that this uses a components::PoseRotationAxisAngle which is also used by archetypes::InstancePoses3D.

◆ quaternions

std::optional<Collection<rerun::components::PoseRotationQuat> > rerun::archetypes::Capsules3D::quaternions

Rotations via quaternion.

If no rotation is specified, the capsules align with the +Z axis of the local coordinate system. Note that this uses a components::PoseRotationQuat which is also used by archetypes::InstancePoses3D.

◆ class_ids

std::optional<Collection<rerun::components::ClassId> > rerun::archetypes::Capsules3D::class_ids

Optional class ID for the ellipsoids.

The class ID provides colors and labels if not specified explicitly.

◆ IndicatorComponentName

constexpr const char rerun::archetypes::Capsules3D::IndicatorComponentName[]
staticconstexpr
Initial value:
=
"rerun.components.Capsules3DIndicator"

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