---
title: "fillet"
excerpt: "Blend a transitional edge along a tagged path, smoothing the sharp edge."
layout: manual
---

Blend a transitional edge along a tagged path, smoothing the sharp edge.

Fillet is similar in function and use to a chamfer, except a chamfer will cut a sharp transition along an edge while fillet will smoothly blend the transition.

```js
fillet(data: FilletData, solid: Solid, tag?: TagDeclarator) -> Solid
```


### Arguments

| Name | Type | Description | Required |
|----------|------|-------------|----------|
| `data` | [`FilletData`](/docs/kcl/types/FilletData) | Data for fillets. | Yes |
| `solid` | [`Solid`](/docs/kcl/types/Solid) | An solid is a collection of extrude surfaces. | Yes |
| `tag` | [`TagDeclarator`](/docs/kcl/types#tag-declaration) |  | No |

### Returns

[`Solid`](/docs/kcl/types/Solid) - An solid is a collection of extrude surfaces.


### Examples

```js
width = 20
length = 10
thickness = 1
filletRadius = 2

mountingPlateSketch = startSketchOn("XY")
  |> startProfileAt([-width / 2, -length / 2], %)
  |> line(endAbsolute = [width / 2, -length / 2], tag = $edge1)
  |> line(endAbsolute = [width / 2, length / 2], tag = $edge2)
  |> line(endAbsolute = [-width / 2, length / 2], tag = $edge3)
  |> close(tag = $edge4)

mountingPlate = extrude(mountingPlateSketch, length = thickness)
  |> fillet({
       radius = filletRadius,
       tags = [
         getNextAdjacentEdge(edge1),
         getNextAdjacentEdge(edge2),
         getNextAdjacentEdge(edge3),
         getNextAdjacentEdge(edge4)
       ]
     }, %)
```

![Rendered example of fillet 0](data:image/png;base64,[encoded data, 59564 characters])

```js
width = 20
length = 10
thickness = 1
filletRadius = 1

mountingPlateSketch = startSketchOn("XY")
  |> startProfileAt([-width / 2, -length / 2], %)
  |> line(endAbsolute = [width / 2, -length / 2], tag = $edge1)
  |> line(endAbsolute = [width / 2, length / 2], tag = $edge2)
  |> line(endAbsolute = [-width / 2, length / 2], tag = $edge3)
  |> close(tag = $edge4)

mountingPlate = extrude(mountingPlateSketch, length = thickness)
  |> fillet({
       radius = filletRadius,
       tolerance = 0.000001,
       tags = [
         getNextAdjacentEdge(edge1),
         getNextAdjacentEdge(edge2),
         getNextAdjacentEdge(edge3),
         getNextAdjacentEdge(edge4)
       ]
     }, %)
```

![Rendered example of fillet 1](data:image/png;base64,[encoded data, 59256 characters])


