Opened 8 years ago

Closed 3 years ago

#5603 closed enhancement (wontfix)

Rasterlite2 (spatialite)

Reported by: mj10777 Owned by: Even Rouault
Priority: normal Milestone: closed_because_of_github_migration
Component: GDAL_Raster Version: svn-trunk
Severity: normal Keywords: spatialite, libgaiagraphics, rasterlite, rasterlite2
Cc:

Description

Adding support for new 'Rasterlite2' (not to be confused with 'Rasterlite').

Although the development of 'Rasterlite2' has not yet been completed, the probability is high, that by the time the Driver is completed, it will be.

Although both are from spatialite, Rasterlite2 is a completely different product and therefore should be considered as a new Raster-Driver.

The development of Rasterlite (or 'Rasterlite1') has been not be declared 'obsolete / deprecated', but to my knowledge no further development is to be made.

Rasterlite2 has however replaced libgaiagraphics (as of 2014-06-07)

https://groups.google.com/forum/#!topic/spatialite-users/KplXldo1lLs

and therefore should be consider a completely new Driver and NOT an update or extension of another.


In the last months I have been working with Rasterlite2, so I would be interested in working on the creation of this Driver and submit the result here.

As a starting point, I would start with the present 'Rasterlite' in 'gdal/frmts/rasterlite'.

My assumption at this point, not being that familiar with gdal drivers, is that the 'Rasterlite' has been correctly done and can be used as a starting point.

It may be a good idea for someone more knowledgeable than I to have a look and see if this has been done in the 'preferred way'.


While just building a qgis project with rasterlite databases, I noticed that the Rasters are not showing.

The terminal shows sql-errors:'near ",": syntax error'

On my german machine the decimal points are showing up as decimal commas and there is a missing '(' after the first WHERE.

When corrected, the image is shown correctly in spatialite_gui.

I will look into this now and if I find the cause, will report it as an extra 'Rasterlite' error.

Attachments (1)

20140806.diff_minimal_config_rasterlite2.diff (4.9 KB ) - added by mj10777 8 years ago.
A possible mininmal confuration change to support a new driver rasterlite2 (without the added directory 'frmts/rasterlite2'))

Download all attachments as: .zip

Change History (6)

comment:1 by mj10777, 8 years ago

Please ignore the part about the missing '(', the last ')' was from the sqlite3_prepare message:

ERROR 1: In ExecuteSQL(): sqlite3_prepare( ...)

comment:2 by mj10777, 8 years ago

After making correction to the source of 'RasterLite' and also 'sqlite'

everything shows up correctly

An extra ticket has been opened for this:

[GDAL] #5604: missing CPLString().FormatC(..) when using doubles - fails on systems using Decimal.Comma

by mj10777, 8 years ago

A possible mininmal confuration change to support a new driver rasterlite2 (without the added directory 'frmts/rasterlite2'))

comment:3 by mj10777, 8 years ago

I have attempted to work out properly the way to add a new driver with

proper 'configure' and other options.

This is the first time I have done any work on a configure script, so I used the logic found for spatialite as a base.

It tests for 'yes' or 'no' or a user defined directory

If spatialite 412 is fulfilled

Check for the 'rl2_init' function is found in the library

This is not intended to be submitted into trunk, but for checking for obvious errors that could now be corrected

I have prepared a copy of 'frmts/rasterlite' based on the code of trunk r27567 called 'frmts/rasterlite2'.

All 'rasterlite' have been renamed to 'rasterlite2' (lower and uppercase), but otherwise no further changes.

I have tested different configuration (with/without 'rasterlite2') and it looks as everything works correctly.

So I will now start the rasterlite2 specific work in determining correctly that this a 'RasterLite2' or not.

comment:4 by mj10777, 8 years ago

Question about RasterliteDataset::GetBlockParams:

Is it essential that this function actually reads the raster-data and returns the information that is determined by gdal OR

if the demanded information can be reliably retrieved from the raster-config?

One major difference between RasterLite1 and RasterLite2 is:

that RasterLite2 can mostly return RasterData in a form that is required by the user.

This means, that even if gdal cannot directly read the internal stored image format - RasterLite2 can return a format that gdal can support.

comment:5 by Even Rouault, 3 years ago

Milestone: closed_because_of_github_migration
Resolution: wontfix
Status: newclosed

This ticket has been automatically closed because Trac is no longer used for GDAL bug tracking, since the project has migrated to GitHub. If you believe this ticket is still valid, you may file it to https://github.com/OSGeo/gdal/issues if it is not already reported there.

Note: See TracTickets for help on using tickets.