6#include "../archetype_utils.hpp"
7#include "../collection.hpp"
8#include "../component_batch.hpp"
9#include "../component_column.hpp"
10#include "../components/class_id.hpp"
11#include "../components/color.hpp"
12#include "../components/draw_order.hpp"
13#include "../components/position2d.hpp"
14#include "../components/radius.hpp"
15#include "../components/show_labels.hpp"
16#include "../components/text.hpp"
17#include "../components/vector2d.hpp"
18#include "../result.hpp"
65 std::optional<ComponentBatch>
radii;
68 std::optional<ComponentBatch>
colors;
74 std::optional<ComponentBatch>
labels;
94 static constexpr const char ArchetypeName[] =
"rerun.archetypes.Arrows2D";
158 return std::move(*
this);
166 return std::move(*
this);
175 return std::move(*
this);
181 return std::move(*
this);
190 return std::move(*
this);
200 return std::move(*
this);
211 return std::move(*
this);
220 return std::move(*
this);
231 return std::move(*
this);
240 return std::move(*
this);
252 return detail::partition_batches(
271 return detail::partition_batches_of_unit_length({&
vectors,
287 template <
typename T>
292 struct AsComponents<archetypes::Arrows2D> {
294 static Result<Collection<ComponentBatch>> as_batches(
const archetypes::Arrows2D& archetype
296 return detail::collect_batches(
302 &archetype.show_labels,
303 &archetype.draw_order,
304 &archetype.class_ids}
Generic collection of elements that are roughly contiguous in memory.
Definition collection.hpp:49
All built-in archetypes. See Types in the Rerun manual.
Definition rerun.hpp:90
All Rerun C++ types and functions are in the rerun namespace or one of its nested namespaces.
Definition rerun.hpp:26
static Result< ComponentBatch > from_loggable(const rerun::Collection< T > &components, const ComponentDescriptor &descriptor)
Creates a new component batch from a collection of component instances.
Definition component_batch.hpp:46
A ComponentDescriptor fully describes the semantics of a column of data.
Definition component_descriptor.hpp:16
The Loggable trait is used by all built-in implementation of rerun::AsComponents to serialize a colle...
Definition loggable.hpp:11
Archetype: 2D arrows with optional colors, radii, labels, etc.
Definition arrows2d.hpp:52
Arrows2D with_colors(const Collection< rerun::components::Color > &_colors) &&
Optional colors for the points.
Definition arrows2d.hpp:179
static Arrows2D clear_fields()
Clear all the fields of a Arrows2D.
Arrows2D with_draw_order(const rerun::components::DrawOrder &_draw_order) &&
An optional floating point value that specifies the 2D drawing order.
Definition arrows2d.hpp:217
static constexpr auto Descriptor_radii
ComponentDescriptor for the radii field.
Definition arrows2d.hpp:106
static constexpr const char ArchetypeName[]
The name of the archetype as used in ComponentDescriptors.
Definition arrows2d.hpp:94
static constexpr auto Descriptor_vectors
ComponentDescriptor for the vectors field.
Definition arrows2d.hpp:97
std::optional< ComponentBatch > labels
Optional text labels for the arrows.
Definition arrows2d.hpp:74
static constexpr auto Descriptor_show_labels
ComponentDescriptor for the show_labels field.
Definition arrows2d.hpp:118
static Arrows2D from_vectors(Collection< components::Vector2D > vectors_)
Creates new 2D arrows pointing in the given directions, with a base at the origin (0,...
Definition arrows2d.hpp:134
Arrows2D with_show_labels(const rerun::components::ShowLabels &_show_labels) &&
Whether the text labels should be shown.
Definition arrows2d.hpp:197
Arrows2D with_vectors(const Collection< rerun::components::Vector2D > &_vectors) &&
All the vectors for each arrow in the batch.
Definition arrows2d.hpp:156
Collection< ComponentColumn > columns(const Collection< uint32_t > &lengths_)
Partitions the component data into multiple sub-batches.
Definition arrows2d.hpp:251
static constexpr auto Descriptor_labels
ComponentDescriptor for the labels field.
Definition arrows2d.hpp:114
static constexpr auto Descriptor_origins
ComponentDescriptor for the origins field.
Definition arrows2d.hpp:101
std::optional< ComponentBatch > radii
Optional radii for the arrows.
Definition arrows2d.hpp:65
static Arrows2D update_fields()
Update only some specific fields of a Arrows2D.
Definition arrows2d.hpp:148
std::optional< ComponentBatch > class_ids
Optional class Ids for the points.
Definition arrows2d.hpp:90
static constexpr auto Descriptor_colors
ComponentDescriptor for the colors field.
Definition arrows2d.hpp:110
std::optional< ComponentBatch > origins
All the origin (base) positions for each arrow in the batch.
Definition arrows2d.hpp:59
Arrows2D with_class_ids(const Collection< rerun::components::ClassId > &_class_ids) &&
Optional class Ids for the points.
Definition arrows2d.hpp:237
Arrows2D 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.
Definition arrows2d.hpp:207
std::optional< ComponentBatch > colors
Optional colors for the points.
Definition arrows2d.hpp:68
std::optional< ComponentBatch > draw_order
An optional floating point value that specifies the 2D drawing order.
Definition arrows2d.hpp:85
Arrows2D with_many_draw_order(const Collection< rerun::components::DrawOrder > &_draw_order) &&
This method makes it possible to pack multiple draw_order in a single component batch.
Definition arrows2d.hpp:227
Collection< ComponentColumn > columns()
Partitions the component data into unit-length sub-batches.
Definition arrows2d.hpp:270
Arrows2D with_labels(const Collection< rerun::components::Text > &_labels) &&
Optional text labels for the arrows.
Definition arrows2d.hpp:188
std::optional< ComponentBatch > vectors
All the vectors for each arrow in the batch.
Definition arrows2d.hpp:54
static constexpr auto Descriptor_draw_order
ComponentDescriptor for the draw_order field.
Definition arrows2d.hpp:123
static constexpr auto Descriptor_class_ids
ComponentDescriptor for the class_ids field.
Definition arrows2d.hpp:128
std::optional< ComponentBatch > show_labels
Whether the text labels should be shown.
Definition arrows2d.hpp:80
Arrows2D with_radii(const Collection< rerun::components::Radius > &_radii) &&
Optional radii for the arrows.
Definition arrows2d.hpp:173
Arrows2D with_origins(const Collection< rerun::components::Position2D > &_origins) &&
All the origin (base) positions for each arrow in the batch.
Definition arrows2d.hpp:164
Component: Draw order of 2D elements.
Definition draw_order.hpp:30
Component: Whether the entity's components::Text label is shown.
Definition show_labels.hpp:18