Graphics.DrawCurve 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í základní spline přes zadanou matici Point struktur.
Přetížení
DrawCurve(Pen, ReadOnlySpan<PointF>, Single)
- Zdroj:
- Graphics.cs
public:
void DrawCurve(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::PointF> points, float tension);
public void DrawCurve (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.PointF> points, float tension);
member this.DrawCurve : System.Drawing.Pen * ReadOnlySpan<System.Drawing.PointF> * single -> unit
Public Sub DrawCurve (pen As Pen, points As ReadOnlySpan(Of PointF), tension As Single)
Parametry
- pen
- Pen
- points
- ReadOnlySpan<PointF>
- tension
- Single
Platí pro
DrawCurve(Pen, ReadOnlySpan<PointF>, Int32, Int32, Single)
- Zdroj:
- Graphics.cs
public:
void DrawCurve(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::PointF> points, int offset, int numberOfSegments, float tension);
public void DrawCurve (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.PointF> points, int offset, int numberOfSegments, float tension);
member this.DrawCurve : System.Drawing.Pen * ReadOnlySpan<System.Drawing.PointF> * int * int * single -> unit
Public Sub DrawCurve (pen As Pen, points As ReadOnlySpan(Of PointF), offset As Integer, numberOfSegments As Integer, tension As Single)
Parametry
- pen
- Pen
- points
- ReadOnlySpan<PointF>
- offset
- Int32
- numberOfSegments
- Int32
- tension
- Single
Platí pro
DrawCurve(Pen, ReadOnlySpan<Point>, Int32, Int32, Single)
- Zdroj:
- Graphics.cs
public:
void DrawCurve(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::Point> points, int offset, int numberOfSegments, float tension);
public void DrawCurve (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.Point> points, int offset, int numberOfSegments, float tension);
member this.DrawCurve : System.Drawing.Pen * ReadOnlySpan<System.Drawing.Point> * int * int * single -> unit
Public Sub DrawCurve (pen As Pen, points As ReadOnlySpan(Of Point), offset As Integer, numberOfSegments As Integer, tension As Single)
Parametry
- pen
- Pen
- points
- ReadOnlySpan<Point>
- offset
- Int32
- numberOfSegments
- Int32
- tension
- Single
Platí pro
DrawCurve(Pen, PointF[], Int32, Int32, Single)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Nakreslí základní splalinku přes zadané pole PointF struktur pomocí zadaného tahu. Výkres začíná posun od začátku pole.
public:
void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::PointF> ^ points, int offset, int numberOfSegments, float tension);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.PointF[] points, int offset, int numberOfSegments, float tension);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.PointF[] * int * int * single -> unit
Public Sub DrawCurve (pen As Pen, points As PointF(), offset As Integer, numberOfSegments As Integer, tension As Single)
Parametry
- offset
- Int32
Posun od prvního prvku v poli parametru points
k počátečnímu bodu v křivce.
- numberOfSegments
- Int32
Počet segmentů za počátečním bodem, které se mají zahrnout do křivky
- tension
- Single
Hodnota větší nebo rovna 0,0F, která určuje napětí křivky.
Výjimky
Příklady
Následující příklad kódu je navrž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ří červená a zelená pera.
Vytvoří sedm bodů pro definování křivky.
Nakreslí šest červených rovných čar mezi sedmi body a vytvoří neúplný mnohoúhelník.
Definuje posun počátečního bodu a počet segmentů.
Definuje napětí.
Nakreslí otevřenou zelenou křivku (počínaje třetím bodem) přes posledních pět bodů.
Metoda nastaví napětí na 1,0.
private:
void DrawCurvePointFSegmentTension( PaintEventArgs^ e )
{
// Create pens.
Pen^ redPen = gcnew Pen( Color::Red,3.0f );
Pen^ greenPen = gcnew Pen( Color::Green,3.0f );
// Create points that define curve.
PointF point1 = PointF(50.0F,50.0F);
PointF point2 = PointF(100.0F,25.0F);
PointF point3 = PointF(200.0F,5.0F);
PointF point4 = PointF(250.0F,50.0F);
PointF point5 = PointF(300.0F,100.0F);
PointF point6 = PointF(350.0F,200.0F);
PointF point7 = PointF(250.0F,250.0F);
array<PointF>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};
// Draw lines between original points to screen.
e->Graphics->DrawLines( redPen, curvePoints );
// Create offset, number of segments, and tension.
int offset = 2;
int numSegments = 4;
float tension = 1.0F;
// Draw curve to screen.
e->Graphics->DrawCurve( greenPen, curvePoints, offset, numSegments, tension );
}
private void DrawCurvePointFSegmentTension(PaintEventArgs e)
{
// Create pens.
Pen redPen = new Pen(Color.Red, 3);
Pen greenPen = new Pen(Color.Green, 3);
// Create points that define curve.
PointF point1 = new PointF(50.0F, 50.0F);
PointF point2 = new PointF(100.0F, 25.0F);
PointF point3 = new PointF(200.0F, 5.0F);
PointF point4 = new PointF(250.0F, 50.0F);
PointF point5 = new PointF(300.0F, 100.0F);
PointF point6 = new PointF(350.0F, 200.0F);
PointF point7 = new PointF(250.0F, 250.0F);
PointF[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};
// Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints);
// Create offset, number of segments, and tension.
int offset = 2;
int numSegments = 4;
float tension = 1.0F;
// Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments, tension);
}
Private Sub DrawCurvePointFSegmentTension(ByVal e As PaintEventArgs)
' Create pens.
Dim redPen As New Pen(Color.Red, 3)
Dim greenPen As New Pen(Color.Green, 3)
' Create points that define curve.
Dim point1 As New PointF(50.0F, 50.0F)
Dim point2 As New PointF(100.0F, 25.0F)
Dim point3 As New PointF(200.0F, 5.0F)
Dim point4 As New PointF(250.0F, 50.0F)
Dim point5 As New PointF(300.0F, 100.0F)
Dim point6 As New PointF(350.0F, 200.0F)
Dim point7 As New PointF(250.0F, 250.0F)
Dim curvePoints As PointF() = {point1, point2, point3, point4, _
point5, point6, point7}
' Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints)
' Create offset, number of segments, and tension.
Dim offset As Integer = 2
Dim numSegments As Integer = 4
Dim tension As Single = 1.0F
' Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments, _
tension)
End Sub
Poznámky
Tato metoda nakreslí základní spline, který prochází jednotlivými body v matici.
Aby bylo možné vykreslit křivku, musí pole bodů obsahovat alespoň tři PointF struktury.
Hodnota parametru offset
určuje počet prvků, které se mají v poli přeskočit. První prvek po vynechaných prvcích představuje počáteční bod křivky.
Hodnota parametru numberOfSegments
určuje počet segmentů za výchozím bodem, které se mají nakreslit v křivce. Hodnota parametru numberOfSegments
musí být alespoň 1. Hodnota parametru offset
plus hodnota parametru numberOfSegments
musí být menší než počet prvků v poli parametru points
.
Parametr tension
určuje tvar křivky. Pokud je hodnota parametru tension
0,0F, tato metoda vykreslí přímky segmenty pro spojení bodů. tension
Parametr je obvykle menší než nebo roven hodnotě 1,0F. Hodnoty nad 1,0F mají neobvyklé výsledky.
Platí pro
DrawCurve(Pen, Point[], Int32, Int32, Single)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Nakreslí základní splalinku přes zadané pole Point struktur pomocí zadaného tahu.
public:
void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::Point> ^ points, int offset, int numberOfSegments, float tension);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.Point[] points, int offset, int numberOfSegments, float tension);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.Point[] * int * int * single -> unit
Public Sub DrawCurve (pen As Pen, points As Point(), offset As Integer, numberOfSegments As Integer, tension As Single)
Parametry
- offset
- Int32
Posun od prvního prvku v poli parametru points
k počátečnímu bodu v křivce.
- numberOfSegments
- Int32
Počet segmentů za počátečním bodem, které se mají zahrnout do křivky
- tension
- Single
Hodnota větší nebo rovna 0,0F, která určuje napětí křivky.
Výjimky
Příklady
Následující příklad kódu je navrž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ří červená a zelená pera.
Vytvoří sedm bodů pro definování křivky.
Nakreslí šest červených rovných čar mezi sedmi body a vytvoří neúplný mnohoúhelník.
Definuje posun počátečního bodu a počet segmentů.
Definuje napětí.
Nakreslí otevřenou zelenou křivku (počínaje třetím bodem) přes posledních pět bodů.
Metoda nastaví napětí na 1,0.
private:
void DrawCurvePointSegmentTension( PaintEventArgs^ e )
{
// Create pens.
Pen^ redPen = gcnew Pen( Color::Red,3.0f );
Pen^ greenPen = gcnew Pen( Color::Green,3.0f );
// Create points that define curve.
Point point1 = Point(50,50);
Point point2 = Point(100,25);
Point point3 = Point(200,5);
Point point4 = Point(250,50);
Point point5 = Point(300,100);
Point point6 = Point(350,200);
Point point7 = Point(250,250);
array<Point>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};
// Draw lines between original points to screen.
e->Graphics->DrawLines( redPen, curvePoints );
// Create offset, number of segments, and tension.
int offset = 2;
int numSegments = 4;
float tension = 1.0F;
// Draw curve to screen.
e->Graphics->DrawCurve( greenPen, curvePoints, offset, numSegments, tension );
}
private void DrawCurvePointSegmentTension(PaintEventArgs e)
{
// Create pens.
Pen redPen = new Pen(Color.Red, 3);
Pen greenPen = new Pen(Color.Green, 3);
// Create points that define curve.
Point point1 = new Point(50, 50);
Point point2 = new Point(100, 25);
Point point3 = new Point(200, 5);
Point point4 = new Point(250, 50);
Point point5 = new Point(300, 100);
Point point6 = new Point(350, 200);
Point point7 = new Point(250, 250);
Point[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};
// Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints);
// Create offset, number of segments, and tension.
int offset = 2;
int numSegments = 4;
float tension = 1.0F;
// Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments, tension);
}
Private Sub DrawCurvePointSegmentTension(ByVal e As PaintEventArgs)
' Create pens.
Dim redPen As New Pen(Color.Red, 3)
Dim greenPen As New Pen(Color.Green, 3)
' Create points that define curve.
Dim point1 As New Point(50, 50)
Dim point2 As New Point(100, 25)
Dim point3 As New Point(200, 5)
Dim point4 As New Point(250, 50)
Dim point5 As New Point(300, 100)
Dim point6 As New Point(350, 200)
Dim point7 As New Point(250, 250)
Dim curvePoints As Point() = {point1, point2, point3, point4, _
point5, point6, point7}
' Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints)
' Create offset, number of segments, and tension.
Dim offset As Integer = 2
Dim numSegments As Integer = 4
Dim tension As Single = 1.0F
' Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments, _
tension)
End Sub
Poznámky
Tato metoda nakreslí základní spline, který prochází jednotlivými body v matici.
Matice bodů musí obsahovat alespoň tři Point struktury, aby křivka byla nakreslena.
Hodnota parametru offset
určuje počet prvků, které se mají v poli přeskočit. První prvek po vynechaných prvcích představuje počáteční bod křivky.
Hodnota parametru numberOfSegments
určuje počet segmentů za výchozím bodem, které se mají nakreslit v křivce. Hodnota parametru numberOfSegments
musí být alespoň 1. Hodnota parametru offset
plus hodnota parametru numberOfSegments
musí být menší než počet prvků v poli parametru points
.
Parametr tension
určuje tvar křivky. Pokud je hodnota parametru tension
0,0F, tato metoda vykreslí přímky segmenty pro spojení bodů. tension
Parametr je obvykle menší než nebo roven hodnotě 1,0F. Hodnoty nad 1,0F mají neobvyklé výsledky.
Platí pro
DrawCurve(Pen, ReadOnlySpan<PointF>, Int32, Int32)
- Zdroj:
- Graphics.cs
public:
void DrawCurve(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::PointF> points, int offset, int numberOfSegments);
public void DrawCurve (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.PointF> points, int offset, int numberOfSegments);
member this.DrawCurve : System.Drawing.Pen * ReadOnlySpan<System.Drawing.PointF> * int * int -> unit
Public Sub DrawCurve (pen As Pen, points As ReadOnlySpan(Of PointF), offset As Integer, numberOfSegments As Integer)
Parametry
- pen
- Pen
- points
- ReadOnlySpan<PointF>
- offset
- Int32
- numberOfSegments
- Int32
Platí pro
DrawCurve(Pen, PointF[], Int32, Int32)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Nakreslí základní spline přes zadanou matici PointF struktur. Výkres začíná posun od začátku pole.
public:
void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::PointF> ^ points, int offset, int numberOfSegments);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.PointF[] points, int offset, int numberOfSegments);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.PointF[] * int * int -> unit
Public Sub DrawCurve (pen As Pen, points As PointF(), offset As Integer, numberOfSegments As Integer)
Parametry
- offset
- Int32
Posun od prvního prvku v poli parametru points
k počátečnímu bodu v křivce.
- numberOfSegments
- Int32
Počet segmentů za počátečním bodem, které se mají zahrnout do křivky
Výjimky
Příklady
Následující příklad kódu je navrž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ří červená a zelená pera.
Vytvoří sedm bodů pro definování křivky.
Nakreslí šest červených rovných čar mezi sedmi body a vytvoří neúplný mnohoúhelník.
Definuje posun počátečního bodu a počet segmentů.
Nakreslí otevřenou zelenou křivku (počínaje třetím bodem) přes posledních pět bodů.
Metoda používá výchozí napětí 0,5.
private:
void DrawCurvePointFSegments( PaintEventArgs^ e )
{
// Create pens.
Pen^ redPen = gcnew Pen( Color::Red,3.0f );
Pen^ greenPen = gcnew Pen( Color::Green,3.0f );
// Create points that define curve.
PointF point1 = PointF(50.0F,50.0F);
PointF point2 = PointF(100.0F,25.0F);
PointF point3 = PointF(200.0F,5.0F);
PointF point4 = PointF(250.0F,50.0F);
PointF point5 = PointF(300.0F,100.0F);
PointF point6 = PointF(350.0F,200.0F);
PointF point7 = PointF(250.0F,250.0F);
array<PointF>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};
// Draw lines between original points to screen.
e->Graphics->DrawLines( redPen, curvePoints );
// Create offset and number of segments.
int offset = 2;
int numSegments = 4;
// Draw curve to screen.
e->Graphics->DrawCurve( greenPen, curvePoints, offset, numSegments );
}
private void DrawCurvePointFSegments(PaintEventArgs e)
{
// Create pens.
Pen redPen = new Pen(Color.Red, 3);
Pen greenPen = new Pen(Color.Green, 3);
// Create points that define curve.
PointF point1 = new PointF(50.0F, 50.0F);
PointF point2 = new PointF(100.0F, 25.0F);
PointF point3 = new PointF(200.0F, 5.0F);
PointF point4 = new PointF(250.0F, 50.0F);
PointF point5 = new PointF(300.0F, 100.0F);
PointF point6 = new PointF(350.0F, 200.0F);
PointF point7 = new PointF(250.0F, 250.0F);
PointF[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};
// Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints);
// Create offset and number of segments.
int offset = 2;
int numSegments = 4;
// Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments);
}
Private Sub DrawCurvePointFSegments(ByVal e As PaintEventArgs)
' Create pens.
Dim redPen As New Pen(Color.Red, 3)
Dim greenPen As New Pen(Color.Green, 3)
' Create points that define curve.
Dim point1 As New PointF(50.0F, 50.0F)
Dim point2 As New PointF(100.0F, 25.0F)
Dim point3 As New PointF(200.0F, 5.0F)
Dim point4 As New PointF(250.0F, 50.0F)
Dim point5 As New PointF(300.0F, 100.0F)
Dim point6 As New PointF(350.0F, 200.0F)
Dim point7 As New PointF(250.0F, 250.0F)
Dim curvePoints As PointF() = {point1, point2, point3, point4, _
point5, point6, point7}
' Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints)
' Create offset and number of segments.
Dim offset As Integer = 2
Dim numSegments As Integer = 4
' Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments)
End Sub
Poznámky
Tato metoda nakreslí základní spline, který prochází jednotlivými body v matici.
Matice bodů musí obsahovat alespoň tři PointF struktury, aby křivka byla nakreslena.
Hodnota parametru offset
určuje počet prvků, které se mají v poli přeskočit. První prvek po vynechaných prvcích představuje počáteční bod křivky.
Hodnota parametru numberOfSegments
určuje počet segmentů za počátečním bodem, které se mají nakreslit v křivce. Hodnota parametru numberOfSegments
musí být aspoň 1. Hodnota parametru offset
plus hodnota parametru numberOfSegments
musí být menší než počet prvků v poli parametru points
.
Tato metoda používá výchozí napětí 0,5.
Platí pro
DrawCurve(Pen, PointF[], Single)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Nakreslí základní spline přes zadanou matici PointF struktur pomocí zadaného napětí.
public:
void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::PointF> ^ points, float tension);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.PointF[] points, float tension);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.PointF[] * single -> unit
Public Sub DrawCurve (pen As Pen, points As PointF(), tension As Single)
Parametry
- tension
- Single
Hodnota větší nebo rovna 0,0F, která určuje napětí křivky.
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ří červená a zelená pera.
Vytvoří sedm bodů pro definování křivky.
Nakreslí šest červených přímek mezi sedmi body a vytvoří neúplný mnohoúhelník.
Vytvoří nastavení napětí.
Nakreslí otevřenou zelenou uzavřenou křivku přes sedm bodů.
Metoda používá napětí 1,0.
private:
void DrawCurvePointFTension( PaintEventArgs^ e )
{
// Create pens.
Pen^ redPen = gcnew Pen( Color::Red,3.0f );
Pen^ greenPen = gcnew Pen( Color::Green,3.0f );
// Create points that define curve.
PointF point1 = PointF(50.0F,50.0F);
PointF point2 = PointF(100.0F,25.0F);
PointF point3 = PointF(200.0F,5.0F);
PointF point4 = PointF(250.0F,50.0F);
PointF point5 = PointF(300.0F,100.0F);
PointF point6 = PointF(350.0F,200.0F);
PointF point7 = PointF(250.0F,250.0F);
array<PointF>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};
// Draw lines between original points to screen.
e->Graphics->DrawLines( redPen, curvePoints );
// Create tension.
float tension = 1.0F;
// Draw curve to screen.
e->Graphics->DrawCurve( greenPen, curvePoints, tension );
}
private void DrawCurvePointFTension(PaintEventArgs e)
{
// Create pens.
Pen redPen = new Pen(Color.Red, 3);
Pen greenPen = new Pen(Color.Green, 3);
// Create points that define curve.
PointF point1 = new PointF(50.0F, 50.0F);
PointF point2 = new PointF(100.0F, 25.0F);
PointF point3 = new PointF(200.0F, 5.0F);
PointF point4 = new PointF(250.0F, 50.0F);
PointF point5 = new PointF(300.0F, 100.0F);
PointF point6 = new PointF(350.0F, 200.0F);
PointF point7 = new PointF(250.0F, 250.0F);
PointF[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};
// Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints);
// Create tension.
float tension = 1.0F;
// Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints, tension);
}
Private Sub DrawCurvePointFTension(ByVal e As PaintEventArgs)
' Create pens.
Dim redPen As New Pen(Color.Red, 3)
Dim greenPen As New Pen(Color.Green, 3)
' Create points that define curve.
Dim point1 As New PointF(50.0F, 50.0F)
Dim point2 As New PointF(100.0F, 25.0F)
Dim point3 As New PointF(200.0F, 5.0F)
Dim point4 As New PointF(250.0F, 50.0F)
Dim point5 As New PointF(300.0F, 100.0F)
Dim point6 As New PointF(350.0F, 200.0F)
Dim point7 As New PointF(250.0F, 250.0F)
Dim curvePoints As PointF() = {point1, point2, point3, point4, _
point5, point6, point7}
' Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints)
' Create tension.
Dim tension As Single = 1.0F
' Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints, tension)
End Sub
Poznámky
Tato metoda nakreslí základní spline, který prochází jednotlivými body v matici.
Matice bodů musí obsahovat alespoň tři PointF struktury, aby se křivka nakreslila.
Parametr tension
určuje tvar spline. Pokud je hodnota parametru tension
0,0F, tato metoda vykreslí přímky segmenty pro spojení bodů. tension
Parametr je obvykle menší nebo roven 1,0F. Hodnoty nad 1,0F mají neobvyklé výsledky.
Platí pro
DrawCurve(Pen, Point[], Single)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Nakreslí základní spline přes zadanou matici Point struktur pomocí zadaného napětí.
public:
void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::Point> ^ points, float tension);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.Point[] points, float tension);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.Point[] * single -> unit
Public Sub DrawCurve (pen As Pen, points As Point(), tension As Single)
Parametry
- tension
- Single
Hodnota větší nebo rovna 0,0F, která určuje napětí křivky.
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ří červená a zelená pera.
Vytvoří sedm bodů pro definování křivky.
Nakreslí šest červených přímek mezi sedmi body a vytvoří neúplný mnohoúhelník.
Vytvoří nastavení napětí.
Nakreslí otevřenou zelenou uzavřenou křivku přes sedm bodů.
Metoda používá napětí 1,0.
private:
void DrawCurvePointTension( PaintEventArgs^ e )
{
// Create pens.
Pen^ redPen = gcnew Pen( Color::Red,3.0f );
Pen^ greenPen = gcnew Pen( Color::Green,3.0f );
// Create points that define curve.
Point point1 = Point(50,50);
Point point2 = Point(100,25);
Point point3 = Point(200,5);
Point point4 = Point(250,50);
Point point5 = Point(300,100);
Point point6 = Point(350,200);
Point point7 = Point(250,250);
array<Point>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};
// Draw lines between original points to screen.
e->Graphics->DrawLines( redPen, curvePoints );
// Create tension.
float tension = 1.0F;
// Draw curve to screen.
e->Graphics->DrawCurve( greenPen, curvePoints, tension );
}
private void DrawCurvePointTension(PaintEventArgs e)
{
// Create pens.
Pen redPen = new Pen(Color.Red, 3);
Pen greenPen = new Pen(Color.Green, 3);
// Create points that define curve.
Point point1 = new Point(50, 50);
Point point2 = new Point(100, 25);
Point point3 = new Point(200, 5);
Point point4 = new Point(250, 50);
Point point5 = new Point(300, 100);
Point point6 = new Point(350, 200);
Point point7 = new Point(250, 250);
Point[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};
// Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints);
// Create tension.
float tension = 1.0F;
// Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints, tension);
}
Private Sub DrawCurvePointTension(ByVal e As PaintEventArgs)
' Create pens.
Dim redPen As New Pen(Color.Red, 3)
Dim greenPen As New Pen(Color.Green, 3)
' Create points that define curve.
Dim point1 As New Point(50, 50)
Dim point2 As New Point(100, 25)
Dim point3 As New Point(200, 5)
Dim point4 As New Point(250, 50)
Dim point5 As New Point(300, 100)
Dim point6 As New Point(350, 200)
Dim point7 As New Point(250, 250)
Dim curvePoints As Point() = {point1, point2, point3, point4, _
point5, point6, point7}
' Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints)
' Create tension.
Dim tension As Single = 1.0F
' Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints, tension)
End Sub
Poznámky
Tato metoda nakreslí základní spline, který prochází jednotlivými body v matici.
Matice bodů musí obsahovat alespoň tři Point struktury, aby se křivka nakreslila.
Parametr tension
určuje tvar spline. Pokud je hodnota parametru tension
0,0F, tato metoda vykreslí přímky segmenty pro spojení bodů. tension
Parametr je obvykle menší nebo roven 1,0F. Hodnoty nad 1,0F mají neobvyklé výsledky.
Platí pro
DrawCurve(Pen, ReadOnlySpan<PointF>)
- Zdroj:
- Graphics.cs
public:
void DrawCurve(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::PointF> points);
public void DrawCurve (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.PointF> points);
member this.DrawCurve : System.Drawing.Pen * ReadOnlySpan<System.Drawing.PointF> -> unit
Public Sub DrawCurve (pen As Pen, points As ReadOnlySpan(Of PointF))
Parametry
- pen
- Pen
- points
- ReadOnlySpan<PointF>
Platí pro
DrawCurve(Pen, ReadOnlySpan<Point>)
- Zdroj:
- Graphics.cs
public:
void DrawCurve(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::Point> points);
public void DrawCurve (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.Point> points);
member this.DrawCurve : System.Drawing.Pen * ReadOnlySpan<System.Drawing.Point> -> unit
Public Sub DrawCurve (pen As Pen, points As ReadOnlySpan(Of Point))
Parametry
- pen
- Pen
- points
- ReadOnlySpan<Point>
Platí pro
DrawCurve(Pen, PointF[])
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Nakreslí základní spline přes zadanou matici PointF struktur.
public:
void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::PointF> ^ points);
public:
void DrawCurve(System::Drawing::Pen ^ pen, ... cli::array <System::Drawing::PointF> ^ points);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.PointF[] points);
public void DrawCurve (System.Drawing.Pen pen, params System.Drawing.PointF[] points);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.PointF[] -> unit
Public Sub DrawCurve (pen As Pen, points As PointF())
Public Sub DrawCurve (pen As Pen, ParamArray points As PointF())
Parametry
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ří červená a zelená pera.
Vytvoří sedm bodů pro definování křivky.
Nakreslí šest červených přímek mezi sedmi body a vytvoří neúplný mnohoúhelník.
Nakreslí otevřenou zelenou křivku přes sedm bodů.
Metoda používá výchozí napětí 0,5.
private:
void DrawCurvePointF( PaintEventArgs^ e )
{
// Create pens.
Pen^ redPen = gcnew Pen( Color::Red,3.0f );
Pen^ greenPen = gcnew Pen( Color::Green,3.0f );
// Create points that define curve.
PointF point1 = PointF(50.0F,50.0F);
PointF point2 = PointF(100.0F,25.0F);
PointF point3 = PointF(200.0F,5.0F);
PointF point4 = PointF(250.0F,50.0F);
PointF point5 = PointF(300.0F,100.0F);
PointF point6 = PointF(350.0F,200.0F);
PointF point7 = PointF(250.0F,250.0F);
array<PointF>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};
// Draw lines between original points to screen.
e->Graphics->DrawLines( redPen, curvePoints );
// Draw curve to screen.
e->Graphics->DrawCurve( greenPen, curvePoints );
}
private void DrawCurvePointF(PaintEventArgs e)
{
// Create pens.
Pen redPen = new Pen(Color.Red, 3);
Pen greenPen = new Pen(Color.Green, 3);
// Create points that define curve.
PointF point1 = new PointF(50.0F, 50.0F);
PointF point2 = new PointF(100.0F, 25.0F);
PointF point3 = new PointF(200.0F, 5.0F);
PointF point4 = new PointF(250.0F, 50.0F);
PointF point5 = new PointF(300.0F, 100.0F);
PointF point6 = new PointF(350.0F, 200.0F);
PointF point7 = new PointF(250.0F, 250.0F);
PointF[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};
// Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints);
// Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints);
}
Private Sub DrawCurvePointF(ByVal e As PaintEventArgs)
' Create pens.
Dim redPen As New Pen(Color.Red, 3)
Dim greenPen As New Pen(Color.Green, 3)
' Create points that define curve.
Dim point1 As New PointF(50.0F, 50.0F)
Dim point2 As New PointF(100.0F, 25.0F)
Dim point3 As New PointF(200.0F, 5.0F)
Dim point4 As New PointF(250.0F, 50.0F)
Dim point5 As New PointF(300.0F, 100.0F)
Dim point6 As New PointF(350.0F, 200.0F)
Dim point7 As New PointF(250.0F, 250.0F)
Dim curvePoints As PointF() = {point1, point2, point3, point4, _
point5, point6, point7}
' Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints)
' Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints)
End Sub
Poznámky
Tato metoda nakreslí základní spline, který prochází jednotlivými body v matici.
Matice bodů musí obsahovat alespoň tři PointF struktury, aby se křivka nakreslila.
Tato metoda používá výchozí napětí 0,5.
Platí pro
DrawCurve(Pen, Point[])
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Nakreslí základní spline přes zadanou matici Point struktur.
public:
void DrawCurve(System::Drawing::Pen ^ pen, cli::array <System::Drawing::Point> ^ points);
public:
void DrawCurve(System::Drawing::Pen ^ pen, ... cli::array <System::Drawing::Point> ^ points);
public void DrawCurve (System.Drawing.Pen pen, System.Drawing.Point[] points);
public void DrawCurve (System.Drawing.Pen pen, params System.Drawing.Point[] points);
member this.DrawCurve : System.Drawing.Pen * System.Drawing.Point[] -> unit
Public Sub DrawCurve (pen As Pen, points As Point())
Public Sub DrawCurve (pen As Pen, ParamArray points As Point())
Parametry
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ří červená a zelená pera.
Vytvoří sedm bodů pro definování křivky.
Nakreslí šest červených přímek mezi sedmi body a vytvoří neúplný mnohoúhelník.
Nakreslí otevřenou zelenou křivku přes sedm bodů.
Metoda používá výchozí napětí 0,5.
private:
void DrawCurvePoint( PaintEventArgs^ e )
{
// Create pens.
Pen^ redPen = gcnew Pen( Color::Red,3.0f );
Pen^ greenPen = gcnew Pen( Color::Green,3.0f );
// Create points that define curve.
Point point1 = Point(50,50);
Point point2 = Point(100,25);
Point point3 = Point(200,5);
Point point4 = Point(250,50);
Point point5 = Point(300,100);
Point point6 = Point(350,200);
Point point7 = Point(250,250);
array<Point>^ curvePoints = {point1,point2,point3,point4,point5,point6,point7};
// Draw lines between original points to screen.
e->Graphics->DrawLines( redPen, curvePoints );
// Draw curve to screen.
e->Graphics->DrawCurve( greenPen, curvePoints );
}
private void DrawCurvePoint(PaintEventArgs e)
{
// Create pens.
Pen redPen = new Pen(Color.Red, 3);
Pen greenPen = new Pen(Color.Green, 3);
// Create points that define curve.
Point point1 = new Point(50, 50);
Point point2 = new Point(100, 25);
Point point3 = new Point(200, 5);
Point point4 = new Point(250, 50);
Point point5 = new Point(300, 100);
Point point6 = new Point(350, 200);
Point point7 = new Point(250, 250);
Point[] curvePoints = {point1, point2, point3, point4, point5, point6, point7};
// Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints);
// Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints);
}
Private Sub DrawCurvePoint(ByVal e As PaintEventArgs)
' Create pens.
Dim redPen As New Pen(Color.Red, 3)
Dim greenPen As New Pen(Color.Green, 3)
' Create points that define curve.
Dim point1 As New Point(50, 50)
Dim point2 As New Point(100, 25)
Dim point3 As New Point(200, 5)
Dim point4 As New Point(250, 50)
Dim point5 As New Point(300, 100)
Dim point6 As New Point(350, 200)
Dim point7 As New Point(250, 250)
Dim curvePoints As Point() = {point1, point2, point3, point4, _
point5, point6, point7}
' Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints)
' Draw curve to screen.
e.Graphics.DrawCurve(greenPen, curvePoints)
End Sub
Poznámky
Tato metoda nakreslí základní spline, který prochází jednotlivými body v matici.
Matice bodů musí obsahovat alespoň tři Point struktury, aby se křivka nakreslila.
Tato metoda používá výchozí napětí 0,5.
Platí pro
DrawCurve(Pen, ReadOnlySpan<Point>, Single)
- Zdroj:
- Graphics.cs
public:
void DrawCurve(System::Drawing::Pen ^ pen, ReadOnlySpan<System::Drawing::Point> points, float tension);
public void DrawCurve (System.Drawing.Pen pen, ReadOnlySpan<System.Drawing.Point> points, float tension);
member this.DrawCurve : System.Drawing.Pen * ReadOnlySpan<System.Drawing.Point> * single -> unit
Public Sub DrawCurve (pen As Pen, points As ReadOnlySpan(Of Point), tension As Single)
Parametry
- pen
- Pen
- points
- ReadOnlySpan<Point>
- tension
- Single
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