Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Krzywa kardynaalna to krzywa, która przechodzi płynnie przez dany zestaw punktów. Aby narysować krzywą kardynaną, utwórz Graphics obiekt i przekaż adres tablicy punktów do DrawCurve metody .
Rysowanie krzywej kardynanej w kształcie dzwonu
Poniższy przykład rysuje krzywą kardynaną w kształcie dzwonu, która przechodzi przez pięć wyznaczonych punktów. Na poniższej ilustracji przedstawiono krzywą i pięć punktów.
Point[] points = {
new Point(0, 100),
new Point(50, 80),
new Point(100, 20),
new Point(150, 80),
new Point(200, 100)};
Pen pen = new Pen(Color.FromArgb(255, 0, 0, 255));
e.Graphics.DrawCurve(pen, points);
Dim points As Point() = { _
New Point(0, 100), _
New Point(50, 80), _
New Point(100, 20), _
New Point(150, 80), _
New Point(200, 100)}
Dim pen As New Pen(Color.FromArgb(255, 0, 0, 255))
e.Graphics.DrawCurve(pen, points)
Rysowanie zamkniętej linii kardynanej
- DrawClosedCurve Użyj metody Graphics klasy, aby narysować zamkniętą krzywą kardynaną. W zamkniętej linii kardynanej krzywa przechodzi przez ostatni punkt w tablicy i łączy się z pierwszym punktem w tablicy. W poniższym przykładzie rysuje zamkniętą krzywą kardynaną, która przechodzi przez sześć wyznaczonych punktów. Na poniższej ilustracji przedstawiono zamkniętą linię spline wraz z sześcioma punktami:
Point[] points = {
new Point(60, 60),
new Point(150, 80),
new Point(200, 40),
new Point(180, 120),
new Point(120, 100),
new Point(80, 160)};
Pen pen = new Pen(Color.FromArgb(255, 0, 0, 255));
e.Graphics.DrawClosedCurve(pen, points);
Dim points As Point() = { _
New Point(60, 60), _
New Point(150, 80), _
New Point(200, 40), _
New Point(180, 120), _
New Point(120, 100), _
New Point(80, 160)}
Dim pen As New Pen(Color.FromArgb(255, 0, 0, 255))
e.Graphics.DrawClosedCurve(pen, points)
Zmiana zginania linii kardynanej
- Zmień sposób, w jaki kardynała krzywa zgina się, przekazując argument napięcia do DrawCurve metody. W poniższym przykładzie rysuje trzy kardynalne linie, które przechodzą przez ten sam zestaw punktów. Na poniższej ilustracji przedstawiono trzy linie szprych wraz z ich wartościami napięcia. Należy pamiętać, że gdy napięcie wynosi 0, punkty są połączone liniami prostymi.
Point[] points = {
new Point(20, 50),
new Point(100, 10),
new Point(200, 100),
new Point(300, 50),
new Point(400, 80)};
Pen pen = new Pen(Color.FromArgb(255, 0, 0, 255));
e.Graphics.DrawCurve(pen, points, 0.0f);
e.Graphics.DrawCurve(pen, points, 0.6f);
e.Graphics.DrawCurve(pen, points, 1.0f);
Dim points As Point() = { _
New Point(20, 50), _
New Point(100, 10), _
New Point(200, 100), _
New Point(300, 50), _
New Point(400, 80)}
Dim pen As New Pen(Color.FromArgb(255, 0, 0, 255))
e.Graphics.DrawCurve(pen, points, 0.0F)
e.Graphics.DrawCurve(pen, points, 0.6F)
e.Graphics.DrawCurve(pen, points, 1.0F)
Kompilowanie kodu
Powyższe przykłady są przeznaczone do użycia z formularzami systemu Windows i wymagają PaintEventArgse
parametru , który jest parametrem Paint programu obsługi zdarzeń.
Zobacz też
.NET Desktop feedback