Ticket #4331 (new enhancement)

Opened 19 months ago

Last modified 7 months ago

Adding SXF file format driver

Reported by: bidandou Owned by: bidandou@…
Priority: normal Milestone:
Component: OGR_SF Version: unspecified
Severity: normal Keywords: SXF
Cc: warmerdam, dron

Description (last modified by dron) (diff)

the goal of the work is to add a GDAL driver supporting the SXF (Storage and eXchange Format). This file format is largely used in the eastern europe, and is primarly produced by a GIS software Called Panorama GIS MAP developped by the Russian KB Panorama Entreprise
informationons on :  http://www.gisinfo.net/
Specification on (in Russian Language) :  http://gistoolkit.ru/download/doc/sxf4bin.pdf

Attachments

drv_sxf.html Download (302 bytes) - added by bidandou 19 months ago.
makefile.vc Download (194 bytes) - added by bidandou 19 months ago.
GNUmakefile Download (224 bytes) - added by bidandou 19 months ago.
ogr_sxf.h Download (7.1 KB) - added by bidandou 18 months ago.
ogrsxfdatasource.cpp Download (12.2 KB) - added by bidandou 18 months ago.
ogrsxfdriver.cpp Download (3.2 KB) - added by bidandou 18 months ago.
org_sxf_defs.h Download (14.8 KB) - added by bidandou 18 months ago.
sxf.h Download (60 bytes) - added by bidandou 18 months ago.
sxf.2.h Download (60 bytes) - added by bidandou 18 months ago.
systypes.h Download (60 bytes) - added by bidandou 18 months ago.
ogrsxflayer.cpp Download (20.2 KB) - added by bidandou 18 months ago.

Change History

Changed 19 months ago by bidandou

Changed 19 months ago by bidandou

Changed 19 months ago by bidandou

  Changed 19 months ago by rouault

  • cc warmerdam, dron added

I have several high level remarks and questions :

  • For significant contributions like a new driver, we'd ask that you publicly declare in an email to gdal-dev mailing list that your contribution matches the requirements of the "Legal" paragraph of http://trac.osgeo.org/gdal/wiki/rfc3_commiters
  • Do you have rights to publish sxf.h under the X/MIT licence ? There's no copyright notice in the file, and I've got under the impression that it might come from another project. Please correct me if I'm wrong.
  • Is there a public specification of the format somewhere ?
  • You should put your full name in the copyright notice of the files, not the osgeo id.
  • The first thing to fix is the indendation of the files. Please don't use tab characters, but use instead 4 spaces for each indentation level. See http://trac.osgeo.org/gdal/wiki/rfc8_devguide
  • Remove dead code that is commented
  • Remove printf statements. You can use CPLDebug infrastructure if needed
  • Do you have links to SXF datasets that could be used to test your contribution ? Ideally we would need a freely redistribuable and small datasource so that a regression test can be written.
  • With which OS did you test your driver : Linux, Windows ?
  • Your code will only work on little-endian processors. Not a critical issue for now however...

Note : to avoid the proliferation of files when you update new revisions of your work, you can overwrite existing files attached to the ticket by checking the "Replace existing attachment of the same name" box.

CC'ing Andrey Kiselev who has contributed stuff in GDAL for Panorama SRS

Merci de votre contribution !

  Changed 19 months ago by bidandou

  • description modified (diff)

  Changed 19 months ago by bidandou

  • description modified (diff)

  Changed 19 months ago by bidandou

  • description modified (diff)

  Changed 19 months ago by bidandou

  • description modified (diff)

  Changed 19 months ago by bidandou

SXF datasets that could be used to test the contribution : some SXF files exist on thos URL :
 http://gistoolkit.ru/download/

the most interesting thing is the availability of a free downladable softwares in the above site alowing the cration and the export of SXF files in different configurations to do tests.

see:  http://www.gisinfo.net/download/download.htm

for the OS I used to test my driver : Windows XP SP3 and Windows 7?

I'm Using Visual Studio 2008 Expess Edition for the developpement. dont try to compile with gcc.

I submit the files above just to know how does mechanism of contriburions work. My work is not finished.

Thank you for your interest, soon I'll correct my work and I'll submit more comprehensible code.

Changed 18 months ago by bidandou

Changed 18 months ago by bidandou

Changed 18 months ago by bidandou

Changed 18 months ago by bidandou

Changed 18 months ago by bidandou

Changed 18 months ago by bidandou

Changed 18 months ago by bidandou

Changed 18 months ago by bidandou

  Changed 18 months ago by rouault

Ali, (sorry if I misidentified your first name ?)

Thanks for the updates.

  Changed 18 months ago by bidandou

Yes you are right, the ogr_sxf_defs.h comes from the spec of the SXF file format transtated to english.

you can find an SXF file in :

 http://gistoolkit.ru/download/examplemap.zip

For now I consider that my work is not ready enough, there still some importants thinks to do, so I'd like to have time to do that.

Thank you for you assistance

  Changed 18 months ago by dron

  • description modified (diff)

  Changed 18 months ago by dron

  • description modified (diff)

follow-up: ↓ 12   Changed 18 months ago by dron

Hi,

Just found a time to look into this issue.

I should say that I have a code for SXF format developed by me several years ago, but it is still out of OGR tree because there were no pressing need for that driver (and the OGC SF model is not sufficient for SXF, so I developed a separate library for SXF reading and writing to be able to explore all the features of the format). Moreover, I actually have two drivers: the one based on SDK from KB Panorama, and another one with my own code only. I should note that official format spec is bad and vague and a bit of experimentation and reverse engineering is needed to properly read SXF files.

There is a separate contribution now, so I am bit late with my own stuff, but it is certainly a time to introduce this new driver. So we need to come to some solution how we will proceed. I can invest some time for this development and push my code too. Though I don't want to put down a new contributor I should note that my code supports more SXF variations and goes further. Also it is architecture and compiler independent.

Best regards, Andrey

in reply to: ↑ 11   Changed 18 months ago by bidandou

Hi,

I'm happy to see that idea of the introduction of the new SXF driver is well accepted by you. If you got code that can drive the development of the driver forward you're invited to contribute with me if you want, even if you want to take the lead of the development process, I have no objection.

The most important to me is the introduction of this new driver in GDAL, and making it accessible to all the people that want it.

Elsewhere, if you haven't enough time, you can send me the code you developed and I will introduce it my own work (with your copyright of course).

Best regards, Ali

  Changed 17 months ago by dron

I am working on integration of my code in GDAL now, I hope it will be ready at the end ow the week. I will put the code here for review after that.

Best regards, Andrey

follow-up: ↓ 15   Changed 17 months ago by warmerdam

Andrey, will this be in for Beta2 in the next few days? Or should we defer this to post 1.9?

in reply to: ↑ 14   Changed 17 months ago by dron

Replying to warmerdam:

Andrey, will this be in for Beta2 in the next few days? Or should we defer this to post 1.9?

Definitely it should go in the next release. It will need testing and maybe some improvements.

  Changed 12 months ago by bidandou

  • milestone changed from 1.9.0 to 2.0.0

  Changed 9 months ago by bidandou

Hi Andrey,

I see that nothing is changing about SXF driver and no new code is posted to the gdal tree.

If you are not interested on working on that driver, please tell me so I continue my work.

Best regards, Ali.

  Changed 7 months ago by bidandou

Hi warmerdam,

I see that nothing is changing about SXF driver and no new code is posted to the gdal tree from more than 10 months.

I want to know if I can work again on that driver, please tell me if I can continue my work.

Best regards, Ali.

Note: See TracTickets for help on using tickets.