vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

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

Suche Visual-Basic Code
Re: Fraktale 
Autor: JennyB
Datum: 05.12.03 02:17

Hi,

hier ein Beispiel-Code (leider nicht von mir *g*) -

' Benötigt werden:  1. Form , 2 Command-Buttons u. 1 horiz. Scrollbar
 
Private Declare Sub FloodFill Lib "GDI32" (ByVal hDC As Integer, ByVal x As _
  Integer, ByVal Y As Integer, ByVal Color As Long)
 
Dim T
Dim G(5)
 
Const c1 = 1 / 3
Const c2 = 2 / 3
Const c3 = 1.71 / 2 * c1
 
Sub Koch(a, b, c, d)
 
 l = Sqr((c - a) ^ 2 + (b - d) ^ 2)
 
 If l > T Then
 
  v1 = c - a: v2 = d - b
  DrawWidth = 2
  Line (a, b)-(c, d), QBColor(1)
  Line (a + c1 * (c - a), b + c1 * (d - b))-(0.5 * (a + c) - c3 * v2, 0.5 * (b _
    + d) + c3 * v1), QBColor(1)
  Line (a + c2 * (c - a), b + c2 * (d - b))-(0.5 * (a + c) - c3 * v2, 0.5 * (b _
  + d) + c3 * v1), QBColor(1)
  FillColor = RGB(128, 128, 255)
  FillStyle = 0
  ScaleMode = 3
  ScaleMode = 0
  Scale (0, 4)-(6, 0)
 
  Call Koch(a, b, a + c1 * (c - a), b + c1 * (d - b))
  Call Koch(a + c1 * (c - a), b + c1 * (d - b), 0.5 * (a + c) - c3 * v2, 0.5 * ( _
    b + d) + c3 * v1)
  Call Koch(0.5 * (a + c) - c3 * v2, 0.5 * (b + d) + c3 * v1, a + c2 * (c - a), _
  b + c2 * (d - b))
  Call Koch(a + c2 * (c - a), b + c2 * (d - b), c, d)
 
 End If
 
End Sub
 
 
Private Sub Command1_Click()
 
 M = MsgBox("Die sogenannte Kochkurve entsteht dadurch, dass man auf dem" & _
   "mittleren Teil einer Strecke ein gleichseitiges Dreieck errichtet und" & _
   "dieses einfärbt. Auf vier der somit entstehenden Strecken wird dann eine" & _
   "Rekursion gestartet. Die Rekursionstiefe kann mit Hilfe des Drehreglers" & _
   "gewählt werden.", vbInformation, "Programm-Information")
 
End Sub
 
Private Sub Command2_Click()
 
 End
 
End Sub
 
Private Sub Form_Load()
   Command1.Caption = "Info"
   Command2.Caption = "Ende"
End Sub
 
Private Sub Form_Activate()
 
Scale (0, 4)-(6, 0)
G(1) = 2
G(2) = 1
G(3) = 0.5
G(4) = 0.1
G(5) = 0.008
DrawWidth = 1
T = G(1)
Call Koch(0.25, 1, 5.75, 1)
 
End Sub
 
Private Sub HScroll1_Change()
 
 T = G(HScroll1)
 Scale (0, 4)-(6, 0)
 Cls
 Command1.SetFocus
 Call Koch(0.25, 1, 5.75, 1)
 
End Sub

cu
JennyB
___________________________________________________________________
Some days are diamond - some days are stone ...

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Fraktale 
Autor: Anarki
Datum: 04.12.03 19:19

Hallo
Ich bin auf der Suche nach Möglichkeiten lineare Fraktale (Koch-Kurve, usw) in VB zu visualisieren. Falls jemand einen Algo, oder einen guten Link kennt, kann er es ja hier reinposten.
Achso - Sierpinsky-Dreieck habe ich schon - aber ne Koch-Insel wäre super!

CU
Anarki
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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-2024 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