PointCloud
The PointCloud component displays point cloud data directly from vertex and color arrays.
This is ideal for:
- Real-time point cloud streaming from sensors (LiDAR, depth cameras)
- Visualizing 3D scan data
- Displaying particle systems
- Animating point cloud sequences
Basic Usage
A minimal example that creates a point cloud from numpy arrays:
import numpy as np
from vuer import Vuer
from vuer.schemas import DefaultScene, PointCloud, OrbitControls
# Create random point cloud
n_points = 1000
vertices = np.random.randn(n_points, 3).astype(np.float32)
colors = np.random.rand(n_points, 3).astype(np.float32)
app = Vuer()
@app.spawn(start=True)
async def main(session):
session.set @ DefaultScene(
PointCloud(
key="pointcloud",
vertices=vertices,
colors=colors,
size=0.02,
),
bgChildren=[
OrbitControls(key="OrbitControls")
],
)
await session.forever()
Key Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
key |
str | - | Unique identifier for the point cloud |
vertices |
ndarray | - | Nx3 array of point positions |
colors |
ndarray | - | Nx3 array of RGB colors. Supports two formats: Float32 (0-1 range), or Uint8 (0-255 range, better performance) |
size |
float | 0.01 |
Point size |
Learn More
For detailed examples of using PointCloud, see:
- Showing Point Clouds - Programmatic point cloud display
- Point Cloud Animation - Animating point cloud sequences