Abstract: A methodology and a software package have been developed to decode spatial data on GIS. Intergraph Standard File Format (ISFF) is one among many formats in which GIS data is encoded. The present work has succeeded in extracting data stored in .DGN (Design) files in ISFF. A user working on any non-GIS system may utilize the decoded data or install the portable software to decipher any set of GIS data recorded in the above format. The software may well be extended to include other format specifications.
The work is also capable of converting the original data to any other projection parameters from the parent ones (say, from Polyconic to Lambert Conical or Transverse Mercator). This further widens the scope of utilizing the data since a user working in any geodetic system may easily superpose this data accurately over any other existing data.
Introduction
KDM Institute of Petroleum Exploration, Dehradun of ONGC Ltd. has established a comprehensive database of location, geological features and other relevant vintage data of the whole of North Eastern and some other parts of India based on field data supplemented by remote sensing satellite data1. It has the database in GIS environment where all the scanned and digitized data are stored in .DGN files in GIS's own internal Intergraph Standard File Format (ISFF).
The .DGN files contain the positional data in rectangular grid coordinates (easting and northing in a certain map projection system referred to certain central latitude and central longitude) generated during the data population process. To obtain the geographical coordinates i.e., latitude and longitude of the data points, the grid coordinates need to be given a reverse transformation in that projection system.
The present work has achieved in deciphering all the encoded data contained in the .DGN files, as a result of which the positional map grid coordinates are extracted in standard ASCII code and hence can be readily shared over a network and utilized by any user.
Methodology
The current work consists of the following essential steps:
Extraction of meaningful data from any encoded binary file requires specifications as to different codes and the location of bits and bytes of data. The deciphering clues were downloaded from the INTERNET since no other source of documentation could be found. This knowledge of the structure of the .DGN files will be of immense use to all concerned. The Intergraph Standard File Format (of which the Design (.DGN) file is a subset) specifications are briefly described below.
Design files are sequential, variable-length files with variable-length records for the Design file header, file set-up information, graphic elements and non-graphic data. Graphic elements are grouped into the following main divisions and different types
(1) Primitive elements :
|
Line |
(Type 3) |
|
Line String |
(Type 4) |
|
Shape |
(Type 6) |
|
Level Symbology |
(Type 10) |
|
Curve |
(Type 11) |
|
Ellipse |
(Type 15) |
|
Arc |
(Type 16) |
|
Text |
(Type 17) etc |
(2) Complex elements: A set of elements that logically forms a single entity. Complex elements are stored in the design file as a header followed by the component elements.
|
Text Node Header |
(Type 7) |
|
Complex Chain Header |
(Type 12) |
|
Complex Shape Header |
(Type 14) etc. |
All elements begin with the standard element header and display header. The parameters that are common to one or more elements are
- Element header
- Point coordinates
- Rotation angle (2D) and quaternion (3D)
- Attribute linkage data
The format specifications for some of the primitive elements are as follows:
Element header
The first 18 words (1word = 16 bits) of an element in the design file are its header - containing the element type, level, words to follow and coordinate range information.
|
Word # |
Type of word |
Desc: |
no. of bits |
Remarks
|
|
2D
{ |
|
|
| |
|
1 - 2 |
long |
x |
|
X coordinate |
|
3 - 4 |
long |
y |
|
Y coordinate
|
|
} Point2d
3D { |
|
|
| |
|
1 - 2 |
long |
x |
|
X coordinate |
|
3 - 4 |
long |
y |
|
Y coordinate |
|
5 - 6 |
long |
z |
|
Z coordinate |
|
} Point3d |
|
|
| |