Class ArcShape
Namespace: Aspose.Imaging.Shapes
Assembly: Aspose.Imaging.dll (25.2.0)
Represents an arc shape.
public sealed class ArcShape : PieShape, IOrderedShape
Inheritance
object ← ObjectWithBounds ← Shape ← RectangleProjectedShape ← RectangleShape ← EllipseShape ← PieShape ← ArcShape
Implements
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
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
Segments
Gets the shape segments.
[JsonIgnore]
public override ShapeSegment[] Segments { get; }
Property Value
StartPoint
Gets the starting shape point.
[JsonIgnore]
public PointF StartPoint { get; }
Property Value
Methods
Equals(object)
Check if objects are equal.
public override bool Equals(object obj)
Parameters
obj
object
The other object.
Returns
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
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
The estimated object’s bounds.
GetHashCode()
Get hash code of the current object.
public override int GetHashCode()
Returns
The hash code.
Reverse()
Reverses the order of points for this shape.
public void Reverse()