Hallo,
ich habe eine WinForms Anwednung geschrieben um Sinuskurven aus einer geparsten Funktionsgleichung zu berechnen und darzustellen. Das war auch kein Problem, Array berechnet und dann mit DrawCurve gezeichnet. Allerdings verpixeln die Kurven an ihren Rändern leicht, sodass es unsauber aussieht.
Jetzt habe ich mir gedacht ich könnte in der Winforms ein WPF Control zeichnen und darin die Kruve darstellen. Leider ist WPF grundlegend anders und besitzt keine DrawCurve Methode.
Jetzt zur eigentlichen Frage: Wie kann ich die Kurven in einem WPF Control zeichnen?
Bitte, wenn möglich, nur mit C# Code antworten, da ich mich mit XAML noch nicht wirklich befasst habe.
Ich bin für jede Antwort, die mir helfen kann, dankbar =)
Hoffe das hilft dir weiter:
Drawing Trig Functions via WPF
Ich hab mir das mal durchgelesen.
Da wird ja eine Polyline verwendet, also mehrere Linien, die miteinander verknüpft sind. Wenn man bei der Grafik genauer hinschaut hat die Kurve ziemlich viele Ecken.
Geht das nicht sauberer, sodass eine richtige Kurve ohne Ecken und Kanten ensteht?
Du willst eine Technologie einsetzen, die nun mal mit XAML arbeitet; diese aber noch nicht nutzen. Und dann bittest Du noch im C# Code.
Wie wärs wenn Du Dich einfach mal mit der Technologie beschäftigst und diese erlernst, wenn Du diese auch einsetzen willst. Das macht so sonst keinen Sinn.
Zudem ist das Forum nicht dazu da, Dir das Erlernen abzunehmen oder Dir entsprechenden Code bereit zu stellen.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Ich habe nicht verlangt verlangt, dass mir hier ein fertiger Code bereitgestellt wird.
Außerdem lässt sich doch alles, was im XAML Code steht auch als C# Code definieren.
Es geht mir nur darum eine Kurve anhand eines Point Arrays zu zeichnen.
Es würde mir schon genügen, wenn mir jemand sagen könnte, was für eine Klasse oder Methode ich verwenden könnte. Mir würden schon Schlagwörter genügen.
Außerdem habe ich mir die WPF Grundlagen durchgelesen.
Ich habe nirgendwo ein vollständiges Tutorial gefunden, in dem sich mit zeichnen von Kurven befasst wird.
Edit: Zum Thema WPF vollständig lernen: Ich will doch nur eine einzige kurve zeichnen. Das wäre ja so, als solle ich Autofahren lernen um überhaupt mit dem Fahrrad zu fahren.
Edit2: Mein bisheriger Versuch war auch schon Polyline, allerdings sehe ich vom Zeichnen nichts, also das Control bleibt einfach nur weiß. Hier der Code:
public void DrawSin(PointCollection points)
{
this.RenderTransformOrigin = new System.Windows.Point(this.ActualWidth / 2, this.ActualHeight / 2);
Polyline pl1 = new Polyline();
SolidColorBrush br = new SolidColorBrush();
br.Color = Colors.Black;
pl1.Stroke = br;
pl1.StrokeThickness = 2;
pl1.Points = points;
canvas1.Children.Add(pl1);
}
schau mal hier
Übersicht über Formen und die grundlegenden Funktionen zum Zeichnen in WPF
Google-Suche nach wpf draw sinus
dort findet man diesen Link:
Drawing Bezier Curves in WPF
Drawing tool story: Drawing a sine or cosine curve