Grafiken mit pure c++!
-
Hallo
Ich möchte in meinen Programmen auch Grafische Funktionen einbauen !
Erst mal so Graphen oder eher so kleine Sachen doch habe kein Plan.
Hab jetzt gehört das man dafür irgendeine Bibliothek braucht ist das wahr?
Oder geht des auch ohne mein Lehrer programmiert mit Pascal er meinte dies
geht mit vectoren?Kann mir da bitte jemand helfen
Vielen Dank im Voraus !
Mit Freundlichen Grüssen
-
Das geht tatsächlich nur mit Bibliotheken.
Ich kann dir qt empfehlen und wenn du Graphen haben willst qwt.
Allerdings solltest du dafür mindestens die Grundlagen von c++ beherrschen.
-
Nein, das geht nicht. C++ kennt keine Pixel, keine Grafik, nicht mal die Konsole. std::cin und std::cout sind auch nur Filestreams. Daher musst du in jedem Fall auf eine Bibliothek oder API zugreifen.
(Und "das geht mit Vektoren" scheint mir doch eine ziemlich vage Aussage für einen Lehrer zu sein, der doch eigentlich wissen sollte wovon er redet.)
-
Naja (er hat zuletzt vor 20 jahren programmiert)^^
Naja wie wurde dann qt bzw wxwidgets programmiert?Ich möchte ein 2d Emulator machen welche Bibliothek würdet ihr mir empfehlen?
-
qt und wxwidgets greifen auf die api des betriebssystems zu. Ich würd mir das aber nicht antun, ich benutze lieber high-level-bibliotheken.
2d Emulator ist recht ungenau, was verstehst du darunter?
-
Also ich möchte spaeter mein Zimmer also z.B ein viereck gezeichnet haben
und da drin sind andere kaestchen und in dem viereck bewegt sich ein Punkt.
-
Q schrieb:
ich benutze lieber high-level-bibliotheken.
Und welche wären das z.B.?
-
Qt würde auf jedenfall funktionieren. Viel anderes habe ich mit C++ noch nicht benutzt.
Falls du aufwändige Sachen machen willst und das bild sehr oft pro sekunde aktualisierst (in Richtung spiele) würde sich sfml anbieten wegen hardwarebeschleunigung.Edit:
Gugelmoser schrieb:
Und welche wären das z.B.?
Das wäre z.B. Qt. Im Vergleich zu WinApi sehe ich das als eine high-level bibliothek an.
-
Was ist ein 2D-Emulator?

Und welches Betriebssystem? Viele Bibliotheken für Grafik sind leider nicht wirklich portabel.
Vielleicht solltest du mal im Spiele- und Grafikforum nachgucken, was für einfache 2D-Grafiken ein gutes Framework ist. Insbesondere falls du am Ende mit deinen Kenntnissen Spiele schreiben möchtest (gib's zu, das ist immer wo rauf es hinaus läuft, wenn sich die Leute für Grafik interessieren).
-
Schreit nach SDL.
-
Also...
Die wichtigste Angaba hab ich ja vergessen das alles mach ich auf
meinem Linux betriebssystem.
-
In richtung Spiele ich weis nicht die geschwindigkeit ist mir eig. wurst den Emulator benötige ich um meine Algorithmen zu testen.
-
Für solche grafik sachen (Rechteck/Punkt zeichnen/bewegen) würde ich SFML nehmen
-
Naja, die Crux besteht wirklich darin, ne Bibliothek zu finden, die ein Pixelformat bearbeiten/erzeugen kann, ohne dies darstellen zu wollen, also dann irgendwo aufn XServer zeichnen zu wollen ... aka beim installieren die volle grafik desktop umgebung hochzieht.
Schlechtes Beispiel sind unter Linux zum beispiel diese ganzen perl/php libs, die pngs/Jpeg bearbeiten koennen wollen, dazu eigentlich perfekt von scripten ausm apache (Server) aus aufgerufen werden koennten, aber beim installieren das volle Xorg auf die Platte droeseln wollen (auf nem server, der am web laufen soll ...haha).
Generell kann man es auch mit plain c/c++ machen, wenn man das fileformat kennt. dann kann man binaer die dateien modifizieren. Iss aber alles naja, sehr low level und damit aufwendig und unmodern

Ciao ...
-
Hi,
ich würde dafür ehrlich gesagt auf Qt zurückgreifen.
Zum zeichnen kann man wunderbar QPainter verwenden, und man muss damit nicht auf ein Widget zeichnen, man kann auch direkt ein QImage/QPixmap verwenden
(Achtung, die Namen sind leicht verwirrent, QImage ist für reine Pixeltransformation und QPixmap ist dafür optimiert, das ganze noch zu rendern)
Zum Glück hat Qt eine sehr gute Doku und bietet viele Beispiele:
http://doc.trolltech.com/4.7/examples-painting.htmlBei Qt ist sogar das OS relativ egal. Es ist sehr portabel.
mfg
Matogel