Graphics.DrawBeziers Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee tekent u een reeks Bézier splines van een matrix van Point structuren.
Overloads
| Name | Description |
|---|---|
| DrawBeziers(Pen, PointF[]) |
Hiermee tekent u een reeks Bézier splines van een matrix van PointF structuren. |
| DrawBeziers(Pen, Point[]) |
Hiermee tekent u een reeks Bézier splines van een matrix van Point structuren. |
DrawBeziers(Pen, PointF[])
Hiermee tekent u een reeks Bézier splines van een matrix van PointF structuren.
public:
void DrawBeziers(System::Drawing::Pen ^ pen, cli::array <System::Drawing::PointF> ^ points);
public void DrawBeziers(System.Drawing.Pen pen, System.Drawing.PointF[] points);
member this.DrawBeziers : System.Drawing.Pen * System.Drawing.PointF[] -> unit
Public Sub DrawBeziers (pen As Pen, points As PointF())
Parameters
- points
- PointF[]
Matrix van PointF structuren die de punten vertegenwoordigen die de curve bepalen. Het aantal punten in de matrix moet een veelvoud van 3 plus 1 zijn, zoals 4, 7 of 10.
Uitzonderingen
Voorbeelden
Het volgende codevoorbeeld is ontworpen voor gebruik met Windows Forms en vereist PaintEventArgse, een parameter van de Paint gebeurtenis-handler. De code voert de volgende acties uit:
Hiermee maakt u een zwarte pen.
Hiermee maakt u de begin-, eind- en twee besturingspunten voor een eerste curve en eindpunt en twee besturingspunten voor een tweede curve.
Hiermee tekent u de opeenvolgende Bézier-curven naar het scherm.
private:
void DrawBeziersPointF( PaintEventArgs^ e )
{
// Create pen.
Pen^ blackPen = gcnew Pen( Color::Black,3.0f );
// Create points for curve.
PointF start = PointF(100.0F,100.0F);
PointF control1 = PointF(200.0F,10.0F);
PointF control2 = PointF(350.0F,50.0F);
PointF end1 = PointF(500.0F,100.0F);
PointF control3 = PointF(600.0F,150.0F);
PointF control4 = PointF(650.0F,250.0F);
PointF end2 = PointF(500.0F,300.0F);
array<PointF>^ bezierPoints = {start,control1,control2,end1,control3,control4,end2};
// Draw arc to screen.
e->Graphics->DrawBeziers( blackPen, bezierPoints );
}
private void DrawBeziersPointF(PaintEventArgs e)
{
// Create pen.
Pen blackPen = new Pen(Color.Black, 3);
// Create points for curve.
PointF start = new PointF(100.0F, 100.0F);
PointF control1 = new PointF(200.0F, 10.0F);
PointF control2 = new PointF(350.0F, 50.0F);
PointF end1 = new PointF(500.0F, 100.0F);
PointF control3 = new PointF(600.0F, 150.0F);
PointF control4 = new PointF(650.0F, 250.0F);
PointF end2 = new PointF(500.0F, 300.0F);
PointF[] bezierPoints = { start, control1, control2, end1,
control3, control4, end2 };
// Draw arc to screen.
e.Graphics.DrawBeziers(blackPen, bezierPoints);
}
Private Sub DrawBeziersPointF(ByVal e As PaintEventArgs)
' Create pen.
Dim blackPen As New Pen(Color.Black, 3)
' Create points for curve.
Dim start As New PointF(100.0F, 100.0F)
Dim control1 As New PointF(200.0F, 10.0F)
Dim control2 As New PointF(350.0F, 50.0F)
Dim end1 As New PointF(500.0F, 100.0F)
Dim control3 As New PointF(600.0F, 150.0F)
Dim control4 As New PointF(650.0F, 250.0F)
Dim end2 As New PointF(500.0F, 300.0F)
Dim bezierPoints As PointF() = {start, control1, control2, _
end1, control3, control4, end2}
' Draw arc to screen.
e.Graphics.DrawBeziers(blackPen, bezierPoints)
End Sub
Opmerkingen
Het aantal punten in de matrix moet een veelvoud van 3 plus 1 zijn, omdat de eerste spline 4 punten vereist en alle andere splines elk 3 punten vereisen. De eerste Bézier-curve wordt van het eerste punt naar het vierde punt in de puntmatrix getrokken. De tweede en derde punten zijn besturingspunten die de vorm van de curve bepalen. Elke volgende curve heeft precies drie punten nodig: twee meer besturingspunten en een eindpunt. Het eindpunt van de vorige curve wordt gebruikt als uitgangspunt voor elke extra curve.
Van toepassing op
DrawBeziers(Pen, Point[])
Hiermee tekent u een reeks Bézier splines van een matrix van Point structuren.
public:
void DrawBeziers(System::Drawing::Pen ^ pen, cli::array <System::Drawing::Point> ^ points);
public void DrawBeziers(System.Drawing.Pen pen, System.Drawing.Point[] points);
member this.DrawBeziers : System.Drawing.Pen * System.Drawing.Point[] -> unit
Public Sub DrawBeziers (pen As Pen, points As Point())
Parameters
- points
- Point[]
Matrix van Point structuren die de punten vertegenwoordigen die de curve bepalen. Het aantal punten in de matrix moet een veelvoud van 3 plus 1 zijn, zoals 4, 7 of 10.
Uitzonderingen
Voorbeelden
Het volgende codevoorbeeld is ontworpen voor gebruik met Windows Forms en vereist PaintEventArgse, een parameter van de Paint gebeurtenis-handler. De code voert de volgende acties uit:
Hiermee maakt u een zwarte pen.
Hiermee maakt u de begin-, eind- en twee besturingspunten voor een eerste curve en eindpunt en twee besturingspunten voor een tweede curve.
Hiermee tekent u de opeenvolgende Bézier-curven naar het scherm.
private:
void DrawBeziersPoint( PaintEventArgs^ e )
{
// Create pen.
Pen^ blackPen = gcnew Pen( Color::Black,3.0f );
// Create points for curve.
Point start = Point(100,100);
Point control1 = Point(200,10);
Point control2 = Point(350,50);
Point end1 = Point(500,100);
Point control3 = Point(600,150);
Point control4 = Point(650,250);
Point end2 = Point(500,300);
array<Point>^ bezierPoints = {start,control1,control2,end1,control3,control4,end2};
// Draw arc to screen.
e->Graphics->DrawBeziers( blackPen, bezierPoints );
}
private void DrawBeziersPoint(PaintEventArgs e)
{
// Create pen.
Pen blackPen = new Pen(Color.Black, 3);
// Create points for curve.
Point start = new Point(100, 100);
Point control1 = new Point(200, 10);
Point control2 = new Point(350, 50);
Point end1 = new Point(500, 100);
Point control3 = new Point(600, 150);
Point control4 = new Point(650, 250);
Point end2 = new Point(500, 300);
Point[] bezierPoints =
{
start, control1, control2, end1,
control3, control4, end2
};
// Draw arc to screen.
e.Graphics.DrawBeziers(blackPen, bezierPoints);
}
Private Sub DrawBeziersPoint(ByVal e As PaintEventArgs)
' Create pen.
Dim blackPen As New Pen(Color.Black, 3)
' Create points for curve.
Dim start As New Point(100, 100)
Dim control1 As New Point(200, 10)
Dim control2 As New Point(350, 50)
Dim end1 As New Point(500, 100)
Dim control3 As New Point(600, 150)
Dim control4 As New Point(650, 250)
Dim end2 As New Point(500, 300)
Dim bezierPoints As Point() = {start, control1, control2, _
end1, control3, control4, end2}
' Draw arc to screen.
e.Graphics.DrawBeziers(blackPen, bezierPoints)
End Sub
Opmerkingen
Het aantal punten in de matrix moet een veelvoud van 3 plus 1 zijn, omdat de eerste spline 4 punten vereist en alle andere splines elk 3 punten vereisen. De eerste Bézier spline wordt van het eerste punt naar het vierde punt in de puntmatrix getrokken. De tweede en derde punten zijn besturingspunten die de vorm van de curve bepalen. Elke volgende curve heeft precies drie punten nodig: twee meer besturingspunten en een eindpunt. Het eindpunt van de vorige curve wordt gebruikt als uitgangspunt voor elke extra curve.