Hi, just to finish this out. The snippet below is basically the core of what i was looking for (in the end it turned out to be relatively simple, but all things are once done). All it does it convert a point (specified in WSG84 (lat/lon)) to UTM and back to WGS84 lat/lon. If someone spots an issue please let me know.
----------------------------- import osr def utm_getZone(longitude): return (int(1+(longitude+180.0)/6.0)) def utm_isNorthern(latitude): if (latitude < 0.0): return 0; else: return 1; ## Fcn: __main__ # Purpose: # Inputs: # Returns: # if __name__ == '__main__': lat = 38.0; lon = -50.0 utm_zone = utm_getZone(lon); #print "utm_zone: "; print utm_zone is_northern = utm_isNorthern(lat); #print "is_northern: "; print is_northern ## set utm coordinate system utm_cs = osr.SpatialReference() utm_cs.SetWellKnownGeogCS('WGS84') utm_cs.SetUTM(utm_zone,is_northern); ## set wgs84 coordinate system wgs84_cs = utm_cs.CloneGeogCS(); #print "\nwgs84_cs:"; print wgs84_cs.ExportToPrettyWkt() ## set the transform wgs84_to_utm and do the transform transform_WGS84_To_UTM = osr.CoordinateTransformation(wgs84_cs,utm_cs) utm_points = list(transform_WGS84_To_UTM.TransformPoint(lon,lat)); print "utm_points: "; print utm_points ## set the transform utm_to_wgs84 and do the transform transform_UTM_To_WGS84 = osr.CoordinateTransformation(utm_cs,wgs84_cs) latlon_points = list(transform_UTM_To_WGS84.TransformPoint(utm_points[0],utm_points[1])) print "latlon_points: "; print latlon_points ----------------------------- matt On 9/13/2011 7:54 AM, Etienne Tourigny wrote: > Well GDAL has the necessary infrastructure for (almost) anyone to do > it themselves. > This type of application is typically handled by python scripts, feel > free to submit your own when it is ready. It would make a nice > addition to the python samples in my opinion. > > EPSG zones are defined for longitude zones, both north and south (not > in 8-degree zones), so in GDAL you only need to find the longitudinal > zone and define if it is north or south. > > e.g. from spatialreference.org > EPSG:32718 -> WGS 84 / UTM zone 18S > EPSG:32618 -> WGS 84 / UTM zone 18N > > Etienne > > On Mon, Sep 12, 2011 at 7:55 PM, Matt Funk <matze...@gmail.com> wrote: >> On 9/12/2011 4:07 PM, Tim Osborn wrote: >>> I should have said that the above equation is valid for longitudes greater >>> than or equal to -180.0 and less than +180.0. >> I assume it is the same to determine the latitude zone (using 8 >> degrees). The one thing though are the exceptions (even though I don't >> intend to do any computations in those zones) ... . Is it correct then >> to assume that gdal has no capabilities to return the zone based on a >> given lat/lon pair? As easy as the code you provided is, it seems that >> this capability (and the zone exception handling) would be included in >> gdal ... . >> >> either way, thanks >> matt >> >>> -- >>> View this message in context: >>> http://osgeo-org.1803224.n2.nabble.com/gdal-dev-Do-we-have-to-know-UTM-zone-a-priori-to-convert-to-UTM-from-lat-lon-tp6785362p6785446.html >>> Sent from the GDAL - Dev mailing list archive at Nabble.com. >>> _______________________________________________ >>> gdal-dev mailing list >>> gdal-dev@lists.osgeo.org >>> http://lists.osgeo.org/mailman/listinfo/gdal-dev >> >> _______________________________________________ >> gdal-dev mailing list >> gdal-dev@lists.osgeo.org >> http://lists.osgeo.org/mailman/listinfo/gdal-dev >> -- Matt Funk Research Associate Plant and Environmental Scienc. Dept. New Mexico State University _______________________________________________ gdal-dev mailing list gdal-dev@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/gdal-dev