# Elipse

This page is a translated version of the page Part Ellipse and the translation is 4% complete.

Part Ellipse

Part → Create primitives → Ellipse
Workbenches
Default shortcut
None
Introduced in version
-
Part Primitives

## Description

A Part Ellipse is a parametric shape that can be created with the Part Primitives command. In the coordinate system defined by its DadosPlacement property, the ellipse lies on the XY plane with its center at the origin. Its mayor axis is parallel to the X axis.

A Part Ellipse is in fact a closed counterclockwise elliptical arc, it can be turned into an arc by changing its DadosAngle1 and/or DadosAngle2 properties.

## Usage

See Part Primitives.

## Example

Part Ellipse from the scripting example

A Part Ellipse object created with the scripting example below is shown here.

## Properties

A Part Ellipse object is derived from a Part Feature object and inherits all its properties. It also has the following additional properties:

### Data

Attachment

The object has the same attachment properties as a Part Part2DObject.

Base

• DadosMajorRadius (`Length`): The major radius of the ellipse or elliptical arc. The default is `4mm`.
• DadosMinorRadius (`Length`): The minor radius of the ellipse or elliptical arc. The default is `2mm`.
• DadosAngle1 (`Angle`): The start angle of the elliptical arc. Valid range: `0° < value <= 360°`. The default is `0°`.
• DadosAngle2 (`Angle`): The end angle of the elliptical arc. Valid range: `0° < value <= 360°`. The default is `360°`. If DadosAngle1 and DadosAngle2 are equal, or if one angle is `0°` and the other `360°`, a full ellipse is created.

## Scripting

A Part Ellipse can be created with the `addObject()` method of the document:

```ellipse = FreeCAD.ActiveDocument.addObject("Part::Ellipse", "myEllipse")
```
• Where `"myEllipse"` is the name for the object.
• The function returns the newly created object.

Example:

```import FreeCAD as App

doc = App.activeDocument()

ellipse.Angle1 = 45
ellipse.Angle2 = 135
ellipse.Placement = App.Placement(App.Vector(1, 2, 3), App.Rotation(30, 45, 10))

doc.recompute()
```