2010-02-13 3 views
5

Ich muss ein wissenschaftliches Diagramm (z. B. eine Linie oder ein Balkendiagramm) zeichnen und es dann in meiner Anwendung, die OpenGL für alle Display-verwandten Zwecken verwendet, rendern.Plotten Bibliothek für OpenGL

Was ist der beste Weg, dies zu tun?

Kennt jemand eine Zeichenbibliothek für OpenGL?

Ich konnte keinen finden, und das Beste, was ich bis jetzt gefunden habe, ist, LibGD oder PlPlot zu verwenden, um mein Bild zu rendern, in PNG zu speichern und dann das gleiche PNG als Textur zu laden für ein OpenGL-Quad. Hat jemand Vorschläge für einen besseren Weg dazu oder kennt man eine Bibliothek, die mir bei meiner Aufgabe helfen könnte?

+0

In welcher Sprache ist Ihre Anwendung geschrieben? – phkahler

+0

Bezier-Kurven? – LiraNuna

Antwort

2

Das Rendern nach PNG und die Verwendung als Textur ist eigentlich ein vernünftiger Weg, um Ihr Problem zu lösen. Wenn Sie einen "besseren" Weg brauchen, hängt alles davon ab, was Sie für "besser" halten. Wenn es um skalierbare Grafiken geht, verwenden Sie die SVG-Ausgabe von PLPlot und rendern Sie die Vektorformen direkt in OpenGL. Wenn es darum geht, Zwischendateien zu vermeiden, könnten Sie PLPlot (LGPL lizensiert) erweitern, um die Daten als Chunk im Speicher zu übergeben.

4

MathGL ist eine plattformübergreifende GPL-Plotbibliothek, die OpenGL zum Zeichnen (Klasse mglGraphGL) verwenden kann.

Allerdings kann es auch eine Bitmap (oder Vektor EPS/SVG) erzeugen. Es ist ziemlich schnell und benötigt keine Fenster (kann in der Konsole ausgeführt werden).