Seite 2 von 2
Re: Farbberechnung für Mandelbrot-Menge (Rosetta Code)
Verfasst: 21.03.2010 21:33
von Christian H
Uff-- was soll ich da sagen äh schreiben?
Was haltet ihr davon, wenn wir hier im Forum noch ein paar Tage sammeln und dann gemeinsam entscheiden welcher Code verwendet wird.
Wenn wir wollen, ist es ja auch möglich die Varianten auf eine eigene Seite zu legen.
Gruß Christian
PS: Wenn wir so weiter machen, wird dieser Thread in jeder Abhandlung über Mandelbrot verlinkt

Re: Farbberechnung für Mandelbrot-Menge (Rosetta Code)
Verfasst: 21.03.2010 22:09
von Christian H
@Schlumpf
Ich habe deine Beispiel etwas modifiziert.
Code: Alles auswählen
EnableExplicit
#Window1 = 0
#Image1 = 0
#ImgGadget = 0
#max_iteration = 128
#width = 800
#height = 600
Define.d x0 ,y0 ,xtemp ,cr, ci
Define.i i, n, x, y ,Event ,color
Dim Color.l (255)
For n = 0 To 63
Color( 0 + n ) = RGB( n*4+128, 4 * n, 0 )
Color( 64 + n ) = RGB( 64, 255, 4 * n )
Color( 128 + n ) = RGB( 64, 255 - 4 * n , 255 )
Color( 192 + n ) = RGB( 64, 0, 255 - 4 * n )
Next
If OpenWindow(#Window1, 0, 0, #width, #height, "'Mandelbrot set' PureBasic Example", #PB_Window_SystemMenu )
If CreateImage(#Image1, #width, #height)
ImageGadget(#ImgGadget, 0, 0, #width, #height, ImageID(#Image1))
For x.i = 1 To #width -1
StartDrawing(ImageOutput(#Image1))
For y.i = 1 To #height -1
x0 = 0
y0 = 0;
cr = (x / #width)*2.5 -2
ci = (y / #height)*2.5 -1.25
i = 0
While (x0*x0 + y0*y0 <= 4.0) And i < #max_iteration
i +1
xtemp = x0*x0 - y0*y0 + cr
y0 = 2*x0*y0 + ci
x0 = xtemp
Wend
If i >= #max_iteration
Plot(x, y, 0 )
Else
Plot(x, y, Color(i & 255))
EndIf
Next
StopDrawing()
SetGadgetState(#ImgGadget, ImageID(#Image1))
Repeat
Event = WindowEvent()
If Event = #PB_Event_CloseWindow
End
EndIf
Until Event = 0
Next
EndIf
Repeat
Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow
EndIf
Man kann nun auch jederzeit abbrechen.
Gruß Christian
PS: Im Moment habe eine Menge Ideen aber mein Wecker haut mich morgen um 4:00 raus

Gute Nacht @all
Re: Farbberechnung für Mandelbrot-Menge (Rosetta Code)
Verfasst: 21.03.2010 23:34
von Schlumpf
b.t.w. sollte auf Rosetta das Bild vielleicht besser nur verlinkt werden,
nicht eingebunden - sieht aufdringlich aus wenn das PB-Beispiel das einzige ist.
und eher nur das Image, ohne den Fensterrahmen.
Re: Farbberechnung für Mandelbrot-Menge (Rosetta Code)
Verfasst: 22.03.2010 19:57
von Christian H
Ich habe das Bild aktualisiert dieses mal ohne Fensterrahmen, eigentlich wollte ich es als Thumbnail einfügen aber da hat es jedes mal das Seitenlayout zerhauen.
Gruß Christian