ILine Interface

Provides access to members that identify a straight line segment and defines its properties.


Name Description
Read-only property Angle The angle between this line and the positive x-axis.
Read-only property Dimension The topological dimension of this geometry.
Read-only property Envelope Creates a copy of this geometry's envelope and returns it.
Read/write property FromPoint The 'from' point of the curve.
Read-only property GeometryType The type of this geometry.
Method GeoNormalize Shifts longitudes, if need be, into a continuous range of 360 degrees.
Method GeoNormalizeFromLongitude Normalizes longitudes into a continuous range containing the longitude. This method is obsolete.
Method GetSubcurve Extracts a portion of this curve into a new curve.
Read-only property IsClosed Indicates if 'from' and 'to' points (of each part) are identical.
Read-only property IsEmpty Indicates whether this geometry contains any points.
Read-only property Length The length of the curve.
Method Project Projects this geometry into a new spatial reference.
Method PutCoords Sets this line's endpoints to be 'from' and 'to'.
Method QueryCoords Copies the endpoints of this line to 'from' and 'to'.
Method QueryEnvelope Copies this geometry's envelope properties into the specified envelope.
Method QueryFromPoint Copies this curve's 'from' point to the input point.
Method QueryNormal Constructs a line normal to a curve from a point at a specified distance along the curve.
Method QueryPoint Copies to outPoint the properties of a point on the curve at a specified distance from the beginning of the curve.
Method QueryPointAndDistance Finds the point on the curve closest to inPoint, then copies that point to outPoint; optionally calculates related items.
Method QueryTangent Constructs a line tangent to a curve from a point at a specified distance along the curve.
Method QueryToPoint Copies the curve's 'to' point into the input point.
Method ReverseOrientation Reverses the parameterization of the curve ('from' point becomes 'to' point, first segment becomes last segment, etc).
Method SetEmpty Removes all points from this geometry.
Method SnapToSpatialReference Moves points of this geometry so that they can be represented in the precision of the geometry's associated spatial reference system.
Read/write property SpatialReference The spatial reference associated with this geometry.
Read/write property ToPoint The 'to' point of the curve.

ILine.Angle Property

The angle between this line and the positive x-axis.

Public ReadOnly Property Angle As Double
public double Angle {get;}


The following Visual Basic example gets the angle of a line and converts it to degrees :

dAngleDegree = (180 * pLine.Angle) / Pi

Where Pi = 4 * Atn(1)

ILine.PutCoords Method

Sets this line's endpoints to be 'from' and 'to'.

Public Sub PutCoords ( _
    ByVal from As IPoint, _
    ByVal to As IPoint _
public void PutCoords (
    IPoint from,
    IPoint to


The PutCoords method sets the From Point and To Point for a line object. If the From Point and To Point are identical, it creates a zero Length line with the same start and endpoint.


Line PutCoords Example

ILine.QueryCoords Method

Copies the endpoints of this line to 'from' and 'to'.

Public Sub QueryCoords ( _
    ByVal from As IPoint, _
    ByVal to As IPoint _
public void QueryCoords (
    IPoint from,
    IPoint to


Queries the From and To Points of the Line. These are the only parameters necessary to create a well-defined line.


Line QueryCoords Example

Inherited Interfaces

Interfaces Description
ICurve Provides access to properties and methods of all 1 dimensional curves (polylines, segments, boundaries of polygons, etc.).
IGeometry Provides access to members that describe properties and behavior of all geometric objects.

Classes that implement ILine

Classes Description
Line A 2D straight line between a pair of 2D endpoints; can optionally have height, measure and ID attributes at each endpoint.


The PutCoords method requires 2 Point objects to construct the line segment.

Line Example

// This example creates a simple line and gets the angle

     // and the start and endpoint.

     public void ShowLineAngle()


         IPoint fromPoint = new PointClass();

         fromPoint.PutCoords(100, 100);

         IPoint toPoint = new PointClass();

         toPoint.PutCoords(150, 150);

         ILine line = new LineClass();

         line.PutCoords(fromPoint, toPoint);

         double angle = line.Angle;

         //query Coordinats

         IPoint outFromPoint = new PointClass();

         IPoint outToPoint = new PointClass();

         line.QueryCoords(outFromPoint, outToPoint);

         System.Windows.Forms.MessageBox.Show("From X = " + outFromPoint.X +

                                              ", From Y = " + outFromPoint.Y + "\n" +

                                              "To X = " + outToPoint.X +

                                              ", To Y = " + outToPoint.Y + "\n" +

                                              "Angle = " + angle);


Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.