This document is archived and information here might be outdated.  Recommended version.


IConstructCircularArc.ConstructBearingChordArc Method (ArcObjects .NET 10.8 SDK)
ArcObjects Help for .NET developers > ArcObjects Help for .NET developers > ArcObjects namespaces > Geometry > ESRI.ArcGIS.Geometry > Interfaces > IC > IConstructCircularArc Interface > IConstructCircularArc.ConstructBearingChordArc Method
ArcGIS Developer Help

IConstructCircularArc.ConstructBearingChordArc Method

Constructs an arc with the given chord bearing, chord distance and arc distance (negative for clockwise orientation).

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

from is a parameter of type IPoint* inAngle
inAngle is a parameter of type double isCCW
isCCW is a parameter of type bool chordDistance
chordDistance is a parameter of type double 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, the Bearing Angle, the desired orientation, the desired Chord Distance, and the desired CircularArc Length.  The Bearing Angle is measured in radians.  The Chord Distance must be less than the Arc Distance, otherwise an error is returned.

Remarks

-isCCW stands for "is counter clockwise"

ConstructCircularArc Bearing Angle Example

[C#]
private void ConstructBearingChordArc()
{
  IConstructCircularArc constructCircularArc = new CircularArcClass();
  ICircularArc circularArc = constructCircularArc as ICircularArc;
  
  IPoint fromPoint = new PointClass();
  fromPoint.PutCoords(100, 100);
 
  //The angles should be in Radians (Radians = Degrees * PI/180)
  constructCircularArc.ConstructBearingChordArc(fromPoint, 0, true, 100, 300);
   
  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 ConstructBearingChordArc()
  Dim pConstructCircularArc As ESRI.ArcGIS.Geometry.IConstructCircularArc
  Dim pCArc As ESRI.ArcGIS.Geometry.ICircularArc
  Dim Pi As Double
  Dim pFromPoint As ESRI.ArcGIS.Geometry.IPoint
  
  pConstructCircularArc = New ESRI.ArcGIS.Geometry.CircularArc
  pCArc = pConstructCircularArc
  Pi = 4 * Math.Atan(1) 'Calculate the value of pi.
  pFromPoint = New ESRI.ArcGIS.Geometry.Point
  pFromPoint.PutCoords(100, 100)
  'The angles should be in Radians (Radians = Degrees * PI/180)
  pConstructCircularArc.ConstructBearingChordArc(pFromPoint, 0, True, 100, 300)
  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.ConstructBearingAngleTangent Method | IConstructCircularArc.ConstructBearingRadiusChord Method | IConstructCircularArc.ConstructBearingArcTangent Method | IConstructCircularArc.ConstructBearingChordTangent Method | IConstructCircularArc.ConstructBearingChordArc Method | IConstructCircularArc.ConstructBearingRadiusAngle Method | IConstructCircularArc.ConstructBearingRadiusArc Method | IConstructCircularArc.ConstructBearingRadiusTangent Method | IConstructCircularArc.ConstructBearingAngleChord Method | IConstructCircularArc.ConstructBearingAngleArc Method | IConstructAngle.ConstructThreePoint Method | IConstructAngle.ConstructLine Method