![]() |
Apfelmännchen (Fraktale) mit Delphi
Liste der Anhänge anzeigen (Anzahl: 2)
Hi!
Ihr habt bestimmt schon mal was vom sogenannten Apfelmännchen oder auch der Mandelbrotmenge gehört. Das hat etwas mit komplexen Zahlen zu tun. Nach einer bestimmten Formel kann man verblüffende Bilder berechnen. Es ist wirklich erstaunlich das eine scheinbar so einfache Formel so komplexe Bilder ergibt. Vor vielen Jahren haben Jochen und ich, damals noch mit ´nem C64, nach dieser Formel solche Bilder berechnet. Damals dauerte es noch eine ganze Nacht um ein Bild mit geringer Auflösung und nur wenig Farben zu berechnen. Vor einiger Zeit habe ich zu Jochen gesagt: 'Eh, laß uns doch nochmal ein Apfelmännchen-Programm in Delphi schreiben.' Ich war neugierig, den die Computer haben sich ja in all den Jahren rasant weiterentwickelt. Viele größere Auflösung, 32-Bit Farben, extrem hohe Rechengeschindigkeit und massenweise Hauptspeicher. Jochen hat sich dann die Formel aus dem Internet besorgt und ein kleines Demo-Programm geschrieben. Ich hab dann, um diese Formel herum, ein Delphi-Programm geschrieben. Es liegen zahlreiche Parameter-Dateien bei die sehr interessante Bilder erzeugen. Du kannst angeben wieviele Pixel Auflösung verwendet werden und auch die Farbtiefe läßt sich einstellen. Nach der Berechnung kann man einen Bildausschnitt markieren (Linke Maus-Taste gedrückt lassen und ziehen), und diesen Ausschnitt kann man dann vergrößert berechnen lassen. Natürlich kann man das Bild auch ausdrucken, abspeichern oder in die Zwischenablage kopieren. Die Parameter lassen sich frei einstellen. Da es zwischen verschiedenen Delphi-Versionen diverse Unterschiede gibt findest Du im Anhang zwei Versionen, eine Für Delphi 3.0 und eine für 7.0 . Wie all meine Programme ist das Fraktale-Programm natürlich OpenSource! --------------------------------------------------------------------------------------------- Version 0.8 Änderung: BugFix: In der Delphi 7.0 Version führte der Menüpunkt 'Favoritenliste bearbeiten' zu einem dummen Fehler. --------------------------------------------------------------------------------------------- Hi! Hier kommt Version 0.9 von Fraktale.exe! Änderungen: 1.) Höhe der Statuszeile etwas vergrößert damit der Text nit mehr so gequetcht aussieht. 2.) Das Fraktale-Programm schreibt seine Daten nun unter dem Schlüssel "HKEY_CURRENT_USER\SoftWare\TocWare\Fraktale' in Deine System-Registrierung. Mit der Funktion 'Optionen/Registrierung aufheben' kannst Du diese Daten nun auch wieder löschen. 3.) In der Delphi 7.0 Version steht nun die Eigenschaft 'Font.Style' der Statuszeile ebenfalls auf 'fsBold'. Derzeit kann ich Euch nur bitten den fehlerhaften Schlüssel 'HKEY_CURRENT_USER\Fraktale' von Hand zu löschen (mit RegEdit.exe), Sorry! Hinweis: Dieses Programm verwendet einige meiner selbst gebastelten Komponenten, die Du benötigst um das Projekt zu öffnen und neu zu kompilieren. Eine aktuelle Version meiner Komponenten im Packet findest Du hier : ![]() --------------------------------------------------------------------------------------------- Hinweis: Wenn Ihr Bilder berechnen wollt um sie auszudrucken oder anzusehen dann startet bitte direkt die Fraktale.exe, und öffnet das Programm NICHT als Projekt. Da beim Projekt im Hintergrund der symbolische Debugger mitläuft wird sonst alles viel zu langsam. Beispiel: Um das Bild 'Hyper-Apfel' mit 599*506 Pixel Auflösung zu berechnen braucht mein langsamer Rechner (Pentium III MMX, 450 MHZ) als *.exe Datei 1:18 Minuten. Als Projekt geöffnet dauert das selbe Bild 8:44 Minuten! Grüße von TOC und JOE! |
Re: Apfelmännchen (Fraktale) mit Delphi
Ist sehr schön geworden... :thumb:
|
Re: Apfelmännchen (Fraktale) mit Delphi
Hi!
Zitat:
Grüße von TOC! |
Re: Apfelmännchen (Fraktale) mit Delphi
Ja, das sieht wirklich gut aus :thumb: !
Lustig wird es, wenn man den Startwert für jeden Pixel verändert, also statt 0 + 0i mit einem anderen Wert zu beginnen. Dann kann z.B. so etwas herauskommen (Startwert 0,2 + 0,3i): ![]() ![]() |
Re: Apfelmännchen (Fraktale) mit Delphi
Hi,
das sieht wirklich super aus :cyclops: :thumb: Aber warum suchst du dir immer so "bunte" farben für seine Programme aus? :gruebel: Imho machen die deine Programme schlechter also sie sind. Mfg ReDoX |
Re: Apfelmännchen (Fraktale) mit Delphi
Zitat:
das Bild sieht aus, wie wenn jemand einem seinen Hintern entgegen streckt :mrgreen: |
Re: Apfelmännchen (Fraktale) mit Delphi
Zitat:
Wenn ihr wisst das ihr OffTopic werdet dann schreibt auch nichts :warn: [Edit]: Dies ist kein Spass! [/edit] |
Re: Apfelmännchen (Fraktale) mit Delphi
Zitat:
Zitat:
|
Re: Apfelmännchen (Fraktale) mit Delphi
Hi!
Zitat:
Zitat:
Grüße von TOC! |
Re: Apfelmännchen (Fraktale) mit Delphi
Das Programm ist nicht schlecht, nur die bilder werden etwas langsamm auf meinen 2,4 GHZ rechner erzeugt, kann man die formel nicht noch schneller machen ?
Ich finde die sounds wenn eine grafik fertig ist nicht schlecht ! |
Re: Apfelmännchen (Fraktale) mit Delphi
Ist ein klasse Program geworden. :thumb:
Zitat:
Was ich auch noch klasse finde, ist der Sound beim Öffnen und Schließen. |
Re: Apfelmännchen (Fraktale) mit Delphi
Hi!
Zitat:
Übrigens könnt ihr die Grafik komplett ausblenden und im Hintergrund berechnen lassen. Das ist wesentlich schneller weil dann nicht Zeile für Zeile die Grafik aktualiesiert werden muß. Erst recht wenn man ein Bild ausdrucken will und in Druckerauflösung berechnet kann man so viel Zeit sparen. Im Menü 'Optionen/Grafik aktualisieren' einfach abschalten! Grüße von TOC! |
Re: Apfelmännchen (Fraktale) mit Delphi
Ich hatte mal sowas vor 10 Jahren oder so auf einem 486er (oder war es noch ein 386er?-) geschrieben und das zum vergleich in Pascal, in C++ und in Assembler. C++ war schon mal doppelt so schnell wie Pascal und Assembler geht dann richtig ab. Vieleicht kann man die Rechenroutine ja hier auch in Assembler stricken und alles andere in Delphi (Pascal) lassen.
ciao Martin |
Re: Apfelmännchen (Fraktale) mit Delphi
Liste der Anhänge anzeigen (Anzahl: 1)
:thumb: Ich finde sein Prg. ist nicht schlecht.
Ich Denke schon dass es auch in Delphi recht fix berechnet wird (je nach Rechner und Code). Ja vor langer Zeit gab es in der Zeitschrift Dos-Magazin bzw. DOS INTERNATIONAL (heute PC-Magazin) einen Beitrag zum abtippen. 1994 gab es auf der "toolbox" heft CD 1/94 viele Fraktale mit Quelltext (auch Assembler ?). Im Anhang ein fast originaler Quelltext in Trubo Pascal + Demo-Exe (kein Zoom, nur Berechnen) + eine Übersetzung in Delphi mit Zoom. Eine Übersetzung in (Delphi)ASM würde mich interessieren. Zitat:
[edit] Streifenprobl. gelöst, eine Hilfsvariable war noch vom Type Single |
Re: Apfelmännchen (Fraktale) mit Delphi
Habe das Programm (Version für Delphi7) geladen und die Exe einfach so auf den Desktop entpackt, dann habe ich das ganze mit den voreingestellten Werten gestartet und bekam einen Bluescreen... Uahc mit anderen Werten (geringere Tiefen, etc..) fror immer das Bild kurz ein, danach gab es einen Bluescreen.
Ich verwende Win98 SE. |
Re: Apfelmännchen (Fraktale) mit Delphi
Sorry, verflixt hatte es nur unter XP getestet, ich Guck mal nach.
[edit] hatte mich verlesen, Delphi Version 7 war von TOC |
Re: Apfelmännchen (Fraktale) mit Delphi
Zitat:
|
Re: Apfelmännchen (Fraktale) mit Delphi
@turboPASCAL: Deine Zoomfunktion ist genial (Mausklick auf das Bild), nur irgendwann sieht man nur noch waagrechte Streifen. ;)
Einen Bluescreen konnte ich in TOCs Version nicht feststellen, diese läuft ebenfalls einwandfrei. |
Re: Apfelmännchen (Fraktale) mit Delphi
Ja, Streifen git es nach dem 11. (oder 12.) mal Zoom, ist ja auch ne' Demo :zwinker:
(hab noch k.A. wieso das passiert :? ) [edit] Mouse Click + Move (Ausschnitt) funzt auch. |
Re: Apfelmännchen (Fraktale) mit Delphi
Zitat:
|
Re: Apfelmännchen (Fraktale) mit Delphi
Zitat:
|
Re: Apfelmännchen (Fraktale) mit Delphi
Es wäre sehr nett gewesen, wenn du darauf hingewiesen hättest dass sich dein Programm in der Registry verewiegt: HKEY_CURRENT_USER\Fraktale. Und wenn du schon so was machst, dann mach den Eintrag bitte dahin, wo er hingehört, nämlich in den Software-Zweig. :evil:
|
Re: Apfelmännchen (Fraktale) mit Delphi
@nailor, dizzy
Real types ist Double, liegt an was anderem. @TOC Zitat:
kein Deinstallationsprg. gibt der den Eintrag wieder entfernt. |
Re: Apfelmännchen (Fraktale) mit Delphi
Zitat:
(Ich muss allerdings zugeben, dass ich den Effekt in deinem Prog noch nicht getestet habe, weshalb das bei dir natürlich auch was anderes sein kann. Das ändert dann aber nichts daran, dass man trotzdem irgendwann an diese Grenze zoomt :) ) |
Re: Apfelmännchen (Fraktale) mit Delphi
Hi!
Zitat:
Hab mir Dein Programm mal angesehen, ist echt flott. Nur find ich das Apfelmännchen, also die eigentlich Mandelbrotmenge, recht langweilig. Wenn man die Parameter einstellbar macht kann man in den Randbereichen um das Apfelmännchen herum die coolsten Bilder finden! Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Grüße von TOC! |
Re: Apfelmännchen (Fraktale) mit Delphi
Zitat:
|
Re: Apfelmännchen (Fraktale) mit Delphi
Zitat:
|
Re: Apfelmännchen (Fraktale) mit Delphi
Zitat:
Grüße von TOC! |
Re: Apfelmännchen (Fraktale) mit Delphi
Hi, @TOC Danke.
Streifen-Problem ist gelöst, eine Hilfsvariable war noch vom Type Single :wall: dennoch kann es irgend wann Streifen geben wenn die Werte zu klein werden, abgefangen wird dies nicht, (zu faul :roll: ) |
Re: Apfelmännchen (Fraktale) mit Delphi
Interessantes Programm. Da ich die C64-Zeit nicht direkt miterlebt hab (vom Alter her schon), freut es mich immer wieder solche Sachen zu sehen.
Zitat:
|
Re: Apfelmännchen (Fraktale) mit Delphi
Hi!
Zitat:
Jetz mal im ernst: Dat kostet Dich doch nur´n paar IF-Befehle! Köntest Du ruhig noch reinbasteln! Und bitte: Rück mal Deinen Code raus, der würde mich echt interessieren, sogar der alte Turbo-Code. Vielleicht kann ich noch was draus lernen (Speed un so)! Nochmal zum Thema Registrierung: Ich geb Euch völlig Recht! Den Punkt hab ich glatt übersehen. Ich bin nun mal nur Hobby-Programmierer und kein studierter Informatiker. Ich hab mir die Programme selbst gebastelt und in die Registrierung geschrieben wo ich sie alle sofort im Überblick hab und nicht lang suchen muß. Natürlich weiß ich was meine Programme da wo hin schreiben. Dann, eines Tages, fing ich an meine Programme hier zu veröffentlichen und hab das mit der Registrierung glatt übersehen. Aus Eurer sicht sind das Programme die ihr Euch runterlandet, von irgend ´nem Fremden Typ geschrieben, und ihr wollt natürlich wissen was und wo hin die schreiben, logo! Also, ich werd alle Programme komplett überarbeiten, in Zukunft kommt alles unter den Schlüssel 'hkey_current_user/software/tocware/"Exe-Name"', und ich mach noch ´ne Löschfunktion, versprochen! Aber da das doch schon einige Programme sind, noch dazu in Delphi 3.0 und 7.0, wirds ein paar Tage dauern. Gebt mir also bitte etwas Zeit diesen Fehler zu beheben, und: Danke für Euer FeedBack :stupid: ! Grüße von TOC! |
Re: Apfelmännchen (Fraktale) mit Delphi
Zitat:
|
Re: Apfelmännchen (Fraktale) mit Delphi
Hi!
Zitat:
Grüße von TOC! |
Re: Apfelmännchen (Fraktale) mit Delphi
Hi!
Zitat:
Zitat:
Grüße von TOC! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz