Diese Bibliothek enthält eine Vielzahl von Funktionen, um
Ausgaben unterschiedlicher Art auf einem Ausgabegerät vornehmen zu
können. Insgesamt stehen die folgenden Routinen zur Verfügung:
• v_arc |
Kreisbogen zeichnen.
|
• v_bar |
Ausgefülltes Rechteck zeichnen.
|
• v_bez |
Bezier-Spline zeichnen.
|
• v_bez_fill |
Bezier-Spline zeichnen und füllen.
|
• v_cellarray |
Farbauswahltabelle darstellen.
|
• v_circle |
Ausgefüllten Kreis zeichnen.
|
• v_contourfill |
Fläche bis zu bestimmten Begrenzungen ausfüllen.
|
• v_ellarc |
Ellipsenbogen zeichnen.
|
• v_ellipse |
Ausgefüllte Ellipse zeichnen.
|
• v_ellpie |
Ausgefülltes Ellipsensegment zeichnen.
|
• v_etext |
Text grafisch ausgeben.
|
• v_fillarea |
Angegebene Fläche ausfüllen.
|
• v_ftext |
Text mittels Vektor-Font ausgeben.
|
• v_ftext16 |
z.Zt. keine Informationen bekannt.
|
• v_ftext_offset |
Text mittels Vektor-Font ausgeben.
|
• v_ftext_offset16 |
z.Zt. keine Informationen bekannt.
|
• v_gtext |
Text grafisch ausgeben.
|
• v_justified |
Ausgerichteten Text ausgeben.
|
• v_mono_ftext |
z.Zt. keine Informationen bekannt.
|
• v_pieslice |
Ausgefülltes Kreissegment zeichnen.
|
• v_pline |
Linienzug zeichnen.
|
• v_pmarker |
Markierung zeichnen.
|
• v_rbox |
Abgerundetes Rechteck zeichnen.
|
• v_rfbox |
Ausgefülltes, abgerundetes Rechteck zeichnen.
|
• vr_recfl |
Rechteck ausfüllen.
|
Name: |
»Arc« - zeichnet einen Kreisbogen.
|
VDI-Nummer: |
11 (GDP 2)
|
Deklaration: |
void v_arc ( int16_t handle, int16_t x, int16_t y, int16_t
radius, int16_t begang, int16_t endang );
|
Beschreibung: |
Die Funktion zeichnet einen Kreisbogen. Es gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
x |
x-Koordinate
|
y |
y-Koordinate des Mittelpunktes
|
radius |
Radius bzgl. der x-Achse
|
begang |
Startwinkel
|
endang |
Endwinkel
|
Hinweis: Die Linien-Attribute, der Schreibmodus sowie
die tatsächliche Pixelgröße werden beim Zeichnen berücksichtigt.
Die Angabe des Radius bezieht sich auf die x-Achse. Der Winkel wird in
1/10 Grad, und entgegen dem Uhrzeigersinn angegeben:
900
|
|
|
---------+---------
1800 | 0
|
|
2700
|
Ergebnis: |
Die Funktion liefert kein Ergebnis.
|
Verfügbar: |
Supported by all drivers. This function composes one of the 10
VDI GDP's (Generalized Drawing Primitives). Although all current
drivers support all GDP's, their availability is not guaranteed and
may vary. To check for a particular GDP refer to the table returned by
v_opnvwk() or v_opnwk().
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding vs_color vswr_mode vsl_type vsl_width
vsl_color vsl_ends vsl_udsty
|
Name: |
»Output Bezier« - Bezier-Spline zeichnen.
|
VDI-Nummer: |
6 (Unterfunktion 13)
|
Deklaration: |
void v_bez ( int16_t handle, int16_t count, int16_t *xyarr,
int8_t *bezarr, int16_t *extent, int16_t *totpts, int16_t *totmoves );
|
Beschreibung: |
Die Funktion zeichnet einen Bezier-Spline. Es gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
count |
Anzahl der Stützstellen
|
xyarr |
Koordinaten
|
bezarr |
Punkttypen als Bitvektor
Bit-0 = |
Startpunkt eines 4-Punkte Beziersegments (2 Ankerpunkte und
zwei Richtungspunkte).
|
Bit-1 = |
'Jump point'. Dieser Punkt und der vorhergehende werden nicht
verbunden. Nützlich um Enklaven oder Exklaven zu zeichnen.
|
Bit-2..7 = |
undefiniert
|
|
extent |
Koordinaten des umschließenden Rechteckes
|
totpts |
Anzahl der Punkte im Polygon
|
totmoves |
Anzahl der Züge im Polygon
|
Hinweis: Der Endpunkt eines Beziersegments kann auch der
Startpunkt des nächsten Beziers sein - er kann aber kein 'jump point'
sein. Ist im bezarr Bit 0 gelöscht, verhält sich die
Bezierfunktion wie v_pline mit der Erweiterung, über den 'jump point'
Enklaven oder Exklaven zeichnen zu können.
|
Ergebnis: |
Die Funktion liefert kein Ergebnis.
|
Verfügbar: |
ab GEM/3 Release 3.1, ab SpeedoGDOS 4.00 und ab NVDI 2.10
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding v_bez_on v_bez_off v_bez_fill v_bez_qual
v_set_app_buff
|
C: |
void v_bez ( int16_t handle, int16_t count, int16_t *xyarr,
int8_t *bezarr, int16_t *extent, int16_t *totpts, int16_t *totmoves );
|
Umsetzung: |
void v_bez (int16_t handle, int16_t count, int16_t *xyarr,
int8_t *bezarr, int16_t *extent, int16_t *totpts,
int16_t *totmoves)
{
ptsin[0..2n-1] = xyarr[0..2n-1];
intin[0..(n+1)/2-1] = bezarr[0..n-1]
contrl[0] = 6;
contrl[1] = n;
contrl[3] = (n+1)/2;
contrl[5] = 13;
contrl[6] = handle;
vdi ();
*totpts = intout[0];
*totmoves = intout[1];
extent[0..3] = ptsout[0..3];
}
|
GEM-Arrays: |
Hinweis: Die im Array bezarr übergebenen
Punkttypen müssen vom C-Binding vertauscht werden, da diese Funktion
leider diesbezüglich kompatibel zum PC-GEM ist. bezarr[0]
wird ins Low-Byte von intin[0] und bezarr[1] ins High-Byte von
intin[0] geschrieben.
|
Name: |
»Output filled Bezier« - Bezier-Spline zeichnen und füllen.
|
VDI-Nummer: |
9 (Unterfunktion 13)
|
Deklaration: |
void v_bez_fill ( int16_t handle, int16_t count, int16_t
*xyarr, int8_t *bezarr, int16_t *extent, int16_t *totpts, int16_t
*totmoves );
|
Beschreibung: |
Die Funktion zeichnet einen Bezier-Spline und füllt diesen
anschließend aus. Es gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
count |
Anzahl der Stützstellen
|
xyarr[0..2n-1] |
Koordinaten
|
bezarr |
Punkttypen als Bitvektor
Bit-0 |
Startpunkt eines 4-Punkte Beziersegments (2 Anker- und zwei
Richtungspunkte)
|
Bit-1 |
'Jump point'. Dieser Punkt und der vorhergehende werden nicht
verbunden. Dies ist nützlich um Enklaven, oder Exklaven zu zeichnen.
|
Bit-2..7 |
undefiniert.
|
|
extent[0..3] |
Koordinaten des umschließenden Rechtecks
|
totpts |
Anzahl der Punkte im Polygon
|
totmoves |
Anzahl der Züge im Polygon
|
Hinweis: Ist im bezarr Bit-0 gelöscht, verhält
sich die Funktion wie v_fillarea mit der Erweiterung, über den 'Jump
point' Enklaven oder Exklaven zeichnen zu können.
|
Ergebnis: |
Die Funktion liefert kein Ergebnis.
|
Verfügbar: |
ab GEM/3 Release 3.1, ab SpeedoGDOS 4.00 und ab NVDI 2.10
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding v_bez_on v_bez_off v_bez v_bez_qual
v_set_app_buff v_fillarea
|
C: |
void v_bez_fill ( int16_t handle, int16_t count, int16_t
*xyarr, int8_t *bezarr, int16_t *extent, int16_t *totpts, int16_t
*totmoves );
|
Umsetzung: |
void v_bez_fill (int16_t handle, int16_t count, int16_t *xyarr,
int8_t *bezarr, int16_t *extent,
int16_t *totpts, int16_t *totmoves)
{
ptsin[0..2n-1] = xyarr[0..2n-1];
intin[0..(n+1)/2-1] = bezarr[0..n-1];
contrl[0] = 9;
contrl[1] = n;
contrl[3] = (n+1)/2;
contrl[5] = 13;
contrl[6] = handle;
vdi ();
*totpts = intout[0];
*totmoves = intout[1];
extent[0..3] = ptsout[0..3];
}
|
GEM-Arrays: |
Hinweis: Die im Array bezarr übergebenen
Punkttypen müssen vom C-Binding vertauscht werden, da diese Funktion
leider diesbezüglich kompatibel zum PC-GEM ist. bezarr[0]
wird ins Low-Byte von intin[0] und bezarr[1] ins High-Byte von
intin[0] geschrieben.
|
Name: |
»Cell Array« - Farbaufbau des Bildschirms in Koordinaten.
|
VDI-Nummer: |
10
|
Deklaration: |
void v_cellarray ( int16_t handle, int16_t *pxyarray, int16_t
row_length, int16_t el_used, int16_t num_rows, int16_t wrt_mode,
int16_t *colarray );
|
Beschreibung: |
Die Funktion ermöglicht es, den Farbaufbau des Bildschirms
nicht von den gezeichneten Objekten abhängig zu machen, sondern von
den Koordinaten des Bildschirms. Es gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
pxyarray |
Koordinaten des Begrenzungsrechtecks
|
row_length |
Zeilenlänge im Farbindex-Array
|
el_used |
Anzahl der Spalten
|
num_rows |
Anzahl der Zeilen
|
wrt_mode |
Schreibmodus
|
colarray |
Farbindexarray, enthält die Farbinformation für das ganze
Rechteck (zeilenweise)
|
Hinweis: Das Ausgabegerät wird in eine Anzahl von
Zellen unterteilt, wobei jeder Zelle eine Farbe zugeordnet wird.
Erfolgt nun eine Ausgabe in der entsprechenden Zelle, so erfolgt diese
in der, der Zelle zugeordneten Farbe. Die Funktion ist nicht
auf allen Ausgabegeräten verfügbar.
|
Ergebnis: |
Die Funktion liefert kein Ergebnis.
|
Verfügbar: |
Not supported by any current drivers.
This function is not guaranteed available in any driver and
should therefore be avoided unless you are sure the driver you are
utilizing understands it.
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding vswr_mode
|
Name: |
»Circle« - zeichnet eine Kreisfläche.
|
VDI-Nummer: |
11 (GDP 4)
|
Deklaration: |
void v_circle ( int16_t handle, int16_t x, int16_t y, int16_t
radius );
|
Beschreibung: |
Die Funktion zeichnet eine Kreisfläche. Es gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
x |
x-Koordinate
|
y |
y-Koordinate für den Mittelpunkt
|
radius |
Radius bzgl. der x-Achse
|
Hinweis: Die Fülltyp-Attribute, der Schreibmodus sowie
das Pixelgrößenverhältnis werden beachtet.
|
Ergebnis: |
Die Funktion liefert kein Ergebnis.
|
Verfügbar: |
Supported by all drivers. This function composes one of the 10
VDI GDP's (Generalized Drawing Primitives). Although all current
drivers support all GDP's, their availability is not guaranteed and
may vary. To check for a particular GDP refer to the table returned by
v_opnvwk() or v_opnwk().
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding vswr_mode vs_color vsf_interior vsf_style
vsf_color vsf_udpat vsf_perimeter
|
Name: |
»Countour fill« - füllt eine Fläche.
|
VDI-Nummer: |
103
|
Deklaration: |
void v_contourfill ( int16_t handle, int16_t x, int16_t y,
int16_t index );
|
Beschreibung: |
Die Funktion füllt, abhängig vom Startpunkt, eine bestimmte
Fläche aus. Es gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
x |
x-Koordinate
|
y |
y-Koordinate des Startpunktes
|
index |
Farbindex
|
Hinweis: Die Füllfläche wird durch den Bildschirmrand,
oder durch eine definierte Farbe begrenzt.
Die aktuellen Fülltyp-Attribute werden beim Zeichnen beachtet.
Ist der Parameter index negativ, so wird gefüllt, bis ein
andersfarbiges Pixel angetroffen wird.
|
Ergebnis: |
Die Funktion liefert kein direktes Funktionsergebnis.
|
Verfügbar: |
Die Funktion ist nicht auf allen Ausgabegeräten
verfügbar, deshalb sollte per vq_extnd nachgefragt werden.
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding vswr_mode vs_color vsf_interior vsf_style
vsf_color vsf_udpat vsf_perimeter
|
Name: |
»Elliptical Arc« - zeichnet einen Ellipsenbogen.
|
VDI-Nummer: |
11 (GDP 6)
|
Deklaration: |
void v_ellarc ( int16_t handle, int16_t x, int16_t y, int16_t
xradius, int16_t yradius, int16_t begang, int16_t endang );
|
Beschreibung: |
Die Funktion zeichnet einen Ausschnitt eines Ellipsenbogens. Es
gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
x |
x-Koordinate
|
y |
y-Koordinate für den Mittelpunkt
|
xradius |
Radius in x-Achse
|
yradius |
Radius in y-Achse
|
begang |
Startwinkel
|
endang |
Endwinkel
|
Hinweis: Die Linien-Attribute und der Schreibmodus
werden beim Zeichnen beachtet, das Pixelgrößenverhältnis jedoch
ignoriert. Der Winkel wird in 1/10 Grad und entgegen dem Uhrzeigersinn
angegeben:
900
|
|
|
---------+---------
1800 | 0
|
|
2700
|
Ergebnis: |
Die Funktion liefert kein Ergebnis.
|
Verfügbar: |
Supported by all drivers. This function composes one of the 10
VDI GDP's (Generalized Drawing Primitives). Although all current
drivers support all GDP's, their availability is not guaranteed and
may vary. To check for a particular GDP refer to the table returned by
v_opnvwk or v_opnwk.
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding vs_color vswr_mode vsl_type vsl_width
vsl_color vsl_ends vsl_udsty
|
Name: |
»Ellipse« - zeichnet eine Ellipsenfläche.
|
VDI-Nummer: |
11 (GDP 5)
|
Deklaration: |
void v_ellipse ( int16_t handle, int16_t x, int16_t y, int16_t
xradius, int16_t yradius );
|
Beschreibung: |
Die Funktion zeichnet eine Ellipsenfläche. Es gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
x |
x-Koordinate
|
y |
y-Koordinate für den Mittelpunkt
|
xradius |
Radius in x-Richtung
|
yradius |
Radius in y-Richtung
|
Hinweis: Die Fülltyp-Attribute und der Schreibmodus
werden berücksichtigt, das Pixelgrößenverhältnis jedoch ignoriert.
|
Ergebnis: |
Die Funktion liefert kein Ergebnis.
|
Verfügbar: |
Supported by all drivers. This function composes one of the 10
VDI GDP's (Generalized Drawing Primitives). Although all current
drivers support all GDP's, their availability is not guaranteed and
may vary. To check for a particular GDP refer to the table returned by
v_opnvwk or v_opnwk.
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding vswr_mode vs_color vsf_interior vsf_style
vsf_color vsf_udpat vsf_perimeter
|
Name: |
»Elliptical Pie« - zeichnet eine Ellipsenbogenfläche.
|
VDI-Nummer: |
11 (GDP 7)
|
Deklaration: |
void v_ellpie ( int16_t handle, int16_t x, int16_t y, int16_t
xradius, int16_t yradius, int16_t begang, int16_t endang );
|
Beschreibung: |
Die Funktion zeichnet einen Ausschnitt einer Ellipsenfläche,
wie er auch für Tortengrafiken benutzt wird. Es gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
x |
x-Koordinate
|
y |
y-Koordinate für den Mittelpunkt
|
xradius |
Radius in x-Richtung
|
yradius |
Radius in y-Richtung
|
begang |
Startwinkel
|
endang |
Endwinkel
|
Hinweis: Die Fülltyp-Attribute und der Schreibmodus
werden berücksichtigt; das Pixelgrößenverhältnis wird ignoriert.
Der Winkel wird in 1/10 Grad und entgegen dem Uhrzeigersinn angegeben:
900
|
|
|
---------+---------
1800 | 0
|
|
2700
|
Ergebnis: |
Die Funktion liefert kein Ergebnis.
|
Verfügbar: |
Supported by all drivers. This function composes one of the 10
VDI GDP's (Generalized Drawing Primitives). Although all current
drivers support all GDP's, their availability is not guaranteed and
may vary. To check for a particular GDP refer to the table returned by
v_opnvwk or v_opnwk.
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding vswr_mode vs_color vsf_interior vsf_style
vsf_color vsf_udpat vsf_perimeter
|
Name: |
»Output Outlined Text« - gibt einen Text per Vektorfont aus.
|
VDI-Nummer: |
241
|
Deklaration: |
void v_ftext ( int16_t handle, int16_t x, int16_t y, int8_t
*string );
|
Beschreibung: |
Die Funktion gibt einen Text auf einer Workstation aus. Es
gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
x |
x-Koordinate
|
y |
y-Koordinate des Textes
|
string |
Adresse der Zeichenkette
|
Hinweis: Die Funktion beachtet im Gegensatz zu v_gtext
auch die eingestellten Kerning-Attribute, und rechnet intern mit einer
Genauigkeit von 1/65536 Pixeln, wodurch eine bessere Positionierung
der Zeichen gewährleistet ist.
|
Ergebnis: |
Die Funktion liefert kein Ergebnis.
|
Verfügbar: |
FSMGDOS, ab SpeedoGDOS 4.00 und ab NVDI 3.00
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding v_gtext v_ftext_offset SpeedoGDOS NVDI fix31
|
Name: |
»Output Outlined Text with Offsets« - gibt einen Text aus.
|
VDI-Nummer: |
241
|
Deklaration: |
void v_ftext_offset ( int16_t handle, int16_t x, int16_t y,
int8_t *string, int16_t *offset );
|
Beschreibung: |
Die Funktion gibt eine Zeichenkette auf einer Workstation aus.
Es gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
x |
x-Koordinate
|
y |
y-Koordinate für die Textausgabe
|
string |
Adresse der Zeichenkette
|
offset[0] |
x-Offset
|
offset[1] |
y-Offset des ersten Zeichens
|
... |
|
... |
|
offset[2n-2] |
x-Offset des letzten Zeichens
|
offset[2n-1] |
y-Offset des letzten Zeichens
|
Der Parameter offset erlaubt es, eigene Offsets anstelle
der vom System berechneten Zeichen-Werte zu benutzen; dies ermöglicht
eine wesentlich größere Kontrolle für das Setzen der Zeichen auf
dem Ausgabegerät.
Hinweis: Die Text-Attribute sowie die Einstellungen des
Kernings werden beachtet.
|
Ergebnis: |
Die Funktion liefert kein Ergebnis zurück.
|
Verfügbar: |
ab SpeedoGDOS 4.00 und NVDI 3.00
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding v_gtext v_ftext SpeedoGDOS NVDI
|
Name: |
»Graphic Text« - gibt einen Text aus.
|
VDI-Nummer: |
8
|
Deklaration: |
void v_gtext ( int16_t handle, int16_t x, int16_t y, int8_t
*string );
|
Beschreibung: |
Die Funktion gibt einen Text auf einer Workstation aus. Es
gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
x |
x-Koordinate
|
y |
y-Koordinate des Textes
|
string |
Adresse der Zeichenkette
|
Hinweis: Die Geschwindigkeit der Ausgabe läßt sich
beschleunigen, wenn folgende Punkte beachtet werden:
- auf Bytegrenzen justiert ausgeben.
- möglichst kein Clipping benutzen.
- bei nichtproportionalen, acht Pixel breiten Zeichensätzen im
Replace-Modus und ohne Clipping, sonst im Transparent-Modus ausgeben.
Die Text-Attribute und der Schreibmodus werden beachtet. Ist ein
Vektorfont eingestellt, so wird weder Pair- noch Track-Kerning
beachtet; daher sollte ggfs. besser auf die v_ftext-Funktion
zurückgegriffen werden. Die Zeichenpositionierung erfolgt außerdem
pixelweise, d.h. vqt_width() liefert hierfür die passenden
Schrittgrößen.
|
Ergebnis: |
Die Funktion liefert kein Ergebnis.
|
Verfügbar: |
Supported by all drivers.
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding vswr_mode vs_color vst_alignment vst_height
vst_point vst_rotation vst_font vst_color vst_effects
v_ftext
|
Name: |
»Justified Graphics Text« - Positionierter Graphiktext.
|
VDI-Nummer: |
11 (GDP 10)
|
Deklaration: |
void v_justified ( int16_t handle, int16_t x, int16_t y, int8_t
*string, int16_t length, int16_t word_space, int16_t char_space,
[int16_t *char_width] );
|
Beschreibung: |
Die Funktion gibt einen String auf einer Workstation aus. Es
gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
x |
x-Koordinate
|
y |
y-Koordinate des Punktes für die Textausrichtung
|
string |
Adresse der Zeichenkette
|
length |
Länge des Textes bzgl. der x-Achse
|
word_space |
Wortzwischenräume
0 = |
keine Dehnung der Zwischenräume
|
<>0 = |
Dehnung der Zwischenräume
|
|
char_space |
Zeichenzwischenräume
0 = |
keine Dehnung der Zwischenräume
|
<>0 = |
Dehnung der Zwischenräume
|
|
Der Text wird links und rechts bezogen auf den Startpunkt und
die Länge justiert. Um den Text auf die erforderliche Länge zu
bringen, hat man die Wahl zwischen Dehnung der Wort- und/oder
Zeichenzwischenräume.
Hinweis: Die Text-Attribute und der Schreibmodus werden
berücksichtigt. Im Zeichensatz fehlende Zeichen werden durch ein
Ersatzsymbol (z.B. das Fragezeichen) ersetzt.
Bei Vektorfonts bezieht sich die Längenangabe auf die Summation
der Zeichenbreiten - Überhänge nach links und rechts werden nicht
berücksichtigt.
Ab GEM/3 wurde die Funktion erheblich verändert. Der Parameter
char_width wurde neu aufgenommen. Er gibt die Anzahl der Pixel
jedes Buchstabens der ausgegebenen Zeichenkette zurück. Dabei habe
sich auch die Parameter word_space und char_space wie
folgt geändert:
Parameter |
Bedeutung
|
|
|
word_space |
Wortzwischenräume
0x0000 = |
keine Dehnung der Zwischenräume, keine Ausgabeinformationen
|
0x0001 = |
Dehnung der Zwischenräume, keine Ausgabeinformationen
|
0x8000 = |
keine Dehnung der Zwischenräume, Ausgabeinformationen
(char_space) werden zurückgegeben
|
0x8001 = |
Dehnung der Zwischenräume, Ausgabeinformationen
(char_space) werden zurückgegeben
|
|
char_space |
Zeichenzwischenräume
0x0000 = |
keine Dehnung der Zwischenräume
|
0x0001 = |
Dehnung der Zwischenräume
|
|
|
Ergebnis: |
Die Funktion liefert kein Ergebnis.
|
Verfügbar: |
Supported by all drivers. This function composes one of the 10
VDI GDP's (Generalized Drawing Primitives). Although all current
drivers support all GDP's, their availability is not guaranteed and
may vary. To check for a particular GDP refer to the table returned by
v_opnvwk or v_opnwk.
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding vswr_mode vs_color vst_alignment vst_height
vst_point vst_rotation vst_font vst_color vst_effects
|
C: |
void v_justified ( int16_t handle, int16_t x, int16_t y, int8_t
*string, int16_t length, int16_t word_space, int16_t char_space,
[int16_t *char_width] );
|
Umsetzung: |
void v_justified (int16_t handle, int16_t x, int16_t y,
int8_t *string, int16_t length,
int16_t word_space, int16_t char_space,
[int16_t *char_width] )
{
int16_t *tmp;
ptsin[0] = x;
ptsin[1] = y;
ptsin[2] = length;
ptsin[3] = 0;
intin[0] = word_space;
intin[1] = char_space;
tmp = &(intin[2]);
while (*tmp++ = *string++)
;
contrl[0] = 11;
contrl[1] = 2;
contrl[3] = (int16_t) (tmp-&(intin))-1;
contrl[4] = 0; /* if word_space equals 0x0000 or 0x0001 */
contrl[4] = n; /* if word_space equals 0x8000 or 0x8001 */
contrl[5] = 10;
contrl[6] = handle;
vdi ();
/* if word_space equals 0x8000 or 0x8001 */
char_with[0..n-1] = intout[0..n-1];
}
|
GEM-Arrays: |
|
Name: |
»Pie-Slice« - zeichnet ein "Tortenstück".
|
VDI-Nummer: |
11 (GDP 3)
|
Deklaration: |
void v_pieslice ( int16_t handle, int16_t x, int16_t y, int16_t
radius, int16_t begang, int16_t endang );
|
Beschreibung: |
Die Funktion zeichnet einen Ausschnitt einer Kreisfläche, wie
er z.B. in Tortengrafiken benutzt wird. Es gilt:
Parameter |
Bedeutung
|
|
|
handle |
Kennung der Workstation
|
x |
x-Koordinate
|
y |
y-Koordinate für den Mittelpunkt
|
radius |
Radius bzgl. der x-Achse
|
begang |
Startwinkel
|
endang |
Endwinkel
|
Hinweis: Die Fülltyp-Attribute, der Schreibmodus sowie
das Pixelgrößenverhältnis werden beachtet. Der Winkel wird in 1/10
Grad und entgegen dem Uhrzeigersinn angegeben:
900
|
|
|
---------+---------
1800 | 0
|
|
2700
|
Ergebnis: |
Die Funktion liefert kein Ergebnis.
|
Verfügbar: |
Supported by all drivers. This function composes one of the 10
VDI GDP's (Generalized Drawing Primitives). Although all current
drivers support all GDP's, their availability is not guaranteed and
may vary. To check for a particular GDP refer to the table returned by
v_opnvwk or v_opnwk.
|
Gruppe: |
Ausgabefunktionen
|
Querverweis: |
Binding vswr_mode vs_color vsf_interior vsf_style
vsf_color vsf_udpat vsf_perimeter
|