---
title: "offsetPlane"
excerpt: "Offset a plane by a distance along its normal."
layout: manual
---

Offset a plane by a distance along its normal.

For example, if you offset the 'XZ' plane by 10, the new plane will be parallel to the 'XZ' plane and 10 units away from it.

```js
offsetPlane(std_plane: StandardPlane, offset: number) -> Plane
```


### Arguments

| Name | Type | Description | Required |
|----------|------|-------------|----------|
| `std_plane` | [`StandardPlane`](/docs/kcl/types/StandardPlane) | One of the standard planes. | Yes |
| `offset` | `number` |  | Yes |

### Returns

[`Plane`](/docs/kcl/types/Plane) - A plane.


### Examples

```js
// Loft a square and a circle on the `XY` plane using offset.
squareSketch = startSketchOn('XY')
  |> startProfileAt([-100, 200], %)
  |> line(end = [200, 0])
  |> line(end = [0, -200])
  |> line(end = [-200, 0])
  |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
  |> close()

circleSketch = startSketchOn(offsetPlane('XY', 150))
  |> circle({ center = [0, 100], radius = 50 }, %)

loft([squareSketch, circleSketch])
```

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

```js
// Loft a square and a circle on the `XZ` plane using offset.
squareSketch = startSketchOn('XZ')
  |> startProfileAt([-100, 200], %)
  |> line(end = [200, 0])
  |> line(end = [0, -200])
  |> line(end = [-200, 0])
  |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
  |> close()

circleSketch = startSketchOn(offsetPlane('XZ', 150))
  |> circle({ center = [0, 100], radius = 50 }, %)

loft([squareSketch, circleSketch])
```

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

```js
// Loft a square and a circle on the `YZ` plane using offset.
squareSketch = startSketchOn('YZ')
  |> startProfileAt([-100, 200], %)
  |> line(end = [200, 0])
  |> line(end = [0, -200])
  |> line(end = [-200, 0])
  |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
  |> close()

circleSketch = startSketchOn(offsetPlane('YZ', 150))
  |> circle({ center = [0, 100], radius = 50 }, %)

loft([squareSketch, circleSketch])
```

![Rendered example of offsetPlane 2](data:image/png;base64,[encoded data, 125928 characters])

```js
// Loft a square and a circle on the `-XZ` plane using offset.
squareSketch = startSketchOn('-XZ')
  |> startProfileAt([-100, 200], %)
  |> line(end = [200, 0])
  |> line(end = [0, -200])
  |> line(end = [-200, 0])
  |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
  |> close()

circleSketch = startSketchOn(offsetPlane('-XZ', -150))
  |> circle({ center = [0, 100], radius = 50 }, %)

loft([squareSketch, circleSketch])
```

![Rendered example of offsetPlane 3](data:image/png;base64,[encoded data, 90004 characters])

```js
// A circle on the XY plane
startSketchOn("XY")
  |> startProfileAt([0, 0], %)
  |> circle({ radius = 10, center = [0, 0] }, %)

// Triangle on the plane 4 units above
startSketchOn(offsetPlane("XY", 4))
  |> startProfileAt([0, 0], %)
  |> line(end = [10, 0])
  |> line(end = [0, 10])
  |> close()
```

![Rendered example of offsetPlane 4](data:image/png;base64,[encoded data, 45024 characters])


