Next: 7.3.2 Projektionen
Up: 7.3 Darstellungsmodul
Previous: 7.3 Darstellungsmodul
Die Funktionen dieses Moduls können grob in 3 Gruppen eingeteilt werden:
- Verwaltung und allgemeine Einstellungen
- CLS-bezogene Ausgabefunktionen
- Sonstige Ausgabefunktionen
Zur ersten Gruppe gehören Funktionen wie Initialisierung, Konfiguration
der Projektionsart und -parameter, anwendungsbezogene
Definition von Graphikmodi,
u.ä. Die Parameter werden direkt oder in verarbeiteter Form in der
Darstellungsbeschreibung abgespeichert; sie haben aber keine weitere Wirkung
nach außen.
Die zweite Gruppe bilden Funktionen zum Zeichnen einzelner CLS-Objekte
oder Listen davon, wozu auch ganze Bauteile zählen. Diese Funktionen
bewirken die graphische Ausgabe des Objektes, wobei Projektion, Farbzuteilung
usw. zur Anwendung gelangen.
Die dritte Gruppe ermöglicht den Aufruf der Graphikprimitive.
Die Funktionsaufrufe
bewirken unmittelbare graphische Ausgabe, wobei Positions- und Längenangaben
wahlweise noch projiziert werden oder bereits in projizierten Weltkoordinaten
vorliegen, und graphische
Parameter durch Angabe des Graphikmodus direkt bestimmt werden.
Diese Einsprünge erlauben somit das Ergänzen und Beschriften des Bildes
oder das Darstellen anderer als CLS-Daten.
Der Ablauf der PED-Funktion redraw sieht typisch so aus:
- Löschen des Zeichenfensters
- Zeichnen der aktuellen CLS-Daten
- Anwendungsbezogene Nachbearbeitung
Die wichtigsten Initialisierungs- und Konfigurationsfunktionen
sollen kurz vorgestellt werden:
- pedViewInit
- muß vor allen anderen Funktionen einmal
aufgerufen werden.
Es bewirkt die Vorbelegung aller nötigen Variablen mit sinnvollen Werten.
- pedViewSetViewmode
- setzt die Projektionsart (ein-, zwei- oder
dreidimensional).
- pedViewSetViewport
- legt einen Mindestausschnitt in
projizierten Weltkoordinaten fest, der angezeigt werden muß.
- pedViewSetVector3D
- setzt die Projektionsrichtung für
dreidimensionale Daten.
- pedViewSetStaticDevice
- bestimmt ein Gerät für interaktive
Ausgabe.
- pedViewSetOrientation
- legt die Orientierung von dreidimensionalen
Daten fest, d.h. welche Achsen senkrecht, ,,links`` und ,,rechts`` stehen
und mit welchem Vorzeichen sie orientiert sind.
- pedViewSetTwistMatrix
- setzt die Komponenten der Matrix
für ,,Kippen`` des projizierten Bildes.
Ein kompletter Zeichenvorgang besteht aus den folgenden Aufrufen:
- pedViewInitDraw legt den gewünschten Gerätetreiber fest und stellt ihn
auf die zu erwartenden Daten ein.
- Prinzipiell können nun alle Ausgabefunktionen des Darstellungsmoduls
aufgerufen werden. Typisch ist jedoch die Darstellung einer Liste von Objekten.
Um diese mit beliebigen Gestaltungsmitteln versehen zu können,
kann zuvor mit ein- oder mehrmaligem Aufruf von pedViewDoObjectPens mit
der Liste zu jedem Objekt ein Graphikmodus angegeben werden.
![gif](/latexgif/foot_motif.gif)
- pedViewDispDraw läßt die Liste der Objekte nun tatsächlich
ausgeben.
- Es können auch einzelne Objekte ausgegeben werden. Dies ist vor allem
während des Editierens von Bedeutung - neu eingegebene Objekte werden einfach
gezeichnet, ohne das ganze Bild neu aufbauen zu müssen.
- Die letzte Gruppe von Zeichenfunktionen dient dem unmittelbaren
Aufruf der Primitive. Damit besteht die Möglichkeit, Beschriftungen,
Farbtabellen usw. einzubauen.
- pedViewExitDraw beendet den Aufbau eines Bildes. Wenn ein Treiber
zur einmaligen Darstellung aktiviert wurde, wie z.B. der SVG-Treiber,
dann ist dieser Aufruf unerläßlich, um den Vorgang abzuschließen.
Der XWindow-Treiber jedoch kann mit neuerlichem
pedViewInitDraw/pedOutStart
auf ein neues Bild vorbereitet werden, ohne zuvor explizit geschlossen
au werden.
Um den vergleichsweise hohen Verarbeitungsaufwand, der sich bei expliziter
Farbbestimmung für jedes Element ergibt, in Standardfällen zu vermeiden,
sind einige wichtige Darstellungsmodi vorprogrammiert.
- pedMODE_GEOMETRIC stellt Flächen, Linien und Punkte (sowie
orthogonale Gitter) dar. Linien und Punkte werden in der Vordergrundfarbe
gezeichnet, Flächen nach einer vorprogrammierten Farbtabelle gemäß ihrer
Reihenfolge gefärbt.
- pedMODE_PHYSICAL stellt Segmente, Grenzen und Linien dar.
Die Segmente erhalten die Farbe nach ihrer Reihenfolge aus einer
vorprogrammierten Tabelle; Linien werden normal, und Grenzen als dicke, nach
unterschiedlichen Mustern unterbrochenen Linien in Vordergrundfarbe
dargestellt.
- pedMODE_MATERIAL ist ähnlich wie pedMODE_PHYSICAL, aber
die Farbe der Segmente wird aus ihrem Material und der dazu
in der Materialdatenbank
eingetragenen Eigenschaft VisualColor bestimmt.
Next: 7.3.2 Projektionen
Up: 7.3 Darstellungsmodul
Previous: 7.3 Darstellungsmodul
Martin Knaipp
Wed Jun 12 15:41:33 MET DST 1996