# ArcCurveFit

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/ArcCurveFit.java+class:androidx.constraintlayout.core.motion.utils.ArcCurveFit) Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

*** ** * ** ***

<br />

```
class ArcCurveFit : CurveFit
```

<br />

|---|---|---|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) |||
| ↳ | [androidx.constraintlayout.core.motion.utils.CurveFit](https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit) ||
|   | ↳ | [androidx.constraintlayout.core.motion.utils.ArcCurveFit](https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit) |

*** ** * ** ***

This provides provides a curve fit system that stitches the x,y path together with quarter ellipses

## Summary

| ### Constants |
|---|---|
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#ARC_ABOVE() = 5` |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#ARC_BELOW() = 4` |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#ARC_START_FLIP() = 3` |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#ARC_START_HORIZONTAL() = 2` |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#ARC_START_LINEAR() = 0` |
| `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#ARC_START_VERTICAL() = 1` |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#ArcCurveFit(int[],double[],double[][])( arcModes: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html>!, time: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html>!, y: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html>!>! )` |

| ### Public functions |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#getPos(double,int)(t: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html, j: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#getPos(double,double[])(t: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html, v: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html>!)` |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#getPos(double,float[])(t: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html, v: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html>!)` |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#getSlope(double,int)(t: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html, j: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#getSlope(double,double[])(t: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html, v: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html>!)` |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html>!` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/ArcCurveFit#getTimePoints()()` |

### Inherited Constants

From [androidx.constraintlayout.core.motion.utils.CurveFit](https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit) `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit#CONSTANT() = 2` `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit#LINEAR() = 1` `const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit#SPLINE() = 0`

### Inherited functions

From [androidx.constraintlayout.core.motion.utils.CurveFit](https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit) `java-static https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit!` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit#get(int,double[],double[][])(type: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, time: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html>!, y: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html>!>!)` `java-static https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit!` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit#getArc(int[],double[],double[][])(

arcModes: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html>!,

time: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html>!,

y: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html>!>!

)`

## Constants

### ARC_ABOVE

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

```
const val ARC_ABOVE = 5: Int
```

### ARC_BELOW

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

```
const val ARC_BELOW = 4: Int
```

### ARC_START_FLIP

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

```
const val ARC_START_FLIP = 3: Int
```

### ARC_START_HORIZONTAL

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

```
const val ARC_START_HORIZONTAL = 2: Int
```

### ARC_START_LINEAR

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

```
const val ARC_START_LINEAR = 0: Int
```

### ARC_START_VERTICAL

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

```
const val ARC_START_VERTICAL = 1: Int
```

## Public constructors

### ArcCurveFit

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

```
ArcCurveFit(
    arcModes: IntArray<Int>!,
    time: DoubleArray<Double>!,
    y: Array<DoubleArray<Double>!>!
)
```

## Public functions

### getPos

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

```
fun getPos(t: Double, j: Int): Double
```

### getPos

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

```
fun getPos(t: Double, v: DoubleArray<Double>!): Unit
```

### getPos

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

```
fun getPos(t: Double, v: FloatArray<Float>!): Unit
```

### getSlope

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

```
fun getSlope(t: Double, j: Int): Double
```

### getSlope

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

```
fun getSlope(t: Double, v: DoubleArray<Double>!): Unit
```

### getTimePoints

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

```
fun getTimePoints(): Array<Double>!
```