This class located in module `ezdxf.algebra`:

```from ezdxf.algebra import Arc
```

# Arc¶

class `ezdxf.algebra.``Arc`

This is a helper class to create parameters for the DXF `Arc` class.

`Arc.``center`

Center point as `Vector`

`Arc.``radius`

`Arc.``start_angle`

Start angle of arc in degrees.

`Arc.``start_angle_rad`

Start angle of arc in radians.

`Arc.``end_angle`

End angle of arc in degrees.

`Arc.``end_angle_rad`

End angle of arc in radians.

## Class Methods¶

`Arc.``from_2p_angle`(start_point, end_point, angle, ccw=True)

Create arc from two points and enclosing angle. Arc goes by default in counter clockwise orientation from start_point to end_point, can be changed by ccw =False. Z-axis of start_point and end_point has to be 0 if given.

Parameters: start_point – start point as (x, y [,z]) tuple end_point – end point as (x, y [,z]) tuple angle (float) – enclosing angle in degrees ccw (bool) – counter clockwise orientation
`Arc.``from_2p_radius`(start_point, end_point, radius, ccw=True, center_is_left=True)

Create arc from two points and arc radius. Arc goes by default in counter clockwise orientation from start_point to end_point, can be changed by ccw =False. Z-axis of start_point and end_point has to be 0 if given.

The parameter center_is_left defines if the center of the arc is left or right of the line start point -> end point. Parameter ccw =False swaps start- and end point, which inverts the meaning of center_is_left.

Parameters: start_point – start point as (x, y [,z]) tuple end_point – end point as (x, y [,z]) tuple radius (float) – arc radius ccw (bool) – counter clockwise orientation center_is_left (bool) – center point of arc is left of line start point -> end point if True, else on the right side of this line
`Arc.``from_3p`(start_point, end_point, def_point, ccw=True)

Create arc from three points. Arc goes by default in counter clockwise orientation from start_point to end_point, can be changed by ccw =False. Z-axis of start_point, end_point and def_point has to be 0 if given.

Parameters: start_point – start point as (x, y [,z]) tuple end_point – end point as (x, y [,z]) tuple def_point – additional definition point as (x, y [,z]) tuple ccw (bool) – counter clockwise orientation

## Methods¶

`Arc.``add_to_layout`(layout, ucs=None, dxfattribs=None)

Add arc as DXF entity to a layout.

Supports 3D arcs by using an `UCS`. An arc is always defined in the xy-plane, by using an arbitrary `UCS`, the arc can be placed in 3D space, automatically `OCS` transformation included.

Parameters: layout – destination layout (model space, paper space or block) ucs – `UCS` definition for arc properties transformation to `OCS`, None for 2D arcs dxfattribs (dict) – usual DXF attributes supported by `Arc` DXF `Arc` object