# SplineSet

Artifact: [androidx.constraintlayout:constraintlayout-core](https://developer.android.com/jetpack/androidx/releases/constraintlayout) [View Source](https://cs.android.com/search?q=file:androidx/constraintlayout/core/motion/utils/SplineSet.java+class:androidx.constraintlayout.core.motion.utils.SplineSet) Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

*** ** * ** ***


```
public abstract class SplineSet
```

<br />

Known direct subclasses [SplineSet.CustomSet](https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet.CustomSet), [SplineSet.CustomSpline](https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet.CustomSpline), [ViewSpline](https://developer.android.com/reference/androidx/constraintlayout/motion/utils/ViewSpline)

|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet.CustomSet` |   |
| `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet.CustomSpline` |   |
| `https://developer.android.com/reference/androidx/constraintlayout/motion/utils/ViewSpline` |   |

Known indirect subclasses [ViewSpline.CustomSet](https://developer.android.com/reference/androidx/constraintlayout/motion/utils/ViewSpline.CustomSet), [ViewSpline.PathRotate](https://developer.android.com/reference/androidx/constraintlayout/motion/utils/ViewSpline.PathRotate)

|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/motion/utils/ViewSpline.CustomSet` |   |
| `https://developer.android.com/reference/androidx/constraintlayout/motion/utils/ViewSpline.PathRotate` |   |

*** ** * ** ***

This engine allows manipulation of attributes by Curves

## Summary

| ### Nested types |
|---|
| `public class https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet.CustomSet extends https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet` |
| `public class https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet.CustomSpline extends https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet` |

| ### Protected fields |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/CurveFit` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#mCurveFit()` |
| `int[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#mTimePoints()` |
| `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#mValues()` |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#SplineSet()()` |

| ### Public methods |
|---|---|
| `float` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#get(float)(float t)` |
| `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/CurveFit` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#getCurveFit()()` |
| `float` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#getSlope(float)(float t)` |
| `static https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#makeCustomSpline(java.lang.String,androidx.constraintlayout.core.motion.utils.KeyFrameArray.CustomArray)(https://developer.android.com/reference/java/lang/String.html str, https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/KeyFrameArray.CustomArray attrList)` |
| `static https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#makeCustomSplineSet(java.lang.String,androidx.constraintlayout.core.motion.utils.KeyFrameArray.CustomVar)(https://developer.android.com/reference/java/lang/String.html str, https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/KeyFrameArray.CustomVar attrList)` |
| `static https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#makeSpline(java.lang.String,long)(https://developer.android.com/reference/java/lang/String.html str, long currentTime)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#setPoint(int,float)(int position, float value)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#setProperty(androidx.constraintlayout.core.motion.utils.TypedValues,float)(https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/TypedValues widget, float t)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#setType(java.lang.String)(https://developer.android.com/reference/java/lang/String.html type)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#setup(int)(int curveType)` |
| `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#toString()()` |

## Protected fields

### mCurveFit

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
protected CurveFit mCurveFit
```

### mTimePoints

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
protected int[] mTimePoints
```

### mValues

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
protected float[] mValues
```

## Public constructors

### SplineSet

Added in 1.1.2

```
public SplineSet()
```

## Public methods

### get

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
public float get(float t)
```

### getCurveFit

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
public CurveFit getCurveFit()
```

### getSlope

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
public float getSlope(float t)
```

### makeCustomSpline

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
public static SplineSet makeCustomSpline(String str, KeyFrameArray.CustomArray attrList)
```

### makeCustomSplineSet

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
public static SplineSet makeCustomSplineSet(String str, KeyFrameArray.CustomVar attrList)
```

### makeSpline

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
public static SplineSet makeSpline(String str, long currentTime)
```

### setPoint

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
public void setPoint(int position, float value)
```

### setProperty

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
public void setProperty(TypedValues widget, float t)
```

### setType

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
public void setType(String type)
```

### setup

Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

```
public void setup(int curveType)
```

### toString

```
public String toString()
```