Le lundi 23 février 2015 19:40:42, Matt Perry a écrit :
> I'm running into some strange behavior with the Spatialite driver,
> accessing features through the ogr python bindings.
> 
>     layer.GetFeature(0) == None
>     layer.GetFeature(1) == ...   # first feature
> 
> for spatialite layers only; all other drivers appear to be 0-indexed.
> 
> More details and code to reproduce:
> https://github.com/perrygeo/python-raster-stats/issues/55#issuecomment-7560
> 2253
> 
> I'm using GDAL 1.11.1 on OS X via homebrew and the latest python
> bindings from pypi. Is this a bug or undocumented behavior?

Matt,

I'd say driver specific behaviour. Drivers for DBMS should return a feature ID 
that is the value of the integer primary key of the table (generally starting 
at 1). For other drivers shch as shapefile etc, the convention may change 
according to the driver.
Anyway in the general case there might be holes in numbering in case of 
deleted features. So the recommanded way of interating over features is to 
call GetNextFeature(), as GetFeature() might be slow in some drivers due to 
the lack of indexing or proper method to seek to an arbitrary feature.

Even

> 
> Matt Perry
> _______________________________________________
> gdal-dev mailing list
> [email protected]
> http://lists.osgeo.org/mailman/listinfo/gdal-dev

-- 
Spatialys - Geospatial professional services
http://www.spatialys.com
_______________________________________________
gdal-dev mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/gdal-dev

Reply via email to