I have a prj file which is assumed to have a sphere datum (not ellipsoid). here is the prj file:
PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["Popular Visualisation CRS",DATUM["D_Popular_Visualisation_Datum",SPHEROID["Popular_Visualisation_Sphere",6378137,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Mercator"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1]]
I'm interested in this part of this prj file
SPHEROID["Popular_Visualisation_Sphere",6378137,0]
I expect the third parameter of SPHEROID as the inverse flattening to be infinity for sphere (a=b) but here esri writes zero for this parameter!
flattening = f = (a-b)/a //=Zero for Sphere
inverse flattening = 1/f = a/(a-b) //=Infinity for Sphere
Is there any explanation why esri prj files set the inverse flattening to zero for spheres?
double.Parse("Infinity")
also other languages may have similar behavior. If not applicable they may try writing the Flattening (not inverse flattening) as the third parameter of the SPHEROID – Hossein Narimani Rad Aug 27 '16 at 12:21PROJCS["WGS_1984_Web_Mercator_Auxiliary_Sphere",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.017453292519943295]],PROJECTION["Mercator_Auxiliary_Sphere"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Standard_Parallel_1",0.0],PARAMETER["Auxiliary_Sphere_Type",0.0],UNIT["Meter",1.0]]
– user30184 Aug 27 '16 at 13:25