@@ -443,9 +443,44 @@ def get_interval_date_from_time_array(time_array, units=None):
443443
444444
445445def geodesic_to_utm (lat , lon , semi_major_axis = 6378137.0 , flattening = 1 / 298.257223563 ): # pylint: disable=too-many-locals,too-many-statements
446- # NOTE: already documented in the Environment class.
447- # TODO: deprecated the static method from the environment class, use only this one.
446+ """Function which converts geodetic coordinates, i.e. lat/lon, to UTM
447+ projection coordinates. Can be used only for latitudes between -80.00°
448+ and 84.00°
448449
450+ Parameters
451+ ----------
452+ lat : float
453+ The latitude coordinates of the point of analysis, must be contained
454+ between -80.00° and 84.00°
455+ lon : float
456+ The longitude coordinates of the point of analysis, must be
457+ contained between -180.00° and 180.00°
458+ semi_major_axis : float
459+ The semi-major axis of the ellipsoid used to represent the Earth,
460+ must be given in meters (default is 6,378,137.0 m, which corresponds
461+ to the WGS84 ellipsoid)
462+ flattening : float
463+ The flattening of the ellipsoid used to represent the Earth, usually
464+ between 1/250 and 1/150 (default is 1/298.257223563, which
465+ corresponds to the WGS84 ellipsoid)
466+
467+ Returns
468+ -------
469+ x : float
470+ East coordinate, always positive
471+ y : float
472+ North coordinate, always positive
473+ utm_zone : int
474+ The number of the UTM zone of the point of analysis, can vary
475+ between 1 and 60
476+ utm_letter : string
477+ The letter of the UTM zone of the point of analysis, can vary
478+ between C and X, omitting the letters "I" and "O"
479+ hemis : string
480+ Returns "S" for southern hemisphere and "N" for Northern hemisphere
481+ EW : string
482+ Returns "W" for western hemisphere and "E" for eastern hemisphere
483+ """
449484 # Calculate the central meridian of UTM zone
450485 if lon != 0 :
451486 signal = lon / abs (lon )
@@ -529,9 +564,37 @@ def geodesic_to_utm(lat, lon, semi_major_axis=6378137.0, flattening=1 / 298.2572
529564def utm_to_geodesic ( # pylint: disable=too-many-locals,too-many-statements
530565 x , y , utm_zone , hemis , semi_major_axis = 6378137.0 , flattening = 1 / 298.257223563
531566):
532- # NOTE: already documented in the Environment class.
533- # TODO: deprecate the static method from the environment class, use only this one .
567+ """Function to convert UTM coordinates to geodesic coordinates
568+ (i.e. latitude and longitude) .
534569
570+ Parameters
571+ ----------
572+ x : float
573+ East UTM coordinate in meters
574+ y : float
575+ North UTM coordinate in meters
576+ utm_zone : int
577+ The number of the UTM zone of the point of analysis, can vary
578+ between 1 and 60
579+ hemis : string
580+ Equals to "S" for southern hemisphere and "N" for Northern
581+ hemisphere
582+ semi_major_axis : float
583+ The semi-major axis of the ellipsoid used to represent the Earth,
584+ must be given in meters (default is 6,378,137.0 m, which corresponds
585+ to the WGS84 ellipsoid)
586+ flattening : float
587+ The flattening of the ellipsoid used to represent the Earth, usually
588+ between 1/250 and 1/150 (default is 1/298.257223563, which
589+ corresponds to the WGS84 ellipsoid)
590+
591+ Returns
592+ -------
593+ lat : float
594+ latitude of the analyzed point
595+ lon : float
596+ latitude of the analyzed point
597+ """
535598 if hemis == "N" :
536599 y = y + 10000000
537600
0 commit comments