Partager via


CGContext.AddCurveToPoint Méthode

Définition

Ajoute une courbe de Bézier cubique au point actuel, avec les paramètres de contrôle spécifiés.

public void AddCurveToPoint (nfloat cp1x, nfloat cp1y, nfloat cp2x, nfloat cp2y, nfloat x, nfloat y);
member this.AddCurveToPoint : nfloat * nfloat * nfloat * nfloat * nfloat * nfloat -> unit

Paramètres

cp1x
nfloat

Valeur x du premier point de contrôle.

cp1y
nfloat

Valeur y du premier point de contrôle.

cp2x
nfloat

Valeur x du deuxième point de contrôle.

cp2y
nfloat

Valeur y du deuxième point de contrôle.

x
nfloat

Valeur x à laquelle la courbe de Bézier doit se terminer.

y
nfloat

Valeur y à laquelle la courbe de Bézier doit se terminer.

Remarques

Toutes les coordonnées sont en coordonnées d’espace utilisateur.

public override void Draw (RectangleF rect)
{
	base.Draw (rect);
	using (var ctxt = UIGraphics.GetCurrentContext ()) {
		var startingPoint = new PointF (100, 100);
		var controlPoint1 = new PointF (20, 100);
		var controlPoint2 = new PointF (4, 110);
		var endingPoint = new PointF (120, 120);

		ctxt.SetStrokeColor (UIColor.Red.CGColor);
		ctxt.MoveTo (startingPoint.X, startingPoint.Y);
		ctxt.AddCurveToPoint (controlPoint1.X, controlPoint1.Y, controlPoint2.X, controlPoint2.Y, endingPoint.X, endingPoint.Y);
		ctxt.StrokePath ();

		//Illustrate parameters
		ctxt.SetStrokeColor (UIColor.Black.CGColor);
		var sz = new SizeF (2, 2);
		Func<PointF,PointF> offset = (PointF pt) => new PointF(pt.X - 1, pt.Y - 1);
		ctxt.AddEllipseInRect (new RectangleF (offset(startingPoint),sz));
		ctxt.AddEllipseInRect (new RectangleF (offset(controlPoint1), sz));
		ctxt.AddEllipseInRect (new RectangleF (offset(controlPoint2), sz));
		ctxt.AddEllipseInRect (new RectangleF (offset(endingPoint), sz));
		ctxt.StrokePath();
	}
}

S’applique à