rerun-io / rerun

Visualize streams of multimodal data. Fast, easy to use, and simple to integrate. Built in Rust using egui.
https://rerun.io/
Apache License 2.0
6.24k stars 289 forks source link

Distinguish points, spheres and circles #2689

Open Wumpf opened 1 year ago

Wumpf commented 1 year ago

Today, log_points takes a world/scene size radius. For 2D this makes it effectively circles with a pixel size and for 3D they become (due to the way re_renderer accounts for projection) spheres. Hidden, there is also a way to have them be ui sized: If a point doesn't have a radius it will take the global default which can be configured to be in ui points.

Proposing to instead define three distinct types:

Note that re_renderer's PointCloudRenderer (to be renamed?) can already serve all three types out of the box! (Detail: Spheres do not yet cut correctly through other geometry, something that can be easily fixed)

3D spheres with ui size are explicitly left out.

Supersedes #2029

Wumpf commented 4 weeks ago

We have spheres/ellipsoids by now. narrowing the problem to circles & points Still an open question whether points should do depth manipulation as proposed in this PR. Probably they should, at least when reaching a certain relative size!