Struct Rectangle
Stores a set of four integers that represent the location and size of a rectangle.
Implements
Inherited Members
Namespace: SixLabors.ImageSharp
Assembly: SixLabors.ImageSharp.dll
Syntax
public struct Rectangle : IEquatable<Rectangle>
Remarks
This struct is fully mutable. This is done (against the guidelines) for the sake of performance, as it avoids the need to create new values for modification operations.
Constructors
| Improve this Doc View SourceRectangle(Point, Size)
Initializes a new instance of the Rectangle struct.
Declaration
public Rectangle(Point point, Size size)
Parameters
Type | Name | Description |
---|---|---|
Point | point | The Point which specifies the rectangles point in a two-dimensional plane. |
Size | size | The SixLabors.ImageSharp.Rectangle.Size which specifies the rectangles height and width. |
Rectangle(Int32, Int32, Int32, Int32)
Initializes a new instance of the Rectangle struct.
Declaration
public Rectangle(int x, int y, int width, int height)
Parameters
Type | Name | Description |
---|---|---|
Int32 | x | The horizontal position of the rectangle. |
Int32 | y | The vertical position of the rectangle. |
Int32 | width | The width of the rectangle. |
Int32 | height | The height of the rectangle. |
Fields
| Improve this Doc View SourceEmpty
Represents a Rectangle that has X, Y, Width, and Height values set to zero.
Declaration
public static readonly Rectangle Empty
Field Value
Type | Description |
---|---|
Rectangle |
Properties
| Improve this Doc View SourceBottom
Gets the y-coordinate of the bottom edge of this Rectangle.
Declaration
public readonly int Bottom { get; }
Property Value
Type | Description |
---|---|
Int32 |
Height
Gets or sets the height of this Rectangle.
Declaration
public int Height { readonly get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Left
Gets the x-coordinate of the left edge of this Rectangle.
Declaration
public readonly int Left { get; }
Property Value
Type | Description |
---|---|
Int32 |
Right
Gets the x-coordinate of the right edge of this Rectangle.
Declaration
public readonly int Right { get; }
Property Value
Type | Description |
---|---|
Int32 |
Top
Gets the y-coordinate of the top edge of this Rectangle.
Declaration
public readonly int Top { get; }
Property Value
Type | Description |
---|---|
Int32 |
Width
Gets or sets the width of this Rectangle.
Declaration
public int Width { readonly get; set; }
Property Value
Type | Description |
---|---|
Int32 |
X
Gets or sets the x-coordinate of this Rectangle.
Declaration
public int X { readonly get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Y
Gets or sets the y-coordinate of this Rectangle.
Declaration
public int Y { readonly get; set; }
Property Value
Type | Description |
---|---|
Int32 |
Methods
| Improve this Doc View SourceCeiling(RectangleF)
Converts a RectangleF to a Rectangle by performing a ceiling operation on all the coordinates.
Declaration
public static Rectangle Ceiling(RectangleF rectangle)
Parameters
Type | Name | Description |
---|---|---|
RectangleF | rectangle | The rectangle. |
Returns
Type | Description |
---|---|
Rectangle | The Rectangle. |
Center(Rectangle)
Returns the center point of the given Rectangle.
Declaration
public static Point Center(Rectangle rectangle)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | rectangle | The rectangle. |
Returns
Type | Description |
---|---|
Point | The Point. |
Contains(Point)
Determines if the specified point is contained within the rectangular region defined by this Rectangle .
Declaration
public bool Contains(Point point)
Parameters
Type | Name | Description |
---|---|---|
Point | point | The point. |
Returns
Type | Description |
---|---|
Boolean | The Boolean. |
Contains(Rectangle)
Determines if the rectangular region represented by rectangle
is entirely contained
within the rectangular region represented by this Rectangle .
Declaration
public bool Contains(Rectangle rectangle)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | rectangle | The rectangle. |
Returns
Type | Description |
---|---|
Boolean | The Boolean. |
Contains(Int32, Int32)
Determines if the specfied point is contained within the rectangular region defined by this Rectangle.
Declaration
public bool Contains(int x, int y)
Parameters
Type | Name | Description |
---|---|---|
Int32 | x | The x-coordinate of the given point. |
Int32 | y | The y-coordinate of the given point. |
Returns
Type | Description |
---|---|
Boolean | The Boolean. |
Deconstruct(out Int32, out Int32, out Int32, out Int32)
Deconstructs this rectangle into four integers.
Declaration
public void Deconstruct(out int x, out int y, out int width, out int height)
Parameters
Type | Name | Description |
---|---|---|
Int32 | x | The out value for X. |
Int32 | y | The out value for Y. |
Int32 | width | The out value for the width. |
Int32 | height | The out value for the height. |
Equals(Rectangle)
Declaration
public bool Equals(Rectangle other)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | other |
Returns
Type | Description |
---|---|
Boolean |
Equals(Object)
Declaration
public override bool Equals(object obj)
Parameters
Type | Name | Description |
---|---|---|
Object | obj |
Returns
Type | Description |
---|---|
Boolean |
Overrides
| Improve this Doc View SourceFromLTRB(Int32, Int32, Int32, Int32)
Creates a new Rectangle with the specified location and size.
Declaration
public static Rectangle FromLTRB(int left, int top, int right, int bottom)
Parameters
Type | Name | Description |
---|---|---|
Int32 | left | The left coordinate of the rectangle. |
Int32 | top | The top coordinate of the rectangle. |
Int32 | right | The right coordinate of the rectangle. |
Int32 | bottom | The bottom coordinate of the rectangle. |
Returns
Type | Description |
---|---|
Rectangle | The Rectangle. |
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Type | Description |
---|---|
Int32 |
Overrides
| Improve this Doc View SourceInflate(Rectangle, Int32, Int32)
Creates a Rectangle that is inflated by the specified amount.
Declaration
public static Rectangle Inflate(Rectangle rectangle, int x, int y)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | rectangle | The rectangle. |
Int32 | x | The amount to inflate the width by. |
Int32 | y | The amount to inflate the height by. |
Returns
Type | Description |
---|---|
Rectangle | A new Rectangle. |
Inflate(Size)
Inflates this Rectangle by the specified amount.
Declaration
public void Inflate(Size size)
Parameters
Type | Name | Description |
---|---|---|
Size | size | The size. |
Inflate(Int32, Int32)
Inflates this Rectangle by the specified amount.
Declaration
public void Inflate(int width, int height)
Parameters
Type | Name | Description |
---|---|---|
Int32 | width | The width. |
Int32 | height | The height. |
Intersect(Rectangle)
Creates a Rectangle that represents the intersection between this Rectangle and the rectangle
.
Declaration
public void Intersect(Rectangle rectangle)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | rectangle | The rectangle. |
Intersect(Rectangle, Rectangle)
Creates a rectangle that represents the intersection between a
and
b
. If there is no intersection, an empty rectangle is returned.
Declaration
public static Rectangle Intersect(Rectangle a, Rectangle b)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | a | The first rectangle. |
Rectangle | b | The second rectangle. |
Returns
Type | Description |
---|---|
Rectangle | The Rectangle. |
IntersectsWith(Rectangle)
Declaration
public bool IntersectsWith(Rectangle rectangle)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | rectangle | The other Rectange. |
Returns
Type | Description |
---|---|
Boolean | The Boolean. |
Offset(Point)
Adjusts the location of this rectangle by the specified amount.
Declaration
public void Offset(Point point)
Parameters
Type | Name | Description |
---|---|---|
Point | point | The point. |
Offset(Int32, Int32)
Adjusts the location of this rectangle by the specified amount.
Declaration
public void Offset(int dx, int dy)
Parameters
Type | Name | Description |
---|---|---|
Int32 | dx | The amount to offset the x-coordinate. |
Int32 | dy | The amount to offset the y-coordinate. |
Round(RectangleF)
Converts a RectangleF to a Rectangle by performing a round operation on all the coordinates.
Declaration
public static Rectangle Round(RectangleF rectangle)
Parameters
Type | Name | Description |
---|---|---|
RectangleF | rectangle | The rectangle. |
Returns
Type | Description |
---|---|
Rectangle | The Rectangle. |
ToString()
Declaration
public override string ToString()
Returns
Type | Description |
---|---|
String |
Overrides
| Improve this Doc View SourceTransform(Rectangle, Matrix3x2)
Transforms a rectangle by the given matrix.
Declaration
public static RectangleF Transform(Rectangle rectangle, Matrix3x2 matrix)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | rectangle | The source rectangle. |
Matrix3x2 | matrix | The transformation matrix. |
Returns
Type | Description |
---|---|
RectangleF | A transformed rectangle. |
Truncate(RectangleF)
Converts a RectangleF to a Rectangle by performing a truncate operation on all the coordinates.
Declaration
public static Rectangle Truncate(RectangleF rectangle)
Parameters
Type | Name | Description |
---|---|---|
RectangleF | rectangle | The rectangle. |
Returns
Type | Description |
---|---|
Rectangle | The Rectangle. |
Union(Rectangle, Rectangle)
Creates a rectangle that represents the union between a
and b
.
Declaration
public static Rectangle Union(Rectangle a, Rectangle b)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | a | The first rectangle. |
Rectangle | b | The second rectangle. |
Returns
Type | Description |
---|---|
Rectangle | The Rectangle. |
Operators
| Improve this Doc View SourceEquality(Rectangle, Rectangle)
Compares two Rectangle objects for equality.
Declaration
public static bool operator ==(Rectangle left, Rectangle right)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | left | The Rectangle on the left side of the operand. |
Rectangle | right | The Rectangle on the right side of the operand. |
Returns
Type | Description |
---|---|
Boolean | True if the current left is equal to the |
Implicit(Rectangle to RectangleF)
Creates a RectangleF with the coordinates of the specified Rectangle.
Declaration
public static implicit operator RectangleF(Rectangle rectangle)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | rectangle | The rectangle. |
Returns
Type | Description |
---|---|
RectangleF |
Implicit(Rectangle to Vector4)
Declaration
public static implicit operator Vector4(Rectangle rectangle)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | rectangle | The rectangle. |
Returns
Type | Description |
---|---|
Vector4 |
Inequality(Rectangle, Rectangle)
Compares two Rectangle objects for inequality.
Declaration
public static bool operator !=(Rectangle left, Rectangle right)
Parameters
Type | Name | Description |
---|---|---|
Rectangle | left | The Rectangle on the left side of the operand. |
Rectangle | right | The Rectangle on the right side of the operand. |
Returns
Type | Description |
---|---|
Boolean | True if the current left is unequal to the |