fix project bug

This commit is contained in:
copper 2022-11-07 20:31:03 +08:00
parent 5b3b790269
commit bbf60e76ae

View File

@ -431,6 +431,9 @@ class RasterLayer(BasicLayer):
''' '''
ds1:gdal.Dataset = gdal.Open(self.path) ds1:gdal.Dataset = gdal.Open(self.path)
ds2 :gdal.Dataset = gdal.Open(other.path) ds2 :gdal.Dataset = gdal.Open(other.path)
# if ds1.RasterXSize == ds2.RasterXSize and ds1.RasterYSize == ds2.RasterYSize:
# return 0
geo1=ds1.GetGeoTransform() geo1=ds1.GetGeoTransform()
geo2=ds2.GetGeoTransform() geo2=ds2.GetGeoTransform()
map1xy=[imageRC2geo(geo1,0,0),imageRC2geo(geo1,ds1.RasterXSize,ds1.RasterYSize)] map1xy=[imageRC2geo(geo1,0,0),imageRC2geo(geo1,ds1.RasterXSize,ds1.RasterYSize)]
@ -446,9 +449,9 @@ class RasterLayer(BasicLayer):
if ds1 is None or ds2 is None: if ds1 is None or ds2 is None:
Project().message_box.error('图层打开失败') Project().message_box.error('图层打开失败')
return -1 return -1
if not ds1.GetProjection()==ds2.GetProjection(): # if not ds1.GetProjection()==ds2.GetProjection():
Project().message_box.error('投影不一致') # Project().message_box.error('投影不一致')
return -1 # return -1
elif (map1xx[0]>map2xx[1] or map1xx[1]<map2xx[0])or(map1yy[0]>map2yy[1] or map1yy[1]<map2yy[0] ): elif (map1xx[0]>map2xx[1] or map1xx[1]<map2xx[0])or(map1yy[0]>map2yy[1] or map1yy[1]<map2yy[0] ):
Project().message_box.error('图层无重叠区域') Project().message_box.error('图层无重叠区域')
return -1 return -1
@ -814,7 +817,10 @@ class PairLayer(BasicLayer):
gridgeo=[self.mask.xy[0],self.l1_geo[1],self.l1_geo[2],self.mask.xy[1],self.l1_geo[4],self.l1_geo[5]] gridgeo=[self.mask.xy[0],self.l1_geo[1],self.l1_geo[2],self.mask.xy[1],self.l1_geo[4],self.l1_geo[5]]
self.grid = GridLayer(self.proj, gridgeo , self.size[0], self.size[1], cell_size=Project().cell_size) self.grid = GridLayer(self.proj, gridgeo , self.size[0], self.size[1], cell_size=Project().cell_size)
self.grid.set_layer_parent(self) self.grid.set_layer_parent(self)
return self.checked!=-1 self.checked = True
else:
self.checked = False
return self.checked
def add_result_layer(self, result): def add_result_layer(self, result):
result.set_layer_parent(self) result.set_layer_parent(self)