6#include "../collection.hpp"
7#include "../compiler_utils.hpp"
8#include "../components/class_id.hpp"
9#include "../components/color.hpp"
10#include "../components/instance_key.hpp"
11#include "../components/material.hpp"
12#include "../components/mesh_properties.hpp"
13#include "../components/position3d.hpp"
14#include "../components/vector3d.hpp"
15#include "../data_cell.hpp"
16#include "../indicator_component.hpp"
17#include "../result.hpp"
86 std::optional<Collection<rerun::components::ClassId>>
class_ids;
89 std::optional<Collection<rerun::components::InstanceKey>>
instance_keys;
92 static constexpr const char IndicatorComponentName[] =
"rerun.components.Mesh3DIndicator";
108 RERUN_WITH_MAYBE_UNINITIALIZED_DISABLED(
return std::move(*
this);)
117 RERUN_WITH_MAYBE_UNINITIALIZED_DISABLED(
return std::move(*
this);)
124 RERUN_WITH_MAYBE_UNINITIALIZED_DISABLED(
return std::move(*
this);)
131 RERUN_WITH_MAYBE_UNINITIALIZED_DISABLED(
return std::move(*
this);)
140 RERUN_WITH_MAYBE_UNINITIALIZED_DISABLED(
return std::move(*
this);)
147 RERUN_WITH_MAYBE_UNINITIALIZED_DISABLED(
return std::move(*
this);)
160 template <
typename T>
165 struct AsComponents<archetypes::Mesh3D> {
167 static Result<std::vector<DataCell>> serialize(
const archetypes::Mesh3D& archetype);
Generic collection of elements that are roughly contiguous in memory.
Definition collection.hpp:47
size_t size() const
Returns the number of instances in this collection.
Definition collection.hpp:254
All built-in archetypes. See Types in the Rerun manual.
Definition rerun.hpp:66
All Rerun C++ types and functions are in the rerun namespace or one of its nested namespaces.
Definition rerun.hpp:20
Archetype: A 3D triangle mesh as specified by its per-mesh and per-vertex properties.
Definition mesh3d.hpp:63
Collection< rerun::components::Position3D > vertex_positions
The positions of each vertex.
Definition mesh3d.hpp:67
size_t num_instances() const
Returns the number of primary instances of this archetype.
Definition mesh3d.hpp:151
Mesh3D with_mesh_material(rerun::components::Material _mesh_material) &&
Optional material properties for the mesh as a whole.
Definition mesh3d.hpp:128
std::optional< Collection< rerun::components::ClassId > > class_ids
Optional class Ids for the vertices.
Definition mesh3d.hpp:86
Mesh3D with_vertex_colors(Collection< rerun::components::Color > _vertex_colors) &&
An optional color for each vertex.
Definition mesh3d.hpp:121
std::optional< rerun::components::Material > mesh_material
Optional material properties for the mesh as a whole.
Definition mesh3d.hpp:81
Mesh3D with_class_ids(Collection< rerun::components::ClassId > _class_ids) &&
Optional class Ids for the vertices.
Definition mesh3d.hpp:137
std::optional< rerun::components::MeshProperties > mesh_properties
Optional properties for the mesh as a whole (including indexed drawing).
Definition mesh3d.hpp:70
std::optional< Collection< rerun::components::Color > > vertex_colors
An optional color for each vertex.
Definition mesh3d.hpp:78
std::optional< Collection< rerun::components::InstanceKey > > instance_keys
Unique identifiers for each individual vertex in the mesh.
Definition mesh3d.hpp:89
Mesh3D with_mesh_properties(rerun::components::MeshProperties _mesh_properties) &&
Optional properties for the mesh as a whole (including indexed drawing).
Definition mesh3d.hpp:105
Mesh3D with_instance_keys(Collection< rerun::components::InstanceKey > _instance_keys) &&
Unique identifiers for each individual vertex in the mesh.
Definition mesh3d.hpp:144
std::optional< Collection< rerun::components::Vector3D > > vertex_normals
An optional normal for each vertex.
Definition mesh3d.hpp:75
Mesh3D with_vertex_normals(Collection< rerun::components::Vector3D > _vertex_normals) &&
An optional normal for each vertex.
Definition mesh3d.hpp:114
Indicator component used by archetypes when converting them to component lists.
Definition indicator_component.hpp:23
Component: Material properties of a mesh.
Definition material.hpp:22
Component: Optional triangle indices for a mesh.
Definition mesh_properties.hpp:23