ArcObjects Library Reference (Geometry)  

ICircularArc.Complement Method

Changes this arc into its complement; 'from' and 'to' points are unchanged.

[Visual Basic .NET]
Public Sub Complement ( _
)
[C#]
public void Complement (
);
[C++]
HRESULT Complement(
void
);

Product Availability

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

Description

The Complement of a CircularArc is the CircularArc between the ToPoint and the FromPoint of the original CircularArc that creates a full circle when combined with the original CircularArc.  The Complement maintains the same FromPoint and ToPoint as the original CircularArc, but has the different IsMinor and IsCounterClockwise values.

Remarks

 

Complement Example

[C#]

        //This example shows how to create a Complement of Circular arc.
        static void ComplementArcs()
        {
            //Create three points to draw an arc through.
            IPoint point1 = new ESRI.ArcGIS.Geometry.Point();
            IPoint point2 = new ESRI.ArcGIS.Geometry.Point();
            IPoint point3 = new ESRI.ArcGIS.Geometry.Point();
            point1.PutCoords(200, 200);
            point2.PutCoords(200, 300);
            point3.PutCoords(300, 300);
            //Construct a Three Point Arc and draw as solid line.
            IConstructCircularArc constructionArc = new CircularArc() as IConstructCircularArc;
            constructionArc.ConstructThreePoints(point1, point2, point3, true);

            //Draw the compliment of the previous arc as dashed line.
            ICircularArc evilCircularArc = constructionArc as ICircularArc;
            evilCircularArc.Complement();

        }

[Visual Basic .NET]

    Public Sub ComplementArcs()
        'Create three points to draw an arc through.
        Dim pPoint1 As ESRI.ArcGIS.Geometry.IPoint, pPoint2 As ESRI.ArcGIS.Geometry.IPoint, pPoint3 As ESRI.ArcGIS.Geometry.IPoint

        pPoint1 = eCreatePoint(200, 200)
        pPoint2 = eCreatePoint(200, 300)
        pPoint3 = eCreatePoint(300, 300)

        'Construct a Three Point Arc and draw as solid line.
        Dim pCArc As ESRI.ArcGIS.Geometry.IConstructCircularArc
        pCArc = New ESRI.ArcGIS.Geometry.CircularArc
        pCArc.ConstructThreePoints(pPoint1, pPoint2, pPoint3, True)

        'Create the compliment of the previous arc as dashed line.
        Dim pCArcCmp As ESRI.ArcGIS.Geometry.ICircularArc
        pCArcCmp = pCArc
        pCArcCmp.Complement()

    End Sub


    Public Function eCreatePoint(ByVal X As Double, ByVal Y As Double) As ESRI.ArcGIS.Geometry.IPoint
        eCreatePoint = New ESRI.ArcGIS.Geometry.PointClass()
        eCreatePoint.PutCoords(X, Y)
    End Function

 

See Also

ICircularArc Interface

.NET Related Topics

How to use some basic properties and methods on ICircularArc