---
title: VectorArithmetic
framework: swiftui
role: symbol
role_heading: Protocol
path: swiftui/vectorarithmetic
---

# VectorArithmetic

A type that can serve as the animatable data of an animatable type.

## Declaration

```swift
protocol VectorArithmetic : AdditiveArithmetic
```

## Overview

Overview VectorArithmetic extends the AdditiveArithmetic protocol with scalar multiplication and a way to query the vector magnitude of the value. Use this type as the animatableData associated type of a type that conforms to the Animatable protocol.

## Topics

### Manipulating values

- [magnitudeSquared](swiftui/vectorarithmetic/magnitudesquared.md)
- [scale(by:)](swiftui/vectorarithmetic/scale(by:).md)
- [scaled(by:)](swiftui/vectorarithmetic/scaled(by:).md)
- [interpolate(towards:amount:)](swiftui/vectorarithmetic/interpolate(towards:amount:).md)
- [interpolated(towards:amount:)](swiftui/vectorarithmetic/interpolated(towards:amount:).md)

## Relationships

### Inherits From

- [AdditiveArithmetic](swift/additivearithmetic.md)
- [Equatable](swift/equatable.md)

### Conforming Types

- [AnimatablePair](swiftui/animatablepair.md)
- [AnimatableValues](swiftui/animatablevalues.md)
- [EmptyAnimatableData](swiftui/emptyanimatabledata.md)

## See Also

### Making data animatable

- [Animatable](swiftui/animatable.md)
- [AnimatableValues](swiftui/animatablevalues.md)
- [AnimatablePair](swiftui/animatablepair.md)
- [EmptyAnimatableData](swiftui/emptyanimatabledata.md)
