# ShapePath.PathOperation

[View Source](https://github.com/material-components/material-components-android/blob/1.14.0/lib/java/com/google/android/material/shape/ShapePath.java)

*** ** * ** ***


```
public abstract class ShapePath.PathOperation
```

<br />

Known direct subclasses [ShapePath.PathArcOperation](https://developer.android.com/reference/com/google/android/material/shape/ShapePath.PathArcOperation), [ShapePath.PathCubicOperation](https://developer.android.com/reference/com/google/android/material/shape/ShapePath.PathCubicOperation), [ShapePath.PathLineOperation](https://developer.android.com/reference/com/google/android/material/shape/ShapePath.PathLineOperation), [ShapePath.PathQuadOperation](https://developer.android.com/reference/com/google/android/material/shape/ShapePath.PathQuadOperation)

|---|---|
| `https://developer.android.com/reference/com/google/android/material/shape/ShapePath.PathArcOperation` | Path arc operation. |
| `https://developer.android.com/reference/com/google/android/material/shape/ShapePath.PathCubicOperation` | Path cubic operation. |
| `https://developer.android.com/reference/com/google/android/material/shape/ShapePath.PathLineOperation` | Straight line operation. |
| `https://developer.android.com/reference/com/google/android/material/shape/ShapePath.PathQuadOperation` | Path quad operation. |

*** ** * ** ***

Interface for a path operation to be appended to the operations list.

## Summary

| ### Protected fields |
|---|---|
| `final Matrix` | `https://developer.android.com/reference/com/google/android/material/shape/ShapePath.PathOperation#matrix()` A usable Matrix object for transformations. |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/com/google/android/material/shape/ShapePath.PathOperation#PathOperation()()` |

| ### Public methods |
|---|---|
| `abstract void` | `https://developer.android.com/reference/com/google/android/material/shape/ShapePath.PathOperation#applyToPath(Matrix,Path)(Matrix transform, Path path)` Applies the given `transform` to the provided `path`. |

## Protected fields

### matrix

```
protected final Matrix matrix
```

A usable Matrix object for transformations.

## Public constructors

### PathOperation

```
public PathOperation()
```

## Public methods

### applyToPath

```
public abstract void applyToPath(Matrix transform, Path path)
```

Applies the given `transform` to the provided `path`.