def _write_coast_array(self): """write coast_array to file 1 = land 0 = water """ utils.gdal_write(coast_array, '{}.tif'.format(self.name), self.ds_config)
def createGrid(outfile, extent, cellsize, nodata, outformat, verbose, overwrite): '''create a nodata grid''' xcount, ycount, gt = extent.geo_transform(x_inc=cellsize) ds_config = demfun.set_infos(xcount, ycount, xcount * ycount, gt, utils.sr_wkt(4326), gdal.GDT_Float32, nodata, outformat) nullArray = np.zeros((ycount, xcount)) nullArray[nullArray == 0] = nodata utils.gdal_write(nullArray, outfile, ds_config)
def createNullCopy(srcfile, outfile, nodata, outformat, verbose, overwrite): '''copy a gdal grid and make a nodata grid''' ds = gdal.Open(srcfile) ds_config = demfun.gather_infos(ds) gt = ds_config['geoT'] if nodata is None: nodata = ds_config['ndv'] if nodata is None: nodata = -9999 ds_config['ndv'] = nodata ds = None dsArray = np.zeros([ds_config['ny'], ds_config['nx']]) dsArray[:] = float(nodata) utils.gdal_write(dsArray, outf, ds_config)
def run(self, outfile='trans_grid.tif'): if self.epsg_in is None or self.epsg_out is None: utils.echo_error_msg('failed to parse vertical input or output, check inputs') return(None) else: trans_array = self._vertical_transform(self.epsg_in, self.epsg_out) trans_infos = demfun.set_infos( self.xcount, self.ycount, self.xcount*self.ycount, self.gt, None, gdal.GDT_Float32, -9999, 'GTiff' ) if outfile is not None: utils.gdal_write(trans_array, outfile, trans_infos) return(outfile) else: return(trans_array, trans_infos)
outarray[outarray > gt_data] = out_data if lt_data is not None: outarray[outarray < lt_data] = out_data if bin_mask: outarray[outarray == ds_config['ndv']] = out_data outarray[outarray != out_data] = 1 if applygrd is not None: a_ds = gdal.Open(applygrd) a_ds_config = demfun.gather_infos(a_ds) a_band = a_ds.GetRasterBand(1) msk_array = a_band.ReadAsArray() dst_ds = demfun.copy_infos(a_ds_config) msk_array[outarray == 0] = a_ds_config['ndv'] outarray = msk_array a_ds = None else: dst_ds = demfun.copy_infos(ds_config) if mk_ndata is True: dst_ds['ndv'] = float(ndata) utils.gdal_write(outarray, outgrd, dst_ds) ds = None #--END