CCanvas3D

CCanvas3D ist eine Klasse zur vereinfachten Erstellung und Visualisierung von 3D-Objekten auf einem Chart.

Beschreibung

CCanvas3D vereinfacht erheblich das Erstellen und Visualisieren großer Datenmengen in Form von animierten 3D-Grafiken. Die Klasse enthält die Methoden zur Verwaltung von Kamera und Beleuchtung sowie den Ressourcenmanager zur Erstellung von Grafikressourcen: Texturen, Shader, Vertex-Puffer, Indizes und Shader-Parameter.

Außerdem enthält die Bibliothek die Klassen der Szenenbasisobjekte, wie z.B. eine Box, eine dreidimensionale Oberfläche auf Benutzerdaten oder ein beliebiges Gitter.

Eine Grafikkarte sollte DX 11 und Shader Model 5.0 unterstützen, damit die Funktionen funktionieren.

Deklaration

   class CCanvas

Titel

   #include <Canvas\Canvas.mqh>

Vererbungshierarchie

  CCanvas

      CCanvas3D

Gruppierte Klassenmethoden

Erstellen/Löschen

Beschreibung

Erstellen

Erstellt eine grafische Ressource zum Rendern einer 3D-Szene ohne Bindung an ein Chartobjekt.

Anhängen

Ruft eine grafische Ressource aus dem Objekt OBJ_BITMAP_LABEL ab und hängt sie an eine Instanz der Klasse CCanvas an.

ObjectAdd

Fügt für das spätere Rendern ein Objekt in eine 3D-Szene ein.

Löschen

Zerstört eine grafische Ressource und gibt den grafischen 3D-Kontext frei.

Licht

 

AmbientColorSet

Legt die Farbe und Intensität der Umgebungsbeleuchtung fest.

AmbientColorGet

Bestimmt die Farbe und Intensität der Umgebungsbeleuchtung.

LightDirectionSet

Legt die Richtung einer gerichteten Lichtquelle fest.

LightDirectionGet

Ermittelt die Richtung einer gerichteten Lichtquelle.

LightColorSet

Legt die Farbe und Intensität einer gerichteten Lichtquelle fest.

LightColorGet

Ermittelt die Farbe und Intensität einer gerichteten Lichtquelle.

Kamera

 

ProjectionMatrixSet

Berechnet und setzt eine 3D-Koordinatenprojektionsmatrix auf einen 2D-Rahmen.

ProjectionMatrixGet

Ruft eine 3D-Szenenprojektionsmatrix auf einen 2D-Rahmen ab.

ViewMatrixSet

Legt eine 3D-Szenenansichtsmatrix fest.

ViewMatrixGet

Gibt eine 3D-Szenenansichtsmatrix zurück.

ViewPositionSet

Setzt einen Betrachtungsstandpunkt auf eine 3D-Szene.

ViewRotationSet

Legt die Richtung eines Blicks auf eine 3D-Szene fest.

ViewTargetSet

Legt die Koordinaten des Punktes fest, auf den ein Blick gerichtet ist.

ViewUpDirectionSet

Legt die Richtung des oberen Rahmenrandes im 3D-Raum fest.

Rendern

 

Render

Rendert alle Szenenobjekte im Frame-Innenpuffer für die spätere Anzeige.

RenderBegin

Bereitet einen grafischen Kontext für das Rendern eines neuen Rahmens vor.

RenderEnd

Kopiert einen gerenderten Rahmen in den inneren Puffer und aktualisiert gegebenenfalls ein Bild auf dem Chart.

Abrufen von Ressourcen

 

DXContext

Ruft das Handle des grafische Kontext ab.

DXDispatcher

Ruft das Handle des Ressourcen-Dispatchers ab.

InputScene

Ruft den Zeiger auf den Puffer der Szenenparameter ab.