# Shapes

# Shapes

Artifact: [androidx.wear.compose:compose-material3](https://developer.android.com/jetpack/androidx/releases/wear-compose)  
[View Source](https://cs.android.com/search?q=file:androidx/wear/compose/material3/Shapes.kt+class:androidx.wear.compose.material3.Shapes)  
Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.5.0)


```
class Shapes
```

<br />

*** ** * ** ***

Material surfaces can be displayed in different shapes. Shapes direct attention, identify components, communicate state, and express brand.

The shape scale defines the style of container, offering a range of curved shapes (mostly polygonal). The default [Shapes](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes) theme for Material3 is rounded rectangles, with various degrees of corner roundness:

- Extra Small

- Small

- Medium

- Large

- Extra Large

You can customize the shape system for all components in the [MaterialTheme](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/MaterialTheme) or you can do it on a per component basis by overriding the shape parameter for that component. For example, by default, buttons use the shape style "large". If your product requires a smaller amount of roundness, you can override the shape parameter with a different shape value like [Shapes.small](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes#small()).

## Summary

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       ### Public constructors                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Shapes](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes#Shapes(androidx.compose.foundation.shape.CornerBasedShape,androidx.compose.foundation.shape.CornerBasedShape,androidx.compose.foundation.shape.CornerBasedShape,androidx.compose.foundation.shape.CornerBasedShape,androidx.compose.foundation.shape.CornerBasedShape))`(` ` extraSmall: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)`,` ` small: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)`,` ` medium: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)`,` ` large: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)`,` ` extraLarge: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape) `)` |

|                                        ### Public functions                                         |
|-----------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Shapes](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes)     | [copy](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes#copy(androidx.compose.foundation.shape.CornerBasedShape,androidx.compose.foundation.shape.CornerBasedShape,androidx.compose.foundation.shape.CornerBasedShape,androidx.compose.foundation.shape.CornerBasedShape,androidx.compose.foundation.shape.CornerBasedShape))`(` ` extraSmall: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)`,` ` small: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)`,` ` medium: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)`,` ` large: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)`,` ` extraLarge: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape) `)` Returns a copy of this Shapes, optionally overriding some of the values. |
| `open operator `[Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) | [equals](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes#equals(kotlin.Any))`(other: `[Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html)`?)`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `open `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)                  | [hashCode](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes#hashCode())`()`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `open `[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)            | [toString](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes#toString())`()`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |

|                                                 ### Public properties                                                 |
|-----------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape) | [extraLarge](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes#extraLarge()) By default, provides [ShapeDefaults.ExtraLarge](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#ExtraLarge()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 36dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize).                                                |
| [CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape) | [extraSmall](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes#extraSmall()) By default, provides [ShapeDefaults.ExtraSmall](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#ExtraSmall()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 4dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize) (used by bundled Cards).                         |
| [CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape) | [large](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes#large()) By default, provides [ShapeDefaults.Large](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#Large()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 26dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize) (used by Cards).                                                    |
| [CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape) | [medium](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes#medium()) By default, provides [ShapeDefaults.Medium](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#Medium()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 18dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize) (used by shape-shifting Buttons and rounded rectangle buttons). |
| [CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape) | [small](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/Shapes#small()) By default, provides [ShapeDefaults.Small](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#Small()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 8dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize).                                                                     |

## Public constructors

### Shapes

Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.5.0)  

```
Shapes(
    extraSmall: CornerBasedShape = ShapeDefaults.ExtraSmall,
    small: CornerBasedShape = ShapeDefaults.Small,
    medium: CornerBasedShape = ShapeDefaults.Medium,
    large: CornerBasedShape = ShapeDefaults.Large,
    extraLarge: CornerBasedShape = ShapeDefaults.ExtraLarge
)
```  

|                                                                            Parameters                                                                            |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `extraSmall: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)` = ShapeDefaults.ExtraSmall` | By default, provides [ShapeDefaults.ExtraSmall](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#ExtraSmall()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 4dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize) (used by bundled Cards).                                 |
| `small: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)` = ShapeDefaults.Small`           | By default, provides [ShapeDefaults.Small](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#Small()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 8dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize).                                                                   |
| `medium: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)` = ShapeDefaults.Medium`         | By default, provides [ShapeDefaults.Medium](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#Medium()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 18dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize) (used by shape-shifting Buttons and rounded rectangle buttons). |
| `large: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)` = ShapeDefaults.Large`           | By default, provides [ShapeDefaults.Large](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#Large()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 26dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize) (used by Cards).                                                  |
| `extraLarge: `[CornerBasedShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerBasedShape)` = ShapeDefaults.ExtraLarge` | By default, provides [ShapeDefaults.ExtraLarge](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#ExtraLarge()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 36dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize).                                                        |

## Public functions

### copy

Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.5.0)  

```
fun copy(
    extraSmall: CornerBasedShape = this.extraSmall,
    small: CornerBasedShape = this.small,
    medium: CornerBasedShape = this.medium,
    large: CornerBasedShape = this.large,
    extraLarge: CornerBasedShape = this.extraLarge
): Shapes
```

Returns a copy of this Shapes, optionally overriding some of the values.  

### equals

```
open operator fun equals(other: Any?): Boolean
```  

### hashCode

```
open fun hashCode(): Int
```  

### toString

```
open fun toString(): String
```  

## Public properties

### extraLarge

Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.5.0)  

```
val extraLarge: CornerBasedShape
```

By default, provides [ShapeDefaults.ExtraLarge](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#ExtraLarge()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 36dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize).  

### extraSmall

Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.5.0)  

```
val extraSmall: CornerBasedShape
```

By default, provides [ShapeDefaults.ExtraSmall](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#ExtraSmall()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 4dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize) (used by bundled Cards).  

### large

Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.5.0)  

```
val large: CornerBasedShape
```

By default, provides [ShapeDefaults.Large](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#Large()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 26dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize) (used by Cards).  

### medium

Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.5.0)  

```
val medium: CornerBasedShape
```

By default, provides [ShapeDefaults.Medium](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#Medium()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 18dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize) (used by shape-shifting Buttons and rounded rectangle buttons).  

### small

Added in [1.5.0](https://developer.android.com/jetpack/androidx/releases/wear-compose#1.5.0)  

```
val small: CornerBasedShape
```

By default, provides [ShapeDefaults.Small](https://developer.android.com/reference/kotlin/androidx/wear/compose/material3/ShapeDefaults#Small()), a [RoundedCornerShape](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/RoundedCornerShape) with 8dp [CornerSize](https://developer.android.com/reference/kotlin/androidx/compose/foundation/shape/CornerSize).