---
title: Primitive3DProtocol
framework: spatial
role: symbol
role_heading: Protocol
path: spatial/primitive3dprotocol
---

# Primitive3DProtocol

A set of methods common to Spatial primitives.

## Declaration

```swift
protocol Primitive3DProtocol<Scalar> : Rotatable3DProtocol
```

## Topics

### Instance Properties

- [isFinite](spatial/primitive3dprotocol/isfinite.md)
- [isNaN](spatial/primitive3dprotocol/isnan.md)
- [isZero](spatial/primitive3dprotocol/iszero.md)

### Instance Methods

- [apply(_:)](spatial/primitive3dprotocol/apply(_:)-1qcu6.md)
- [apply(_:)](spatial/primitive3dprotocol/apply(_:)-3bne6.md)
- [apply(_:)](spatial/primitive3dprotocol/apply(_:)-6b1fd.md)
- [applying(_:)](spatial/primitive3dprotocol/applying(_:)-1tt2b.md)
- [applying(_:)](spatial/primitive3dprotocol/applying(_:)-4ylq8.md)
- [applying(_:)](spatial/primitive3dprotocol/applying(_:)-690k5.md)
- [unapply(_:)](spatial/primitive3dprotocol/unapply(_:)-22esh.md)
- [unapply(_:)](spatial/primitive3dprotocol/unapply(_:)-34afa.md)
- [unapply(_:)](spatial/primitive3dprotocol/unapply(_:)-5dfj2.md)
- [unapplying(_:)](spatial/primitive3dprotocol/unapplying(_:)-1px2q.md)
- [unapplying(_:)](spatial/primitive3dprotocol/unapplying(_:)-53rsn.md)
- [unapplying(_:)](spatial/primitive3dprotocol/unapplying(_:)-5fmf2.md)

### Type Properties

- [infinity](spatial/primitive3dprotocol/infinity.md)
- [zero](spatial/primitive3dprotocol/zero.md)

## Relationships

### Inherits From

- [Decodable](swift/decodable.md)
- [Encodable](swift/encodable.md)
- [Equatable](swift/equatable.md)
- [Rotatable3DProtocol](spatial/rotatable3dprotocol.md)
- [SpatialTypeProtocol](spatial/spatialtypeprotocol.md)

### Conforming Types

- [Point3D](spatial/point3d.md)
- [Point3DFloat](spatial/point3dfloat.md)
- [Ray3D](spatial/ray3d.md)
- [Ray3DFloat](spatial/ray3dfloat.md)
- [Rect3D](spatial/rect3d.md)
- [Rect3DFloat](spatial/rect3dfloat.md)
- [Size3D](spatial/size3d.md)
- [Size3DFloat](spatial/size3dfloat.md)
- [Vector3D](spatial/vector3d.md)
- [Vector3DFloat](spatial/vector3dfloat.md)
