---
title: "Line"
section: "Components"
order: 48
description: "Line — Vuer documentation"
---

import { DocImage } from '@docs/components/Docs'

# Line

The `Line` component renders lines and splines from a set of 3D points. This is ideal for:

- Visualizing camera trajectories and paths
- Drawing splines and curves
- Creating wireframe visualizations
- Displaying motion trails

<DocImage src="/source/components/figures/line.png" alt="" />

## Basic Usage

A minimal example that creates a line from points:

```python
import asyncio
import numpy as np
from vuer import Vuer
from vuer.schemas import DefaultScene, Line, OrbitControls

app = Vuer()

# Create a spiral path
t = np.linspace(0, 4 * np.pi, 100)
points = np.column_stack([
    np.cos(t),
    np.sin(t),
    t / (4 * np.pi)
])

@app.spawn(start=True)
async def main(session):
    session.set @ DefaultScene(
        Line(
            key="spiral",
            points=points,
            color="red",
            lineWidth=3,
        ),
        bgChildren=[
            OrbitControls(key="OrbitControls")
        ],
    )

    while True:
        await asyncio.sleep(1.0)
```

## Key Parameters

| Parameter      | Type         | Default   | Description                                                         |
| -------------- | ------------ | --------- | ------------------------------------------------------------------- |
| `key`          | str          | -         | Unique identifier for the line                                      |
| `points`       | list/ndarray | -         | Array of 3D points (Vector3, Vector2, \[x,y,z], \[x,y], or numbers) |
| `color`        | str          | `"black"` | Line color (hex or named color)                                     |
| `lineWidth`    | float        | `1`       | Line thickness in pixels                                            |
| `segments`     | bool         | `False`   | If true, renders LineSegments2; otherwise renders Line2             |
| `dashed`       | bool         | `False`   | Enable dashed line rendering                                        |
| `vertexColors` | list         | -         | Optional array of RGB values for each point                         |

## Learn More

For detailed examples of using `Line`, see:

- [Spline Frustum](/examples/spline_frustum) - Camera trajectory visualization
