Zum Inhalt

ID 36 – Graphics Context Object – ISO 11783-6 – B.18

Das Graphics Context Object (GCO) mit der ID 36 (ab VT Version 4) stellt einen dynamischen Grafikpuffer (Canvas) zur Verfügung, in den die ECU zur Laufzeit zeichnen kann. Es ist vergleichbar mit einer Bitmap, deren Inhalt pixelgenau verändert werden kann.

Attribute und Record Format (Tabelle B.59)

Die folgende Tabelle beschreibt den Aufbau des Graphics Context Objekts im Objektpool.

AID Name Typ Größe (Bytes) Bereich / Wert Record Byte Beschreibung
- Object ID Integer 2 0 – 65534 1 – 2 Eindeutige ID im Objektpool.
[0] Type Integer 1 36 3 Objekttyp = Graphics Context.
[1] Viewport Width Integer 2 0 – 32767 4 – 5 Breite des sichtbaren Fensters (Anzeige im VT).
[2] Viewport Height Integer 2 0 – 32767 6 – 7 Höhe des sichtbaren Fensters.
[3] Viewport X Signed Integer 2 -32768 bis +32767 8 – 9 X-Position des Viewports relativ zum Canvas (0 = Links).
[4] Viewport Y Signed Integer 2 -32768 bis +32767 10 – 11 Y-Position des Viewports relativ zum Canvas (0 = Oben).
[5] Canvas Width Integer 2 0 – 32767 12 – 13 Gesamtbreite des Grafikspeichers.
[6] Canvas Height Integer 2 0 – 32767 14 – 15 Gesamthöhe des Grafikspeichers.
[7] Viewport Zoom Float 4 -32.0 bis +32.0 16 – 19 Zoomfaktor des Viewports (siehe Tabelle F.1).
[8] Graphics Cursor X Signed Integer 2 -32768 bis +32767 20 – 21 Aktuelle X-Position des Zeichencursors.
[9] Graphics Cursor Y Signed Integer 2 -32768 bis +32767 22 – 23 Aktuelle Y-Position des Zeichencursors.
[10] Foreground Colour Integer 1 0 – 255 24 Vordergrundfarbe für Zeichenoperationen.
[11] Background Colour Integer 1 0 – 255 25 Hintergrundfarbe. Wird beim Parsen zum Füllen genutzt.
[12] Font Attributes Integer 2 0 – 65534, 65535 26 – 27 Referenz auf Font Attributes Objekt (für Textbefehle).
[13] Line Attributes Integer 2 0 – 65534, 65535 28 – 29 Referenz auf Line Attributes Objekt (für Linienbefehle).
[14] Fill Attributes Integer 2 0 – 65534, 65535 30 – 31 Referenz auf Fill Attributes Objekt (für Füllbefehle).
[15] Format Integer 1 0 – 2 32 Farbtiefe des Canvas: 0=1-Bit, 1=4-Bit, 2=8-Bit.
[16] Options Bitmask 1 0 – 3 33 Bit 0: Transparenz
Bit 1: Farbe (0=FG/BG Attribute, 1=Line/Font/Fill Attr).
[17] Transparency Colour Integer 1 0 – 255 34 Transparenzfarbe (wenn Options Bit 0 gesetzt).

Funktionsweise und Struktur

Das GCO besteht aus zwei Hauptkomponenten: 1. Canvas: Ein persistenter Grafikspeicher (Bitmap) mit definierter Größe (Canvas Width/Height). Der Inhalt bleibt erhalten, auch wenn das Objekt nicht angezeigt wird. 2. Viewport: Ein "Fenster", das einen Ausschnitt des Canvas anzeigt. Der Viewport definiert die Größe des Objekts auf der Maske. Durch Ändern von Viewport X/Y kann der Inhalt gescrollt (gepannt) werden.

Graphics Context Commands

Die Manipulation des Canvas erfolgt über spezielle Befehle (siehe ISO 11783-6, Anhang F), wie z. B.: * Set Graphics Cursor: Setzt die Schreibposition. * Draw Point / Line / Rectangle / Polygon / Ellipse: Zeichnet geometrische Formen. * Draw Text: Schreibt Text an die Cursorposition. * Copy Canvas: Kopiert Bereiche innerhalb des Canvas.

Ereignisse (Events - Tabelle B.58)

Das Graphics Context Objekt reagiert auf folgende Ereignisse:

  • On Change Attribute: Wird ausgelöst bei Änderungen von Attributen (z. B. Viewport-Position, Zoom). Das VT aktualisiert die Anzeige.
  • On Change Background Colour: Füllt das Objekt (den Canvas) mit der neuen Hintergrundfarbe. Achtung: Löscht den bisherigen Inhalt!

Anwendungsbeispiel

Typische Anwendungen sind GPS-Karten (Swath-Logging), bei denen die ECU kontinuierlich die gefahrene Spur als Linie in den GCO zeichnet.


Hinweis: Für detaillierte Spezifikationen wird auf die offizielle ISO 11783-6:2018, B.18 verwiesen.