Hallo liebe Community,
ich sitze schon seit ner gewissen Zeit am Code. Und zwar möchte ich eine quadratische Funktion grafisch mit einer PictureBox darstellen. Das Programm soll quadratische Funktionen und Gleichungen lösen. Bisher schaut's so aus, ohne dem grafischen Teil (da komm ich überhaupt nicht weiter):
Der Teil ist ja nur für die Lösung der quadratischen Gleichung (x1 und x2)
Nun bin ich im Internet auf folgendes gestoßen:
vbtutor.net/VB_Sample/QGraphplotter.htm
Und da gab's den Code:
Leider wurde dieser aber in VB6 geschrieben. Mit VB6 kann ich rein gar nix anfangen. Meine Frage wäre also jetzt, wie kann ich das in VB 2010 umwandeln bzw. gibt es eine bessere Möglichkeit, den Funktionsgraphen grafisch darzustellen?
Ich bedanke mich ganz herzlich im Voraus, hoffentlich könnt Ihr mir weiterhelfen :thumbsup:
Liebe Grüße,
Kesselwagen
ich sitze schon seit ner gewissen Zeit am Code. Und zwar möchte ich eine quadratische Funktion grafisch mit einer PictureBox darstellen. Das Programm soll quadratische Funktionen und Gleichungen lösen. Bisher schaut's so aus, ohne dem grafischen Teil (da komm ich überhaupt nicht weiter):
VB.NET-Quellcode
- Imports System.Math
- Public Class Form1
- Dim a As Double
- Dim b As Double
- Dim c As Double
- Private Sub Button4_Click(ByVal
- sender As System.Object,
- ByVal e As
- System.EventArgs) Handles
- Button4.Click
- Try
- If
- TextBox1.Text = "" Then
- TextBox1.Text = 1
- End
- If
- If
- TextBox1.Text = "0" Then
- MsgBox("a darf
- nicht 0 sein!", MsgBoxStyle.Critical,
- "Fehler bei der Eingabe")
- If
- TextBox1.CanUndo Then
- TextBox1.Undo()
- Else
- TextBox1.Text = 1
- End
- If
- End
- If
- If
- TextBox2.Text = "" Then
- TextBox2.Text = 0
- End
- If
- If
- TextBox3.Text = "" Then
- TextBox3.Text = 0
- End
- If
- checkindex()
- Try
- Dim
- x1 As Double =
- (((-(b)) + (Sqrt((b ^ 2) - (4 * a * c)))) / (2 * a))
- Dim
- x2 As Double =
- (((-(b)) - (Sqrt((b ^ 2) - (4 * a * c)))) / (2 * a))
- If
- a < 0 Then
- If
- x1 = x2 Then
- TextBox5.Text = "X = " & x1 & vbCrLf &
- vbCrLf & "X1 + X2 = " & x1
- + x2 & vbCrLf & "X1 * X2 = "
- & x1 * x2
- Else
- TextBox5.Text = "X1 = " & x2 & vbCrLf & "X2 = " & x1 & vbCrLf &
- vbCrLf & "X1 + X2 = " & x1
- + x2 & vbCrLf & "X1 * X2 = "
- & x1 * x2
- End
- If
- ElseIf
- a > 0 Then
- If x1 = x2 Then
- TextBox5.Text = "X = " & x1 & vbCrLf &
- vbCrLf & "X1 + X2 = " & x1
- + x2 & vbCrLf & "X1 * X2 = "
- & x1 * x2
- Else
- TextBox5.Text = "X1 = " & x1 & vbCrLf & "X2 = " & x2 & vbCrLf &
- vbCrLf & "X1 + X2 = " & x1
- + x2 & vbCrLf & "X1 * X2 = "
- & x1 * x2
- End
- If
- End
- If
- Catch
- ex As Exception
- End
- Try
- Catch
- ex As Exception
- MsgBox(ex.Message, MsgBoxStyle.Critical, "Syntaxfehler!")
- End Try
- End Sub
- Sub
- checkindex()
- If
- TextBox1.Text.Contains("/") Then
- Dim
- a1 As String =
- TextBox1.Text.Split("/")(0)
- Dim
- a2 As String =
- TextBox1.Text.Split("/")(1)
- Double.Parse(a1)
- Double.Parse(a2)
- a = a1 / a2
- Else
- a = Double.Parse(TextBox1.Text)
- End If
- If
- TextBox2.Text.Contains("/") Then
- Dim
- b1 As String =
- TextBox2.Text.Split("/")(0)
- Dim
- b2 As String =
- TextBox2.Text.Split("/")(1)
- Double.Parse(b1)
- Double.Parse(b2)
- b = b1 / b2
- Else
- b = Double.Parse(TextBox2.Text)
- End If
- If
- TextBox3.Text.Contains("/") Then
- Dim
- c1 As String =
- TextBox3.Text.Split("/")(0)
- Dim
- c2 As String =
- TextBox3.Text.Split("/")(1)
- Double.Parse(c1)
- Double.Parse(c2)
- c = c1 / c2
- Else
- c = Double.Parse(TextBox3.Text)
- End If
- End Sub
Der Teil ist ja nur für die Lösung der quadratischen Gleichung (x1 und x2)
Nun bin ich im Internet auf folgendes gestoßen:
vbtutor.net/VB_Sample/QGraphplotter.htm
Und da gab's den Code:
VB.NET-Quellcode
- Private Sub cmd_draw_Click()
- Dim a, b, c As Integer
- Dim w, v As Single
- a = Val(txt_a.Text)
- b = Val(txt_b.Text)
- c = Val(txt_c.Text)
- 'Using a scale of 0.5 cm to represent i unit to draw the graph
- ' Need to make some transformation as the coordinates in VB start from top left
- For w = 0 To 10 Step 0.001
- v = a * (5 - w) ^ 2 - b * (5 - w) + c
- pic_graph.PSet (w, 5 - v)
- Next w
- End Sub
- Private Sub Command1_Click()
- pic_graph.Cls
- txt_a.Text = ""
- txt_b.Text = ""
- txt_c.Text = ""
- End Sub
Leider wurde dieser aber in VB6 geschrieben. Mit VB6 kann ich rein gar nix anfangen. Meine Frage wäre also jetzt, wie kann ich das in VB 2010 umwandeln bzw. gibt es eine bessere Möglichkeit, den Funktionsgraphen grafisch darzustellen?
Ich bedanke mich ganz herzlich im Voraus, hoffentlich könnt Ihr mir weiterhelfen :thumbsup:
Liebe Grüße,
Kesselwagen