Rerun C++ SDK
Loading...
Searching...
No Matches
rerun::components Namespace Reference

All built-in components. See Types in the Rerun manual. More...

Classes

struct  AlbedoFactor
 Component: A color multiplier, usually applied to a whole entity, e.g. a mesh. More...
 
struct  AnnotationContext
 Component: The annotation context provides additional information on how to display entities. More...
 
struct  AxisLength
 Component: The length of an axis in local units of the space. More...
 
struct  Blob
 Component: A binary blob of data. More...
 
struct  ClassId
 Component: A 16-bit ID representing a type of semantic class. More...
 
struct  ClearIsRecursive
 Component: Configures how a clear operation should behave - recursive or not. More...
 
struct  Color
 Component: An RGBA color with unmultiplied/separate alpha, in sRGB gamma space with linear alpha. More...
 
struct  DepthMeter
 Component: The world->depth map scaling factor. More...
 
struct  DisconnectedSpace
 Component: Spatially disconnect this entity from its parent. More...
 
struct  DrawOrder
 Component: Draw order of 2D elements. More...
 
struct  EntityPath
 Component: A path to an entity, usually to reference some data that is part of the target entity. More...
 
struct  FillRatio
 Component: How much a primitive fills out the available space. More...
 
struct  GammaCorrection
 Component: A gamma correction value to be used with a scalar value or color. More...
 
struct  GeoLineString
 Component: A geospatial line string expressed in EPSG:4326 latitude and longitude (North/East-positive degrees). More...
 
struct  GraphEdge
 Component: An edge in a graph connecting two nodes. More...
 
struct  GraphNode
 Component: A string-based ID representing a node in a graph. More...
 
struct  HalfSize2D
 Component: Half-size (radius) of a 2D box. More...
 
struct  HalfSize3D
 Component: Half-size (radius) of a 3D box. More...
 
struct  ImageBuffer
 Component: A buffer that is known to store image data. More...
 
struct  ImageFormat
 Component: The metadata describing the contents of a components::ImageBuffer. More...
 
struct  ImagePlaneDistance
 Component: The distance from the camera origin to the image plane when the projection is shown in a 3D viewer. More...
 
struct  IndicatorComponent
 Indicator component used by archetypes when converting them to component lists. More...
 
struct  KeypointId
 Component: A 16-bit ID representing a type of semantic keypoint within a class. More...
 
struct  LatLon
 Component: A geospatial position expressed in EPSG:4326 latitude and longitude (North/East-positive degrees). More...
 
struct  Length
 Component: Length, or one-dimensional size. More...
 
struct  LineStrip2D
 Component: A line strip in 2D space. More...
 
struct  LineStrip3D
 Component: A line strip in 3D space. More...
 
struct  MarkerSize
 Component: Radius of a marker of a point in e.g. a 2D plot, measured in UI points. More...
 
struct  MediaType
 Component: A standardized media type (RFC2046, formerly known as MIME types), encoded as a string. More...
 
struct  Name
 Component: A display name, typically for an entity or a item like a plot series. More...
 
struct  Opacity
 Component: Degree of transparency ranging from 0.0 (fully transparent) to 1.0 (fully opaque). More...
 
struct  PinholeProjection
 Component: Camera projection, from image coordinates to view coordinates. More...
 
struct  Plane3D
 Component: An infinite 3D plane represented by a unit normal vector and a distance. More...
 
struct  PoseRotationAxisAngle
 Component: 3D rotation represented by a rotation around a given axis that doesn't propagate in the transform hierarchy. More...
 
struct  PoseRotationQuat
 Component: A 3D rotation expressed as a quaternion that doesn't propagate in the transform hierarchy. More...
 
struct  PoseScale3D
 Component: A 3D scale factor that doesn't propagate in the transform hierarchy. More...
 
struct  PoseTransformMat3x3
 Component: A 3x3 transformation matrix Matrix that doesn't propagate in the transform hierarchy. More...
 
struct  PoseTranslation3D
 Component: A translation vector in 3D space that doesn't propagate in the transform hierarchy. More...
 
struct  Position2D
 Component: A position in 2D space. More...
 
struct  Position3D
 Component: A position in 3D space. More...
 
struct  Radius
 Component: The radius of something, e.g. More...
 
struct  Range1D
 Component: A 1D range, specifying a lower and upper bound. More...
 
struct  RecordingUri
 Component: A recording URI (Uniform Resource Identifier). More...
 
struct  Resolution
 Component: Pixel resolution width & height, e.g. More...
 
struct  RotationAxisAngle
 Component: 3D rotation represented by a rotation around a given axis. More...
 
struct  RotationQuat
 Component: A 3D rotation expressed as a quaternion. More...
 
struct  Scalar
 Component: A scalar value, encoded as a 64-bit floating point. More...
 
struct  Scale3D
 Component: A 3D scale factor. More...
 
struct  ShowLabels
 Component: Whether the entity's components::Text label is shown. More...
 
struct  StrokeWidth
 Component: The width of a stroke specified in UI points. More...
 
struct  TensorData
 Component: An N-dimensional array of numbers. More...
 
struct  TensorDimensionIndexSelection
 Component: Specifies a concrete index on a tensor dimension. More...
 
struct  TensorHeightDimension
 Component: Specifies which dimension to use for height. More...
 
struct  TensorWidthDimension
 Component: Specifies which dimension to use for width. More...
 
struct  Texcoord2D
 Component: A 2D texture UV coordinate. More...
 
struct  Text
 Component: A string of text, e.g. for labels and text documents. More...
 
struct  TextLogLevel
 Component: The severity level of a text log message. More...
 
struct  TransformMat3x3
 Component: A 3x3 transformation matrix Matrix. More...
 
struct  Translation3D
 Component: A translation vector in 3D space. More...
 
struct  TriangleIndices
 Component: The three indices of a triangle in a triangle mesh. More...
 
struct  ValueRange
 Component: Range of expected or valid values, specifying a lower and upper bound. More...
 
struct  Vector2D
 Component: A vector in 2D space. More...
 
struct  Vector3D
 Component: A vector in 3D space. More...
 
struct  VideoTimestamp
 Component: Timestamp inside a archetypes::AssetVideo. More...
 
struct  ViewCoordinates
 Component: How we interpret the coordinate system of an entity/space. More...
 

Enumerations

enum class  AggregationPolicy : uint8_t {
  Off = 1 , Average = 2 , Max = 3 , Min = 4 ,
  MinMax = 5 , MinMaxAverage = 6
}
 Component: Policy for aggregation of multiple scalar plot values. More...
 
enum class  Colormap : uint8_t {
  Grayscale = 1 , Inferno = 2 , Magma = 3 , Plasma = 4 ,
  Turbo = 5 , Viridis = 6 , CyanToYellow = 7
}
 Component: Colormap for mapping scalar values within a given range to a color. More...
 
enum class  FillMode : uint8_t { MajorWireframe = 1 , DenseWireframe = 2 , Solid = 3 }
 Component: How a geometric shape is drawn and colored. More...
 
enum class  GraphType : uint8_t { Undirected = 1 , Directed = 2 }
 Component: Specifies if a graph has directed or undirected edges. More...
 
enum class  MagnificationFilter : uint8_t { Nearest = 1 , Linear = 2 }
 Component: Filter used when magnifying an image/texture such that a single pixel/texel is displayed as multiple pixels on screen. More...
 
enum class  MarkerShape : uint8_t {
  Circle = 1 , Diamond = 2 , Square = 3 , Cross = 4 ,
  Plus = 5 , Up = 6 , Down = 7 , Left = 8 ,
  Right = 9 , Asterisk = 10
}
 Component: The visual appearance of a point in e.g. a 2D plot. More...
 
enum class  TransformRelation : uint8_t { ParentFromChild = 1 , ChildFromParent = 2 }
 Component: Specifies relation a spatial transform describes. More...
 

Functions

const std::shared_ptr< arrow::DataType > & indicator_arrow_datatype ()
 Arrow data type shared by all instances of IndicatorComponent.
 
const std::shared_ptr< arrow::Array > & indicator_arrow_array ()
 Returns an arrow array for a single indicator component.
 
std::shared_ptr< arrow::Array > indicator_arrow_array (size_t num_instances)
 Returns an arrow array for a several indicator component.
 

Detailed Description

All built-in components. See Types in the Rerun manual.

Enumeration Type Documentation

◆ AggregationPolicy

enum class rerun::components::AggregationPolicy : uint8_t
strong

Component: Policy for aggregation of multiple scalar plot values.

This is used for lines in plots when the X axis distance of individual points goes below a single pixel, i.e. a single pixel covers more than one tick worth of data. It can greatly improve performance (and readability) in such situations as it prevents overdraw.

Enumerator
Off 

No aggregation.

Average 

Average all points in the range together.

Max 

Keep only the maximum values in the range.

Min 

Keep only the minimum values in the range.

MinMax 

Keep both the minimum and maximum values in the range.

    This will yield two aggregated points instead of one, effectively creating a vertical line. 
MinMaxAverage 

Find both the minimum and maximum values in the range, then use the average of those.

◆ Colormap

enum class rerun::components::Colormap : uint8_t
strong

Component: Colormap for mapping scalar values within a given range to a color.

This provides a number of popular pre-defined colormaps. In the future, the Rerun Viewer will allow users to define their own colormaps, but currently the Viewer is limited to the types defined here.

Enumerator
Grayscale 

A simple black to white gradient.

    This is a sRGB gray gradient which is perceptually uniform. 
Inferno 

The Inferno colormap from Matplotlib.

    This is a perceptually uniform colormap.
    It interpolates from black to red to bright yellow. 
Magma 

The Magma colormap from Matplotlib.

    This is a perceptually uniform colormap.
    It interpolates from black to purple to white. 
Plasma 

The Plasma colormap from Matplotlib.

    This is a perceptually uniform colormap.
    It interpolates from dark blue to purple to yellow. 
Turbo 

Google's Turbo colormap map.

    This is a perceptually non-uniform rainbow colormap addressing many issues of
    more traditional rainbow colormaps like Jet.
    It is more perceptually uniform without sharp transitions and is more colorblind-friendly.
    Details: <https://research.google/blog/turbo-an-improved-rainbow-colormap-for-visualization/> 
Viridis 

The Viridis colormap from Matplotlib.

    This is a perceptually uniform colormap which is robust to color blindness.
    It interpolates from dark purple to green to yellow. 
CyanToYellow 

Rasmusgo's Cyan to Yellow colormap.

    This is a perceptually uniform colormap which is robust to color blindness.
    It is especially suited for visualizing signed values.
    It interpolates from cyan to blue to dark gray to brass to yellow. 

◆ FillMode

enum class rerun::components::FillMode : uint8_t
strong

Component: How a geometric shape is drawn and colored.

Enumerator
MajorWireframe 

Lines are drawn around the parts of the shape which directly correspond to the logged data.

    Examples of what this means:

    * An `archetypes::Ellipsoids3D` will draw three axis-aligned ellipses that are cross-sections
      of each ellipsoid, each of which displays two out of three of the sizes of the ellipsoid.
    * For `archetypes::Boxes3D`, it is the edges of the box, identical to `components::FillMode::DenseWireframe`. 
DenseWireframe 

Many lines are drawn to represent the surface of the shape in a see-through fashion.

    Examples of what this means:

    * An `archetypes::Ellipsoids3D` will draw a wireframe triangle mesh that approximates each
      ellipsoid.
    * For `archetypes::Boxes3D`, it is the edges of the box, identical to `components::FillMode::MajorWireframe`. 
Solid 

The surface of the shape is filled in with a solid color. No lines are drawn.

◆ GraphType

enum class rerun::components::GraphType : uint8_t
strong

Component: Specifies if a graph has directed or undirected edges.

Enumerator
Undirected 

The graph has undirected edges.

Directed 

The graph has directed edges.

◆ MagnificationFilter

enum class rerun::components::MagnificationFilter : uint8_t
strong

Component: Filter used when magnifying an image/texture such that a single pixel/texel is displayed as multiple pixels on screen.

Enumerator
Nearest 

Show the nearest pixel value.

    This will give a blocky appearance when zooming in.
    Used as default when rendering 2D images. 
Linear 

Linearly interpolate the nearest neighbors, creating a smoother look when zooming in.

    Used as default for mesh rendering. 

◆ MarkerShape

enum class rerun::components::MarkerShape : uint8_t
strong

Component: The visual appearance of a point in e.g. a 2D plot.

Enumerator
Circle 

Diamond 

Square 

◼\u{fe0f}

Cross 

x

Plus 

+

Up 

Down 

Left 

Right 

Asterisk 

*

◆ TransformRelation

enum class rerun::components::TransformRelation : uint8_t
strong

Component: Specifies relation a spatial transform describes.

Enumerator
ParentFromChild 

The transform describes how to transform into the parent entity's space.

    E.g. a translation of (0, 1, 0) with this `components::TransformRelation` logged at `parent/child` means
    that from the point of view of `parent`, `parent/child` is translated 1 unit along `parent`'s Y axis.
    From perspective of `parent/child`, the `parent` entity is translated -1 unit along `parent/child`'s Y axis. 
ChildFromParent 

The transform describes how to transform into the child entity's space.

    E.g. a translation of (0, 1, 0) with this `components::TransformRelation` logged at `parent/child` means
    that from the point of view of `parent`, `parent/child` is translated -1 unit along `parent`'s Y axis.
    From perspective of `parent/child`, the `parent` entity is translated 1 unit along `parent/child`'s Y axis. 

Function Documentation

◆ indicator_arrow_array() [1/2]

const std::shared_ptr< arrow::Array > & rerun::components::indicator_arrow_array ( )

Returns an arrow array for a single indicator component.

This allocates a shared pointer only on the first call and returns references to the static object afterwards.

◆ indicator_arrow_array() [2/2]

std::shared_ptr< arrow::Array > rerun::components::indicator_arrow_array ( size_t  num_instances)

Returns an arrow array for a several indicator component.

Unlike the parameterless version this allocates a new data type on every call.