mirror of https://gitlab.com/pamhyr/pamhyr2
GeoTIFF: Integrate to River submodel.
parent
a308af41e0
commit
4c0a12dcf9
|
|
@ -35,6 +35,8 @@ try:
|
||||||
import rasterio.sample
|
import rasterio.sample
|
||||||
import rasterio.vrt
|
import rasterio.vrt
|
||||||
import rasterio._features
|
import rasterio._features
|
||||||
|
|
||||||
|
from rasterio.io import MemoryFile
|
||||||
_rasterio_loaded = True
|
_rasterio_loaded = True
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"Module 'rasterio' is not available: {e}")
|
print(f"Module 'rasterio' is not available: {e}")
|
||||||
|
|
@ -153,7 +155,7 @@ class GeoTIFF(SQLSubModel):
|
||||||
if self._file_bytes == b'':
|
if self._file_bytes == b'':
|
||||||
return None
|
return None
|
||||||
|
|
||||||
if self._memfile == None:
|
if self._memfile is None:
|
||||||
self._memfile = MemoryFile()
|
self._memfile = MemoryFile()
|
||||||
self._memfile.write(self._file_bytes)
|
self._memfile.write(self._file_bytes)
|
||||||
|
|
||||||
|
|
@ -202,9 +204,12 @@ class GeoTIFF(SQLSubModel):
|
||||||
def _db_update(cls, execute, version, data=None):
|
def _db_update(cls, execute, version, data=None):
|
||||||
major, minor, release = version.strip().split(".")
|
major, minor, release = version.strip().split(".")
|
||||||
|
|
||||||
if major == "0" and int(minor) <= 2:
|
if major == "0" and int(minor) < 2:
|
||||||
|
cls._db_create(execute)
|
||||||
|
|
||||||
|
if major == "0" and int(minor) == 2:
|
||||||
if int(release) < 3:
|
if int(release) < 3:
|
||||||
cls._create_submodel(execute)
|
cls._db_create(execute)
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
@ -228,6 +233,7 @@ class GeoTIFF(SQLSubModel):
|
||||||
f"AND pamhyr_id NOT IN ({', '.join(map(str, loaded))})"
|
f"AND pamhyr_id NOT IN ({', '.join(map(str, loaded))})"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if table is not None:
|
||||||
for row in table:
|
for row in table:
|
||||||
it = iter(row)
|
it = iter(row)
|
||||||
|
|
||||||
|
|
@ -287,7 +293,7 @@ class GeoTIFF(SQLSubModel):
|
||||||
self.name,
|
self.name,
|
||||||
self.description,
|
self.description,
|
||||||
self.file_name,
|
self.file_name,
|
||||||
self.file_bytes
|
self.file_bytes,
|
||||||
self.coordinates['bottom'],
|
self.coordinates['bottom'],
|
||||||
self.coordinates['top'],
|
self.coordinates['top'],
|
||||||
self.coordinates['left'],
|
self.coordinates['left'],
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,7 @@ from tools import trace, timer
|
||||||
|
|
||||||
from Model.Except import NotImplementedMethodeError
|
from Model.Except import NotImplementedMethodeError
|
||||||
from Model.Tools.PamhyrListExt import PamhyrModelList
|
from Model.Tools.PamhyrListExt import PamhyrModelList
|
||||||
from Model.AdditionalFile.GeoTIFF import GeoTIFF
|
from Model.GeoTIFF.GeoTIFF import GeoTIFF
|
||||||
|
|
||||||
|
|
||||||
class GeoTIFFList(PamhyrModelList):
|
class GeoTIFFList(PamhyrModelList):
|
||||||
|
|
|
||||||
|
|
@ -59,6 +59,7 @@ from Model.LateralContributionsAdisTS.LateralContributionsAdisTSList \
|
||||||
import LateralContributionsAdisTSList
|
import LateralContributionsAdisTSList
|
||||||
from Model.D90AdisTS.D90AdisTSList import D90AdisTSList
|
from Model.D90AdisTS.D90AdisTSList import D90AdisTSList
|
||||||
from Model.DIFAdisTS.DIFAdisTSList import DIFAdisTSList
|
from Model.DIFAdisTS.DIFAdisTSList import DIFAdisTSList
|
||||||
|
from Model.GeoTIFF.GeoTIFFList import GeoTIFFList
|
||||||
from Model.Results.Results import Results
|
from Model.Results.Results import Results
|
||||||
|
|
||||||
logger = logging.getLogger()
|
logger = logging.getLogger()
|
||||||
|
|
@ -468,6 +469,7 @@ class River(Graph):
|
||||||
LateralContributionsAdisTSList,
|
LateralContributionsAdisTSList,
|
||||||
D90AdisTSList,
|
D90AdisTSList,
|
||||||
DIFAdisTSList,
|
DIFAdisTSList,
|
||||||
|
GeoTIFFList,
|
||||||
Results
|
Results
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
@ -505,6 +507,8 @@ class River(Graph):
|
||||||
self._D90AdisTS = D90AdisTSList(status=self._status)
|
self._D90AdisTS = D90AdisTSList(status=self._status)
|
||||||
self._DIFAdisTS = DIFAdisTSList(status=self._status)
|
self._DIFAdisTS = DIFAdisTSList(status=self._status)
|
||||||
|
|
||||||
|
self._geo_tiff = GeoTIFFList(status=self._status)
|
||||||
|
|
||||||
self._results = {}
|
self._results = {}
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
|
@ -617,6 +621,8 @@ class River(Graph):
|
||||||
|
|
||||||
new._DIFAdisTS = DIFAdisTSList._db_load(execute, data)
|
new._DIFAdisTS = DIFAdisTSList._db_load(execute, data)
|
||||||
|
|
||||||
|
new._geo_tiff = GeoTIFFList._db_load(execute, data)
|
||||||
|
|
||||||
return new
|
return new
|
||||||
|
|
||||||
def _db_load_results(self, execute, data=None):
|
def _db_load_results(self, execute, data=None):
|
||||||
|
|
@ -726,6 +732,7 @@ class River(Graph):
|
||||||
self._BoundaryConditionsAdisTS,
|
self._BoundaryConditionsAdisTS,
|
||||||
self._LateralContributionsAdisTS,
|
self._LateralContributionsAdisTS,
|
||||||
self._D90AdisTS, self._DIFAdisTS,
|
self._D90AdisTS, self._DIFAdisTS,
|
||||||
|
self._geo_tiff,
|
||||||
]
|
]
|
||||||
|
|
||||||
for solver in self._parameters:
|
for solver in self._parameters:
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,7 @@ logger = logging.getLogger()
|
||||||
|
|
||||||
|
|
||||||
class Study(SQLModel):
|
class Study(SQLModel):
|
||||||
_version = "0.2.2"
|
_version = "0.2.3"
|
||||||
|
|
||||||
_sub_classes = [
|
_sub_classes = [
|
||||||
Scenario,
|
Scenario,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue