Skip to content
Snippets Groups Projects
Unverified Commit 0d2afda2 authored by Adam Paquette's avatar Adam Paquette Committed by GitHub
Browse files

Address gdal warning (#626)

parent 9c17b060
No related branches found
No related tags found
No related merge requests found
...@@ -423,44 +423,50 @@ class Driver(): ...@@ -423,44 +423,50 @@ class Driver():
return self.__module__.split('.')[-1].split('_')[0] return self.__module__.split('.')[-1].split('_')[0]
@property @property
def projection(self): def read_geodata(self):
""" if not hasattr(self, "_geodata"):
Return projection information generated by osgeo.
Returns
-------
str
A string representation of the projection information.
"""
if not hasattr(self, "_projection"):
try: try:
from osgeo import gdal from osgeo import gdal
gdal.UseExceptions()
except: except:
self._projection = "" self._projection = ""
return self._projection return self._projection
geodata = None self._geodata = None
if isinstance(self._file, pvl.PVLModule): if isinstance(self._file, pvl.PVLModule):
# save it to a temp folder # save it to a temp folder
with tempfile.NamedTemporaryFile() as tmp: with tempfile.NamedTemporaryFile() as tmp:
tmp.write(pvl.dumps(self._file)) tmp.write(pvl.dumps(self._file))
geodata = gdal.Open(tempfile.name) self._geodata = gdal.Open(tempfile.name)
else: else:
# should be a path # should be a path
if not os.path.exists(self._file): if not os.path.exists(self._file):
self._projection = "" self._geodata = None
else: else:
geodata = gdal.Open(self._file) self._geodata = gdal.Open(self._file)
return self._geodata
@property
def projection(self):
"""
Return projection information generated by osgeo.
Returns
-------
str
A string representation of the projection information.
"""
if not hasattr(self, "_projection"):
# Try to get the projection, if we are unsuccessful set it # Try to get the projection, if we are unsuccessful set it
# to empty # to empty
try: try:
self._projection = geodata.GetSpatialRef().ExportToProj4() self._projection = self.read_geodata.GetSpatialRef().ExportToProj4()
except: except:
self._projection = "" self._projection = ""
return self._projection return self._projection
@property @property
...@@ -475,25 +481,11 @@ class Driver(): ...@@ -475,25 +481,11 @@ class Driver():
""" """
if not hasattr(self, "_geotransform"): if not hasattr(self, "_geotransform"):
# Try to get the geotransform, if we are unsuccessful set it
# to the identity
try: try:
from osgeo import gdal self._geotransform = self.read_geodata.GetGeoTransform()
except: except:
self._geotransform = (0.0, 1.0, 0.0, 0.0, 0.0, 1.0) self._geotransform = (0.0, 1.0, 0.0, 0.0, 0.0, 1.0)
return self._geotransform
if isinstance(self._file, pvl.PVLModule):
# save it to a temp folder
with tempfile.NamedTemporaryFile() as tmp:
tmp.write(pvl.dumps(self._file))
geodata = gdal.Open(tempfile.name)
self._geotransform = geodata.GetGeoTransform()
else:
# should be a path
if not os.path.exists(self._file):
self._geotransform = (0.0, 1.0, 0.0, 0.0, 0.0, 1.0)
else:
geodata = gdal.Open(self._file)
self._geotransform = geodata.GetGeoTransform()
return self._geotransform return self._geotransform
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment