vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Punkte einer Geraden 
Autor: GPM
Datum: 18.09.11 18:01

Ausser selbst berechnen könnte man sich die Punkte noch über die LineDDA-API holen.
Ein Beispiel:
Public Class Form1
    Declare Function LineDDA Lib "gdi32" (X1 As Int32, Y1 As Int32, X2 As _
      Int32, Y2 As Int32, Callback As LDDAProc, lParam As IntPtr) As Int32
    Delegate Sub LDDAProc(x As Int32, y As Int32, lParam As IntPtr)
    Private pos As Int32, plist As New List(Of Point)
    Private WithEvents Pb As New PictureBox With {.Dock = DockStyle.Fill, _
      .BackColor = Color.Black, .Parent = Me}
    Private WithEvents T As New Timer With {.Interval = 10, .Enabled = True}
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles MyBase.Load
        LineDDA(30, 20, 240, 230, AddressOf LineDDAProc, Nothing)
        LineDDA(240, 230, 240, 20, AddressOf LineDDAProc, Nothing)
        LineDDA(240, 20, 30, 230, AddressOf LineDDAProc, Nothing)
        LineDDA(30, 230, 30, 20, AddressOf LineDDAProc, Nothing)
    End Sub
 
    Private Sub LineDDAProc(x As Int32, y As Int32, lParam As IntPtr)
        plist.Add(New Point(x, y))
    End Sub
 
    Private Sub T_Tick(sender As Object, e As System.EventArgs) Handles T.Tick
        pos = If(pos < plist.Count - 2, pos + 2, 0)
        Pb.Invalidate()
    End Sub
 
    Private Sub Pb_Paint(sender As Object, e As _
      System.Windows.Forms.PaintEventArgs) Handles Pb.Paint
        e.Graphics.SmoothingMode = Drawing2D.SmoothingMode.AntiAlias
        e.Graphics.DrawLines(Pens.Silver, plist.ToArray)
        e.Graphics.FillEllipse(Brushes.Yellow, plist(pos).X - 15, plist(pos).Y _
          - 15, 30, 30)
    End Sub
End Class
MfG GPM
0
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Punkte einer Geraden1.756aufsmauli18.09.11 12:49
Re: Punkte einer Geraden1.374Preisser18.09.11 13:46
Re: Punkte einer Geraden1.144aufsmauli18.09.11 16:04
Re: Punkte einer Geraden1.208Preisser18.09.11 16:27
Re: Punkte einer Geraden1.186GPM18.09.11 18:01

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel