ArcObjects Library Reference (Geometry)  

IConstructCircularArc.ConstructBearingArcTangent Method

Constructs an arc with the given chord bearing, arc distance and tangent distance.

[Visual Basic .NET]
Public Sub ConstructBearingArcTangent ( _
    ByVal from As IPoint, _
    ByVal inAngle As Double, _
    ByVal isCCW As Boolean, _
    ByVal arcDistance As Double, _
    ByVal tangentDistance As Double _
)
[C#]
public void ConstructBearingArcTangent (
    IPoint from,
    double inAngle,
    bool isCCW,
    double arcDistance,
    double tangentDistance
);
[C++]
HRESULT ConstructBearingArcTangent(
  IPoint* from,
  double inAngle,
  VARIANT_BOOL isCCW,
  double arcDistance,
  double tangentDistance
);
[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 VARIANT_BOOL arcDistance   arcDistance is a parameter of type double tangentDistance   tangentDistance 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 CircularArc Length, and the desired Tangent Distance.  The Bearing Angle is measured in radians.  The Tangent Distance must be greater than half the Arc Distance, otherwise an error is returned.

Remarks

-isCCW stands for "is counter clockwise"

ConstructCircularArc Bearing Angle Example

[C#]
private void ConstructBearingArcTangent()
{
  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.ConstructBearingArcTangent(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 ConstructBearingArcTangent()
  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.ConstructBearingArcTangent(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.ConstructBearingRadiusChord Method | IConstructCircularArc.ConstructBearingRadiusTangent Method | IConstructCircularArc.ConstructBearingRadiusAngle Method | IConstructCircularArc.ConstructBearingRadiusArc Method | IConstructCircularArc.ConstructBearingChordTangent Method | IConstructCircularArc.ConstructBearingChordArc Method | IConstructCircularArc.ConstructBearingArcTangent Method | IConstructCircularArc.ConstructBearingAngleTangent Method | IConstructCircularArc.ConstructBearingAngleArc Method | IConstructCircularArc.ConstructBearingAngleChord Method | IConstructAngle.ConstructThreePoint Method | IConstructAngle.ConstructLine Method