Logging functions
rerun
def log(entity_path, entity, *extra, timeless=False, recording=None, strict=None)
Log data to Rerun.
This is the main entry point for logging data to rerun. It can be used to log anything
that implements the rerun.AsComponents
interface, or a collection of ComponentBatchLike
objects.
The most common way to log is with one of the rerun archetypes, all of which implement
the AsComponents
interface.
For example, to log a 3D point:
rr.log("my/point", rr.Points3D(position=[1.0, 2.0, 3.0]))
The log
function can flexibly accept an arbitrary number of additional objects which will
be merged into the first entity so long as they don't expose conflicting components, for instance:
# Log three points with arrows sticking out of them,
# and a custom "confidence" component.
rr.log(
"my/points",
rr.Points2D([[0.2, 0.5], [0.9, 1.2], [1.0, 4.2]], radii=[0.1, 0.2, 0.3]),
rr.Arrows3D(vectors=[[0.3, 2.1], [0.2, -1.1], [-0.4, 0.1]]),
rr.AnyValues(confidence=[0.3, 0.4, 0.9]),
)
PARAMETER | DESCRIPTION |
---|---|
entity_path |
Path to the entity in the space hierarchy.
TYPE:
|
entity |
Anything that implements the
TYPE:
|
*extra |
An arbitrary number of additional component bundles implementing the
TYPE:
|
timeless |
If true, the entity will be timeless. Otherwise, the data will be timestamped automatically with
TYPE:
|
recording |
Specifies the
TYPE:
|
strict |
If True, raise exceptions on non-loggable data.
If False, warn on non-loggable data.
if None, use the global default from
TYPE:
|
See also: rerun.log_components
.
def set_time_sequence(timeline, sequence, recording=None)
Set the current time for this thread as an integer sequence.
Used for all subsequent logging on the same thread,
until the next call to set_time_sequence
.
For example: set_time_sequence("frame_nr", frame_nr)
.
You can remove a timeline again using set_time_sequence("frame_nr", None)
.
There is no requirement of monotonicity. You can move the time backwards if you like.
PARAMETER | DESCRIPTION |
---|---|
timeline |
The name of the timeline to set the time for.
TYPE:
|
sequence |
The current time on the timeline in integer units.
TYPE:
|
recording |
Specifies the
TYPE:
|
def set_time_seconds(timeline, seconds, recording=None)
Set the current time for this thread in seconds.
Used for all subsequent logging on the same thread,
until the next call to rerun.set_time_seconds
or rerun.set_time_nanos
.
For example: set_time_seconds("capture_time", seconds_since_unix_epoch)
.
You can remove a timeline again using set_time_seconds("capture_time", None)
.
Very large values will automatically be interpreted as seconds since unix epoch (1970-01-01).
Small values (less than a few years) will be interpreted as relative
some unknown point in time, and will be shown as e.g. +3.132s
.
The bindings has a built-in time which is log_time
, and is logged as seconds
since unix epoch.
There is no requirement of monotonicity. You can move the time backwards if you like.
PARAMETER | DESCRIPTION |
---|---|
timeline |
The name of the timeline to set the time for.
TYPE:
|
seconds |
The current time on the timeline in seconds.
TYPE:
|
recording |
Specifies the
TYPE:
|
def set_time_nanos(timeline, nanos, recording=None)
Set the current time for this thread.
Used for all subsequent logging on the same thread,
until the next call to rerun.set_time_nanos
or rerun.set_time_seconds
.
For example: set_time_nanos("capture_time", nanos_since_unix_epoch)
.
You can remove a timeline again using set_time_nanos("capture_time", None)
.
Very large values will automatically be interpreted as nanoseconds since unix epoch (1970-01-01).
Small values (less than a few years) will be interpreted as relative
some unknown point in time, and will be shown as e.g. +3.132s
.
The bindings has a built-in time which is log_time
, and is logged as nanos since
unix epoch.
There is no requirement of monotonicity. You can move the time backwards if you like.
PARAMETER | DESCRIPTION |
---|---|
timeline |
The name of the timeline to set the time for.
TYPE:
|
nanos |
The current time on the timeline in nanoseconds.
TYPE:
|
recording |
Specifies the
TYPE:
|