---
title: "circle"
excerpt: "Construct a 2-dimensional circle, of the specified radius, centered at"
layout: manual
---

Construct a 2-dimensional circle, of the specified radius, centered at

the provided (x, y) origin point.

```js
circle(data: CircleData, sketch_surface_or_group: SketchOrSurface, tag?: TagDeclarator) -> Sketch
```


### Arguments

| Name | Type | Description | Required |
|----------|------|-------------|----------|
| `data` | [`CircleData`](/docs/kcl/types/CircleData) | Data for drawing an circle | Yes |
| `sketch_surface_or_group` | [`SketchOrSurface`](/docs/kcl/types/SketchOrSurface) | A sketch surface or a sketch. | Yes |
| `tag` | [`TagDeclarator`](/docs/kcl/types#tag-declaration) |  | No |

### Returns

[`Sketch`](/docs/kcl/types/Sketch) - A sketch is a collection of paths.


### Examples

```js
exampleSketch = startSketchOn("-XZ")
  |> circle({ center = [0, 0], radius = 10 }, %)

example = extrude(exampleSketch, length = 5)
```

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

```js
exampleSketch = startSketchOn("XZ")
  |> startProfileAt([-15, 0], %)
  |> line(end = [30, 0])
  |> line(end = [0, 30])
  |> line(end = [-30, 0])
  |> close()
  |> hole(circle({ center = [0, 15], radius = 5 }, %), %)

example = extrude(exampleSketch, length = 5)
```

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


