AnsweredAssumed Answered

projectAs help

Question asked by jamesfreddyc on May 13, 2013
Latest reply on May 13, 2013 by jamesfreddyc
I'm attempting to implement some of the functionality found here:

http://support.esri.com/en/knowledgebase/techarticles/detail/40730

I need to acquire the x/y values where mouse click occurs, convert the values into Latitude/Longitude and then report these values.

The plan is to require a layer to be loaded in the map TOC, so there will be a defined spatial reference to go from.  No problem getting these projected x/y values so far but I am not able to project these to WGS1984.  Is this even possible?  Or will I have to use in_memory in some capacity here?

      def onMouseDownMap(self, x, y, button, shift):         print "x: " + str(x) + " y: " + str(y) ## this reports as expected!                          ## get a layer loaded in the TOC to determine the spatial reference                 mxd = arcpy.mapping.MapDocument("CURRENT")         df = arcpy.mapping.ListDataFrames(mxd)[0]         testCount = len(arcpy.mapping.ListLayers(mxd, "", df))         if testCount==0:             msg = "There are no features selected to report"             pythonaddins.MessageBox(msg, 'Report Latitude/Longitude Values', 0)         else:               for lyr in arcpy.mapping.ListLayers(mxd):             dsc = arcpy.Describe(lyr)             spref = dsc.spatialReference              lpoint = arcpy.Point()             lpoint.X = x             lpoint.Y = y             ptGeometry = arcpy.PointGeometry(lpoint)             #ptGeom = arcpy.PointGeometery(arcpy.point(x,y),spref, False, False)              to_sr = arcpy.SpatialReference('WGS 1984')                                  projectedPoint = ptGeometry.projectAs(to_sr, r'NAD_1983_HARN_To_WGS_1984')             prjX = projectedPoint.X             prjY = projectedPoint.Y             print "X:" + str(prjX) + " Y:" + str(prjY) 


The code above fails on the line:

[INDENT]projectedPoint = ptGeometry.projectAs(to_sr, r'NAD_1983_HARN_To_WGS_1984')[/INDENT]



Error msg:
"projectedPoint = ptGeometry.projectAs(to_sr, r'NAD_1983_HARN_To_WGS_1984')
  File "C:\Program Files (x86)\ArcGIS\Desktop10.1\arcpy\arcpy\arcobjects\arcobjects.py", line 761, in projectAs
    return convertArcObjectToPythonObject(self._arc_object.ProjectAs(*gp_fixargs((spatial_reference, transformation_name))))
ValueError: NAD_1983_HARN_To_WGS_1984"

Outcomes