# 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)

*** ** * ** ***

<br />

```
abstract class SplineSet
```

<br />

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

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

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

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

*** ** * ** ***

This engine allows manipulation of attributes by Curves

## Summary

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

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

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

| ### Protected properties |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit!` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#mCurveFit()` |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html>!` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#mTimePoints()` |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html>!` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#mValues()` |

## Public constructors

### SplineSet

Added in 1.1.2

```
SplineSet()
```

## Public functions

### get

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

```
fun get(t: Float): Float
```

### getCurveFit

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

```
fun getCurveFit(): CurveFit!
```

### getSlope

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

```
fun getSlope(t: Float): Float
```

### makeCustomSpline

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

```
java-static fun makeCustomSpline(str: String!, attrList: KeyFrameArray.CustomArray!): SplineSet!
```

### makeCustomSplineSet

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

```
java-static fun makeCustomSplineSet(str: String!, attrList: KeyFrameArray.CustomVar!): SplineSet!
```

### makeSpline

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

```
java-static fun makeSpline(str: String!, currentTime: Long): SplineSet!
```

### setPoint

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

```
fun setPoint(position: Int, value: Float): Unit
```

### setProperty

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

```
fun setProperty(widget: TypedValues!, t: Float): Unit
```

### setType

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

```
fun setType(type: String!): Unit
```

### setup

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

```
fun setup(curveType: Int): Unit
```

### toString

```
fun toString(): String!
```

## Protected properties

### mCurveFit

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

```
protected val mCurveFit: CurveFit!
```

### mTimePoints

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

```
protected val mTimePoints: Array<Int>!
```

### mValues

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

```
protected val mValues: Array<Float>!
```