Class ArcShape

Class ArcShape

Namespace: Aspose.Imaging.Shapes
Assembly: Aspose.Imaging.dll (25.2.0)

Represents an arc shape.

public sealed class ArcShape : PieShape, IOrderedShape

Inheritance

objectObjectWithBoundsShapeRectangleProjectedShapeRectangleShapeEllipseShapePieShapeArcShape

Implements

IOrderedShape

Inherited Members

PieShape.GetHashCode(), PieShape.Equals(object), PieShape.StartAngle, PieShape.SweepAngle, PieShape.Segments, EllipseShape.Equals(object), EllipseShape.GetHashCode(), EllipseShape.Segments, RectangleShape.Equals(object), RectangleShape.GetHashCode(), RectangleShape.Segments, RectangleProjectedShape.GetBounds(Matrix), RectangleProjectedShape.GetBounds(Matrix, Pen), RectangleProjectedShape.Transform(Matrix), RectangleProjectedShape.Equals(object), RectangleProjectedShape.GetHashCode(), RectangleProjectedShape.LeftTop, RectangleProjectedShape.RightTop, RectangleProjectedShape.LeftBottom, RectangleProjectedShape.RightBottom, RectangleProjectedShape.Center, RectangleProjectedShape.Bounds, RectangleProjectedShape.RectangleWidth, RectangleProjectedShape.RectangleHeight, RectangleProjectedShape.HasSegments, Shape.Equals(object), Shape.GetHashCode(), Shape.Center, Shape.Segments, Shape.HasSegments, ObjectWithBounds.GetBounds(Matrix), ObjectWithBounds.GetBounds(Matrix, Pen), ObjectWithBounds.Transform(Matrix), ObjectWithBounds.Equals(object), ObjectWithBounds.GetHashCode(), ObjectWithBounds.Bounds, object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Examples

This example creates a new Image and draws a variety of shapes using Figures and GraphicsPath on the Image surface```csharp [C#]

                                                                                                                         //Creates an instance of BmpOptions and set its various properties            
                                                                                                                         Aspose.Imaging.ImageOptions.BmpOptions bmpOptions = new Aspose.Imaging.ImageOptions.BmpOptions();
                                                                                                                         bmpOptions.BitsPerPixel = 24;

                                                                                                                         //Create an instance of FileCreateSource and assign it as Source for the instance of BmpOptions
                                                                                                                         //Second Boolean parameter determines if the file to be created IsTemporal or not
                                                                                                                         bmpOptions.Source = new Aspose.Imaging.Sources.FileCreateSource(@"c:\temp\output.bmp", false);

                                                                                                                         //Create an instance of Image 
                                                                                                                         using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Create(bmpOptions, 500, 500))
                                                                                                                         {
                                                                                                                             //Create and initialize an instance of Graphics class
                                                                                                                             Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(image);

                                                                                                                             //Clear Graphics surface
                                                                                                                             graphics.Clear(Color.Wheat);

                                                                                                                             //Create an instance of GraphicsPath class
                                                                                                                             Aspose.Imaging.GraphicsPath graphicspath = new Aspose.Imaging.GraphicsPath();

                                                                                                                             //Create an instance of Figure class
                                                                                                                             Aspose.Imaging.Figure figure1 = new Aspose.Imaging.Figure();

                                                                                                                             //Add Shape to Figure object
                                                                                                                             figure1.AddShape(new Aspose.Imaging.Shapes.EllipseShape(new RectangleF(50, 50, 300, 300)));
                                                                                                                             figure1.AddShape(new Aspose.Imaging.Shapes.PieShape(new Rectangle(new Point(110, 110), new Size(200, 200)), 0, 90));

                                                                                                                             //Create an instance of Figure class
                                                                                                                             Aspose.Imaging.Figure figure2 = new Aspose.Imaging.Figure();

                                                                                                                             //Add Shape to Figure object
                                                                                                                             figure2.AddShape(new Aspose.Imaging.Shapes.ArcShape(new Aspose.Imaging.RectangleF(10, 10, 300, 300), 0, 45));
                                                                                                                             figure2.AddShape(new Aspose.Imaging.Shapes.PolygonShape(new[] { new Aspose.Imaging.PointF(150, 10), new Aspose.Imaging.PointF(150, 200), new Aspose.Imaging.PointF(250, 300), new Aspose.Imaging.PointF(350, 400) }, true));
                                                                                                                             figure2.AddShape(new Aspose.Imaging.Shapes.RectangleShape(new Aspose.Imaging.RectangleF(new Aspose.Imaging.Point(250, 250), new Aspose.Imaging.Size(200, 200))));

                                                                                                                             //Add Figure object to GraphicsPath
                                                                                                                             graphicspath.AddFigures(new[] { figure1, figure2 });

                                                                                                                             //Draw path with Pen object of color Black
                                                                                                                             graphics.DrawPath(new Pen(Aspose.Imaging.Color.Black, 2), graphicspath);

                                                                                                                             // save all changes.
                                                                                                                             image.Save();
                                                                                                                         }

## Constructors

### <a id="Aspose_Imaging_Shapes_ArcShape__ctor"></a> ArcShape\(\)

Initializes a new instance of the Aspose.Imaging.Shapes.ArcShape class.

```csharp
[JsonConstructor]
public ArcShape()

ArcShape(RectangleF, float, float)

Initializes a new instance of the Aspose.Imaging.Shapes.ArcShape class.

public ArcShape(RectangleF rectangle, float startAngle, float sweepAngle)

Parameters

rectangle RectangleF

The rectangle.

startAngle float

The start angle.

sweepAngle float

The sweep angle.

Examples

This example creates a new Image and draws a variety of shapes using Figures and GraphicsPath on the Image surface```csharp [C#]

                                                                                                                         //Creates an instance of BmpOptions and set its various properties            
                                                                                                                         Aspose.Imaging.ImageOptions.BmpOptions bmpOptions = new Aspose.Imaging.ImageOptions.BmpOptions();
                                                                                                                         bmpOptions.BitsPerPixel = 24;

                                                                                                                         //Create an instance of FileCreateSource and assign it as Source for the instance of BmpOptions
                                                                                                                         //Second Boolean parameter determines if the file to be created IsTemporal or not
                                                                                                                         bmpOptions.Source = new Aspose.Imaging.Sources.FileCreateSource(@"c:\temp\output.bmp", false);

                                                                                                                         //Create an instance of Image 
                                                                                                                         using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Create(bmpOptions, 500, 500))
                                                                                                                         {
                                                                                                                             //Create and initialize an instance of Graphics class
                                                                                                                             Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(image);

                                                                                                                             //Clear Graphics surface
                                                                                                                             graphics.Clear(Color.Wheat);

                                                                                                                             //Create an instance of GraphicsPath class
                                                                                                                             Aspose.Imaging.GraphicsPath graphicspath = new Aspose.Imaging.GraphicsPath();

                                                                                                                             //Create an instance of Figure class
                                                                                                                             Aspose.Imaging.Figure figure1 = new Aspose.Imaging.Figure();

                                                                                                                             //Add Shape to Figure object
                                                                                                                             figure1.AddShape(new Aspose.Imaging.Shapes.EllipseShape(new RectangleF(50, 50, 300, 300)));
                                                                                                                             figure1.AddShape(new Aspose.Imaging.Shapes.PieShape(new Rectangle(new Point(110, 110), new Size(200, 200)), 0, 90));

                                                                                                                             //Create an instance of Figure class
                                                                                                                             Aspose.Imaging.Figure figure2 = new Aspose.Imaging.Figure();

                                                                                                                             //Add Shape to Figure object
                                                                                                                             figure2.AddShape(new Aspose.Imaging.Shapes.ArcShape(new Aspose.Imaging.RectangleF(10, 10, 300, 300), 0, 45));
                                                                                                                             figure2.AddShape(new Aspose.Imaging.Shapes.PolygonShape(new[] { new Aspose.Imaging.PointF(150, 10), new Aspose.Imaging.PointF(150, 200), new Aspose.Imaging.PointF(250, 300), new Aspose.Imaging.PointF(350, 400) }, true));
                                                                                                                             figure2.AddShape(new Aspose.Imaging.Shapes.RectangleShape(new Aspose.Imaging.RectangleF(new Aspose.Imaging.Point(250, 250), new Aspose.Imaging.Size(200, 200))));

                                                                                                                             //Add Figure object to GraphicsPath
                                                                                                                             graphicspath.AddFigures(new[] { figure1, figure2 });

                                                                                                                             //Draw path with Pen object of color Black
                                                                                                                             graphics.DrawPath(new Pen(Aspose.Imaging.Color.Black, 2), graphicspath);

                                                                                                                             // save all changes.
                                                                                                                             image.Save();
                                                                                                                         }

### <a id="Aspose_Imaging_Shapes_ArcShape__ctor_Aspose_Imaging_RectangleF_System_Single_System_Single_System_Boolean_"></a> ArcShape\(RectangleF, float, float, bool\)

Initializes a new instance of the Aspose.Imaging.Shapes.ArcShape class.

```csharp
public ArcShape(RectangleF rectangle, float startAngle, float sweepAngle, bool isClosed)

Parameters

rectangle RectangleF

The rectangle.

startAngle float

The start angle.

sweepAngle float

The sweep angle.

isClosed bool

If set to true the arc is closed. The closed arc is actually degenereates to an ellipse.

Properties

EndPoint

Gets the ending shape point.

[JsonIgnore]
public PointF EndPoint { get; }

Property Value

PointF

IsClosed

Gets or sets a value indicating whether ordered shape is closed. When processing closed ordered shape the starting and ending points have no meaning.

[JsonProperty]
public bool IsClosed { get; set; }

Property Value

bool

Segments

Gets the shape segments.

[JsonIgnore]
public override ShapeSegment[] Segments { get; }

Property Value

ShapeSegment[]

StartPoint

Gets the starting shape point.

[JsonIgnore]
public PointF StartPoint { get; }

Property Value

PointF

Methods

Equals(object)

Check if objects are equal.

public override bool Equals(object obj)

Parameters

obj object

The other object.

Returns

bool

The equality comparison result.

GetBounds(Matrix)

Gets the object’s bounds.

public override RectangleF GetBounds(Matrix matrix)

Parameters

matrix Matrix

The matrix to apply before bounds will be calculated.

Returns

RectangleF

The estimated object’s bounds.

GetBounds(Matrix, Pen)

Gets the object’s bounds.

public override RectangleF GetBounds(Matrix matrix, Pen pen)

Parameters

matrix Matrix

The matrix to apply before bounds will be calculated.

pen Pen

The pen to use for object. This can influence the object’s bounds size.

Returns

RectangleF

The estimated object’s bounds.

GetHashCode()

Get hash code of the current object.

public override int GetHashCode()

Returns

int

The hash code.

Reverse()

Reverses the order of points for this shape.

public void Reverse()