DBsignaturAddAreakeyEntry

Top  Previous  Next

Eintrag für Flächenschlüssel in die Signaturtabelle einfügen.

Innerhalb der Signaturtabellen gibt es Einträge für das Aussehen von Linien und das Aussehen von Flächen. Mit DBsignaturAddAreakeyEntry wird das Aussehen von Flächen beeinflusst, wenn der erste Objektschlüssel des zugehörigen Objekts zwischen key_low und key_high liegt und die Schraffur/Flächenschlüssel zwischen dkaLow und dkaHigh. Vorher muss mit DBsignaturAddKeygroupEntry ein Eintrag für genau diesen Bereich key_low bis key_high angelegt worden sein. Die Eigenschaften der Fläche werden dann je nach Ausgabegerät wirksam. Während auf Stiftplottern üblicherweise die Angaben toolNr, abstand (der Linien für die Schraffur), winkel (der Schraffur) und linienart wirksam sind, wird auf dem Bildschirm farbe und flag benutzt. In flag sind dabei die Linienarten des Bildschirms und deren Sichtbarkeit versteckt.

Parameter

root (PROOT)                                             [IN]

Das Handle der Datenbank.

tabelle (int)                                                   [IN]

Die Nummer der Tabelle, die manipuliert werden soll. Für die Tabellen sind Konstanten definiert worden: ORIGINAL_BILDSCHIRM_SIGNATUR_TABELLE, PLOTTER_SIGNATUR_TABELLE, BILDSCHIRM_SIGNATUR_TABELLE. Weiter Tabellen können im Bereich von 4 bis 10 liegen.

key_low (KEY)                                             [IN]

Innerhalb der durch den Parameter tabelle bestimmten Signaturtabelle wird die Untertabelle der Objektschlüssel durch key_low und key_high bestimmt. Es muss mit DBsignaturAddKeygroupEntry eine Untertabelle für genau diesen Bereich angelegt worden sein, damit die Prozedur erfolgreich arbeitet. In dieser Untertabelle wird dann ein neuer Eintrag für die Zeichenschlüssel dkyLow bis dkyHigh angelegt.

key_high (KEY)                                           [IN]

Innerhalb der durch den Parameter tabelle bestimmten Signaturtabelle wird die Untertabelle der Objektschlüssel durch key_low und key_high bestimmt. Es muss mit DBsignaturAddKeygroupEntry eine Untertabelle für genau diesen Bereich angelegt worden sein, damit die Prozedur erfolgreich arbeitet. In dieser Untertabelle wird dann ein neuer Eintrag für die Zeichenschlüssel dkyLow bis dkyHigh angelegt.

dkaLow (FLAECHENSCHLUESSEL)       [IN]

Das Aussehen eines Elements, z.B. eines Linienzugs, wird genau dann von diesem neuen Eintrag bestimmt, wenn der Objektschlüssel im Bereich key_low bis key_high liegt und der Flächenschlüssel des betreffenden Elements im Bereich dkaLow bis dkaHigh liegt.

dkaHigh (FLAECHENSCHLUESSEL)      [IN]

Das Aussehen eines Elements, z.B. eines Linienzugs wird genau dann von diesem neuen Eintrag bestimmt, wenn der Objektschlüssel im Bereich key_low bis key_high liegt und der Flächenschlüssel des betreffenden Elements im Bereich dkaLow bis dkaHigh liegt.

toolNr (USHORT)                                        [IN]

Wenn es sich um die Plottersignaturtabelle handelt, dann wird hiermit festgelegt, welches Werkzeug zur Ausgabe der Schraffur-Elements benutzt wird. Der eigentliche Stift wird nochmals mit Hilfe der Werkzeugtabelle bestimmt.

farbe (USHORT)                                         [IN]

Auf dem Bildschirm und bei Ausgabegeräten, die nicht mit Stiften arbeiten, wird hiermit die Farbe einer Fläche festgelegt. Dann muss in stift der Wert 0 stehen.

breite (USHORT)                                        [IN]

Mit breite wird Breite angegeben, die bei Schraffuren die Linien haben sollen.

abstand (USHORT)                                    [IN]

Dieser Eintrag bestimmt bei Schraffuren den Abstand der Linien in 1/100 mm.

winkel (USHORT)                                        [IN]

Dies ist bei Schraffuren der Winkel in Grad zur Rechtsachse.

flag (USHORT)                                            [IN]

Mit dieser Variable wird festgelegt, welcher Linientyp einer Linie auf dem Bildschirm zugeordnet wird. Dies gilt nur für bei Schraffuren. Als mögliche Typen sind die durch die folgenden Konstanten definierten vorgesehen:

DRAW_LINETYPE_DEFAULT,

DRAW_LINETYPE_DOT,

DRAW_LINETYPE_SHORTDASH,

DRAW_LINETYPE_DASHDOT,

DRAW_LINETYPE_DOUBLEDOT,

DRAW_LINETYPE_LONGDASH,

DRAW_LINETYPE_DASHDOUBLEDOT,

DRAW_LINETYPE_SOLID,

SCHRAFFUR_X,

SCHRAFFUR_LINE,

SCHRAFFUR_CROSS,

SCHRAFFUR_OFF.

symbol (SYMBOL)                                      [IN]

Wenn hier ein von 0 verschiedener Wert steht, wird die Schraffur nicht mit einer Linie, sondern mit Symbolen vorgenommen. Der Abstand der Symbole ist aus symbolAbstand. Der Minimalabstand vom Ende der Schraffur ist aus symbolAbstandMin zu entnehmen.

symbolAbstand (USHORT)                        [IN]

Wenn die Schraffur mit Hilfe von Symbolen vorgenommen wird, dann werden diese Symbole mit einem Abstand von symbolAbstand gezeichnet. Die Angabe ist in 1/100 mm.

symbolAbstandMin (USHORT)                  [IN]

Damit die Schraffur mit Symbolen nicht über das Ende der Schraffur hinausreicht, kann ein Mindestabstand vom Ende, nämlich symbolAbstandMin, angegeben werden. Ein Symbol wird nur dann gezeichnet, wenn der Abstand bis zum Rand der Fläche noch größer als dieser Wert ist. Die Angabe wird in 1/100 mm vorgenommen.

numLinienArtSegmente (USHORT)          [IN]

Diese Variable gibt an, wie viele Einträge das Feld linienArt besitzt. Es muss sich um eine gerade Anzahl handeln. Dies wird nicht abgeprüft und kann zu unvorhergesehenen Ergebnissen im Plot führen.

linienArt (USHORT *)                                  [IN]

Dies ist ein Feld mit der Angabe, wie lang die Striche und Lücken eines Linientyps sind. Die Angaben erfolgen in 1/100 mm. Eine strichpunktierte Linie mit Linienlänge 2 mm und Punktlänge 0,5 mm bei 1 mm Zwischenraum hat die 4 Einträge 200 100 50 100.

stift (UHSORT)                                            [IN]

Wenn stift einen Wert ungleich 0 hat, wird zur Darstellung von Flächen mit dem Stift gezeichnet. Mit stift wird gleichzeitig auch die Farbe definiert.

Ergebnis

(T_ERROR)                                            [OUT]

ERROR_OK bei fehlerfreier Ausführung, sonst eine der in ERROR.H definierten Fehlermeldungen.

Deklaration

#include "database.h"

 

T_ERROR DLLENTRY DBsignaturAddAreakeyEntry(

     PROOT             root,

     int                  tabelle,

     KEY                  key_low,

     KEY                  key_high,

     FLAECHENSCHLUESSEL      dkaLow,

     FLAECHENSCHLUESSEL      dkaHigh,

     USHORT               toolNr,

     USHORT               farbe,

     USHORT               breite,

     USHORT               abstand,

     USHORT               winkel,

     USHORT               flag,

     SYMBOL               symbol,

     USHORT               symbolAbstand,

     USHORT               symbolAbstandMin,

     USHORT               numLinienartSegmente,

     USHORT *          linienArt

     USHORT               stift

);

Verwandte Funktionen

DBsignaturAddDrawingkeyEntry

DBsignaturDeleteAreakeyEntry

DBsignaturDeleteDrawingkeyEntry

DBsignaturDeleteTable

DBsignaturFindDrawingkeyEntry

DBsignaturGetTableName

DBsignaturReturnAreakeyEntry

DBsignaturReturnDrawingkeyEntry

DBsignaturSetTableName