---
title: "Class Path | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/Path/"
---

# Class Path

> **Inheritance:** `System.Object` -> Path

###### **Namespace**: [Aurigma.DesignAtoms.Model.Math](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math.md)

###### **Assembly**: Aurigma.DesignAtoms.Model.dll

```csharp title="Syntax"
public class Path : ICloneable
```

## Implements

* `System.ICloneable`

## Inherited Members

* `System.Object.ToString`
* `System.Object.Equals(System.Object)`
* `System.Object.Equals(System.Object,System.Object)`
* `System.Object.ReferenceEquals(System.Object,System.Object)`
* `System.Object.GetHashCode`
* `System.Object.GetType`
* `System.Object.MemberwiseClone`

## Constructors

### Path

```csharp
public Path()
```

## Properties

### IsEmpty

```csharp
public bool IsEmpty { get; }
```

## Methods

### GetBounds

```csharp
public RectangleF GetBounds()
```

##### Returns

`System.Drawing.RectangleF`

### Clone

```csharp
public object Clone()
```

##### Returns

`System.Object`

### Close

```csharp
public void Close()
```

### MoveTo

```csharp
public void MoveTo(float x, float y)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Single` | *x* |  |
| `System.Single` | *y* |  |

### MoveTo

```csharp
public void MoveTo(PointF point)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.Math.PointF](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/PointF.md) | *point* |  |

### LineTo

```csharp
public void LineTo(float x, float y)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Single` | *x* |  |
| `System.Single` | *y* |  |

### LineTo

```csharp
public void LineTo(PointF point)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.Math.PointF](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/PointF.md) | *point* |  |

### QuadraticTo

```csharp
public void QuadraticTo(float cx, float cy, float x, float y)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Single` | *cx* |  |
| `System.Single` | *cy* |  |
| `System.Single` | *x* |  |
| `System.Single` | *y* |  |

### QuadraticTo

```csharp
public void QuadraticTo(PointF center, PointF endPoint)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.Math.PointF](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/PointF.md) | *center* |  |
| [Aurigma.DesignAtoms.Model.Math.PointF](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/PointF.md) | *endPoint* |  |

### CubicTo

```csharp
public void CubicTo(float cx1, float cy1, float cx2, float cy2, float x, float y)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Single` | *cx1* |  |
| `System.Single` | *cy1* |  |
| `System.Single` | *cx2* |  |
| `System.Single` | *cy2* |  |
| `System.Single` | *x* |  |
| `System.Single` | *y* |  |

### CubicTo

```csharp
public void CubicTo(PointF center1, PointF center2, PointF endPoint)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.Math.PointF](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/PointF.md) | *center1* |  |
| [Aurigma.DesignAtoms.Model.Math.PointF](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/PointF.md) | *center2* |  |
| [Aurigma.DesignAtoms.Model.Math.PointF](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/PointF.md) | *endPoint* |  |

### Equals

```csharp
public bool Equals(Path obj, double tolerance = 0.0001)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.Math.Path](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/Path.md) | *obj* |  |
| `System.Double` | *tolerance* |  |

##### Returns

`System.Boolean`

### Equals

```csharp
public static bool Equals(Path a, Path b, double tolerance = 0.0001)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.Math.Path](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/Path.md) | *a* |  |
| [Aurigma.DesignAtoms.Model.Math.Path](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/Path.md) | *b* |  |
| `System.Double` | *tolerance* |  |

##### Returns

`System.Boolean`

### RotateAt

```csharp
public void RotateAt(double angle, PointF center)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Double` | *angle* |  |
| [Aurigma.DesignAtoms.Model.Math.PointF](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/PointF.md) | *center* |  |

### Scale

```csharp
public void Scale(double scaleX, double scaleY)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Double` | *scaleX* |  |
| `System.Double` | *scaleY* |  |

### Translate

```csharp
public void Translate(double x, double y)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Double` | *x* |  |
| `System.Double` | *y* |  |

### Transform

```csharp
public void Transform(Transform transform, PointF center)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.Math.Transform](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/Transform.md) | *transform* |  |
| [Aurigma.DesignAtoms.Model.Math.PointF](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/PointF.md) | *center* |  |

### GetFirstPoint

```csharp
public PointF GetFirstPoint()
```

##### Returns

[Aurigma.DesignAtoms.Model.Math.PointF](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/PointF.md)

### FromSvgString

```csharp
public static Path FromSvgString(string svg)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.String` | *svg* |  |

##### Returns

[Aurigma.DesignAtoms.Model.Math.Path](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/Path.md)

### ToSvgString

```csharp
public string ToSvgString()
```

##### Returns

`System.String`

### CreateEllipsePath

```csharp
public static Path CreateEllipsePath(float x, float y, float width, float height)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Single` | *x* |  |
| `System.Single` | *y* |  |
| `System.Single` | *width* |  |
| `System.Single` | *height* |  |

##### Returns

[Aurigma.DesignAtoms.Model.Math.Path](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/Path.md)

### CreateEllipsePath

```csharp
public static Path CreateEllipsePath(RectangleF rectangleF)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Drawing.RectangleF` | *rectangleF* |  |

##### Returns

[Aurigma.DesignAtoms.Model.Math.Path](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/Path.md)

### CreateRectanglePath

```csharp
public static Path CreateRectanglePath(float x, float y, float width, float height)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Single` | *x* |  |
| `System.Single` | *y* |  |
| `System.Single` | *width* |  |
| `System.Single` | *height* |  |

##### Returns

[Aurigma.DesignAtoms.Model.Math.Path](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/Path.md)

### CreateRectanglePath

```csharp
public static Path CreateRectanglePath(RectangleF rectangle)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Drawing.RectangleF` | *rectangle* |  |

##### Returns

[Aurigma.DesignAtoms.Model.Math.Path](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/Path.md)

### CreateRoundedRectanglePath

```csharp
public static Path CreateRoundedRectanglePath(RectangleF rectangle, SizeF[] radiuses)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Drawing.RectangleF` | *rectangle* |  |
| `System.Drawing.SizeF[]` | *radiuses* |  |

##### Returns

[Aurigma.DesignAtoms.Model.Math.Path](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/Path.md)

### CreateRoundedRectanglePath

```csharp
public static Path CreateRoundedRectanglePath(float x, float y, float width, float height, SizeF[] radiuses)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Single` | *x* |  |
| `System.Single` | *y* |  |
| `System.Single` | *width* |  |
| `System.Single` | *height* |  |
| `System.Drawing.SizeF[]` | *radiuses* |  |

##### Returns

[Aurigma.DesignAtoms.Model.Math.Path](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model.Math/Path.md)

## Fields

### _segments

```csharp
public readonly List<Path.PathSegment> _segments
```

## Events

### PathChanged

```csharp
public event EventHandler PathChanged
```
