ThinkGeo.com    |     Documentation    |     Premium Support

GetEsriParametersString not returning projection string

Not sure if I found a bug or doing something wrong.  I have a map in Decimal Degree and am adding a shape file with a .prj file of:


PROJCS["NAD_1983_HARN_StatePlane_Florida_West_FIPS_0902_Feet",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",656166.6666666665],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-82.0],PARAMETER["Scale_Factor",0.9999411764705882],PARAMETER["Latitude_Of_Origin",24.33333333333333],UNIT["Foot_US",0.3048006096012192]]


I go to spatialreference.org and see the ESRI# is 102659.  I also look in ESRI.rtf and assume the number is supported since the following data is in the file:


# NAD 1983 StatePlane Florida West FIPS 0902 Feet

<102659> +proj=tmerc +lat_0=24.33333333333333 +lon_0=-82 +k=0.999941 +x_0=200000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 no_defs <>

So I assume the following code will work:



        Dim proj4 As ManagedProj4Projection = New ManagedProj4Projection()
        proj4.InternalProjectionParametersString = Proj4Projection.GetEsriParametersString(102659) 'this does not work
        proj4.ExternalProjectionParametersString = Proj4Projection.GetWgs84ParametersString()

but nothing displays.  If I change it to put the projection string in directly it displays:



        Dim proj4 As ManagedProj4Projection = New ManagedProj4Projection()
        proj4.InternalProjectionParametersString = "+proj=tmerc +lat_0=24.33333333333333 +lon_0=-82 +k=0.999941 +x_0=200000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192  no_defs"
        proj4.ExternalProjectionParametersString = Proj4Projection.GetWgs84ParametersString()

You can download a sample project here that demonstrates this: stormctr.com/files/ThinkGeoShapefileSample.zip



Hi Michael,
 
We recommend using ManagedProj4Projection instead our old Proj4Projection; so it will be fine when replacing the class:
Dim proj4 As ManagedProj4Projection = New ManagedProj4Projection()
proj4.InternalProjectionParametersString = ManagedProj4Projection.GetEsriParametersString(102659)
proj4.ExternalProjectionParametersString = ManagedProj4Projection.GetWgs84ParametersString()

 
Hope it helps.
 
Thanks,
Howard

Thanks!.. that fixed it.

Michael,  
  
 Any more questions please feel free to let us know.  
  
 Regards,  
  
 Gary