Tuesday, October 8, 2013

Support of EPSG 5806 in gvSIG CE

We are pleased to announce the support of EPSG 5806 in gvSIG CE. This is a cartesian coordinate system used in engineering environments (for example, surveys) as an XY, non-world and unprojected coordinate reference system. We began this task by evaluating the problem [1] and finally we produced a document with a full analysis as well as the possible solutions [2].
After some work, we managed to implement a good solution in the short term, minimizing the efforts. We leave the integration of GeoTools as a possible solution in the middle-long term [3].
This feature will be available in the next gvSIG CE release.
Thank you very much to David Bibby from Landesdenkmalpflege Baden Württemberg for supporting this feature and to Benjamin Ducke for its contribution and further development.
A continuously updated release announcement, detailing the progress on new features and bug fixes can be found here
Best regards
Victor González

[1] Evaluation of how to implement a cartesian coordinate system support (EPSG:5806)
[2] Cartesian coordinate system support (EPSG:5806)
[3] Conclusions

Tuesday, September 3, 2013

SQLite support

Another nice feature for gvSIG CE: we have implemented SQLite support as a new
gvSIG CE extension.

With this new development it is possible to add a new layer to a view from
a SQLite file with spatial data. Besides, it is possible to load SQLite files without
spatial data (or with spatial data but ignoring it) as new tables in gvSIG CE.

In order to add the layer/table, a new wizard has been created. This wizard is very
similar to the wizard for simple files but adds some extra inputs on the bottom to
specify which of the tables contained in the SQLite file must be loaded and which
geometry column to use if it is going to be loaded as a layer:

Moreover, the SQLite support is not reduced to data visualization. It is also possible
to edit SQLite data by using the common editing tools for layers and tables. For this
purpose, the new extension uses GDAL/OGR to access SQLite data, which is a guarantee of stability and performance.

In the technical aspect, we have used the official GDAL/OGR Java bindings to access
GDAL/OGR from Java. As a side task, we have also replaced our custom JGDAL bindings, used for raster data, with the same official GDAL Java bindings. Thus, we don't have to maintain the JGDAL bindings but simply build the GDAL ones.

The GDAL version we have used for this development is 1.10. This feature will be
available in the next gvSIG CE release.

Best regards
Victor González

Sunday, July 21, 2013

Patches for better window management

Dear all,
the borders of internal windows were just one pixel thick, so it was very hard to e.g. resize a view or attribute table window.
With this update you should see the difference immediately. The broader window borders apply to all resizable internal windows in gvSIG CE (views, maps, attribute tables, etc.).
The updated Plastic XP theme has much wider borders and uses a thin black outline, which makes it easier to tell apart the contents of overlapping data windows.

Have fun!
Benjamin Ducke

Wednesday, July 10, 2013

Java version of SEXTANTE

Dear all,

we are pleased to announce that you can download the newest Java version of SEXTANTE in gvSIG CE.
We have also updated the SEXTANTE user manual.
Would you like to improve the Java version of SEXTANTE? Your help is well appreciated!

If you are interested in improving any aspects of the SEXTANTE development, we encourage you to provide additional human resources to the project and work e.g. on some of these issues: bug fixing, creating new functionalities, writing documentation, customizing SEXTANTE, etc.
Contributing and participating actively in the development of SEXTANTE is definately important to keep growing this wonderful geospatial library.

If you are interested in collaborating on one of these or any other aspects, please sign up to our community mailing list. Once there, please introduce yourself and tell us what you are interested in.
Best regards,
Ruth from gvSIG CE Team

Friday, June 28, 2013

AGIT 2013

Hello to all,

I would like to announce that the AGIT conference will take place in Salzburg, Austria next week.
The OSGEO-day will take place on Friday, 6th of July at the Expo Foyer (9am - 3.30pm). You get all information on current trends in Open Source Software there, while visiting AGIT Expo, Presentations, Posters and Workshops!

The following events at the gvSIG CE and SEXTANTE user meeting might be interesting for you:

Thursday 4th of July `13:
  • 2pm - 3.30pm: Workshop K12. Title "GRASS / gvSIG Sextante - Effektive Nutzung von GRASS GIS zur Datenprozessierung unter gvSIG CE/SEXTANTE" (Benjamin Ducke, GIS Developer)
  • 4.30pm - 6pm: Workshop K13. Title "Kartengestaltung mit gvSIG - Kartenerstellung und Bearbeiten von Legenden mit gvSIG CE" (R. Schönbuchner,CSGIS GbR)
Friday 5th of July '13:
  • 12.10am - 12.30pm: Presentation. Title "Geoprozessierung mit Open-Source Desktop GIS: gvSIG CE, SEXTANTE und GRASS GIS" (B. Ducke, GIS Developer)
  • 12.30pm - 12.50pm: Presentation. Title "survey2gis: eine flexible Lösung für den Transfer von Vermessungsdaten ins GIS" (D. Bibby, Landesamt für Denkmalpflege BadenWürttemberg)
    (survey2gis can be used as an extension of gvSIG CE!)

The whole program of the conference can be downloaded from here.
Best regards,
Ruth Schönbuchner

Wednesday, May 29, 2013

gvSIG CE at FOSSGIS 2013

Dear all,

FossGIS 2013 is taking place from 12th - 14th of June `13  in Rapperswil, Switzerland.
All information regarding registration, location and program of the event can be found at [1].

I would like to announce some topics regarding gvSIG CE and invite all of you to join:

- "Geoprozessierung mit Open-Source DesktopGIS": Benjamin Ducke will present gvSIG CE with SEXTANTE and GRASS GIS, which together provide a powerful tool for all matters relating to the theme "geoprocessing":

- "Kartenerstellung und Bearbeiten von Legenden mit gvSIG CE": In this 1.5 hours workshop, Ruth Schönbuchner will give an overview on gvSIG CE capabilites regarding labelling, legend generation and map layout production:

- Share interests and discussion at gvSIG CE BoF (Birds-of-a-Feather)-meeting on thursday, 13th of June `13 room no. 1.271 (table 1):

We are looking forward to meet you at FossGIS in about 2 weeks!
Best regards,
Ruth Schönbuchner

[1] http://www.fossgis.de/konferenz/2013/

Friday, May 24, 2013

Evaluation of how to implement a cartesian coordinate system support (EPSG:5806)

Hi all,
some of the gvSIG CE users need this CRS, so we are evaluating how to implement it.
Please, if you can, read the wiki, add anything you consider important and share your thoughts.

Monday, May 20, 2013

4 developers more with write access to our SVN

Dear all,
if you haven't followed the gvSIG CE developer list, maybe you don't know that we have now 4 new developers with write access to our SVN. All of them are well known FOSSGIS developers:

- Victor Gonzalez is a Computer Engineer by the Valencia Politechnical University. Victor was awarded with the 52º North Student Innovation Prize in 2009 with the project “SQL Script Profile for 52°North WPS-T”. He has participated in projects like GearScape, GGL, or gvSIG. He is making an amazing work in gvSIG CE since more than one year developing new functionalities, hunting bugs, working on the integration of GeoTools in gvSIG CE, getting the code base into better shape, etc.:
- Export map layouts to raster formats
- Geotools integration methodology
- clean-up work

- Jorge Arévalo is a Computer Engineer by Universidad Autónoma de Madrid, UAM. He has been collaborating with PostGIS and GDAL creating the PostGIS Raster GDAL driver. He has been solving some GDAL related open cases. gvSIG CE has now an amazingly good GDAL drivers support.

- Micho Garcia studied Ocean Sciences at the Vigo University, and has devoted his professional live to GIS development. He has been updating the EPSG database

- Francisco Puga is an ICT engineer by formal training and has participated in several NGOs related to technology, development and free software. He has sent us some patches for the java version of SEXTANTE:
- Models are not loaded by means of the "load button" in the settings
- GridCalculator does not work with models in batch mode
- Error in sextante.history file prevent use the toolbox

We really appreciate the work you are doing.
See you soon
Jose Canalejo

Thursday, May 9, 2013

gvSIG CE using GDAL 1.9.2 to read raster data, including ECW, JP2, MrSID and Lidar files

Recently, I've been working for gvSIG CE project, thanks to the folks of geomati.co (I'm part of the team now!). I was solving some GDAL related open cases (this, this and this). the aim is to get a functional and stable gvSIG CE 1.0 version. There are still a couple of cases to solve (this and this), but I think we're pretty close. I'd like to explain what I did to solve these cases.
Make gvSIG CE work with GDAL 1.9.x
This bug was hard to find but easy to fix.  First, a 1-minute introduction to GDAL use in gvSIG CE. gvSIG CE uses a JNI wrapper (based on GDAL 1.7.x GDAL packed JNI wrapper) to make C++ native calls to GDAL library. There are 2 important GDAL JNI wrapper classes involved in most GDAL operations:
Gdal.java (it interacts with native C++ GDALDataset class)
GdalRasterBand,java (it interacts with native C++ GDALRasterBand class)

Both classes inherit from the same base class: JNIBase. This class defines a function named baseSimpleFunctions that calls one of several native C functions, depending on an input parameter. But some of these native C functions are GDALDataset-based, and other are GDALRasterBand-based. I mean, the pointer passed to them doesn't hold the same C structure (wrapping C++ object) in all cases.
And here was the thing. To actually read the raster data, the Java function GdalRasterBand::readRaster is called. This function checks the position and size of the region being accessed, comparing it with the raster dimensions. To check this, the C functions getRasterXSize and getRasterYSize are called. These functions expect a pointer to a GDALDataset C object, but the GdalRasterBand Java class provides a pointer to a GDALRasterBand C object. I had to replace those Dataset-based calls to RasterBand based calls, to match the underlying C structure.
Replace ECW and MrSID driver with GDAL
First, a few comments on these formats. ECW stands for enhanced compression wavelet. This propietary format is a high-performance image-compression format designed specifically for geospatial imagery. It's patented and owned by Intergraph. More information here.
Intergraph provides a license needed SDK for encoding data and a free SDK for reading. Since version 4.1, this free SDK is only available for Desktop development on Windows systems. There are promises to include Linux support since 5.0 version, but gvSIG CE doesn't plan to support ECW and other proprietary formats. So, I worked with the last known version working on Linux systems too. This is 3.3.
About MrSID, it stands for multiresolution seamless image database. It's a proprietary format too, owned by LizardTech. As happens with ECW, there's a free SDK to read MrSID files. It can be downloaded from here (MrSID SDK, under Tools & Utilities. Free register required). And as happens with ECW too, gvSIG CE won't directly support this format. So, it delegates in GDAL.
In both cases, we'll need to compile GDAL with the proper support. So, I had to download and compile MrSID and ECW libraries and build GDAL using --with-ecw and --with-mrsid options.
As there is a JNI wrapper for GDAL, there are JNI wrappers for ECW and MrSID. The goal was: get rid of them, and give GDAL credentials to handle these formats. Four steps involved here:
- Compile GDAL with ECW and MrSID support, as said
- Tell GDAL to take care of those formats for reading (class GdalDriver)
- Unregister ECW and MrSID drivers from gvSIG CE raster library (libRaster)
- Delete ECW and MrSID wrappers and native code.
Once done, you have gvSIG CE using GDAL 1.9.2 to read raster data, including ECW, JP2, MrSID and Lidar files (previously managed by ECW and MrSID drivers).

Friday, March 22, 2013

SEXTANTE news and inofficial preview

Dear All,
As some of you may already be aware, there have been substantial changes to the SEXTANTE project.
The website at www.sextantegis.com now focuses on a new implementation of SEXTANTE, written in Python and designed primarily to run from within QGIS.
In response to this, we have contacted Victor Olaya, the original creator of SEXTANTE, and he agreed for us to transfer the Java source code to the gvSIG CE SVN. From now on, we will keep developing SEXTANTE as an official part of the gvSIG CE project.

Over the past few weeks, I have made extensive changes to the SEXTANTE settings system and the graphical Modeler. You can download a snapshot of the current SEXTANTE version here
Copy the ZIP into "../extensiones/es.unex.sextante" and unpack it, overwriting any existing files. You might also want to delete your old settings in the "Sextante" folder in your home directory.

The most important improvements are:
1. Renovated settings pages.
2. Better portability: GRASS, SAGA and R are by default looked for in subfolders of the SEXTANTE installation folder.
3. Brought back the ability to set up a GRASS installation anywhere on your system as an algorithm provider.
4. Vastly improved graphical modeler. This tool is now stable and should be fit for productive work.
5. GRASS vector modules work on 64 bit Windows.

For now, you will also need to select "High compatibility mode" on the GRASS settings page. This will make sure that SEXTANTE runs with any version of GRASS 6.4.x.
I would especially like your feedback on the new graphical modeler (note that the documentation is currently out of date). If you find any problems, please report them via the bug tracker (don't forget to select "SEXTANTE" as current project first).

Benjamin Ducke
gvSIG CE Team