55 lines
245 KiB
Markdown
55 lines
245 KiB
Markdown
---
|
|
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(5, exampleSketch)
|
|
```
|
|
|
|

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

|
|
|
|
|