The SPRING Work Environment

On this page we present how the system and database files, the environment variables, etc..., are archived.

We divide this subject into the description of the files that make up the system and on the structure of the files that are part of the database created by SPRING.

Here you will find:

  1. Memory, disk and file system
  2. CodeBase and associated Databases
  3. Format of the files in SPRING
  4. Windows , what's the difference???
  5. Compatibility with other software
  6. Environment variables

See also:
Support of SPRING
About the interfaces
Installation of SPRING
Configurations of SPRING
About SPRING
Geoprocessing notions
The SPRING conceptual model
Basic cartographic concepts for the use of SPRING


Memory, disk and file system

After installing SPRING (see Installation and Configuration of SPRING), a set of directories is created under the directory where the system was installed. It is needed at least 100 MB of space in hard disk.

It is recommended a minimum of 128 MB of virtual memory (RAM) to work with SPRING, specially when we are talking about the use of image processing techniques and numeric modeling.

After installing the system a set of files and subdirectories should be in your hard disk, they are: /etc, /app-defaults, /bitmaps, /help and/springdb.

/etc

In this directory the files and auxiliary subdirectories of the system are archived. The files are:

    • *.mas” and “*.med” = files with image processing filters;
    • SpectralBands = name and spectral occupation of the bands used in the Mixture Model;
    • Datum = files with cartographic parameters;
    • dpi.font = fonts used;
    • rgb.txt = color palette file;
    • FONTINDEX.txt = file with the font list;
    • *.qm = translation files;

 

/etc/pattern

In this subdirectory we can find the mould files created by the Scarta module. It should have read and write permission in case other users want to use this directory.

/etc/CSV

In this subdirectory we can find the files needed for the library that handles TIFF/GEOTIFF files.

/etc/chart/symbol

In this subdirectory we will find the "*.dxf" files related to the symbols used by "Scarta" - the chart generation module. This directory has write permission for the user to add any symbol generated by other applications that export in the DXF format.

A symbol generated by AutoCAD 12.x should be used only by the basic entities of the system like:  line, polyline, circle, etc..., solid fill of any color, besides fonts like normal and roman. It is very important while exporting the symbol to a DXF file that the limits command be used to define the limits around the symbol generated.

/etc/templates, /etc/config, /etc/graficos

In this subdirectory we can find the template files for each Spring chart.

/bitmaps

This directory contains two other subdirectories (/pattern and /hash) with the raster files (bitmaps) related to the area hatch patterns.

/help

This directory contains all the “*.gif” and “*.htm” files that refer to the help online system of the modules Impima, Spring and Scarta.

/springdb

In this directory the system demonstration database is kept. The user can use this directory or any other to keep his databases.

/util

This directory contains the program files used for conversion between data formats.  

files    

After the installation of the Windows version the following files/folders will be found:

* Files:

    • - comerr32.dll
    • - DD_Alloc_2.03_7.dll
    • - DD_Br_2.03_7.dll
    • - DD_Db_2.03_7.dll
    • - DD_Ge_2.03_7.dll
    • - DD_Gi_2.03_7.dll
    • - DD_Gs_2.03_7.dll
    • - DD_Root_2.03_7.dll
    • - DD_SpatialIndex_2.03_7.dll
    • - dforrt.dll
    • - DWGDirect.dll
    • - krb5_32.dll
    • - libchart.dll
    • - libcodebase.dll
    • - libcon.dll
    • - libdatabase.dll
    • - libeay32.dll
    • - liberro.dll
    • - libgeo.dll
    • - libiconv-2.dll
    • - libimp.dll
    • - libintl-2.dll
    • - liblegal.dll
    • - liblua51.dll
    • - libmySQL.dll
    • - libpq.dll
    • - libsup.dll
    • - oci.dll
    • - oraclm.dll
    • - oraclm32.dll
    • - oraocci10.dll
    • - oraocci10d.dll
    • - ssleay32.dll
    • - zlib.dll
    • - impima.exe
    • - iplot.exe
    • - scarta.exe
    • - spr2tlib.exe
    • - spring.exe

arquivos    

After installing the Unix version one must have in his computer the following files/folders:
* Files:

    • - impima
    • - iplot
    • - scarta
    • - spr2tlib
    • - spring

 

Work Environment



CodeBase and Associated Databases

Every descriptive attribute of geographic data is kept in a relational database. The structure of the files generated in the DBASE manager is comparable with DBASE 4, that is, ".dbf" for files and ".mdx" for the indexes, what facilitates the integration of tables in such format with the data generated by SPRING. The structure for the other managers is kept by these ones, then, for database generated in ACCESS, the database structure will be stored in ACCESS tables in an ACCESS base named “spring.mdb”. In MySQL database, the tables will be named “*.MYD","*.MYI" e "*.frm", in a database created in MySQL. The same will happen for each manager structure.


See next in File Formats how the tables generated by the system are stored.



File Formats in SPRING

Here we present the file formats of the files generated by SPRING. Starting from the Database files, followed by the files for Project, Information Layers, and the formats of the files for image data, line, polygon, thematic image, and numeric grid. align="center" style='TEXT-ALIGN:center'>Files Associated to the Database

Database Associated Files

When creating a database, we define its name and the directory where it should be created. This directory should exist and have write permissions for the user, especially when it is a directory that is shared over the network. A database defines another directory that will be created under the one defined by the user. All the data created by SPRING in this new database will be stored under this director. Following we present the files associated to the database together with their descriptions, remember that in the case of Codebase databases these tables are stored in the directory itself Database defined by the user:

 

category

This table stores every category and classes created for any database. The structure of this table is:

      1. Name = Name of the category or thematic class;
      2. Code = Code of the category, value attributed during creation;
      3. Index = Index associated with the classes of a thematic category;
      4. Father = Index that refers to which thematic category the class belongs;
      5. Model = *Indicates to what data model the category or thematic  classes belongs; 
      6. Table = Name of the table “CG********.dbf” or “CL******.dbf” associated to categories or classes, respectively;
      7. Vivualid = Code of the visual, from which the (line, polygon, point or text) visual attributes of the category or class can be recovered.

* for Model we have the following codes:
For Image = 1
ForThematic = 4
For Numeric = 8
For Cadastral = 64
For Network = 62
For Object = 128
For Non-Spatial = 16

NextIds5

NextIds5 is a table generated from the creation  of a Database. It is a "counter"  internal to SPRING that controls the generation of identifiers for any element inserted in the database.

They are identifiers of the next item that will be created in the database. Its structure:

      1. Iditem = Identifies the type of element: category, project, infolayer, representation, and object;
      2. Idnext = Identifies the last element inserted, to this we always add 1 to obtain the next;

projecti

This table and index file contain the projections (cartographic projection  and the parameters provided by the user) defined for the projects present in the database. Its structure is:

      1. Id = Unique identifier;
      2. Nome = Name of the cartographic projection;
      3. Datum = Name of the datum;
      4. Code = Identifier of the projection;
      5. Gbcode = Code of the GRIB (image) file;
      6. Gbcode1 = Code of the projection of the GRIB;
      7. Bits = Needed mask parameters;
      8. Pdatum = Planimetric Datum;
      9. Dx, Dy, Dz = Translation of the ellipsoid in axes X, Y, and Z;
      10. Rd = Earth radius in meters;
      11. Flt = Flatness;
      12. Offx, Offy = X Offset and Y offset;
      13. Gphemis = Hemisphere;
      14. Gplat0, Gplon0 = Origin Parallel and Meridian ;
      15. Gpstlat1, Gpstlat2 = Standard Parallels 1 e 2;
      16. Spri = Sensor angle (for the satellite projection);
      17. Spis, Spjs = Coordinates X and Y of the satellite point;
      18. Sprs = Satellite radius (meters);
      19. Spla0, Splo0 = Latitude and Longitude of the sub satellite point;
      20. Sprj, Spscn, Spyaw = Satellite scanning parameters.

projects

Table with the characteristics of the projects in the Database. Its structure is the repeated for each project:

      1. Id = Project code (unique identifier);
      2. Name = Project name;
      3. Projection = Code of the projection defined in Projecti.dbf;
      4. Lon1, Lat1, Lon2 e Lat2 = Bounding box in geographic coordinates;
      5. X1, Y1, X2 e Y2 = Bounding box in plane coordinates;
      6. Date e Time = Date and time of project creation.

repres

Describes the existing representations of an infolayer in a Project:

      1. Id = Representation code of the IL (infolayer);
      2. Projid = Project code;
      3. Infoid = IL code;
      4. Llx e Lly = X and Y lower left coordinates;
      5. Urx e Ury = X and Y upper right coordinates;
      6. Type = Type of representation;
      7. Contents = Contents of the representation;
      8. Endian = Order of the representation;
      9. Visid = Visual code.

visual

Describes the visual of the data presentation of Spring (IL, Thematic Class, Object):

      1. Vid >= Visual identifier;
      2. Repid = ID of the representation;
      3. Viscat = If the visual if of a category 1 otherwise 0;
      4. Type = Type of representation;
      5. Xred, Xgreen, Xblue = red, green, and blue values of lines;
      6. Style, Width, Patname = Stile, thickness and pattern of line;
      7. Pointtype = Representation of the point (mark or symbol);
      8. Marktype = Type of point;
      9. Markred, Markgreen, Markblue = red, green, and blue values of the point;
      10. Sybname = Name of the symbol;
      11. Syheight, Sybangle = Dimension and angle of the symbol;
      12. Polyred, Polygreen, Polyblue = red, green, and blue values of polygons;
      13. Fillmode = Polygon fill mode;
      14. Fillhash = Hatch type for polygon fill;
      15. Fillangle, Fillspace = Angle and spacing of fill;
      16. Iconname = Icon name;
      17. Txtfont = Font of the text;
      18. Txtred, Txtgreen, Txtblue = red, green, and blue values of text;
      19. Txtheight, Txtthickn = Height and thickness of the text characters;
      20. Txtangle = Angle of rotation of the text;
      21. Txtspace = Character spacing;
      22. Txtexpans = Text expansion;
      23. Txtalignhz, Txtalignvt = Horizontal and vertical text alignment;
      24. Txtprecis = Text precision;
      25. Txtpath = Text positioning.

infolaye

Describes the definitions of an IL:

      1. Id = Information Layer code;
      2. Nome = Infolayer name;
      3. Modelo = Model to which the IL belongs;
      4. Contents = IL contents;
      5. Categoria = Category to which the IL belongs;
      6. Projeto e Projecao = Project and projection to which the IL belongs;
      7. Lon1, Lat1, Lon2 e Lat2 = Bounding box of the IL (smaller or equal to the Project's one);
      8. X1, Y1, X2 e Y2 = Bounding box of the IL;
      9. Escala = Scale of the IL creation;
      10. Resolutionx, Resolutiony = Resolution when there is a raster representation;
      11. Date and Time = Date and time of IL creation.

GA000XXX

Table and index file of anchors, where 000XXX is id of representation in repres table. This table is only created at the moment an object is associated to a graphic representation in any cadastral or network  infolayer. Its structure is:

      1. Geoid = Infolayer code;
      2. Categoria = Object Category Identification;
      3. Ganchorid = Anchor identifier;
      4. Gvisid = Visual associated to the representation of the object on the infolayer;
      5. Area and Perimeter = Object area and perimeter;
      6. Demand = Used for ILs of the network model;
      7. Impedance = Used for ILs of the network model.

OJ000XXX

Table and index file of the existent geographic objects in all the databases, where 000XXX is object category id. This table is only created at the moment an object is created  in a Project. Its structure is:

      1. Id = Object code provided by the system;
      2. Nome = Object name as given by the user;
      3. Rótulo = Object label given by the user;
      4. Visid = Visual of each object, initially has visual of the category;
      5. Date and Time = Date and Time when the object was created.

CG000XXX

Tables and index files automatically created by the system, where 000XXX is object category id. These tables are used by the user to define the alphanumeric attributes of the objects. Its structure is:

      1. Geoid = Object code created by the system;
      2. XXX = User defined attribute;

vgclass( other managers) or IL000000(for DBASE)

Tables with the IL classes visual. Its structure is:

1.    Infoid = identifier of the IL;

2.   tmcode = geoclass code;

3. tmcounter = counter for the number of points, lines or polygons associated to each geoclass;

4.     visible = visibility type code.

collections

Collections Tables. Its structure is:

1.     catid = identifier of the objects category to which the collection is applied;

2.     collection = name of the collection;

3.     x1, x2, y1, y2 = bounding box;

4.     expression = expression to which the collection is applied ;

5.     infoid = identifier of the Information Layer.

 

pictures

Tables with the images, documents, videos etc associated to the database. Its structure is:

1.     photoid = identifier of the datum;

2.     photo = file location;

3.     type = file type.

 

metadata

Tables with the metadata. Its structure is:

1.     id = identifier of the metadata;

2.     repid = identifier of the representation;

3.     nometab = name of the Category Table;

4.     nome = name of the metadata;

5.     autor = name of the author;

6.     fonte = origin;

7.     qualidade = data quality;

8.      descrição = data description;

9.      date , time = date and time of the creation.

 

 

Files Associated to the Project

When creating a project a subdirectory is created under the directory where the database resides. Many files can be part of a project, and all of them will have a numeric code representing the IL as a part of its name. Depending on its category an IL can have many code representations, for example: i000011.spg and v000011.lin are files belonging to the same IL.

In SPRING the infolayers of the thematic, numeric and image model types are internally stored and processed by the system in files of specific structure. Each infolayer will have its corresponding files: a thematic model will have a lines file, a polygons file, a nodes file, and a thematic map; a layer of the image model will have the data stored in a data file (spg), decriptor (dsc) and a lut file; layer of the numeric model will have its data stored in a lines files (contour lines and points) and spg files (grids); layer of cadastral model will have lines, polygons, nodes and anchors files; and layers of network model will be lines, nodes and anchors files. All model will be text file.

Following you will find a generic description of each of these data files.

For Lines: file name contain lines (V000000.lin, V000000.blk, V000000.rtl) .

Files *.lin have the header of lines, which contain the following:

  1. line identifier;
  2. initial node identifier;
  3. end node identifier;
  4. left polygon identifier;
  5. right polygon identifier;
  6. type of line identifier for its line of code (0), polygonal (1), sample (2) and arc (3);
  7. Z value of the line (only for files lines of numerical model;
  8. line class (in the case of thematic model);
  9. demand, positive and negative impedance (in the case of model networks);
  10. the number of points line.

Files *.blk contain the blocks with points that make the lines. These blocks have maximum size of 32 points. Lines of only 2 points have no blocks, and the points of this line stored in the header row (initial point and end point) .


Files *.rtl contain the structure of the tree Index (rtree) of the lines.

For Points: file name contains points (V000000.p2d, V000000.p3d, V000000.kdt ).

Files *.p2d contain information the details of infolayer points of the thematic and cadastral categories. It contains the following information for each item:

  1. point number;
  2. point coordinates;
  3. point kind, node identifier, impedance and demand (values no longer used);
  4. point class.

Files *.p3d contain point information of plans for the category numerical information. It contains the following information for each item:

  1. point number;
  2. point coordinates;
  3. point Z value.

Files *.kdt contain the structure of the tree Index (kdtree) of the points.

For Nodes: filename that contains the points (V000000.no1, V000000.no2).

Files *.no1 contain the following information for each node:

  1. identifier of the node;
  2. coordinated geographic X;
  3. coordinated geographical Y;
  4. number of lines connected to the node.

Files *.no2 contain the list of lines connected to the node.

For Polygons: filename that contains the polygons (V000000.po1, V000000.po2, V000000.rtp).

Files *.po1 have the header of polygons, contain the following information for each polygon:
  1. identifier of the polygon;
  2. number of lines of the polygon;
  3. number of "children" of the polygon (polygons that are contained in the original);
  4.  coordinates lower left X;
  5.  coordinates top right X;
  6.  coordinates lower left Y;
  7. coordinates upper right Y;
  8. area of the polygon;
  9. perimeter of the polygon;
  10. identifier of the polygon "father" (for polygons that are contained in other polygons);
  11. "label Point" (centroid);
  12. class of polygons (for thematic category).

Files *.po2 contain the following:

  1. list of identifiers of the lines that form the polygon;
  2. list of identifiers of "children".

Files *.rtp contain the structure of the tree Index (rtree) of polygons.

For Anchors: filenames that contain the anchors (V000000.an1, V000000.an2, V000000.rta):

Files *.an1 contain the anchors headers, contain the following for each anchor:

  1. anchor indentifier;
  2. lower left coordinate X;
  3. upper right coordinate X;
  4. lower left coordinate Y;
  5. upper right coordinate Y;
  6. area, perimeter, impedance, demand of anchor associeted entities;
  7. number of points anchor associeted;
  8. number of lines anchor associeted;
  9. number of polygons anchor associeted;
  10. visual identifier.

Files *.an2 contain the following:

  1. points identifier list;
  2. lines identifier list;
  3. polygons identifier list.

Files *.rta contain the structure of the tree Index (rtree) of anchors.

For Text: filenames that contain the text (E000000.itx, E000000.txt, E000000.kde);

Files *.itx contain text identifier.

Files *.txt contain the following:

  1. entitie type (case text, the value is 50);
  2. geo-reference type (0 - not geo-referenced, 1 - geo-referenced or 2 - free geo-referenced);
  3. number of text caracters;
  4. text;
  5. X and Y coordinates;
  6. Expansion;
  7. Spacing;
  8. Angle;
  9. Direction;
  10. Horizontal and vertical alignment;
  11. Own visual or IL visual, if own visual contains:
  12. font identifier;
  13. height;
  14. value color in RGB;
  15. width.

Files *.kde  contain the structure of the tree Index (rtree) of text.

For Thematic Images: filenames contain the image (IT000000.spg, IT000000.dsc,IT000000.lut).

For Grid:  filenames that contain the grid (G000000.spg, G000000.dsc, G000000.lut).

For Classified Image: filenames that contain the image (I000000.spg, I000000.dsc,I000000.thm).

For Labeled Image: filenames that  cotain the image (I000000.spg, I000000.dsc,I000000.reg).

For Synthetic Image: filenames that contain the image (I000000.spg, I000000.dsc,I000000.lut).

For Image: filenames that contain the image (I000000.spg, I000000.dsc).

    Files *.lut contain the index with the values in RGB of synthetic and classified images or the slice of values for viewing the grid as an image..

    Files *.thm contain themes (code, RGB values and name) of classified image.

    Files *.reg contain the labeled image segments.

    Files *.spg are files in the format of values as a grid expressed in binary mode.

    Files *.dsc are text files with the description of the data represented in the spg, the information contained in this file are variable, depending on the kind of image processing and applied to it. It is essencial to include:

    1. Image dimension;
    2. Number of channels;
    3. image type (UINT1/INT1/UINT2/INT2/UINT4/INT4/REAL4/REAL8);
    4. format (SPG/RAW).

 


Context files (<given_name>.ctx): this file keeps data related to the image,  to the samples and to the classification process defined by the user.

 

Work Environment


Compatibility with other software

SPRING is the evolution of the SITIM and SGI systems, developed for microcomputers that represent the greatest installed based for geoprocessing systems in Brazil . SPRING provides SITIM and SGI users a natural transition of every user data file.

The Interactive Image Treatment System - SITIM - is a system for image processing.

The Geographic Information System - SGI - is a geographic database to process spatially coded information and extract information from remote sensing data, field survey, etc...

This version of SPRING also imports and exports thematic and numeric data to the ASCII, ARC-INFO, SGI, SHAPEFILE, SURFER, IDRISI, DXF and DWG formats, as well as images to the TIFF, GeoTIFF, RAW, GRIB, JPEG and SITIM formats. Text can also be imported and exported in ASCII, DXF and DWG format.  

Work Environment


Environment Variables

  To run SPRING the system may require some environment variables to be set appropriately. Some are required, some are optional. The Qt library is responsible for storing and handling these variables. They may be changed in the Environment Configuration window. See what they are:

1) To define where SPRING is installed (required).

  • SPRINGHOME

2) To define where the file "database.dbf" will be created and kept (required).

  • SPRINGDBMSHOME

3) To define the format of the communication with the digitizing table (required only when you want to use one). Possible values = MicroGridCounts, MicroGridHigh Resolution, GTCO-Low, GTCO-High GTCO-MULTICAD Calcomp3, SUMMASKETCH-Low, SUMMASKETCH-High. See about the configuration of tables in the installation and configuration manual.

  • SPRINGTABLE

4) To define the number of data bits in the serial communications with the digitizing table.  Possible values =  7 or 8 (required  when  using a digitizing table).

  • SPRINGTABLEDATABITS

5) To define the parity of the communication with the digitizing table. Possible values = even, odd, or none (required when  using a digitizing table).

  • SPRINGTABLEPARITY

6) To define the number of stop bits in the communication with the digitizing table. Possible values = 1 or 2 (required when  using a digitizing table).

  • SPRINGTABLESTOPBITS

7) To define the port where the table is connected. Possible values: "/dev/ttya", "/dev/cua1", "COM1", "COM2", etc... for UNIX (required  when  using a digitizing table).

  • SPRINGTABLEPORT

8) To define the default database (optional).

  • SPRINGDB

9) To define the default project of the database defined above (optional).

  • SPRINGPROJ


10) To define the magnetic tape reader, CCT or DAT (valid only for the IMPIMA module).

  • SPRINGTAPE

11) To define the CD-ROM reading device (valid only for the IMPIMA module - required when reading images from a CD-ROM).

  • SPRINGCDROM

12) To define the SPRING visualization version, Classic or Non-Classic.

  • CLASSIC


windows.gif - 1353 BytesThe environment variables of the Windows and Unix versions are managed and set by SPRING itself. These variables are stored in the Windows Registry and in a Unix Configuration File. If you want to see what variables are presently set in Windows run the program "regedit.exe"  in Start --> Run and look at the key

"HKEY_CURRENT_USER\Software\INPE/DPI\SPRING50\Settings".

In Linux, a Configuration File "~/.config/INPE-DPI/SPRING50.conf", which is managed by the Qt library, is created for each user.

Configuring the environment variables:

  • run the SPRING module;
  • click on Tools - Environment Configuration... in the main menu. The window "Environment Configuration" is presented;
  • modify the variables as you wish;
  • click on Execute to apply the modifications.

NOTE: For the modifications to take effect, in the case of some options, it is necessary to close and run the SPRING module again.

 

Environment Variable