Actually the problem is not ArcGIS; the problem is that decimal floating
point numbers like 0.1 (1.0e-1) cannot exactly representable in binary
floating point, at least with a fixed number of digits, which is the
number format for coordinates in shapefiles.

Some decimal floating point numbers, like 0.5, 0.25, 0.125 (negative
powers of 2; sums of negative powers of 2) can be exactly represented in
binary.

Some people find this weird but decimal has the same problem; we cannot
represent negative powers of 3, negative powers of 7, etc) in a fixed
number of decimal digits (1/3, 1/7).

On Thu, 2010-02-04 at 10:25 +0100, Suhr, Ralf wrote:
> ArcGIS does not use floating point numbers. The conversation from intern 
> ArcGIS number representation to Shapefile, Gml, Geodatabase, ... is the 
> problem.
> 
> Gr Ralf
> 
> -----Ursprüngliche Nachricht-----
> Von: [email protected] 
> [mailto:[email protected]] Im Auftrag von Ben 
> Madin
> Gesendet: Donnerstag, 4. Februar 2010 09:19
> An: PostGIS Users Discussion
> Betreff: Re: [postgis-users] digit problem about sql file.
> 
> Kevin,
> 
> I suspect this is mainly an artefact of floating-point numbers, and the 
> conversion to and storage of these points in binary format.
> 
> As an aside I also notice that your shp2pgsql command didn't include a -s 
> flag - so you haven't defined a spatial reference system for your data. This 
> may be fine (if it is arbitrary cartesian coordinates), but it may (I'm not 
> sure) have implications for the storage of these values.
> 
> I'm sure others will be able to help out more.
> 
> cheers
> 
> Ben
> 
> 
> On 04/02/2010, at 15:40 , Hyung Joo Lee wrote:
> 
> > Hi all. 
> > 
> > I have a question about the decimal of shapefile that was created in Arcgis.
> > 
> > The file I have defined the coordinates of the coordinate system like 
> > (56.631 55.612)
> > 
> > That file was put in the DB using shp2pgsql( ---# shp2pgsql -a -w -S -I 
> > ###.shp table_name > ###.sql).
> > 
> > And then I checked the sql file. But the point coordinates that comes a lot 
> > more than 3-digit  like 56.6313000004739 55.6119999999646
> > 
> > I want to come out only 3-digit, so how can I do?
> > 
> > What option should I use?
> > 
> > I'll wait for the users a clear answer.
> > 
> > 
> > 
> > Best regards and thanks in advance.
> > 
> > Kevin.
> > 
> > _______________________________________________
> > postgis-users mailing list
> > [email protected]
> > http://postgis.refractions.net/mailman/listinfo/postgis-users
> 
> _______________________________________________
> postgis-users mailing list
> [email protected]
> http://postgis.refractions.net/mailman/listinfo/postgis-users
> _______________________________________________
> postgis-users mailing list
> [email protected]
> http://postgis.refractions.net/mailman/listinfo/postgis-users


-- 
Regards,

Chris Hermansen    ·    mailto:[email protected]
tel+1.604.714.2878 · fax+1.604.733.0631 · mob+1.778.840.4625
Timberline Natural Resource Group · http://www.timberline.ca
401 · 958 West 8th Avenue  · Vancouver BC · Canada · V5Z 1E5


_______________________________________________
postgis-users mailing list
[email protected]
http://postgis.refractions.net/mailman/listinfo/postgis-users

Reply via email to