---
title: SpatialTypeProtocol
framework: spatial
role: symbol
role_heading: Protocol
path: spatial/spatialtypeprotocol
---

# SpatialTypeProtocol

## Declaration

```swift
protocol SpatialTypeProtocol<Scalar> : Decodable, Encodable, Equatable
```

## Topics

### Associated Types

- [AffineTransform](spatial/spatialtypeprotocol/affinetransform.md)
- [AxisEnumeration](spatial/spatialtypeprotocol/axisenumeration.md)
- [Point](spatial/spatialtypeprotocol/point.md)
- [Pose](spatial/spatialtypeprotocol/pose.md)
- [ProjectiveTransform](spatial/spatialtypeprotocol/projectivetransform.md)
- [Quaternion](spatial/spatialtypeprotocol/quaternion.md)
- [Rect](spatial/spatialtypeprotocol/rect.md)
- [Rotation](spatial/spatialtypeprotocol/rotation.md)
- [Scalar](spatial/spatialtypeprotocol/scalar.md)
- [Size](spatial/spatialtypeprotocol/size.md)
- [Vector](spatial/spatialtypeprotocol/vector.md)

## Relationships

### Inherits From

- [Decodable](swift/decodable.md)
- [Encodable](swift/encodable.md)
- [Equatable](swift/equatable.md)

### Inherited By

- [ClampableWithinRectProtocol](spatial/clampablewithinrectprotocol.md)
- [Primitive3DProtocol](spatial/primitive3dprotocol.md)
- [Rotatable3DProtocol](spatial/rotatable3dprotocol.md)
- [Scalable3DProtocol](spatial/scalable3dprotocol.md)
- [Shearable3DProtocol](spatial/shearable3dprotocol.md)
- [Transform3DProtocol](spatial/transform3dprotocol.md)
- [Translatable3DProtocol](spatial/translatable3dprotocol.md)
- [VolumetricProtocol](spatial/volumetricprotocol.md)

### Conforming Types

- [AffineTransform3D](spatial/affinetransform3d.md)
- [AffineTransform3DFloat](spatial/affinetransform3dfloat.md)
- [Point3D](spatial/point3d.md)
- [Point3DFloat](spatial/point3dfloat.md)
- [Pose3D](spatial/pose3d.md)
- [Pose3DFloat](spatial/pose3dfloat.md)
- [ProjectiveTransform3D](spatial/projectivetransform3d.md)
- [ProjectiveTransform3DFloat](spatial/projectivetransform3dfloat.md)
- [Ray3D](spatial/ray3d.md)
- [Ray3DFloat](spatial/ray3dfloat.md)
- [Rect3D](spatial/rect3d.md)
- [Rect3DFloat](spatial/rect3dfloat.md)
- [Rotation3D](spatial/rotation3d.md)
- [Rotation3DFloat](spatial/rotation3dfloat.md)
- [ScaledPose3D](spatial/scaledpose3d.md)
- [ScaledPose3DFloat](spatial/scaledpose3dfloat.md)
- [Size3D](spatial/size3d.md)
- [Size3DFloat](spatial/size3dfloat.md)
- [Vector3D](spatial/vector3d.md)
- [Vector3DFloat](spatial/vector3dfloat.md)
