[Visual Basic 6.0]Public Sub BezierCurves() Dim pBezier As IBezierCurve Set pBezier = New BezierCurve Dim pControlPoints(0 To 3) As IPoint Set pControlPoints(0) = New Point 'Bezier FromPoint / From Tangent FromPoint Set pControlPoints(1) = New Point 'From Tangent ToPoint Set pControlPoints(2) = New Point 'To Tangent FromPoint Set pControlPoints(3) = New Point 'Bezier To Point / To Tangent ToPoint 'Define the Bezier Control Points. This is a simple S-Curve. pControlPoints(0).PutCoords 0, 100 pControlPoints(1).PutCoords 100, 100 pControlPoints(2).PutCoords 0, 0 pControlPoints(3).PutCoords 100, 0 'Create the Bezier Curve. pBezier.PutCoords 4, pControlPoints(0) 'Get All of the Control Points from the Bezier Curve. pBezier.QueryCoords pControlPoints(0) 'Get each control point individually pBezier.QueryCoord 0, pControlPoints(0) pBezier.QueryCoord 1, pControlPoints(1) pBezier.QueryCoord 2, pControlPoints(2) pBezier.QueryCoord 3, pControlPoints(3) 'Change the control points to define a simple CircularArc-like Curve. pControlPoints(0).PutCoords -100, 200 pControlPoints(1).PutCoords -100, 100 'Replace individual control points. pBezier.PutCoord 0, pControlPoints(0) pBezier.PutCoord 1, pControlPoints(1) 'Display the Bezier curve degree. Note: This is always 3. MsgBox "Degree of Bezier: " & pBezier.Degree End Sub
[C#]public void showBezierCurvesProperties() { IPoint[] controlPoints = new IPoint[4]; //Bezier FromPoint / From Tangent FromPoint controlPoints[0] = new ESRI.ArcGIS.Geometry.Point(); //From Tangent ToPoint controlPoints[1] = new ESRI.ArcGIS.Geometry.Point(); //To Tangent FromPoint controlPoints[2] = new ESRI.ArcGIS.Geometry.Point(); //Bezier To Point / To Tangent ToPoint controlPoints[3] = new ESRI.ArcGIS.Geometry.Point(); //Define the Bezier Control Points. This is a simple S-Curve. controlPoints[0].PutCoords(0, 100); controlPoints[1].PutCoords(100, 100); controlPoints[2].PutCoords(0, 0); controlPoints[3].PutCoords(100, 0); //Create the Bezier Curve. IBezierCurveGEN bezier = new BezierCurve(); bezier.PutCoords(ref controlPoints); //Get All of the Control Points from the Bezier Curve. bezier.QueryCoords(ref controlPoints); //Get each control point individually bezier.QueryCoord(0, controlPoints[0]); bezier.QueryCoord(1, controlPoints[1]); bezier.QueryCoord(2, controlPoints[2]); bezier.QueryCoord(3, controlPoints[3]); //Change the control points to define a simple CircularArc-like Curve. controlPoints[0].PutCoords(-100, 200); controlPoints[1].PutCoords(-100, 100); //Replace individual control points. bezier.PutCoord(0, controlPoints[0]); bezier.PutCoord(1, controlPoints[1]); //Display the Bezier curve degree. Note: This is always 3. System.Windows.Forms.MessageBox.Show("Degree of Bezier: " + bezier.Degree); }
[Visual Basic .NET, C++]
No example is available for Visual Basic .NET or C++. To view a Visual Basic 6.0 or C# example, click the Language Filter button
in the upper-left corner of the page.