ArcObjects Library Reference (Geometry)  

IConstructCircularArc.ConstructEndPointsArc Method

Constructs an arc from the given endpoints and arc distance.

[Visual Basic .NET]
Public Sub ConstructEndPointsArc ( _
    ByVal from As IPoint, _
    ByVal to As IPoint, _
    ByVal isCCW As Boolean, _
    ByVal arcDistance As Double _
)
[C#]
public void ConstructEndPointsArc (
    IPoint from,
    IPoint to,
    bool isCCW,
    double arcDistance
);
[C++]
HRESULT ConstructEndPointsArc(
  IPoint* from,
  IPoint* to,
  VARIANT_BOOL isCCW,
  double arcDistance
);
[C++]

Parameters

from

  from is a parameter of type IPoint

to

  to is a parameter of type IPoint

isCCW   isCCW is a parameter of type VARIANT_BOOL arcDistance   arcDistance is a parameter of type double

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Description

Constructs a CircularArc given the From Point, To Point, the desired orientation, and the desired CircularArc Length.  The Arc Distance must be greater than the distance between the From Point and the To Point, otherwise an error is returned.

Remarks

-isCCW stands for "is counter clockwise"

ConstructCircularArc EndPoint Example

[C#]
private void ConstructEndPointsArc()
{
  IConstructCircularArc constructCircularArc = new CircularArcClass();
  ICircularArc circularArc = constructCircularArc as ICircularArc;
  IPoint fromPoint = new PointClass();
  IPoint toPoint = new PointClass();
  fromPoint.PutCoords(100, 100);
  toPoint.PutCoords(50, 50);
  
  constructCircularArc.ConstructEndPointsArc(fromPoint, toPoint, true, 200);
  
  String report = "Length : " + circularArc.Length + "\n" +
                  "Radius : " + circularArc.Radius + "\n" +
                  "Chord Height : " + circularArc.ChordHeight + "\n" +
                  "Central Angle (Rad) : " + circularArc.CentralAngle + "\n" +
                  "From Angle (Rad) : " + circularArc.FromAngle + "\n" +
                  "To Angle (Rad) : " + circularArc.ToAngle + "\n" +
                  "Center Point : " + circularArc.CenterPoint.X + " , " + circularArc.CenterPoint.Y + "\n" +
                  "From Point : " + circularArc.FromPoint.X + " , " + circularArc.FromPoint.Y + "\n" +
                  "To Point : " + circularArc.ToPoint.X + " , " + circularArc.ToPoint.Y;
  System.Windows.Forms.MessageBox.Show(report);
}
[Visual Basic .NET]

    Private Sub ConstructEndPointsArc()
        Dim pConstructCircularArc As ESRI.ArcGIS.Geometry.IConstructCircularArc
        Dim pCArc As ESRI.ArcGIS.Geometry.ICircularArc
        Dim pToPoint As ESRI.ArcGIS.Geometry.IPoint
        Dim pFromPoint As ESRI.ArcGIS.Geometry.IPoint
        pConstructCircularArc = New ESRI.ArcGIS.Geometry.CircularArc
        pCArc = pConstructCircularArc
        pFromPoint = New ESRI.ArcGIS.Geometry.Point
        pToPoint = New ESRI.ArcGIS.Geometry.Point
        pFromPoint.PutCoords(100, 100)
        pToPoint.PutCoords(50, 50)
        pConstructCircularArc.ConstructEndPointsArc(pFromPoint, pToPoint, True, 200)
        Debug.Print("Length : " & pCArc.Length)
        Debug.Print("Radius : " & pCArc.Radius)
        Debug.Print("Chord Height : " & pCArc.ChordHeight)
        Debug.Print("Central Angle (Rad) : " & pCArc.CentralAngle)
        Debug.Print("From Angle (Rad) : " & pCArc.FromAngle)
        Debug.Print("To Angle (Rad) : " & pCArc.ToAngle)
        Debug.Print("Center Point : " & pCArc.CenterPoint.X & " , " & pCArc.CenterPoint.Y)
        Debug.Print("From Point : " & pCArc.FromPoint.X & " , " & pCArc.FromPoint.Y)
        Debug.Print("To Point : " & pCArc.ToPoint.X & " , " & pCArc.ToPoint.Y)
    End Sub

See Also

IConstructCircularArc Interface | IConstructCircularArc.ConstructEndPointsChordHeight Method | IConstructCircularArc.ConstructEndPointsAngle Method | IConstructCircularArc.ConstructEndPointsArc Method | IConstructCircularArc.ConstructEndPointsRadius Method | IConstructCircularArc.ConstructEndPointsTangent Method | IConstructCircularArc.ConstructThreePoints Method