# TileBoundingVolume

class in `3d-tiles-renderer/playcanvas`

```js
import { TileBoundingVolume } from '3d-tiles-renderer/playcanvas';
```

The bounding volume of a tile, in the frame of the tileset. Supports the `sphere` and `box`
volume types.

## Properties

### .sphere: BoundingSphere | null

### .obb: OBB | null

## Methods

### .setSphereData

```js
.setSphereData( x: number, y: number, z: number, radius: number, transform: Mat4 )
```

- `x`, `number`
- `y`, `number`
- `z`, `number`
- `radius`, `number`
- `transform`, `Mat4`

### .setObbData

```js
.setObbData( data: Array<number>, transform: Mat4 )
```

- `data`, `Array<number>`: The 12 numbers of a 3D Tiles `box`: center, then the x, y and z
half-axis vectors.
- `transform`, `Mat4`

### .distanceToPoint

```js
.distanceToPoint( point: Vec3 ): number
```

Returns the distance from the volume to the point, or 0 when the point is inside.

- `point`, `Vec3`

### .intersectsFrustum

```js
.intersectsFrustum( frustum: Frustum, frustumPlanes: Array<Plane>, frustumPoints: Array<Vec3> ): boolean
```

- `frustum`, `Frustum`: The frustum, in the frame of the tileset.
- `frustumPlanes`, `Array<Plane>`: The six planes of the frustum.
- `frustumPoints`, `Array<Vec3>`: The eight corners of the frustum.
