Mit dem Modul können Objekte direkt aus Microstation Designfiles gelesen werden.
Das analoge Modul MSIN benötigt zum Lesen von Designfiles das Produkt Microstation. |
Der Modul wird mit:
|INCL \script\dgnin.mod
in einer ICS RUN1-Konfiguration verfügbar gemacht.
Folgende Parameter können in der Map
DGNIN_PARAM
für den Modul gesetzt werden:
Parameter | req/opt | Beschreibung |
REFERENCEFILES_SCAN | o | ON oder OFF .
Default OFF . Sollen die Elemente der
Referenzfiles gelesen werden. |
RSC_DIR | o | STRING . Definiert den Pfad mit den
Microstation-Resource-Files, wie zum Beispiel die Fonts.
Wird benötigt um zusätzliche Informationen zu den Objekten
verarbeiten zu können. Beispiel Fontname bei Texten. |
DEBUG | o | ON oder OFF .
Default OFF . Debugmodus ein oder
aus. |
STATISTICS | o | ON oder OFF .
Default OFF . Statistik anzeigen. |
Das Modul verfügt über eine Map, die die Abbildung der Microstation-Textjustification zur INTERLIS-Textjustierung - HALIGNMENT,VALIGNMENT beinhaltet. Diese Map sieht wie folgt aus.
MAP DGNIN_JUST_TO_ALI
LT => 0,1
LC => 0,2
LB => 0,3
CT => 1,1
CC => 1,2
CB => 1,3
RT => 2,1
RC => 2,2
RB => 2,3
DEFAULT => 1,2
END_MAP
Diese Map kann in einer Konfiguration wie folgt angewendet werden.
IN.JUST DGNIN_JUST_TO_ALI EXTRLS
=> OUT.NamHAli
=> OUT.NamVAli
Komponente | req/opt | Beschreibung |
IN.TYPE(i) | r | Microstation Type des Objekts. |
IN.LEVEL(i) | r | Microstation Level-Nummer Objekts. |
IN.LEVELNAME(s) | r | Microstation Level-Name des Objekts. |
IN.COLOR(i) | r | Microstation Color des Objekts. |
IN.WEIGHT(i) | r | Microstation Weight des Objekts. |
IN.STYLE(i) | r | Microstation Style-Nummer des Objekts. |
IN.STYLENAME(s) | r | Microstation Style-Name des Objekts. |
IN.GGROUP(i) | r | Microstation Graphic Group-Nummer des Objekts. |
IN.FILENR(i) | r | Microstation Filenummer des Inputfiles des Objekts. |
IN.FILEPOS(i) | r | Microstation Fileposition des Objekts. (Nich nicht implementiert) |
IN.DIR(s) | r | Directory des Inputfiles des Objekts. |
IN.FILE(s) | r | Filename des Inputfiles des Objekts. |
LINE (3), LINESTRING
(4), CURVE (11), ARC (16), COMPLEX_LINESTRING
(12)
Komponente | req/opt | Beschreibung |
IN.GEOM(l) | r | Linien-Geometrie des Objekts. |
SHAPE (6),
COMPLEX_SHAPE (14), ELLIPSE (15)
Komponente | req/opt | Beschreibung |
IN.GEOM(a) | r | Flächen-Geometrie des Objekts. |
TEXT (17), SYMBOL
(17)
Komponente | req/opt | Beschreibung |
IN.GEOM(p) | r | Punkt-Geometrie des Objekts. |
IN.TXT(s) | r | Text des Objekts. |
IN.TW(r) | r | Textbreite des Objekts. (Microstation: tw=). |
IN.TH(r) | r | Texthöhe des Objekts. (Microstation: th=). |
IN.ROT(r) | r | Rotation des Objekts. |
IN.FONT(i) | r | Font des Objekts. (Microstation: ft=). |
IN.JUST(s) | r | Textjustierung des Objekts. (Horizontal: L: Left, C:Center, R:Right; Vertikal: T:Top, C:Center, B:Bottom; Beispiel LC). |
IN.XGEOM(li) | o | Liste von Geometrien des Objekts falls es ein Symbol ist, das heisst wenn der Font ein Symbolfont ist. (Noch nicht implementiert). |
TEXT_NODE
(7)
Komponente | req/opt | Beschreibung |
IN.GEOM(p) | r | Punkt-Geometrie des Objekts. |
IN.TXT(s) | r | Text 1. Zeile des Objekts. |
IN.TXT2(s) | 0 | Text 2. Zeile des Objekts. |
IN.TXT<n>(s) | o | Text n. Zeile des Objekts. |
IN.TW(r) | r | Textbreite des Objekts. (Microstation: tw=). |
IN.TH(r) | r | Texthöhe des Objekts. (Microstation: th=). |
IN.ROT(r) | r | Rotation des Objekts. |
IN.FONT(i) | r | Font des Objekts. (Microstation: ft=). |
IN.JUST(s) | r | Textjustierung des Objekts. (Horizontal: L: Left, C:Center, R:Right; Vertikal: T:Top, C:Center, B:Bottom; Beispiel LC). |
IN.LS(r) | r | Linespacing des Objekts. (Microstation: ls=). |
CELL (2), SHARED_CELL
(35)
Komponente | req/opt | Beschreibung |
IN.GEOM(p) | r | Punkt-Geometrie des Objekts. |
IN.CELL(s) | r | Zellname des Objekts. |
IN.ROT(r) | r | Rotation des Objekts. |
IN.SCALE(r) | r | Skalierung des Objekts. |
IN.XGEOM(li) | r | Liste von Geometrien des Objekts. |
Prozedur | DGNIN_OPEN ! [s input][] |
Beschreibung | Öffnet das Designfile <input> und initialisiert den Modul. Die Prozedur wird von RUN1 automatisch aufgerufen. |
Beispiel |
|
Prozedur | DGNIN_READ_OBJECT ! [][b state] |
Beschreibung | Liest das nächste
IN-Objekt aus dem aktuellen Designfile. Falls kein Objekt
mehr gelesen werden kann, wird der Status
|
Beispiel |
|
Prozedur | DGNIN_CLOSE ! [][] |
Beschreibung | Schliesst den Modul und gibt die durch den Modul belegten Resourcen wieder frei. Die Prozedur wird von RUN1 automatisch aufgerufen. |
Beispiel |
|
Beispiel ohne Datenbankanbindung.
! Diese ICS Konfiguration zeigt alle von dgnin.mod ! gelesenen Objekte in der .log Datei an. ! Eine eventuelle Datenbankanbindung wird nicht berücksichtigt. |LICENSE \license\iltools.lic MAP USER_INPUT1 DIALOG => FILE MESSAGE => 'Enter .dgn Input File' FILE_FILTER => dgn FILE_EXISTS => TRUE OPT => input END_MAP MAP DGNIN_PARAM STATISTICS => ON END_MAP MAP INPUT_SOURCES I1 => DGNIN,OPT.input END_MAP MAP INOUT I1 => DISPLAY_OBJECT1,IN END_MAP |INCL \script\dgnin.mod |INCL \script\run1.prg