Hi, Just to notify you that most of RFC 41 (multiple geometry field support in OGR) has now been commited. The last remaining part will be the upgrade of the ILI driver done by Pirmin.
As a bonus to the RFC, support for multiple geometry fields has also been added to the SQLite SQL dialect (but not yet in SQLite table layer themselves) I've also started "converting" a few OGR drivers (Shape, KML, LIBKML, GPX, GML, VRT, GeoJSON, FileGDB, EDIGEO, OSM and GeoRSS) that are not in the scope of RFC 41, so that the SRS of their unique geometry field definition is properly set. To know if a driver has been upgraded, it is a matter of running test_ogrsf on a sample dataset and checking for the following warning : WARNING: poLayer->GetSpatialRef() and poFDefn->GetGeomFieldDefn(0)- >GetSpatialRef() differ. If folks are willing to help upgrading other drivers, you're welcome ! http://trac.osgeo.org/gdal/changeset/26448 should show you how to do that in simple situations. This is mostly a matter of adding the following snippet : if( poFeatureDefn->GetGeomFieldCount() != 0 ) poFeatureDefn->GetGeomFieldDefn(0)->SetSpatialRef(poSRS); and we can also remove the implementation of GetSpatialRef() that is then not necessary ( the base implementation of OGRLayer::GetSpatialRef() will return poFeatureDefn->GetGeomFieldDefn(0)->GetSpatialRef() ) For more complex situations (but I don't think there are a lot of such OGR drivers), i.e. where there was lazy resolution of the SRS in OGRLayer::GetSpatialRef(), the upgrade of the shapefile driver in http://trac.osgeo.org/gdal/changeset/26442 can be used as an exemple. Even -- Geospatial professional services http://even.rouault.free.fr/services.html _______________________________________________ gdal-dev mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/gdal-dev
