kostenloser Webspace werbefrei: lima-city


Punkte in C

lima-cityForumProgrammiersprachenC/C++ und D

  1. Autor dieses Themas

    forum2

    forum2 hat kostenlosen Webspace.

    Hallo, ich wollte mal gucken, wie man Graphik mit C machen kann. Hier meine Fragen: Wie kann ich in C einen Punkt an eine beliebige Stelle des Bildschirms setzen? (In TurboPascal war es ich glaube pset.) Welche Bibliotheken muss ich dafür laden?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. C selbst hat keine Grafikunterstützung, diese lässt sich jedoch mit Hilfe von Bibliotheken einbinden. Dein Zauberwort heißt OpenGL. Als Bibliothek musst du GLUT einbinden, die kümmert sich i.d.R. dann um alle evtl. bestehenden Abhängikeiten (GLX/WGL, GLU usw.). Ein einfaches OpenGL-Tutorial sollte sich mit Google leicht finden lassen, da es sich um einen offenen Industriestandard handelt. Nachdem diverse Randbedingungen festgelegt worden sind, definiert man einen Punkt z.B. mit
    glBegin(GL_POINTS);
    glVertex3f(float x, float y, float z);
    glEnd();

    MfG,
    thw
  4. Autor dieses Themas

    forum2

    forum2 hat kostenlosen Webspace.

    Es müsste doch eine Möglichkeit geben, einen Punkt auf den Bildschirm zu setzen (an der Stelle (x,y)). In Dos-Zeiten gabs doch auch kein OpenGl. Ich meine jetzt nichts kopliziertes, wie 3d oder so. Nur einen Punkt in der Ebene. In QBasic gings so:

    SCREEN 12
    PSET (50,50), 11

    Geht das in C nicht irgendwie auf einfacheren Weg? Vielleicht #include <graph.h> oder so?
  5. In der Windows API gibts noch:

    SetPixel(hdc,x,y,RGB(255,0,0)); (wingdi.h)

    Setzt in dem Fall einen roten Pixel. Is aber arschlangsam.

    Beitrag geaendert: 12.2.2007 21:14:02 von afixl
  6. Autor dieses Themas

    forum2

    forum2 hat kostenlosen Webspace.

    Wir hatten in der letzten Zeit einiges disskutiert. Die Beiträge sind durch den Fehler verloren gegangen. Ich arbeite hauptsächlich unter Linux, wollte dieses Projekt aber auch für Windows schreiben. Wahrscheinlich werde ich eine Kombination aus inline Assembler und SDL nehmen. Könnt ihr mir einen Tipp geben, welche die schnellste Möglichkeit in Assembler ist?
  7. d*********2

    Warum so kompliziert?
    Mach es doch einfach mit JAVA -> plattformunabhängig

    Sonst wird dir das ganze schnell mal auf die nerven gehen, kann ich mir vorstellen.

    Gruss
    DarkShadow
  8. Wenns unbedingt c sein soll, geht auch gtk oder QT, gibts beides für
    linux und windows.
  9. Autor dieses Themas

    forum2

    forum2 hat kostenlosen Webspace.

    Zum Hintergrund: Ich habe schon ein paar kleine Konsolenprogramme geschrieben in c. Jetzt will ich mich einfach etwas weiter bilden und etwas neues dazu lernen. Java kann ich noch nicht. Zuerst wollte ich mich mal in die Grafikprogrammierung einarbeiten (hat mich schon immmer interessiert). Wenn ich QT bzw. GTK benutze, muss ich doch die Bibliotheken linken ... Muss ich in Windows die entsprechenden DLLs (z.B. von GTK oder QT) mitliefern (z.B im Installationsprogramm)? Wenn ja: Wieviele DLLs muss ich dann bei GTK/QT dazu nehmen?
  10. Erstmal musst du jetzt doch nochmal erklären was du machen willst. Willst du Grafikdaten ausgeben oder möchtest du eine grafische Benutzeroberfläche erstellen?

    Für Grafikdaten (direkt in den Framebuffer der Grafikkarte) benute OpenGL oder meinetwegen SDL (beides plattformunabhängig). Für grafische Benutzeroberflächen (so Fenster und Knöpfe zum Rumklicken halt) benutze GTK2 oder Qt4 - ebenfalls beides plattformunabhängig. Beide Bibliotheken unterscheiden sich im Aussehen des Ergebnisses - vgl. visuelle Unterschiede zwischen Gnome und KDE.
    Wenn du mit C arbeiten willst, bleibt dir nur GTK, da es nur dafür ein C-Interface gibt. Qt bietet ein objektorientiertes Interface für C++. Qt ist sehr intuitiv aufgebaut, es lässt sich gut mit arbeiten. Aber schau da am besten selbst, was du brauchst.

    Du musst die Bibliotheken nicht mitliefern, du kannst auch einfach dazuschreiben "benötigt Qt Verison x.y.z oder höher", so wie es bei Linuxprogrammen i.Allg. üblich ist. Wie das bei Windowssoftware aussieht weiß ich nicht, halte es aber für unsinnig, das komplette Qt mitzuliefern. Das Windows-Binary-Paket (weiß nicht ob nicht oder ohne Quelltext) ist etwa 30MB groß: http://www.trolltech.com/developer/downloads/qt/windows

    MfG,
    thw
  11. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!