Die beiden Beispielprogramme heißen ``beispiel3a.cpp'' und ``beispiel3b.cpp'' und liegen im Verzeichnis ``C:\grafik\winmagra\beispiel''.
// Programm "beispiel3a.cpp"
#include "winmagra.h"
void main()
{
// wir brauchen eine Arbeitsflaeche vom Typ `desk' und
// eine Box vom Typ `boxclass' auf dieser Arbeitsflaeche
desk surf;
boxclass bitbox(surf);
// Auswahl des Ausgabegeraetes mit Namen "test3a"; hier: Bildschirm und Postscript File
surf.open(SCREEN|EPS_FILE,"test3a");
// die Box wird auf der Arbeitsflaeche positioniert und initalisiert,
// mit einem Koordinatensystem versehen, und an den Achsen beschriftet
bitbox.init(20,20,90,90,0.95,0.95);
bitbox.dim(0,256,0,256,64,64);
bitbox.label("width (mm)","height (mm)",.5);
// das File "bild.bmp" wird eingelesen, und das Bitmap in der Box dargestellt
bitbox.showbmp(0,0,256,256,"bild");
}
Die Ausgabe des Programms sieht so aus:
// Programm "beispiel3b.cpp"
#include "winmagra.h"
void main()
{
// wir brauchen ein Objekt vom Typ `bitmap' mit der richtigen Groesse zum Aufnehmen des Bitmaps
// dieser Aufruf muss vor dem Aufruf der Grafikobjekte stattfinden!!
bitmap bmp(256,256);
// wir brauchen eine Arbeitsflaeche vom Typ `desk' und
// eine Box vom Typ `boxclass' auf dieser Arbeitsflaeche
desk surf;
boxclass bitbox(surf);
// Auswahl des Ausgabegeraetes mit Namen "test3b"; hier: Bildschirm und Postscript File
surf.open(SCREEN|EPS_FILE,"test3b");
// die Box wird auf der Arbeitsflaeche positioniert und initalisiert (hier: Ticks
// nach aussen), mit einem Koordinatensystem versehen, und an den Achsen beschriftet
bitbox.init(20,20,90,90);
bitbox.dim(0,256,0,256,64,64,1,boxclass::OUTTICKS);
bitbox.label("width (mm)","height (mm)",.5);
// das File "bild.bmp" wird geladen, und das Bitmap auf der Arbeitsflaeche dargestellt
// hier muessen desk-Koordinaten verwendet werden, da putbmp eine Funktion der desk-Klasse ist!
bmp.load("bild");
surf.putbmp(20,20,90,90,bmp);
}
Die Ausgabe des Programms sieht so aus: