> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ploterr.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ArcPrimitive

> A circular arc that you draw in 2D.

## Import

```typescript theme={null}
import { ArcPrimitive } from '@opengeometry/floorkit';
```

**Inheritance:** `extends Arc implements IPrimitive`

## Constructor

```typescript theme={null}
constructor(arcConfig?: ArcOptions);
```

<ParamField path="arcConfig.ogid" type="string" />

<ParamField path="arcConfig.center" type="number[]" required />

<ParamField path="arcConfig.radius" type="number" required />

<ParamField path="arcConfig.startAngle" type="number" required />

<ParamField path="arcConfig.sweepAngle" type="number" required />

<ParamField path="arcConfig.deflection" type="number" required />

<ParamField path="arcConfig.color" type="number" required />

## Properties

<ResponseField name="ogType" type="string" />

<ResponseField name="subNodes" type="Map<string, THREE.Object3D>" />

<ResponseField name="selected" type="boolean" />

<ResponseField name="edit" type="boolean" />

<ResponseField name="propertySet" type="ArcOptions" />

<ResponseField name="arcCenter" type="Array<number>" />

<ResponseField name="arcRadius" type="number" />

<ResponseField name="arcStartAngle" type="number" />

<ResponseField name="arcSweepAngle" type="number" />

<ResponseField name="arcDeflection" type="number" />

<ResponseField name="arcColor" type="number" />

## Methods

### setOPConfig

```typescript theme={null}
setOPConfig(config: ArcOptions): void;
```

### getOPConfig

```typescript theme={null}
getOPConfig(): ArcOptions;
```

### setOPGeometry

```typescript theme={null}
setOPGeometry(): void;
```

### retessellate

```typescript theme={null}
retessellate(deflection: number): ReturnType<Arc['retessellate']>;
```

### setOPMaterial

```typescript theme={null}
setOPMaterial(): void;
```

## Types

### ArcOptions

```typescript theme={null}
interface ArcOptions {
  ogid?: string;
  center: Array<number>;
  radius: number;
  startAngle: number;
  sweepAngle: number;
  deflection: number;
  color: number;
}
```

## Related

* [`IPrimitive`](/floorkit/api/primitives/line-primitive#iprimitive)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.