Point Struct

Definition

Represents an ordered pair of integer x- and y-coordinates that defines a point in a two-dimensional plane.

public value class Point : IEquatable<System::Drawing::Point>
public value class Point
[System.ComponentModel.TypeConverter("System.Drawing.PointConverter, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public struct Point : IEquatable<System.Drawing.Point>
public struct Point
public struct Point : IEquatable<System.Drawing.Point>
[System.ComponentModel.TypeConverter(typeof(System.Drawing.PointConverter))]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public struct Point
[<System.ComponentModel.TypeConverter("System.Drawing.PointConverter, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
type Point = struct
type Point = struct
[<System.ComponentModel.TypeConverter(typeof(System.Drawing.PointConverter))>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type Point = struct
Public Structure Point
Implements IEquatable(Of Point)
Public Structure Point
Inheritance
Attributes
Implements

Examples

The following code example creates points and sizes using several of the overloaded operators defined for these types. It also demonstrates how to use the SystemPens class.

This example is designed to be used with Windows Forms. Create a form that contains a Button named subtractButton. Paste the code into the form and call the CreatePointsAndSizes method from the form's Paint event-handling method, passing e as PaintEventArgs.

void CreatePointsAndSizes( PaintEventArgs^ e )
{
   // Create the starting point.
   Point startPoint = Point(subtractButton->Size);
   
   // Use the addition operator to get the end point.
   Point endPoint = startPoint + System::Drawing::Size( 140, 150 );
   
   // Draw a line between the points.
   e->Graphics->DrawLine( SystemPens::Highlight, startPoint, endPoint );
   
   // Convert the starting point to a size and compare it to the
   // subtractButton size.  
   System::Drawing::Size buttonSize = (System::Drawing::Size)startPoint;
   if ( buttonSize == subtractButton->Size )
   {
      e->Graphics->DrawString( "The sizes are equal.", gcnew System::Drawing::Font( this->Font,FontStyle::Italic ), Brushes::Indigo, 10.0F, 65.0F );
   }
}
private void CreatePointsAndSizes(PaintEventArgs e)
{

    // Create the starting point.
    Point startPoint = new Point(subtractButton.Size);

    // Use the addition operator to get the end point.
    Point endPoint = startPoint + new Size(140, 150);

    // Draw a line between the points.
    e.Graphics.DrawLine(SystemPens.Highlight, startPoint, endPoint);

    // Convert the starting point to a size and compare it to the
    // subtractButton size.  
    Size buttonSize = (Size)startPoint;
    if (buttonSize == subtractButton.Size)

        // If the sizes are equal, tell the user.
    {
        e.Graphics.DrawString("The sizes are equal.", 
            new Font(this.Font, FontStyle.Italic), 
            Brushes.Indigo, 10.0F, 65.0F);
    }
}
Private Sub CreatePointsAndSizes(ByVal e As PaintEventArgs)

    ' Create the starting point.
    Dim startPoint As New Point(subtractButton.Size)

    ' Use the addition operator to get the end point.
    Dim endPoint As Point = Point.op_Addition(startPoint, _
        New Size(140, 150))

    ' Draw a line between the points.
    e.Graphics.DrawLine(SystemPens.Highlight, startPoint, endPoint)

    ' Convert the starting point to a size and compare it to the
    ' subtractButton size.  
    Dim buttonSize As Size = Point.op_Explicit(startPoint)
    If (Size.op_Equality(buttonSize, subtractButton.Size)) Then

        ' If the sizes are equal, tell the user.
        e.Graphics.DrawString("The sizes are equal.", _
            New Font(Me.Font, FontStyle.Italic), _
            Brushes.Indigo, 10.0F, 65.0F)
    End If

End Sub

Remarks

To convert a Point to a PointF, use Implicit.

Constructors

Point(Int32)

Initializes a new instance of the Point struct using coordinates specified by an integer value.

Point(Int32, Int32)

Initializes a new instance of the Point struct with the specified coordinates.

Point(Size)

Initializes a new instance of the Point struct from a Size.

Fields

Empty

Represents a Point that has X and Y values set to zero.

Properties

IsEmpty

Gets a value indicating whether this Point is empty.

X

Gets or sets the x-coordinate of this Point.

Y

Gets or sets the y-coordinate of this Point.

Methods

Add(Point, Size)

Adds the specified Size to the specified Point.

Ceiling(PointF)

Converts the specified PointF to a Point by rounding the values of the PointF to the next higher integer values.

Equals(Object)

Specifies whether this point instance contains the same coordinates as the specified object.

Equals(Point)

Specifies whether this point instance contains the same coordinates as another point.

GetHashCode()

Returns a hash code for this Point.

Offset(Int32, Int32)

Translates this Point by the specified amount.

Offset(Point)

Translates this Point by the specified Point.

Round(PointF)

Converts the specified PointF to a Point object by rounding the PointF values to the nearest integer.

Subtract(Point, Size)

Returns the result of subtracting specified Size from the specified Point.

ToString()

Converts this Point to a human-readable string.

Truncate(PointF)

Converts the specified PointF to a Point by truncating the values of the PointF.

Operators

Addition(Point, Size)

Translates a Point by a given Size.

Equality(Point, Point)

Compares two Point objects. The result specifies whether the values of the X and Y properties of the two Point objects are equal.

Explicit(Point to Size)

Converts the specified Point structure to a Size structure.

Implicit(Point to PointF)

Converts the specified Point structure to a PointF structure.

Inequality(Point, Point)

Compares two Point objects. The result specifies whether the values of the X or Y properties of the two Point objects are unequal.

Subtraction(Point, Size)

Translates a Point by the negative of a given Size.

Applies to