Hallo an alle,
und zwar sollen wir das Mandelbrot Fraktal in Bloodshed C++ programmieren. Als Windows Applikation mit C. Wenn man mit der linken Maustaste auf einen Punkt klickt, soll er dorthin zoomen und den Bereich neu zeichnen, mit Rechtsklick soll er wieder in die Ursprungsgröße gehen.
Leider hab ich bis jetzt absolut keine Ahnung wie ich das anpacken soll, hab von C mit Windows Applikationen keine Ahnung.
Folgende Sachen haben wir bekommen:
WM_PAINT // Fenster soll neu gezeichnet werden
WM_LBUTTONDOWN // Linke Maustaste wurde gedrückt
WM_LBUTTONUP // Linke Maustaste wurde losgelassen
WM_RBUTTONDOWN // Rechte Maustaste wurde gedrückt
WM_SIZE // Die Fenstergröße hat sich verändert
Bin dankbar über jede Hilfe, auch Tutorials oder Quelltexte in die ich mich reinarbeiten kann!
Vielen Dank!
Hallo
und zwar sollen wir das Mandelbrot Fraktal in Bloodshed C++
programmieren. Als Windows Applikation mit C. Wenn man mit der
linken Maustaste auf einen Punkt klickt, soll er dorthin
zoomen und den Bereich neu zeichnen, mit Rechtsklick soll er
wieder in die Ursprungsgröße gehen.
Leider hab ich bis jetzt absolut keine Ahnung wie ich das
anpacken soll, hab von C mit Windows Applikationen keine
Ahnung.
Du hast damit drei Aufgaben:
-
Die Berechnung der Mandelbrotmenge in
einem Programm formulieren und testen
(unabhängig von Punkt 2),
-
Einen Win32-Programmrahmen basteln, in dem
irgendetwas in einem Fenster dargestellt werden
kann (hat erstmal nix mit 1) zu tun …) und
welcher auf Mausereignisse reagiert (z.B. um einen
grünen, blauen oder roten Punkt ins Fenster zu
zeichnen),
-
Beide Programme unter Bloodshed 5ß zum Laufen
bekommen, die Ausgabe von 1) ins Fenster von 2)
senden und dann beide Module zu einem Programm
zusammenlinken …
Schau Dir mal die Datei „winfract.c“ in http://www.nahee.com/Software/WinFract_18-21_src.zip an.
Viele Grüße
CMБ
Danke für deine schnelle Antwort.
Hab mir das Beispiel angeschaut und ist doch ein wenig verwirrend für mich, steht enorm viel drin. Kennst du vielleicht durch Zufall ein Beispiel, das ein wenig kürzer oder prägnanter ist?
Danke
Hallo Adrian,
schau mal bei deiner Email rein, da ist eine Vorlage für ein WIN32-Proggy drin.
lg
Martin B
…die „const int“ mussst Du noch durch "#define " eretzen, damit es durch den C-Compiler geht.
Martin B
Hallo,
Hab mir das Beispiel angeschaut und ist doch ein wenig
verwirrend für mich, steht enorm viel drin. Kennst du
vielleicht durch Zufall ein Beispiel, das ein wenig kürzer
oder prägnanter ist?
Erklär mal ein wenig noch dazu. Welchen
Dev-CPP nutzt Du, diesen hier? =>
„Dev-C++ 5.0 beta 9.2 (4.9.9.2) (9.0 MB) with Mingw/GCC 3.4.2“
( http://prdownloads.sourceforge.net/dev-cpp/devcpp-4… )
Wenn das so ist, dann mach mal folgendes:
-
Verzeichnis einrichten (Explorer), z.B.: C:\Projekte\Mandel,
-
Dev-CPP (5.0 beta) starten:
-
File => New => Project => Windows Application
-
[Name:] mandel
-
(*) C-Project
-
[OK]
-
im nächsten Dialogfenster (Create new Project) gehst Du
oben (Speichern in) in das vorhin erzeugte Verzeichnis c:\Projekte\Mandel
und drückst unten auf [speichern] (mandel.dev)
-
Dann erscheint wie von Geisterhand ein fertiger Programmrahmen
„main.c“, den Du ebenfalls abspeicherst.
Jetzt hast Du schon die Voraussetzung für Dein Windows-Programm
vor Dir liegen. Neben der Datei „main.c“ erzeugst Du noch zwei
weitere Dateien:
-
mandel.c => dorthin kommen die Berechnungsroutinen (Windows-unabhängig),
-
winmandel.c => dorthin kommt die Schnittstelle zwischen dem
Windows-Hauptprogramm und der Mandelbrot-Berechnung
Diese zusätzlichen Dateien erzeugst Du über das Menü
[File] =\> [New] =\> [Source file]
Die beiden zusätzlichen Dateien bleiben erstmal leer, schreib mal,
wenn Du das hier geschafft hast. Dann müßte bei
[Execute] =\> [Compile & Run]
Dein Programm fehlerfrei gebaut werden und ein weisses Windows-Fenster der Größe 544 x 375 Pixel erscheinen
Grüße
CMБ
Wow, vielen Dank! Echt super Erklärung!