Properties |
|||
Name |
Description |
Valid Values |
Default |
Selectable |
Whether or not this cloud is selectable using the selection tool. |
True, False |
True |
Style |
The rendering style to use when drawing the points, listed in order of computational expense. There are currently 4 rendering styles, which are explained in the Rendering Styles section |
Points, Billboards, Billboard Spheres, Boxes |
Billboards |
Channel |
Which channel(s) to use to color the points. This dropdown is dynamically populated based on the channels in the last cloud received. The individual channels are explained in the Channels section. |
Intensity, Color (RGB), Normal Sphere, Curvature |
First option which has a corresponding channel in the cloud. |
Alpha |
The amount of transparency to apply to the points. Note that this does not work perfectly, and you may see some rendering strangeness if this is set to anything but 1 |
[0-1] |
1 |
Min Color |
For intensity channels, the color to assign to the minimum value. See the Intensity Channel section for more information. |
([0-255], [0-255], [0-255]) |
(0, 0, 0) |
Min Color |
For intensity channels, the color to assign to the maximum value. See the Intensity Channel section for more information. |
([0-255], [0-255], [0-255]) |
(255, 255, 255) |
Billboard Size |
The size, in meters, to display the billboards (or boxes). This setting does not affect the Points rendering style |
0.0001+ |
0.01 |
Autocompute Intensity Bounds |
Whether or not to auto-compute the "Min Intensity" and "Max Intensity" properties |
True, False |
True |
Min Intensity |
The minimum value to use for intensity channel coloring. See the Intensity Channel section for more information. |
[-inf, < Max Intensity]] |
0 |
Max Intensity |
The maximum value to use for intensity channel coloring. See the Intensity Channel section for more information. |
[> Min Intensity, inf]] |
4096 |
Decay Time |
The amount of time to keep a cloud/scan around before removing it. A value of 0 means to only display the most recent data. |
0+ |
0 |
Topic |
The topic to subscribe to |
Any valid Graph Resource Name |
Empty String |
Rendering Styles
Points |
Points are a fixed size on-screen, currently 3 pixels by 3 pixels. This means you can often see more definition from far away, but as you get closer the density decreases. |
|
Billboards |
Billboards are camera-facing quads, that have real-world size. |
|
Billboard Spheres |
Similar to Billboards, but rendered such that they look like spheres, and provide some contrast so you can tell individual points apart if they are overlapping. |
|
Boxes |
Cubes in the world. |
Channels
PointClouds can have any number of channels associated with them. If you're using a LaserScan display, the only available channel will be the "Intensity" channel.
This section explains how the color/position of a point is computed for each channel type.
Intensity
Valid channel names: intensity, intensities
Intensity only affects the color of the point.
The intensity channel uses 4 values to compute the final color of the point:
Min Intensity |
min_i |
Max Intensity |
max_i |
Min Color |
min_c |
Max Color |
max_c |
For each point:
To compute the color value, we first compute a normalized intensity value based on min_i and max_i:
norm_i = (i - min_i) / (max_i - min_i)
- Then to compute the color from that normalized intensity:
final_c = (norm_i * max_c) + ((1 - norm_i) * min_c)
RGB
Valid channel names: rgb (1 channel), r, g, b (3 channel)
RGB only affects the color of the point.
There are two ways to specify RGB:
- 3 channels, named "r", "g", and "b", with floating point values between 0 and 1.
1 channel, with the float in the channel reinterpreted as 3 single-byte values with ranges from 0 to 255. 0xff0000 is red, 0xff00 is green, 0xff is blue.
In C++, int rgb = 0xff0000; float float_rgb = *reinterpret_cast<float*>(&rgb);
In Python, float_rgb = struct.unpack('f', struct.pack('i', 0xff0000))[0]
Normal Sphere
Valid channel names: nx, ny, nz (all 3 required)
Normal Sphere only affects the position of the point.
For this channel, the "nx", "ny" and "nz" channels will be used to position the points instead of the values in the points array.
Curvature
Valid channel names: curvature, curvatures
Curvature colors in the same way intensity does.