[gdal-dev] GeoJSON coordinate values truncated to integers

Dmitriy Baryshnikov bishop.dev at gmail.com
Sun Jul 27 04:57:46 PDT 2014


Hi,

This is usually according to the locale. Try set "C" locale like this.

|cha*||old_locale =setlocale(LC_NUMERIC,  "C");

before opening datasource

and reset it back after reading all fetures

||setlocale(LC_NUMERIC,  |old_locale);


This is not the solution (I fixed it here 
http://trac.osgeo.org/gdal/ticket/5461) but some kind of workaround.

Best regards,
     Dmitry

27.07.2014 15:40, Thomas Sevaldrud пишет:
> (Sorry about the repost, I forgot the subject tag in the previous one..)
>
> Hi, I'm having a strange problem that appears to be related to the 
> GeoJSON driver in GDAL 1.11.0
>
> When reading a polygon geometry in geographical lat/lon coordinates, 
> all my coordinate values are returned in integer degrees. When using 
> ogrinfo it dumps the coordinate values with correct decimals, so it 
> must be something I have done wrong... Here is the relevant code:
>
>     OGRDataSource  *ds  =  OGRSFDriverRegistrar::Open(filename_.c_str(),  FALSE  );
>     int  num_layers  =  ds->GetLayerCount();
>     for(int  i  =  0;  i  <  num_layers;  i++)
>     {
>        OGRLayer*  layer  =  ds->GetLayer(i);
>        layer->ResetReading();
>        OGRFeature*  feature;
>        while((feature  =  layer->GetNextFeature())  !=  NULL)
>        {
>           OGRGeometry*  geometry  =  feature->GetGeometryRef();
>           if(geometry  ==  NULL)
>              continue;
>           int  geom_type  =  wkbFlatten(geometry->getGeometryType());
>           if(geom_type  ==  wkbPolygon)
>           {
>              OGRPolygon*  ogr_poly  =  (OGRPolygon*)geometry;
>              OGRLinearRing*  ext_ring  =  ogr_poly->getExteriorRing();
>              for(int  j  =  0;  j  <  ext_ring->getNumPoints()  -  1;  j++)
>              {                
>                 double  x  =  ext_ring->getX(j);
>                 double  y  =  ext_ring->getY(j);
>                 ...
> Now, the x, and y values here are always truncated to integer values. 
> This does not happen with for example shp files.
>
> Any ideas what I might have done wrong here?
>
>
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/gdal-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20140727/5ceea05d/attachment.html>


More information about the gdal-dev mailing list