gvSIG-Desktop 1.11. User manual
- Load data
- Geographical data
- Introduction
- Vector
- Adding a layer from a disk file
- Adding a layer using the WFS protocol
- Introduction
- Connecting to the server
- Accessing the service
- Selecting 'Layers'
- Selecting 'Attributes'
- 'Options' tab
- Filter
- Adding the layer to the view
- Modifying the layer's properties
- Filtered by area
- Adding a layer using the ArcIMS vector protocol
- Introduction to ArcIMS
- Connecting to image services
- Adding a layer using the ArcIMS protocol
- Add layer using the arcIMS protocol
- Connecting to the server
- Accessing the service
- Selecting layers
- Adding the layer to the view
- Points to remember about spatial reference systems
- Modifying the layer's properties
- Information about scale limits
- Attribute information requests
- Connecting to geometry services
- Adding a geometry layer
- ArcIMS symbols
- Symbols
- Legends
- Working with the layer
- geoDB Extension (database manager)
- Introduction
- The spatial connection database manager
- Adding a geoDB layer to the view
- Exporting a gvsig layer to a spatial database
- Oracle spatial
- Introduction
- Metadata
- Data types
- Coordinate systems in Oracle
- Notes on reading geometries
- Transferring a layer from gvSIG to Oracle
- ArcSDE
- Adding an Event layer
- Introduction
- Adding an event layer from a table
- Adding an event layer from a table associated with a layer in the view
- Coordinate Reference Systems
- Raster
- Adding a layer from a disk file
- Adding a layer using the WMS protocol
- Connecting to the service
- Accessing the service
- Selecting 'Layers'
- Selecting 'Styles' for the WMS server layers
- Selecting values for a WMS layer's 'Dimensions'
- Selecting the format, spatial system and/or transparency
- Adding the layer to the view
- Modifying the layer's properties
- Adding a layer using the WCS protocol
- Accessing the service
- Selecting 'Coverages'
- Selecting the 'Format'
- Adding the layer to the view
- Modifying the layer's properties
- Adding orthophotos using the ECWP protocol
- Adding a layer using the ArcIMS raster protocol
- Introduction to ArcIMS
- Connecting to image services
- Adding a layer using the ArcIMS protocol
- Add layer using the arcIMS protocol
- Connecting to the server
- Accessing the service
- Selecting layers
- Adding the layer to the view
- Points to remember about spatial reference systems
- Modifying the layer's properties
- Information about scale limits
- Attribute information requests
- Connecting to geometry services
- Adding a geometry layer
- ArcIMS symbols
- Symbols
- Legends
- Working with the layer
- Web Map Context
- Alphanumeric data
Load data
Geographical data
Introduction
Firstly, open a “View” document in gvSIG.
You can access this option by going to the "View" menu and then to "Add layer" or by using the “Control + O” key combination
or by clicking on the "Add layer" button in the tool bar.
A window appears in which you can select and configure the layer's data source by its type:
Vector
Adding a layer from a disk file
Click on the "Add" button
The "Add” dialogue window allows you to move around the file system to select the layer to be loaded. Remember that only the files of the type selected will be shown. To indicate the type of file to be loaded, select a file from the “Files of type” pull down menu.
If several layers are loaded at the same time, the order in which the themes will be added to the view can be specified with the "Up" and "Down" buttons in the “Add layer" dialogue.
Adding a layer using the WFS protocol
The Web Feature Service (WFS) is one of the OGC standards (http://www.opengeospatial.org) which is included in the list of standards (of this type) that gvSIG supports.
WFS is a communication protocol via which gvSIG retrieves a vector layer in GML format from a supporting server. gvSIG retrieves the geometries and attributes associated to each "Feature” and interprets the contents of the file.
Go to the “Add layer” and then select the WFS tab.
1. The pull-down menu shows a list of WFS servers (you can add a different server if you don’t find the one you want).
2. Click on “Connect”. gvSIG connects to the server.
3. and 4. When the connection is made, a welcome message from the server appears, if this has been configured. If no welcome message appears, you can check whether you have successfully connected to the server if the “Next” button is enabled.
5. The WFS version number that the server you have connected to is using is shown at the bottom of the box.
N.B. You can select the “Refresh cache” option which will search for information from the server in the local host. This will only work if the same server was used on a previous occasion.
Click on “Next” to start configuring the new WFS layer.
When you have accessed the service, a new group of tabs appears. The first tab (“Information”) shows all the information about the server and about the request that is to be sent. This information is updated as more layers are selected.
The “Layers” tab can be used to select the layer you wish to load. A two-column table appears in which the layer name and the geometry type are shown. As the geometry type is obtained by clicking on the layer (it needs to be obtained from the server), this column is completely blank at the start.
The “Show layer names” option shows the name of the layer as it is recognised by the server and not by its description, which is what appears in the table by default.
The “Attributes” tab allows the fields (or attributes) of the selected layer to be selected. When the layer is loaded, only the fields that have been selected are retrieved.
To select the attributes, enable the check box which appears to their left.
The "Options” tab shows information about user authentication and the connection. The “User” and “Password” fields are used in the WFS-T to be able to identify a user in the server so that writing operations can be carried out (not yet implemented).
The connection parameters are:
Number of features in the buffer, i.e. the maximum number of elements that can be downloaded.
Timeout. This is the length of time beyond which the connection is rejected as it is considered to be incorrect. If these parameters are very low, a correct request may not obtain a response.
The Spatial Reference System (SRS) is another important parameter. Although this cannot currently be changed, it is hoped that this will be possible in the future. In any case, gvSIG reprojects the loaded layer to the spatial system in the view.
You can use this tab to apply filters to your WFS layers. Click on the “Filters” tab in the window.
The “Fields” text box shows the layer’s attributes which can be used as a filter. Click on the selected field to see its values.
When the layer is loaded for the first time, the values in the column cannot be selected. However, if you have a filter sentence for the layer you can apply it in the filter text area and the filtered layer will be loaded directly.
If you do not have a filter sentence, load the WFS layer into the ToC, then right click on the mouse and select the “WFS properties” option from the contextual menu.
To create the filter for the WFS layer, double click on the field you wish to use as a filter and it will appear in the bottom text area. Then click on the operator you wish to apply and finally select the value in the “Values” text area by double clicking on it.
When you have created the required filter, click on “Ok” and it will be applied to the WFS layer.
When all the parameters have been configured, click on “Ok”. The layer will be loaded into a gvSIG view.
By right clicking on the layer, its contextual menu appears. If the “WFS Properties” option is selected, an option display opens (similar to the “Add layer” display). This can be used to select new attributes and other layers and change the layer’s properties.
In gvSIG 1.9 a new 'Area' tab was added which allows the user to filter the requested WFS layer geometries according to a bounding box. The user enters the coordinates of the required display area so as to optimize access to the data layers and to save time when viewing them.
Adding a layer using the ArcIMS vector protocol
In the proprietary software environment, ArcIMS (developed by Environmental Sciences Research Systems, ESRI) is probably the most widespread/popular widely used (Internet) cartographic server on the Internet thanks to the number of clients it supports (HTML, Java, ActiveX controls, ColdFusion...) and to its integration with other ESRI products. ArcIMS is currently one of the most important remote cartographic information providers. Although the protocol it uses does not comply with the Open Geospatial Consortium (because it was created long beforehand), the gvSIG team believes that offering support for ArcIMS is important.
The extension can access image services offered by an ArcIMS server. This means that, just like a WMS server, gvSIG can request a series of layers from a remote server and receive a view rendered by the server containing the requested layers in a specific coordinate system (reprojecting if necessary) and in specific dimensions. In addition to displaying geographic information, the extension allows you to request information about the layers for a particular point via the gvSIG standard information button.
ArcIMS is slightly different in its philosophy from WMS. In WMS, the request is normally made by independent layers whilst in ArcIMS the request is global.
The steps required to request a layer from an ArcIMS server and to request information for a particular point are listed below.
Our example uses the ESRI ArcIMS server. Its URL is http://www.geographynetwork.com. This is the address a web browser requires to access the HTML visual display unit.
Before loading a layer from this server, the datum WGS84 in geodesic coordinates (code 4326) has to be set up previously as the view’s spatial system.
If the extension is loaded correctly, a new ArcIMS data source will appear in the “Add layer” dialogue box.
If the server has a standard configuration, simply indicate its address. gvSIG will try to find the servlet’s full address.1 If the servlet has a different path, you will have to write it into the dialogue box.
When the connection has successfully been made, the server version, its compilation number and a list of image and geometry services available are shown.
The service can be selected from the list or can be written in directly.
Finally, if the “Override service list” check box is enabled, gvSIG will delete any catalogue that has already been downloaded and will request them again from the server.
The next step is to select the ImageServer type service required by double clicking or selecting it and clicking on "Next". The dialogue box changes and an interface with two tabs appears (fig. 3). The first tab shows the metainformation given by the server about the service’s geographic limits, the acronym of the language it has been written in, units of measurement, etc. It is a good idea to find out if a coordinate system has been defined in the service (using EPSG codes) as this can directly influence the requests made to the server, as Figure 3 shows.
N.B. If no coordinate system has been defined in the service, the extension will assume that it is the same coordinate system as the one we have defined for the view.
We can continue by clicking on "Next" or return to the previous dialogue by clicking on "Change service”.
The last dialogue box is the layer selection. We can define a name for the gvSIG layer or leave the default value (the service name) in this window. A box appears below with a list of the service layers in tree form. When the mouse is moved over the layers, information about these layers appears: extension, scale ranges, type of layer (raster or vector image) and if it is visible by default in the service (fig. 4).
We can view each layer’s ID via the “Show layer ID” check box. This check box is useful when there are layers whose descriptor is repeated. Therefore, the only way to distinguish between them is via an ID, which will always be unique. A combo box is also available to select the image format we wish to use to download the images. We can choose JPG format if our service works with raster images or one of the other remaining formats if we want the service to have a transparent background.
N.B. The transparency in 24-bit PNG images is not correctly displayed in gvSIG 0.6. This type of files will be supported in gvSIG 1.0.
The box with the layers selected for the service appears below. If you wish, you can add just some of the service layers and also reorganise them. This makes the service view totally personalised.
N.B. The configuration cannot be accepted until a layer has been added.
N.B. Multiple selections of service layers can be made by using the Control and CAPS keys.
When the “Ok” button in the dialogue box is pressed, a new layer appears in the view (fig. 5). If no layer has been added previously, the extension of the ArcIMS layer is shown, as per the standard gvSIG procedure.
It must be remembered that when the layer extension is shown, the layers that make up the chosen configuration may not appear and a blank or transparent image appears instead. If this occurs, use the scale control dialogue box (V. Information about scale limits section).
An ArcIMS server does not define the spatial reference systems it supports as opposed to the WMS specification. This means that a priori we do not have a list of EPSG codes that the map server can reproject. In short, ArcIMS can reproject to any coordinate system and leaves the responsibility of how the projections are used to the client.
Therefore, if our gvSIG view is defined in ED50 UTM zone 30 (EPSG:23030) and we request a global coverage service (stored for example in the geographic coordinates WGS84, which correspond to code 4326) the server will not be able to reproject the data correctly because we are using global coverage for a projection of a specific area of the Earth.
However, the procedure can be carried out in reverse. If we have a view in geographic coordinates (and thus global coverage), services defined in any coordinate system can be requested because the server will be able to transform the coordinates correctly.
In short, requests to the ArcIMS server must be made in the view's coordinate system and they cannot be requested in another coordinated system.
Moreover, as we mentioned above, if an ArcIMS server does not offer information about the coordinate system its data is in, the user will be responsible for setting up the correct coordinate system in the gvSIG view. Thus, if a user with a view in UTM adds a layer which is in geographic coordinates (even though the server does not show it), the service will be added correctly but will take the view to the geographic coordinates domain (in sexagesimal degrees).
An additional effect is that if the view uses different units of measurement from the server, the scale will not be shown correctly.
The layers requested from the server can be modified via a dialogue box, which can be accessed from the layer’s contextual menu (fig. 6) just like the WMS layers. This dialogue box is similar to the box used to load the layer, apart from the fact that the service cannot be changed.
The extension allows us to consult the layers' scale limits which make up the requested service via a dialogue box which can be maintained in the view during the session (fig. 7). This window shows the layers on the vertical axis and the different scale denominators on the horizontal axis via a logarithmic scale. This box is small on screen but can be enlarged to improve the difference between the scales.
The vector layers, raster layers and the layers that can be seen on the current scale (marked with a vertical line) in a darker colour and the layers we cannot see above or below the current scale are differentiated by different coloured bars (described in the window legend).
Attribute information requests about the elements for a particular point is one of gvSIG’s standard tools. Its functionality is also supported by the extension.
The WMS specification allows information about several layers to be requested from the server in one single query. This is different in ArcIMS. We need to make one server request per layer required.
This means that no requests for unloaded layers or unseen layers that are not visible on the current scale or layers whose extension is outside the view will be made. Even if all these layers are filtered, the information request usually takes longer than is desirable because of this intrinsic feature of ArcIMS.
When all the request responses have been recovered, the standard gvSIG attribute information dialogue appears with each of the layers (LAYER) which return information as a tree. If we click on a layer, its name and ID appear on the right (fig. 8).
Under this node, if we are talking about a vector layer, all the records or geometric elements the server has responded to appear, and give each one their corresponding attributes (FIELDS).
If it is a raster layer, such as an orthoimage or a digital terrain model, it returns the values for each of the bands (BAND) in the requested pixel colour, instead of records.
The extension allows access to both ArcIMS image services and geometry services (Feature Services). This means that a server can be connected to and geometric entities (points, lines and polygons) and their attributes obtained. This is not dissimilar to WFS service access.
However, the variety of existing geometry services is much lower than the variety in the image server. There are two main reasons for this. On one hand, providing the public with vector cartography implies security problems because many bodies only want to offer the general public views and images. The vector data becomes either an internal product or must be paid for. On the other hand, this type of services generate much more traffic on the network and in the case of basic information servers could become a problem.
Loading a geometry layer is practically the same procedure as loading the image server as mentioned above (Accessing the service section and the following sections). In this case, the number of layers to be selected must be taken into account. If we wish to download all the layers offered by the service the response time will be very high.
The only difference between loading an image layer is that in this case we can choose whether we wish the layers to be downloaded as a group via a check box. This is useful for processing the vector layers as one layer when it needs to be moved and activated in the table of contents.
Unlike the image service, in which all the service’s layers appear as one unique layer in the gvSIG view, in this case each layer is downloaded separately and appears in the view grouped under the name defined in the connection dialogue.
Cartography symbols are configured in the server in one AXL extension file for both geometry and image services. We can divide symbol definition into two parts. On one hand, we can talk about the definition of the symbols themselves, i.e. how a geometric element, such as a line or polygon, should be presented. On the other hand, we can talk about the distribution of these symbols according to the cartographic display scale or to a specific theme attribute.
In ArcIMS terminology symbols are different from legends (SYMBOLS and RENDERERS).
There are various types of symbols: raster fill symbols, gradient fill symbols, simple line symbol, etc. The extension adapts the majority of the symbols generated by ArcIMS. Table 1 shows the ArcIMS symbols and indicates whether they are supported by gvSIG.
Label | Description | Supported |
---|---|---|
CALLOUTMARKERSYMBOL | Balloon-type label | NO |
CHARTSYMBOL | Pie chart symbol | NO |
GRADIENTFILLSYMBOL | Fill in with gradient | NO |
RASTERFILLSYMBOL | Fill with raster pattern | YES |
RASTERMARKERSYMBOL | Point symbol using pictogram | YES |
RASTERSHIELDSYMBOL | Customised point symbol for US roads | NO |
SIMPLELINESYMBOL | Simple line | YES |
SIMPLEMARKERSYMBOL | Point | YES |
SIMPLEPOLYGONSYMBOL | Polygon | YES |
SHIELDSYMBOL | Point symbol for US roads | NO |
TEXTMARKERSYMBOL | Static text symbol | NO |
TEXTSYMBOL | Static text symbol | YES |
TRUETYPEMARKERSYMBOL | Symbol using TrueType font character | NO |
Table 1: ArcXML symbol definition labels
In general, the most common symbols have been successfully “transferred”. Some of the symbols cannot be obtained directly from gvSIG (at least in the current version), such as the raster fill symbol or they need to be “adjusted” such as the different types of lines. This means that a raster fill symbol is not a symbol that can be defined by the gvSIG user interface, but it can be defined by programming.
gvSIG supports the most common types of legends: unique value and range and value themes as well as the scale-range control over the whole layer. ArcIMS goes much further in its configuration. It can generate much more complicated legends in which symbols can be grouped together, scale-range controls can be established for labels and symbols and different labelling based on an attribute can be shown (as though it were a value theme for labelling).
This group of legends can generate very complex symbols for a layer in the end. The current implementation status of the gvSIG symbols needs to be simplified to reach a compromise to recover the symbols that best represent the layer as a whole.
Label | Description |
---|---|
GROUPRENDERER | Legend which groups others together |
SCALEDEPENDENTRENDERER | Scale dependent legend |
SIMPLELABELRENDERER | Labelling layer legend |
SIMPLERENDERER | Unique value layer legend |
VALUEMAPRENDERER | Value and range themes |
VALUEMAPLABELRENDERER | Labelling themes |
Table 2: ArcXML legend definition labels
When a GROUPRENDERER is found, the symbol ArcIMS draws first is always chosen. Thus, in the case of the typical motorway symbol for which a thick red line is drawn and a thinner yellow line is drawn over it, gvSIG will only show the red line with its specific thickness.
If a scale dependent legend is discovered during a symbol analysis, this is always chosen. If more than one is discovered, the one with the greatest detail is chosen. For example, in ArcIMS we can have a layer with simple road symbols (only main roads are drawn) on a 1:250000 scale and based on this a different theme is shown with all types of roads (paths, tracks, roads, etc.). In this case, gvSIG will show this last theme as it is the most detailed.
If a labelling legend is discovered during a symbol analysis, it will be saved in a different place and will be assigned to the selected definitive legend. In the case of the VALUEMAPLABELRENDERER label, only the legend of the first processed value will be obtained as a label symbol. The rest will be rejected.
In short, it is obvious that the failure to adapt the legends for gvSIG is a simplification process in which different legend and symbol definitions must be rejected to obtain a legend which is similar to the original as far as possible. It is to be expected that the gvSIG symbol definition will improve considerably so that it can support a larger group of cases in the future.
Working with the layer is similar to any other vector layer, as long as we remember that access times may be relatively high. The layer attribute table can be consulted, in which case the records will be downloaded successively as we display them.
If we wish to change the table symbols to show a unique value or range theme we must wait as gvSIG requests the complete table for these operations. On the other hand, the downloading of attributes is only carried out once per layer and session and therefore, this wait only occurs in the first operation.
In general, if our ArcIMS server is in an Intranet, it will be relatively fast to handle, but if we wish to access remote services we may be faced with considerable response times.
The main feature to bear in mind when working with an ArcIMS vector layer is that the geometries available at any given time are only the ones displayed. This is because we can connect to huge layers but only the visible geometries are downloaded. As far as gvSIG is concerned, the geometries shown on the screen are the only ones available and thus, if we export the view to a shapefile for example, are only a part of the layer.
Finally, we need to remember that to speed up the geometry downloads they are simplified to the viewing scale in use at any given time. This drastically reduces the amount of information downloaded as only the geometries that can actually be "drawn" are displayed in the view.
Loading a geometry layer is practically the same procedure as loading the image server as mentioned above (Accessing the service section and the following sections). In this case, the number of layers to be selected must be taken into account. If we wish to download all the layers offered by the service the response time will be very high.
Unlike the image service, in which all the service’s layers appear as one unique layer in the gvSIG view, in this case each layer is downloaded separately and appear in the view grouped under the name defined in the connection dialogue.
After a few seconds the layers appear individually but are grouped under a layer with the name we have defined for it.
The layer symbols are established at random. A pending feature is to recover the service symbols and configure them by default so that gvSIG can display the cartography as similarly as possible to how it was established by the service administrator.
geoDB Extension (database manager)
This extension allows users easy, standardised access to geographic databases from different providers. At present, gvSIG supports the following database management systems:
Data bases | Read | Write |
---|---|---|
PostgreSQL/PostGIS | Yes | Yes |
MySQL | Yes | No |
HSQLDB | Yes | No |
Oracle (SDO Geometry) | Yes | Yes |
gvSIG stores the different connections made during the various sessions. Thus, users do not need to input the parameters of every server they connect to. Likewise, if a project file is opened which has a database connection, the user will only be required to enter the password.
The extension has two user interfaces, one to manage the data sources and another to add the layers to the view.
Select the menu See – Spatial database connection manager (figure 1) to open the dialogue box which allows you to add, remove, connect and disconnect the connections to the different types of databases containing geographic information. If you have already used this manager in an earlier gvSIG session, the previous connections will appear (figure 2). If not, the dialogue box will be empty.
Click on Add to introduce the parameters of a new connection (figure 3). NB: From gvSIG version 1.1 onwards, it should be noted that the name of the database must be written correctly and that it is case sensitive. If you wish to open a project saved in a version prior to gvSIG 1.1 which includes layers belonging to a database whose connections have not taken this factor into consideration, the data must be recovered by reconnecting to the original data base. You can either connect there and then or remain offline. Open connections appear with a link and with “[C]” before their name (figure 4). If you wish to open a connection, select it and click on Connect. You will be asked to enter the password (figure 5) and the connection will then be made.
In the Project Manager, create a new view and open it using the New and Open buttons. Use the Add layer icon to add a layer to the view. Go to the GeoDB tab in the dialogue box to add a new layer of this type (figure 6). You must choose a connection (if you select one which is disconnected, you will then be asked to enter the password), select one or more tables and the attributes you wish to download from each layer and, optionally, set an alphanumeric restriction and an area of interest. You can give each layer a different name to that of the table. Click on Ok to view the table’s geometries in the view. This window also allows you to specify a new connection if the database is not registered in the data source catalogue. Any alphanumeric restriction must be introduced by means of a valid SQL expression which is attached as a WHERE clause to each call to the database. Given that the table may take several seconds to load, a small icon appears next to the name of the table indicating that this process is underway. When the table has been loaded, the small blue icon disappears and the gvSIG view is automatically refreshed to allow the geometries to be viewed.
This function allows new tables to be created in the spatial database from any vectorial source in gvSIG. These tables can be created as follows:
- Create a vectorial layer of any type, for instance by opening an SHP file using the Add layer button (figure 9).
- Select the layer by clicking on its name in the left-hand side of the screen (figure 10).
- In the Layer – Export to menu, select the type of database you wish to export the layer to. The example shows an Oracle database (figure 11).
- You will then be asked to introduce the name of the table which will be created in the database (Oracle) and whether or not you wish to include the newly-created layer in the current view.
If all goes well, the new vectorial geoDB layer will appear in the view and you will be able to work with it in the usual way.
These notes supplement the documentation for the geoDB extension with regard to the driver for Oracle Spatial.
This driver allows access to any table from an installation of both Oracle Spatial and Oracle Locator (in both cases from version 9i onwards) which has a column that stores SDO-type geometries.
The driver only lists tables which have their geographic metadata in the USER_SDO_GEOM_METADATA view.
Given that each table’s metadata is available, the interface makes use of that data and automatically presents the column (or columns) of geometries. Likewise, ROWID, which is a unique descriptor for each row used internally by Oracle, is used and this ensures that identification is correct.
Two and three-dimensional data of the following types are supported:
- Point and multipoint
- Line and multiline
- Polygon and multipolygon
- Collection
At present, layers in LRS format (Linear Referencing System) are not supported.
Oracle has its own system for cataloguing coordinate and reference systems. Miguel Ángel Manso, on behalf of the Polytechnic University of Madrid, has provided a list of equivalent values for the Oracle system and the EPSG system and this is included in the driver as a DBF file.
Conversions from one coordinate system to another are carried out by gvSIG since its performance has proved to be superior.
The driver constantly performs geometric requests (in other words constantly calculates which geometries intersect with the current gvSIG view) and it is therefore essential that the database has a spatial index linked to the column in question.
If this index does not exist, an error window appears (figure 1) and the table or view cannot be added to the gvSIG view.
In addition, the driver needs to set a unique identifier for the records of the table or view, and this is not possible for certain types of views. If such a problem occurs, it will be detected by the driver and an error message will also appear (figure 2).
As a result, the view cannot be loaded to gvSIG from the database.
If you wish to export a layer to an Oracle database, you will also be asked if you wish to include the view’s current coordinate system in the table at the end of the process described in the manual. This may be useful in cases where we do not wish to include such information in the table for reasons of compatibility with other applications or information systems.
To work with two Oracle geometries (the most common case is an intersection), the two geometries must have the same coordinate system. Each geometry has an SRID field which can have the value NULL.
For instance, if we have a table with geometries in EPSG:4326 (Oracle code 8307) and another with geometries in EPSG:4230 (Oracle code 8223), it will not be possible to carry out SQL instructions to perform calculations directly between the geometries of one table and another. However, if these tables’ geometries do not have a coordinate system (i.e. SRID is NULL), then operations can be performed between the geometries of these tables, bearing in mind the errors involved in carrying out intersections between different coordinate systems.
When reading a table whose geometries have a coordinate system set at NULL, it is understood that the user will make sure that the geometries are appropriate for the current view, since no reprojection is possible (this may change with the new gvSIG extension for the advanced use of coordinate systems).
In short, not storing the coordinate system allows for a more flexible use of geometries.
If you have previously used the connection manager in a previous gvSIG session, the connections will have been preserved. Otherwise, it will be empty:
Click "add" and a window that allows you to enter new connection parameters will show up. Fill the data fields and click "OK". Note: In the drop-down selections of “Driver” select the one that corresponds to "gvSIG SDE driver", as shown in the image.
Once the connection is validated, it brings back the "connection manager" with the new database in the list. If in the connection settings window the "connected" box is left checked, the connection will remain open. Open connections are marked "[C]" before its name.
If you want to disconnect the connection click on "disconnect" at the bottom of the manager. The connection will stop at the time, but the parameters will remain recorded for future connections. If you want to open a connection that is already included in the list for having been previously used, you must select it and click "Connect". It will ask for the password again in a window like in the following figure represents and the connection will be open.
Choose the menu "View / Spatial BD connection manager" to open the dialogue that lets you add, remove, connect and disconnect connections to different types of databases with geographic information:
Once we have established the connection to the server, we can begin to query information from it.
For this we will open a view and press the button "Add layer".
Then select the GeoBD tab.
. In the dropdown list you can select your connection. The button to the right side of the box can take you directly to the connection settings window, in case you want to add a connection in some other time without having to go through the connection manager.
. Once the connection is established you will see a list of the available information that can be added to gvSIG.
. From this window you can query or create filters (SQL restrictions) before adding the information.
. Once you select the information you want, click "OK" and it will upload into the view.
Adding an Event layer
A new layer can be created from a table in gvSIG by using “Add event layer”.
There are two ways to do this: you can add a table to the project or you can work with a table associated with one of the layers in the view in which you are working at a particular time.
Firstly, the table needs to be loaded. To do so, go to the gvSIG “Project manager” and select "Tables" in document types. Then click on "New".
A search dialogue opens to add the table you require. Click on "Add".
A dialogue box appears in which you can choose two types of data sources: dbf and csv.
When you have found the table you require, select it and click on “Open”.
gvSIG automatically returns to the "New table" window and adds the table you require to create the event layer in the text box.
Click on “Ok” to finish the process.
When the table has been added, a view must be active to create its corresponding event layer and load it. If no view is active, you can return to the “Project manager” and add one or create a new blank one. When you have activated this view, go to the “Add event layer” by using the corresponding button in the tool bar:
A window with three pull-down menu bars appears.
We can select the table we need to add the new layer from the first pull-down menu bar.
Then, we can select the table fields which will become the X and Y values.
If you click on “Ok”, a new points layer will appear based on the coordinates contained in the initial table.
If you wish to work with a table associated to the layers in the view, you will firstly have to activate the attribute table of this layer. To do so, click on the following button in the tool bar:
If you click on “Add event layer”
you will see that the table has been added.
Coordinate Reference Systems
The jCRS extension intends to bring rigorous CRS handling capacity to gvSIG, as well as the incorporation of the standard CRS operations and repositories like, in this version: EPSG, ESRI, IAU2000 and user-defined CRS.
These added functions provide a solution to the ED50-ETRS89 transition problem, and in accordance with the implementation of the Royal Decree 1071/2007, two solutions are integrated that were achieved by the National Geographic Institute (IGN):
- Through the EPSG, the different official IGN achievements are incorporated following the seven-parameter transformation model.
- Through Proj4, the official IGN grid based transformations with grid files in NTv2 format are incorporated.
Further in this document, the user interface for this extension will be described, using the most common cases.
In the description of these cases, there might be an overlap in CRS selection methods and dialogs. To avoid repetitions, it was considered convenient to explain a dialog in detail the first time that it appears in the manual, and therefore users are advised to read the sections in the correct order.
In this latest version of the jCRS extension, users can define a custom CRS. This functionality is available through the CRS selection dialog, see figure 14.
When selecting User CRS as the type of CRS, you can choose from the following options:
- Choose a custom CRS that was previously defined, by selecting it from the table and click on OK. To facilitate the selection when there are many user-defined CRS, there are two search options to find common CRS: by code and by name.
- To find information on the selected CRS, you can click on the CRS info button, after which a window with the available information will appear.
- To edit the selected CRS, click on the Edit button. A dialog with different tabs will appear which is similar to the dialog in which you can define a new custom CRS. These dialogs will be described later on in this document.
- To delete the selected CRS, click on the Remove button.
- Create a new custom CRS, as described here below.
To create a new custom CRS, click on the New button in the dialog shown in Figure 14, after which the dialog User defined CRS will open (see figure 15) to guide you through the process of creating a custom CRS.
This dialog includes three tabs:
- User CRS, where you can choose between three alternatives to create the CRS:
- From user definitions. With this option, the user will enter all the needed information to create the CRS. When this option is selected, the panels in the Datum and Coordinate system tabs will appear empty so that the user can fill them, although some information (ellipsoid, prime meridian, …) can be taken from other CRS that are included in EPSG.
- From an existing CRS. This option permits the selection of an existing CRS from EPSG, by clicking on the button with three points, load the information in the corresponding panels under the Datum and Coordinate system tabs, and create the custom CRS by modifying this information.
- From a WKT string. This option is similar to the previous one, but here the WKT string is used to load the information of an existing CRS in the corresponding panels of the Datum and Coordinate system tabs.
- Datum, where you can enter the Datum information associated with the CRS.
- Coordinate system, where the information of the coordinate system associated with the CRS is filled.
By clicking the button Next you can move from one tab to the next.
In figure 16, the panel of the Datum tab is shown. In this tab, the following information must be filled:
- Information about the CRS to be defined that will be used in search queries:
- Name. Alphanumeric string to indicate the name of the CRS.
- Code. Integer number to be assigned to the CRS for indexing in the database, this must be a unique number that has not been previously assigned to another custom CRS.
- Information about the datum associated with the CRS:
- Name of the datum. Alphanumeric string to indicate the name of the datum. This can be selected from an existing EPSG CRS by clicking on the button with three points on the right of the text box.
- Ellipsoid. Information on the reference surface of the CRS to be defined. This can be selected from an existing EPSG CRS by clicking on the button with three points on the right of the text box for the ellipsoid name. The information to be filled is:
- Name of the Ellipsoid. Alphanumeric string to indicate the name of the ellipsoid.
- Shape and dimensions of the ellipsoid. You can choose between two options:
- a, inv_f, which refers to the semi-major axis and inverse flattening. To define the semi-major axis correctly it is necessary to enter the value and corresponding unit.
- a, b, which refers to the semi-major and semi-minor axis of the ellipsoid. This option should be chosen when the reference surface is a sphere, in which case the values of both semi-axes are equal and the resulting value of the inverse flattening is infinite. To define correctly both semi-axes of the ellipsoid, the value and corresponding unit must be entered.
- Meridian. Here, the name of the prime meridian that is used for the datum must be filled. You can select the prime meridian from an existing EPSG CRS by clicking on the button with three points on the right of the textbox for the meridian name. The following information must be filled:
- Name of the meridian. Alphanumeric string to indicate the prime meridian.
- Longitude. Geographic longitude relative to Greenwich. The value and corresponding unit must be filled.
The default ellipsoid and meridian for user defined CRS are the GRS80 ellipsoid and Greenwich meridian.
When the datum parameters are defined, the Coordinate system information associated with the CRS must be filled in the next tab as shown in figure 17.
The following Coordinate system information must be filled:
- Coordinate system: Geographic 2D or Projected.
- In case of a projected coordinate system, the following must be filled:
- Name of the projection. Alphanumeric string to indicate the name of the projection.
- Projection. One of the available options of the drop-down list must be chosen.
- Projection parameters: Value and unit. The list of parameters will change according to the type of cartographic projection.
To edit a custom CRS that was previously defined (see figure 14), select this CRS from the table and click on Edit.
Below in figure 18 the dialog Definition of a new custom CRS is displayed, where the tab User CRS is disabled as well as the CRS code in the Datum tab. The reason why you can not modify the CRS code is that this code is used for the indexation of the user database. The other values for the datum are editable, as well as the values for the Coordinate system tab (see figure 19).
The selection of the CRS for a layer can be done by adding the layer to a view, and clicking on the button labelled Current projection in the Add layer dialog (see figure 12).
Then the dialog CRS and transformation will open where you can select the CRS for the layer, and, if needed, a transformation to load the layer into the view (see figure 13).
Compared to the New CRS dialog that was described before, what is new here is that the table of used CRS includes a Transformation column. This column facilitates the simultaneous selection of the CRS and the transformation for a layer, but only if these have been used before.
The selection of a transformation will be described hereafter.
The CRS for the View must be defined through the dialog View properties which can be accessed by clicking on the Properties button in the Project manager of gvSIG (see figure 9).
After clicking on the Current projection button of the View properties dialog (see figure 10), the New CRS dialog will open (see figure 11) which has been described in the previous section.
IMPORTANT: Currently it is not possible to re-project an open view, so if you change the CRS while the view is open, the results may be erroneous.
This section describes how to set the default CRS for every new View that is created in gvSIG.
The default CRS is defined in the Preferences window of gvSIG which can be accessed through the menu (Window->Preferences) or with the corresponding button in the toolbar , see figure 1.
When clicking on the Change button, the New CRS dialog is displayed which lets you select the default CRS, see figure 2.
In this dialog you can select CRS from five different repositories:
- Recent: This includes the CRS that have been used previously (Figure 2). The list of recent CRS will be available in the current and future executions of gvSIG and is not linked to a specific project.
- EPSG: This lets you browse and select CRS from the EPSG (European Petroleum Survey Group) database.
- ESRI: This lets you browse and select CRS from the ESRI database
- IAU2000: This lets you browse and select CRS from the IAU2000 database.
- User CRS: With this option you can create or select a user-defined CRS. When creating a new user-defined CRS, you can base this CRS on existing CRS from the EPSG database or create it from scratch.
Below, a brief description of each option is presented.
The selection of CRS from the EPSG database can be done through three search criteria: through the EPSG code (for example 4230), through the name of the CRS (for example ETRS89), or by the area where the CRS is used (for example Spain). The two last cases are character string searches, resulting in those CRS where the name or area description includes the introduced string.
By clicking on the Info CRS button, you can access detailed information about the CRS that is selected in the table at the moment when you click the button, see figure 4 and 5:
In the information that is shown for the selected CRS, it is important to note the Proj4 string (at the bottom). The jCRS library includes CRS operations through the Proj4 library (link), where the results will be correct if this string has been correctly constructed. This information could be useful for advanced users.
This information sheet for selected CRS is available for all repositories included in the extension.
The selection of CRS from the IAU2000 and ESRI databases, (see figure 6 and 7, respectively) can be done by searching on the CRS code or name of the CRS.
The User CRS dialog allows for the management of the user database including select, edit or delete existing CRS, or create new CRS.
The selection of existing user-defined CRS (see figure 8) can be done by searching on the CRS code or the name of the CRS. Since there are normally only a few user-defined CRS, all user-defined CRS will appear in the table by default when the New CRS dialog is opened or when a search is performed without any code or search string.
The process of creating, editing and deleting of user-defined CRS will be explained in a later section of this manual.
In accordance with ISO 19111, there are two types of operations to relate two different CRS: conversion operations and transformation operations:
- Conversion of coordinates is used when the datum of the CRS of the layer coincides with the datum of the CRS in the view, in other words, both CRS correspond to the same geodetic reference system but are in different coordinate systems. If you choose the CRS of the layer in this case you need to select the option No transformation.
- Transformation is used when the datum of the CRS of the layer does not coincide with the datum of the CRS of the view. In this case there are two types of coordinate operations:
- The operation involves only a transformation when the coordinate system of the CRS of the layer coincides with the coordinate system of the view; in both CRS the positions are expressed in the same coordinate system but in a different datum.
- The operation involves a transformation and a coordinate conversion when both the datum and the coordinate system of the CRS of the layer and the CRS of the view are different.
If a transformation is needed, you must choose the type of transformation for the layer in the CRS selection dialog (see Figure 20) and click the Next button to continue to the corresponding transformation dialog.
The transformation dialog depends on the type of transformation to be performed:
- EPSG transformation. These are the official 7-parameter transformations as defined in the EPSG repository. The dialog for this type of transformation shows a table where all the applicable EPSG transformations are listed, with the CRS that was chosen for the layer as source CRS, and the CRS of the View as destination CRS (see Figure 21).
Keep in mind that the transformation operations of this type are always between the base CRS (i.e. non-projected CRS), and therefore if the CRS of the view or the CRS of the layer is projected, the corresponding base CRS will appear in the fields Source CRS and Destination CRS. Keep also in mind that for this type of transformation, the CRS for the View and the CRS for the layer must come from the same EPSG repository. If they come from different repositories, the table will appear empty.
- Manual transformation. With this option you can define a Helmert transformation through the introduction of the 7 parameters (see Figure 22).
- Grid based transformation (see Figure 23). With this option a transformation based on an NTv2 grid file is applied. For this, you must choose the NTv2 file from a list of available files or import it from a location to be specified. Since in the NTv2 file the translations have been calculated in a given base CRS, you must indicate here whether the NTv2 was calculated in the base CRS of the View, or the base CRS of the layer.
IMPORTANT: The grid file has a specific scope, which can be deduced from the file information that is displayed in the processing panel. Transformation is not applied beyond this scope, so the re-projection accuracy will be considerably lower, since only the corresponding coordinate system conversion would be applied.
Recent transformations (see Figure 24). With this option, you can select a transformation that has been used before. The list of recent transformations will be available in the current and future executions of gvSIG and is not linked to any specific project.
There are two ways to select a recent transformation. The first way is through the CRS selection panel for the layer. There is now an additional field in the table to indicate if the selected CRS has been used together with a transformation in any recent execution of the program. If you select the CRS and recent transformation, you can do two things:
- Accept the CRS and transformation.
- Continue the process of selecting the transformation. This will be helpful to review the selected transformation, because in the next panels the information of the selected transformation will be loaded, so that you can still change it or select another transformation, in which case in the next CRS selection for the layer, a new recent transformation will be added with the chosen settings. To access the information of the CRS and the transformation, just click on the Info CRS button (see Figure 25).
The second way to select a recent transformation is through the selection of CRS without transformation and then select Recent transformations as the type of transformation, after which a panel is displayed where you can choose from transformations that were previously defined (see Figure 26).
Composite transformation. This type of transformation is new for this version. The objective of composite transformations is to provide gvSIG users with the possibility to represent two CRS with different datums without the transformation between those two CRS, but with a transformation of those two CRS into a third CRS.
The composite transformation can play an important role when you need to define two transformations, one that refers to the CRS of the layer and the other to the CRS that has been defined for the view.
With this mechanism, you can set the CRS for the layer and the CRS of the View through an intermediate CRS that connects the two CRS.
To do this, after selecting the CRS of the layer and setting the type of transformation to Compound transformation, you need to:
- Define the transformation to be applied to the CRS of the layer (Figure 27)
- Define the transformation to be applied to the CRS of the view (Figure 28).
Raster
Adding a layer from a disk file
Click on the "Add" button
The "Add” dialogue window allows you to move around the file system to select the layer to be loaded. Remember that only the files of the type selected will be shown. To indicate the type of file to be loaded, select a file from the “Files of type” pull down menu.
If several layers are loaded at the same time, the order in which the themes will be added to the view can be specified with the "Up" and "Down" buttons in the “Add layer" dialogue.
Adding a layer using the WMS protocol
Go to the "Add layer" window and then select the WMS tab.
- The pull-down menu shows a list of WMS servers (you can add a different server if you don’t find the one you want).
- Click on “Connect”.
- and 4. When the connection is made, a welcome message from the server appears, if this has been configured. If no welcome message appears, you can check whether you have successfully connected to the server if the “Next” button is enabled.
- The WMS version number that the connection has been made to is shown at the bottom of the box.
Click on “Next” to start configuring the new WMS layer.
When you have accessed the service, a new group of tabs appears.
The first tab in the adding a WMS layer wizard is the information tab. It summarises the current configuration of the WMS request (service information, formats, spatial systems, layers which make up the request, etc.). This tab is updated as the properties of its request are changed, added or deleted.
The wizard’s “Layers” tab shows the WMS server’s table of contents.
Select the layers you wish to add to your gvSIG view and click on “Add”. If you wish, you can choose a name for the layer in the “Layer name” field.
N.B. Several layers can be selected at the same time by holding down the “Control” key and left clicking on the mouse.
N.B. To obtain a layer description move the cursor over a layer and wait a few seconds. The information the server has about these layers is shown.
The “Styles” tab allows you to choose a display view for the selected layers. However, this is an optional property and the tab may be disabled because the server does not define styles for the selected layers.
The “Dimensions” tab helps to configure the value for the WMS layer dimensions. However, the dimensions property (like the styles property) is optional and may be disabled if the server does not specify dimensions for the selected layers.
No dimension is configured by default. To add a dimension, select one from the “Settings editor” area in the list of dimensions. The controls in the bottom right-hand corner of the tab are enabled. Use the slider control to move through the list of values the server has defined for the selected dimension (for example “TIME” refers to the dates the different images were taken). You can move back to the beginning, one step back, one step forward or move to the end of the list using the navigation buttons which are located below the slider control. If you know the position of the value you require, you can simply write it in the text field and it will move automatically to this value.
Click on “Add” so that you can write the selected value in the text field and request it from the server.
gvSIG allows you to choose between:
Single value: Only one value is selected
Multiple value: The values will be added to the list in the order they are selected in
Interval: An initial value and then an end value are selected
When the expression for your dimension is complete, click on “Set” and the expression will appear in the information panel.
N.B. Although each layer can define its own dimensions, only one choice of value is permitted (single, multiple or interval) for each variable (e.g. for the TIME variable a different image date value cannot be chosen in each layer).
N.B. The server may come into conflict with the layer combination and the variable value you have chosen. Some of the layers you have chosen may not support your selected value. If this occurs, a server error message will appear.
N.B. You can personalise the expression in the text field. The dialogue box controls are only designed to make it easier to edit dimension expressions. If you wish you can edit the text field at any time.
The “Formats” tab allows you to choose the image format the request will be made with, specify if you wish the server to hand in the image with a transparency (to superimpose the layer onto other layers the gvSIG view already contains) and also the spatial reference system (SRS) you require.
As soon as the configuration is sufficient to place the request, the “Ok” button is enabled. If you click on this button, the new WMS layer will be added to the gvSIG view.
Once the layer has been added its properties can be modified. To do so, go to the Table of contents in your gvSIG view and right click on the WMS layer you wish to modify. The contextual menu of layer operations appears. Select “WMS Properties”. The “Config WMS layer” dialogue window appears. This is similar to the wizard for creating the WMS layer and can be used to modify its configurations.
Adding a layer using the WCS protocol
Click on “Next” to start configuring the new WCS layer.
When you have accessed the service, a new group of tabs appears.
The first tab in the adding a WCS layer wizard is the information tab. It summarises the current configuration of the WCS request (service information, formats, spatial systems, layers which make up the request, etc.). This tab is updated as the properties of its request are changed, added or deleted.
Select the coverage you wish to add to your gvSIG view. If you wish, you can choose a name for your layer in the “Coverage name” field.
You can choose the image format you wish to use to make the request and reference system (SRS) in the “Format” tab.
N.B. Tabs such as “Time” and “Parameters” are disabled in this case. Configuring these variables depends on the server chosen and the type of data it has access to.
As soon as the configuration is sufficient to place the request, the “Ok” button is enabled. If you click on this button, the new WCS layer will be added to the gvSIG view.
Once the layer has been added its properties can be modified. To do so, go to the Table of contents in your gvSIG view and right click on the WCS layer you wish to modify. The contextual menu of layer operations appears. Select “WCS Properties”.
The “Config WCS layer” dialogue window appears. This is similar to the wizard for creating the WMS layer and can be used to modify your configurations.
Adding orthophotos using the ECWP protocol
If you wish to add an orthophoto to gvSIG using the ECWP protocol, first open a view and click on the “Add layer” button.
Click on the “Add” button in the dialogue box. A file browser window appears.
Choose the “gvSIG Image Driver” option from the “Files of type” pull-down menu.
Write the URL of the file you wish to load as follows in “File name”:
ecwp://server address/path of the file you wish to add.
For example:
ecwp://raster.alava.net/datos/ecw/Ortofoto_5000.ecw
ecwp://earthetc.com/images/geodetic/world/MOD09A1.interpol.cyl.retouched.topo.bathymetry.ecw
When you have input the data, click on “Open”.
The orthophoto will be added to the layer list.
Select the new added layer and click on “Ok”.
The image will be added to the view.
Adding a layer using the ArcIMS raster protocol
In the proprietary software environment, ArcIMS (developed by Environmental Sciences Research Systems, ESRI) is probably the most widespread/popular widely used (Internet) cartographic server on the Internet thanks to the number of clients it supports (HTML, Java, ActiveX controls, ColdFusion...) and to its integration with other ESRI products. ArcIMS is currently one of the most important remote cartographic information providers. Although the protocol it uses does not comply with the Open Geospatial Consortium (because it was created long beforehand), the gvSIG team believes that offering support for ArcIMS is important.
The extension can access image services offered by an ArcIMS server. This means that, just like a WMS server, gvSIG can request a series of layers from a remote server and receive a view rendered by the server containing the requested layers in a specific coordinate system (reprojecting if necessary) and in specific dimensions. In addition to displaying geographic information, the extension allows you to request information about the layers for a particular point via the gvSIG standard information button.
ArcIMS is slightly different in its philosophy from WMS. In WMS, the request is normally made by independent layers whilst in ArcIMS the request is global.
The steps required to request a layer from an ArcIMS server and to request information for a particular point are listed below.
Our example uses the ESRI ArcIMS server. Its URL is http://www.geographynetwork.com. This is the address a web browser requires to access the HTML visual display unit.
Before loading a layer from this server, the datum WGS84 in geodesic coordinates (code 4326) has to be set up previously as the view’s spatial system.
If the extension is loaded correctly, a new ArcIMS data source will appear in the “Add layer” dialogue box.
If the server has a standard configuration, simply indicate its address. gvSIG will try to find the servlet’s full address.1 If the servlet has a different path, you will have to write it into the dialogue box.
When the connection has successfully been made, the server version, its compilation number and a list of image and geometry services available are shown.
The service can be selected from the list or can be written in directly.
Finally, if the “Override service list” check box is enabled, gvSIG will delete any catalogue that has already been downloaded and will request them again from the server.
The next step is to select the ImageServer type service required by double clicking or selecting it and clicking on "Next". The dialogue box changes and an interface with two tabs appears (fig. 3). The first tab shows the metainformation given by the server about the service’s geographic limits, the acronym of the language it has been written in, units of measurement, etc. It is a good idea to find out if a coordinate system has been defined in the service (using EPSG codes) as this can directly influence the requests made to the server, as Figure 3 shows.
N.B. If no coordinate system has been defined in the service, the extension will assume that it is the same coordinate system as the one we have defined for the view.
We can continue by clicking on "Next" or return to the previous dialogue by clicking on "Change service”.
The last dialogue box is the layer selection. We can define a name for the gvSIG layer or leave the default value (the service name) in this window. A box appears below with a list of the service layers in tree form. When the mouse is moved over the layers, information about these layers appears: extension, scale ranges, type of layer (raster or vector image) and if it is visible by default in the service (fig. 4).
We can view each layer’s ID via the “Show layer ID” check box. This check box is useful when there are layers whose descriptor is repeated. Therefore, the only way to distinguish between them is via an ID, which will always be unique. A combo box is also available to select the image format we wish to use to download the images. We can choose JPG format if our service works with raster images or one of the other remaining formats if we want the service to have a transparent background.
N.B. The transparency in 24-bit PNG images is not correctly displayed in gvSIG 0.6. This type of files will be supported in gvSIG 1.0.
The box with the layers selected for the service appears below. If you wish, you can add just some of the service layers and also reorganise them. This makes the service view totally personalised.
N.B. The configuration cannot be accepted until a layer has been added.
N.B. Multiple selections of service layers can be made by using the Control and CAPS keys.
When the “Ok” button in the dialogue box is pressed, a new layer appears in the view (fig. 5). If no layer has been added previously, the extension of the ArcIMS layer is shown, as per the standard gvSIG procedure.
It must be remembered that when the layer extension is shown, the layers that make up the chosen configuration may not appear and a blank or transparent image appears instead. If this occurs, use the scale control dialogue box (V. Information about scale limits section).
An ArcIMS server does not define the spatial reference systems it supports as opposed to the WMS specification. This means that a priori we do not have a list of EPSG codes that the map server can reproject. In short, ArcIMS can reproject to any coordinate system and leaves the responsibility of how the projections are used to the client.
Therefore, if our gvSIG view is defined in ED50 UTM zone 30 (EPSG:23030) and we request a global coverage service (stored for example in the geographic coordinates WGS84, which correspond to code 4326) the server will not be able to reproject the data correctly because we are using global coverage for a projection of a specific area of the Earth.
However, the procedure can be carried out in reverse. If we have a view in geographic coordinates (and thus global coverage), services defined in any coordinate system can be requested because the server will be able to transform the coordinates correctly.
In short, requests to the ArcIMS server must be made in the view's coordinate system and they cannot be requested in another coordinated system.
Moreover, as we mentioned above, if an ArcIMS server does not offer information about the coordinate system its data is in, the user will be responsible for setting up the correct coordinate system in the gvSIG view. Thus, if a user with a view in UTM adds a layer which is in geographic coordinates (even though the server does not show it), the service will be added correctly but will take the view to the geographic coordinates domain (in sexagesimal degrees).
An additional effect is that if the view uses different units of measurement from the server, the scale will not be shown correctly.
The layers requested from the server can be modified via a dialogue box, which can be accessed from the layer’s contextual menu (fig. 6) just like the WMS layers. This dialogue box is similar to the box used to load the layer, apart from the fact that the service cannot be changed.
The extension allows us to consult the layers' scale limits which make up the requested service via a dialogue box which can be maintained in the view during the session (fig. 7). This window shows the layers on the vertical axis and the different scale denominators on the horizontal axis via a logarithmic scale. This box is small on screen but can be enlarged to improve the difference between the scales.
The vector layers, raster layers and the layers that can be seen on the current scale (marked with a vertical line) in a darker colour and the layers we cannot see above or below the current scale are differentiated by different coloured bars (described in the window legend).
Attribute information requests about the elements for a particular point is one of gvSIG’s standard tools. Its functionality is also supported by the extension.
The WMS specification allows information about several layers to be requested from the server in one single query. This is different in ArcIMS. We need to make one server request per layer required.
This means that no requests for unloaded layers or unseen layers that are not visible on the current scale or layers whose extension is outside the view will be made. Even if all these layers are filtered, the information request usually takes longer than is desirable because of this intrinsic feature of ArcIMS.
When all the request responses have been recovered, the standard gvSIG attribute information dialogue appears with each of the layers (LAYER) which return information as a tree. If we click on a layer, its name and ID appear on the right (fig. 8).
Under this node, if we are talking about a vector layer, all the records or geometric elements the server has responded to appear, and give each one their corresponding attributes (FIELDS).
If it is a raster layer, such as an orthoimage or a digital terrain model, it returns the values for each of the bands (BAND) in the requested pixel colour, instead of records.
The extension allows access to both ArcIMS image services and geometry services (Feature Services). This means that a server can be connected to and geometric entities (points, lines and polygons) and their attributes obtained. This is not dissimilar to WFS service access.
However, the variety of existing geometry services is much lower than the variety in the image server. There are two main reasons for this. On one hand, providing the public with vector cartography implies security problems because many bodies only want to offer the general public views and images. The vector data becomes either an internal product or must be paid for. On the other hand, this type of services generate much more traffic on the network and in the case of basic information servers could become a problem.
Loading a geometry layer is practically the same procedure as loading the image server as mentioned above (Accessing the service section and the following sections). In this case, the number of layers to be selected must be taken into account. If we wish to download all the layers offered by the service the response time will be very high.
The only difference between loading an image layer is that in this case we can choose whether we wish the layers to be downloaded as a group via a check box. This is useful for processing the vector layers as one layer when it needs to be moved and activated in the table of contents.
Unlike the image service, in which all the service’s layers appear as one unique layer in the gvSIG view, in this case each layer is downloaded separately and appears in the view grouped under the name defined in the connection dialogue.
Cartography symbols are configured in the server in one AXL extension file for both geometry and image services. We can divide symbol definition into two parts. On one hand, we can talk about the definition of the symbols themselves, i.e. how a geometric element, such as a line or polygon, should be presented. On the other hand, we can talk about the distribution of these symbols according to the cartographic display scale or to a specific theme attribute.
In ArcIMS terminology symbols are different from legends (SYMBOLS and RENDERERS).
There are various types of symbols: raster fill symbols, gradient fill symbols, simple line symbol, etc. The extension adapts the majority of the symbols generated by ArcIMS. Table 1 shows the ArcIMS symbols and indicates whether they are supported by gvSIG.
Label | Description | Supported |
---|---|---|
CALLOUTMARKERSYMBOL | Balloon-type label | NO |
CHARTSYMBOL | Pie chart symbol | NO |
GRADIENTFILLSYMBOL | Fill in with gradient | NO |
RASTERFILLSYMBOL | Fill with raster pattern | YES |
RASTERMARKERSYMBOL | Point symbol using pictogram | YES |
RASTERSHIELDSYMBOL | Customised point symbol for US roads | NO |
SIMPLELINESYMBOL | Simple line | YES |
SIMPLEMARKERSYMBOL | Point | YES |
SIMPLEPOLYGONSYMBOL | Polygon | YES |
SHIELDSYMBOL | Point symbol for US roads | NO |
TEXTMARKERSYMBOL | Static text symbol | NO |
TEXTSYMBOL | Static text symbol | YES |
TRUETYPEMARKERSYMBOL | Symbol using TrueType font character | NO |
Table 1: ArcXML symbol definition labels
In general, the most common symbols have been successfully “transferred”. Some of the symbols cannot be obtained directly from gvSIG (at least in the current version), such as the raster fill symbol or they need to be “adjusted” such as the different types of lines. This means that a raster fill symbol is not a symbol that can be defined by the gvSIG user interface, but it can be defined by programming.
gvSIG supports the most common types of legends: unique value and range and value themes as well as the scale-range control over the whole layer. ArcIMS goes much further in its configuration. It can generate much more complicated legends in which symbols can be grouped together, scale-range controls can be established for labels and symbols and different labelling based on an attribute can be shown (as though it were a value theme for labelling).
This group of legends can generate very complex symbols for a layer in the end. The current implementation status of the gvSIG symbols needs to be simplified to reach a compromise to recover the symbols that best represent the layer as a whole.
Label | Description |
---|---|
GROUPRENDERER | Legend which groups others together |
SCALEDEPENDENTRENDERER | Scale dependent legend |
SIMPLELABELRENDERER | Labelling layer legend |
SIMPLERENDERER | Unique value layer legend |
VALUEMAPRENDERER | Value and range themes |
VALUEMAPLABELRENDERER | Labelling themes |
Table 2: ArcXML legend definition labels
When a GROUPRENDERER is found, the symbol ArcIMS draws first is always chosen. Thus, in the case of the typical motorway symbol for which a thick red line is drawn and a thinner yellow line is drawn over it, gvSIG will only show the red line with its specific thickness.
If a scale dependent legend is discovered during a symbol analysis, this is always chosen. If more than one is discovered, the one with the greatest detail is chosen. For example, in ArcIMS we can have a layer with simple road symbols (only main roads are drawn) on a 1:250000 scale and based on this a different theme is shown with all types of roads (paths, tracks, roads, etc.). In this case, gvSIG will show this last theme as it is the most detailed.
If a labelling legend is discovered during a symbol analysis, it will be saved in a different place and will be assigned to the selected definitive legend. In the case of the VALUEMAPLABELRENDERER label, only the legend of the first processed value will be obtained as a label symbol. The rest will be rejected.
In short, it is obvious that the failure to adapt the legends for gvSIG is a simplification process in which different legend and symbol definitions must be rejected to obtain a legend which is similar to the original as far as possible. It is to be expected that the gvSIG symbol definition will improve considerably so that it can support a larger group of cases in the future.
Working with the layer is similar to any other vector layer, as long as we remember that access times may be relatively high. The layer attribute table can be consulted, in which case the records will be downloaded successively as we display them.
If we wish to change the table symbols to show a unique value or range theme we must wait as gvSIG requests the complete table for these operations. On the other hand, the downloading of attributes is only carried out once per layer and session and therefore, this wait only occurs in the first operation.
In general, if our ArcIMS server is in an Intranet, it will be relatively fast to handle, but if we wish to access remote services we may be faced with considerable response times.
The main feature to bear in mind when working with an ArcIMS vector layer is that the geometries available at any given time are only the ones displayed. This is because we can connect to huge layers but only the visible geometries are downloaded. As far as gvSIG is concerned, the geometries shown on the screen are the only ones available and thus, if we export the view to a shapefile for example, are only a part of the layer.
Finally, we need to remember that to speed up the geometry downloads they are simplified to the viewing scale in use at any given time. This drastically reduces the amount of information downloaded as only the geometries that can actually be "drawn" are displayed in the view.
Loading a geometry layer is practically the same procedure as loading the image server as mentioned above (Accessing the service section and the following sections). In this case, the number of layers to be selected must be taken into account. If we wish to download all the layers offered by the service the response time will be very high.
Unlike the image service, in which all the service’s layers appear as one unique layer in the gvSIG view, in this case each layer is downloaded separately and appear in the view grouped under the name defined in the connection dialogue.
After a few seconds the layers appear individually but are grouped under a layer with the name we have defined for it.
The layer symbols are established at random. A pending feature is to recover the service symbols and configure them by default so that gvSIG can display the cartography as similarly as possible to how it was established by the service administrator.
Web Map Context
Web Map Context (WMC) is another OGC standard (http://www.opengeospatial.org) which can be added to the list of standards of this type supported by gvSIG.
It can reproduce a view made up of Web Map Services (WMS) layers on any GIS platform which supports WMC. If your project has a view which contains WMS layers, you can export these layers. The result is an XML file with a specific format and .cml extension which can be imported by another platform on which the view it describes can be reproduced.
Web Map Context (WMC) is another OGC standard (http://www.opengeospatial.org) which can be added to the list of standards of this type supported by gvSIG.
It can reproduce a view made up of Web Map Services (WMS) layers on any GIS platform which supports WMC.
If your project has a view which contains WMS layers, you can export these layers. The result is an XML file with a specific format and .cml extension which can be imported by another platform on which the view it describes can be reproduced.
Exporting a view to WMC
Exports to WMC are currently limited to WMS type layers, although it is hoped that its functions will extend to all layers that comply with OGC standards in the future.
To obtain a WMC file, open a view in gvSIG and add the WMS layers you require.
Then go to the “View” menu and select “Export” and then “Web Map Context”.
The following dialogue will be shown.
N.B.: If you cannot find the "Web Map Context" option in the "Export" option, your project does not contain any WMS layers.
Basic mode only shows the compulsory properties which cannot be taken for granted by the application.
View: This defines which view is going to be exported to the WMC. The view which is currently active is selected by default.
Title: This is the title of the view which will be shown when your .cml file is loaded at a later date. The current title of the view is used by default but this can be changed.
ID: This field is also compulsory and represents a file ID which must be unique.
File: You can search for the place you wish to save the .cml file in from the "Browse" button.
Version: Use this tool to specify the WMC version you wish to use.
The version 1.1.0 is selected by default as it is the most highly developed and the most recommended. However, several applications and geoportals are often limited to a specific version.
gvSIG currently supports Web Map Context in its versions 0.1.4, 1.0.0 and 1.1.0.
Extent: This defines the extension of the map to be exported.
Defined by the view’s extent. This option only exports what we can currently see in the view.
Use full extent. This extension is better to use the full WMS layers depending on how their respective servers define them.
If you click on the “Advanced” button, the advanced configuration dialogue will drop down. This allows you to define more properties to obtain a complete WMC.
Abstract: This contains a summary of the view defined by WMC.
Keywords: This list of words allows you to classify and “metadata” the WMC.
URL description: If you have a web site which refers to this WMC, write its link here.
URL logo: If you have an image associated with this WMC, write its link here.
Map size (pixels): This defines the pixel size that the WMC-defined view will have. The current gvSIG view size is used by default but you can customise the size if you wish.
Contact info: Information that allows third parties to contact the WMC author.
Importing Web Map Context allows you to use gvSIG to open views with WMS layers which have been created with other platforms or with another gvSIG.
Use the "View” menu and select “Import” and then “Web Map Context”.
The WMC file selection dialogue opens.
Choose the WMC file you wish to import. On the right, you can specify how you wish to view the layers.
New view: This adds a new view to the current project and loads the WMC as specified in the file.
Layers in the active (current) view: This option only appears if the active gvSIG window is a view. It allows you to quickly add the layers to the current view.
Layers in other view: This adds the layers defined by the WMC in the chosen view. In this option, a list of views appears to select the view that will contain the new layers.
Click on the “Open” button to import the file based on your preferences.
Alphanumeric data
File
Introduction
Tables are documents which contain alphanumeric information. Tables are made up of rows or records (which represent each of the elements in the data base) and columns or fields (which define the different attributes of each element).
Row or record: Used to represent the different elements in the table.
Column or field: The types of attributes which define each element.
Cell: A cell is the intersection of a record and a field. A cell is the minimum working element and may contain information.
Record information: This provides information about the total number of elements (records) contained in the table.
All the vector information layers have their own “Table of attributes”. Each graphic element in a particular layer has its corresponding record in the “Table of attributes”.
To select elements in the table, left click on them. Use the “Control” and “Shift” (CAPS) keys to select more than one record.
Adding a Table
You can load a table in gvSIG in two ways:
- From the “Project manager”
- From the “View”
Select “Tables” as the document type from the “Project manager” and click on “New”. A dialogue box will open in which you can add the table.
When you click on the “Add” button, a browser window will open.
Specify the type of file you wish to load in gvSIG in “Files of Type”. When you have located the file that contains the table, select it so that it is added to the “File name” text box and click on “Open”. You will automatically be returned to the "Add table" dialogue. If you wish to add more than one table, click on "Add" again and repeat the process. When you have finished, click on “Ok”. The table will then be displayed. It will also appear in the “Project manager” text box.
Click on the "See table of attributes" button from the display window of a view with at least one active layer, i.e. a layer that is selected in the ToC,
or go to the "Layer" menu and then select the "See table of attributes" option.
The table will automatically be added to the project.
If you minimise the view, go back to the "Project manager" and select "Tables" as the document type, you will see that the table displayed in the view appears in the text box.
Table properties
You can access “Table properties” from the “Project manager” window.
You can use this window to:
- Rename the table.
- Edit the creation date.
- Add an owner to the table.
- Add comments.
When you have input the changes, click on “Ok” and they will be saved.
Table tools
When a table has been loaded, either from the “Project manager” or from the view, the tools associated with the table will appear in the tool bar.
A new menu, called “Table”, will also be activated in the tool bar. This can also be used to access the different tools.
You can access this option by clicking on the following button
or by going to the “Table” menu and then to “Statistics”.
The “Statistics” tool allows you to obtain the most common statistical values.
N.B.: Remember that the tool will not be activated until you select a numerical field.
If you wish to obtain field statistics, select the field (left click on the field heading), then click on the “Statistics” tool.
You can only obtain statistics from a series of records, firstly, select the field the values are located in, then select the desired records, and click on the “Statistics” tool.
You can access this tool by clicking on the “Filter” button in the tool bar
or by going to the “Table” menu and then to “Filter”. The “Filter” tool works in much the same way as in the “Views” section.
gvSIG allows selections to be made using filters. Selection using filters allows you to define exactly what you want to select, including several attributes, operators and calculations.
Requests can be made using logical operators, such as “equals” “more than” “different from”, etc.
If you press the “Filter” button in the tool bar, a dialogue window will appear to define your request.
Fields: Double click on the field you wish to add to your request from the “Fields” list in the layer.
Logical operators: These allow you to insert a logical expression into your query by clicking on them.
Values: This shows a list with the different values the selected field has. If you wish to add a value to the request, double click on it.
Request: This is the window which represents the request to be made. You can write here directly.
Selection buttons: These buttons make the request using:
- “New set” (deletes any previous selections).
- “Add to set” (adds the elements selected by the query to the existing elements).
- “Select from set” (makes the request from the selected elements).
N.B.: In a gvSIG view, when you activate a layer by selecting it in the ToC, the filter tool will also be activated in the tool bar, even though no table has been loaded. This allows you to work with the table associated with the selected layer. The "Table" menu will also be added in the menu bar. This provides another way to access the filter tool when it drops down.
With the select duplicates tool you can quickly locate duplicate geometries through the attribute table.
The Locate Duplicates tool can be used to quickly locate duplicate geometries in a layer's attribute table.
To locate duplicate geometries in a layer, open the layer's attribute table and select the field (by clicking on its header) for which you want to select duplicates.
Then click on the "Select Duplicates" button.
Notice that the selected geometries have duplicate attribute values for the specified field:
You can access this tool by clicking on the following tool bar button
or by going to the “Table” menu and then to “Ascending order”.
The “Ascending order” tool allows you to order the table records.
- It orders the values from the lowest to the highest in a numerical field.
- It orders the records in alphabetical order, starting from “A” in a text field.
You can access this tool by clicking on the following tool bar button
or by going to the “Table” menu and then to “Descending order”. The “Descending order” tool allows you to order the table records. It orders the values from the highest to the lowest in a numerical field. It orders the records in alphabetical order, starting from “Z” in a text field.
The “Join” tool allows two tables to be joined via a common field. You can also access this tool by clicking on the following button
or by going to the “Table” menu and then to “Join”. To join the two tables, carry out the following steps: Firstly, specify the source table the join is to be made from.
Then specify the field to be used for the join.
Then indicate the table you wish to join to the first one.
Finally, indicate the field in the second table which is common to the first one.
If you open the data source table, you will see that the fields of the destination table have been joined. The name of the field added to the table is identified by the word “Join_(Field name)”
This tool allows the records selected in the table to be moved to the top of the table. You can access this tool by clicking on the following button in the tool bar
or by going to the “Table” menu and then to “Move selection to top”. The following table shows an example in which two records have been selected to move to the top of the table.
If you click on the button, the table will change the position of the selected records.
Although .dbf files should contain a byte to indicate character encoding, this information is usually not present. gvSIG provides the Shalom tool that sets the encoding and then reads the information in the table using that encoding. If the encoding is not set in this way then gvSIG will read the table data using the default encoding.
It is possible to set the character encoding of a table by selecting Table > Set encoding to .dbf files from the menu bar. Choose the table for which the encoding needs to be set and then select the encoding type (charset). This encoding setting is recorded permanently in the table.
Now the table can be added to the gvSIG project. When gvSIG opens the table the character encoding is read and the characters in the table are correctly displayed.
Note: The correct display of characters depends not only on the encoding setting, but also on the virtual machine that is installed (specifically Java 1.6, which supports more encodings than Java 1.5).
This option can be accessed by opening the Window > Preferences menu and then selecting DBF default encoding.
gvSIG will use the selected encoding as the default when adding a .dbf file to a project, and will also use it when exporting a table that uses a specific encoding.
The export of a table might not be correct if the character encoding is incorrectly configured in the gvSIG preferences.
Adding a table from a CSV file
From version 0.5 onwards, gvSIG can read information contained in a plain text file, whose fields are separated by a semi-colon.
To carry out this operation, go firstly to the “Project manager”. Select “Tables” and then click on “New”. A search dialogue box will open. Click on “Add” and the file browser will appear in a new window (select “csv string” in “Type of file” to show the csv files).
When the .csv file has been selected, click on “Open”.
If you click on “Ok”, the data of the table you have added will be shown.
Adding a table from a JDBC data source
The contents of a data base table can be imported to gvSIG using data base managers (PostgreSQL, MySQL, GBMS-HSQLDB, ODBC). gvSIG processes the information obtained just like any other table.
Note: Oracle drivers installation is required for access to Oracle Spatial databases of the geoBD extension. Please follow the steps bellow: Go to Oracle Database 10g Release 2 (10.2.0.3) drivers.
Accept the license terms. In the next page, download the file ojdbc14.jar (1,545,954 bytes) - classes for use with JDK 1.4 and 1.5. (Registration required)
Move this file to the next folder:
- Windows:
Move the file to the:
bin\gvSIG\extensiones\com.iver.cit.gvsig\lib
folder, that is in the directory where gvSIG is installed.
- Linux:
Move the file to the:
bin/gvSIG/extensiones/com.iver.cit.gvsig/lib folder
, that is in the directory where gvSIG is installed.
To load a table with the information obtained from a JDBC data origin you must:
Firstly, go to the "Project manager" and select "Tables". Then click on "New". Select the “Data base” tab in the window that opens (“New table”) and configure the data base server connection parameters:
If the information entered is correct, a new table will be created in gvSIG with the information contained in the original JDBC table.