Graphics.DrawBeziers Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Nakreslí řadu Bézierových splajnů z pole Point struktur.
Přetížení
DrawBeziers(Pen, Point[]) |
Nakreslí řadu Bézierových splajnů z pole Point struktur. |
DrawBeziers(Pen, PointF[]) |
Nakreslí řadu Bézierových splajnů z pole PointF struktur. |
DrawBeziers(Pen, ReadOnlySpan<Point>) | |
DrawBeziers(Pen, ReadOnlySpan<PointF>) |
DrawBeziers(Pen, Point[])
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Nakreslí řadu Bézierových splajnů z pole Point struktur.
public:
void DrawBeziers(System::Drawing::Pen ^ pen, cli::array <System::Drawing::Point> ^ points);
public:
void DrawBeziers(System::Drawing::Pen ^ pen, ... cli::array <System::Drawing::Point> ^ points);
public void DrawBeziers (System.Drawing.Pen pen, System.Drawing.Point[] points);
public void DrawBeziers (System.Drawing.Pen pen, params System.Drawing.Point[] points);
member this.DrawBeziers : System.Drawing.Pen * System.Drawing.Point[] -> unit
Public Sub DrawBeziers (pen As Pen, points As Point())
Public Sub DrawBeziers (pen As Pen, ParamArray points As Point())
Parametry
- points
- Point[]
Point Pole struktur, které představují body, které určují křivku. Počet bodů v matici by měl být násobek 3 plus 1, například 4, 7 nebo 10.
Výjimky
Příklady
Následující příklad kódu je určen pro použití s model Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny Paint události. Kód provede následující akce:
Vytvoří černé pero.
Vytvoří počáteční, koncový a dva řídicí body pro první křivku a koncový bod a dva řídicí body pro druhou křivku.
Nakreslí na obrazovku následující Bézierovy křivky.
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
Poznámky
Počet bodů v matici by měl být násobek 3 plus 1, protože první spline vyžaduje 4 body a všechny ostatní spline vyžadují po 3 bodech. První Bézierova spojnice je nakreslena od prvního bodu do čtvrtého bodu v bodové matici. Druhý a třetí bod jsou řídicí body, které určují tvar křivky. Každá další křivka potřebuje přesně tři další body: dva další kontrolní body a koncový bod. Koncový bod předchozí křivky se používá jako výchozí bod pro každou další křivku.
Platí pro
DrawBeziers(Pen, PointF[])
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Nakreslí řadu Bézierových splajnů z pole PointF struktur.
public:
void DrawBeziers(System::Drawing::Pen ^ pen, cli::array <System::Drawing::PointF> ^ points);
public:
void DrawBeziers(System::Drawing::Pen ^ pen, ... cli::array <System::Drawing::PointF> ^ points);
public void DrawBeziers (System.Drawing.Pen pen, System.Drawing.PointF[] points);
public void DrawBeziers (System.Drawing.Pen pen, params System.Drawing.PointF[] points);
member this.DrawBeziers : System.Drawing.Pen * System.Drawing.PointF[] -> unit
Public Sub DrawBeziers (pen As Pen, points As PointF())
Public Sub DrawBeziers (pen As Pen, ParamArray points As PointF())
Parametry
- points
- PointF[]
PointF Pole struktur, které představují body, které určují křivku. Počet bodů v matici by měl být násobek 3 plus 1, například 4, 7 nebo 10.
Výjimky
Příklady
Následující příklad kódu je určen pro použití s model Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny Paint události. Kód provede následující akce:
Vytvoří černé pero.
Vytvoří počáteční, koncový a dva řídicí body pro první křivku a koncový bod a dva řídicí body pro druhou křivku.
Nakreslí na obrazovku následující Bézierovy křivky.
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
Poznámky
Počet bodů v matici by měl být násobek 3 plus 1, protože první spline vyžaduje 4 body a všechny ostatní spline vyžadují po 3 bodech. První Bézierova křivka je nakreslena z prvního bodu do čtvrtého bodu v matici bodů. Druhý a třetí bod jsou řídicí body, které určují tvar křivky. Každá další křivka potřebuje přesně tři další body: dva další kontrolní body a koncový bod. Koncový bod předchozí křivky se používá jako výchozí bod pro každou další křivku.
Platí pro
DrawBeziers(Pen, ReadOnlySpan<Point>)
- Zdroj:
- Graphics.cs
public:
void DrawBeziers(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::Point> points);
public void DrawBeziers (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.Point> points);
member this.DrawBeziers : System.Drawing.Pen * ReadOnlySpan<System.Drawing.Point> -> unit
Public Sub DrawBeziers (pen As Pen, points As ReadOnlySpan(Of Point))
Parametry
- pen
- Pen
- points
- ReadOnlySpan<Point>
Platí pro
DrawBeziers(Pen, ReadOnlySpan<PointF>)
- Zdroj:
- Graphics.cs
public:
void DrawBeziers(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::PointF> points);
public void DrawBeziers (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.PointF> points);
member this.DrawBeziers : System.Drawing.Pen * ReadOnlySpan<System.Drawing.PointF> -> unit
Public Sub DrawBeziers (pen As Pen, points As ReadOnlySpan(Of PointF))
Parametry
- pen
- Pen
- points
- ReadOnlySpan<PointF>
Platí pro
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro