Hallo,
folgende Ausgangssituation:
Klappt prima, jedoch möchte ich einen Umriss des Gemessenen anfertigen.
Ich weiß nicht, wie ich das hinbekomme, da ich ja sozusagen das Koordinatensystem zwischen den einzelnen Messungen drehe (RotateTransform) und daher nicht einfach eine Linie ziehen kann.
Wie mache ich das am Besten? Muss ich manuell die Position der Punkte bezogen auf ein "gerades" Koordinatensystem ausrechnen?
MfG, BjöNi
folgende Ausgangssituation:
- Ein Ultraschallsensor dreht sich und liest die Entfernung zur nächten Wand aus.
- Die Daten liegen mir als Array "Map" vor.
- Die Variable "Counts" gibt an, wie viele Messungen insg. bezogen auf 360° ausgeführt wurden und wie groß das Array ist.
VB.NET-Quellcode
- Private Sub Form1_Paint(sender As Object, e As PaintEventArgs) Handles Me.Paint
- Dim middle As New Point(Width \ 2, Height \ 2)
- With e.Graphics
- .TranslateTransform(middle.X, middle.Y)
- For Each i As Integer In Map
- If i <> 0 Then
- .DrawLine(New Pen(Color.Blue), 0, 0, 0, -i)
- End If
- .RotateTransform(CSng(1 / Counts * 360), Drawing2D.MatrixOrder.Prepend)
- Next
- End With
- End Sub
Ich weiß nicht, wie ich das hinbekomme, da ich ja sozusagen das Koordinatensystem zwischen den einzelnen Messungen drehe (RotateTransform) und daher nicht einfach eine Linie ziehen kann.
Wie mache ich das am Besten? Muss ich manuell die Position der Punkte bezogen auf ein "gerades" Koordinatensystem ausrechnen?
MfG, BjöNi