[Gdal-dev] OGR returns wrong floating values for shapefiles (and integer as real, in error)

Maciej Sieczka tutey at o2.pl
Tue Oct 24 10:43:00 EDT 2006


Frank Warmerdam wrote:
> Maciej Sieczka wrote:
>>
>> Hmm, this looks wrong (?) - my CAT and LCAT *do* have a zero precision.
>> So I'd expect them to be treated as integer. And the other 4 columns
>> have 15 decimal places precision, not 2. Open the dbf in a spreadsheet
>> to see that:
>>
>> CAT,N,11,0
>> LCAT,N,11,0
>> Z,N,24,15
>> Z_BREACH,N,24,15
>> Z_BREACH1,N,24,15
>> LENGTH,N,24,15

> Because Shapelib does not have a 64bit integer type, it automatically
> treats integer fields that are potentially to large to fit in a 32bit
> integer as floating point.  This isn't a great approach and causes a
> number of problems,

One of which is that after v.out.ogr->v.in.ogr one gets his previous
integer fields imported as double floating point.

> but it isn't completely without reason.

But is that planned to be fixed?

Maciek



More information about the Gdal-dev mailing list