Esempio n. 1
0
def test_array_grid(prep):
    """
    Test array grid
    """
    input_raster, compare_path = prep
    ggrid = GDALGrid(input_raster)

    arrg = ArrayGrid(in_array=ggrid.np_array(masked=True),
                     wkt_projection=ggrid.wkt,
                     geotransform=ggrid.geotransform)

    assert_almost_equal(ggrid.geotransform, arrg.geotransform)
    assert ggrid.x_size == arrg.x_size
    assert ggrid.y_size == arrg.y_size
    assert ggrid.proj4 == arrg.proj4
    assert (ggrid.np_array() == arrg.np_array()).all()
Esempio n. 2
0
def test_array_grid_nodata(prep):
    """
    Test array grid with nodata
    """
    input_raster, compare_path = prep
    ggrid = GDALGrid(input_raster)
    gnodata = ggrid.dataset.GetRasterBand(1).GetNoDataValue()
    arrg = ArrayGrid(in_array=ggrid.np_array(),
                     wkt_projection=ggrid.wkt,
                     geotransform=ggrid.geotransform,
                     nodata_value=gnodata)

    anodata = arrg.dataset.GetRasterBand(1).GetNoDataValue()
    assert gnodata == anodata
    assert_almost_equal(ggrid.geotransform, arrg.geotransform)
    assert ggrid.x_size == arrg.x_size
    assert ggrid.y_size == arrg.y_size
    assert ggrid.proj4 == arrg.proj4
    assert (ggrid.np_array() == arrg.np_array()).all()
Esempio n. 3
0
def test_array_grid3d(prep):
    """
    Test array grid 3d version
    """
    input_raster, compare_path = prep
    ggrid = GDALGrid(input_raster)
    orig_array = ggrid.np_array(masked=True)
    grid_array = np.array([orig_array, 5 * orig_array, 4 * orig_array])
    arrg = ArrayGrid(in_array=grid_array,
                     wkt_projection=ggrid.wkt,
                     geotransform=ggrid.geotransform)

    assert_almost_equal(ggrid.geotransform, arrg.geotransform)
    assert ggrid.x_size == arrg.x_size
    assert ggrid.y_size == arrg.y_size
    assert ggrid.proj4 == arrg.proj4
    assert arrg.num_bands == 3
    assert (arrg.np_array(band='all') == grid_array).all()
Esempio n. 4
0
def test_array_grid3d_nodata(prep):
    """
    Test array grid 3d version with nodata
    """
    input_raster, compare_path = prep
    ggrid = GDALGrid(input_raster)
    gnodata = ggrid.dataset.GetRasterBand(1).GetNoDataValue()
    orig_array = ggrid.np_array(masked=True)
    grid_array = np.array([orig_array, 5 * orig_array, 4 * orig_array])
    arrg = ArrayGrid(in_array=grid_array,
                     wkt_projection=ggrid.wkt,
                     geotransform=ggrid.geotransform,
                     nodata_value=gnodata)

    assert_almost_equal(ggrid.geotransform, arrg.geotransform)
    assert ggrid.x_size == arrg.x_size
    assert ggrid.y_size == arrg.y_size
    assert ggrid.proj4 == arrg.proj4
    assert arrg.num_bands == 3
    assert (arrg.np_array(band='all') == grid_array).all()

    for band_id in range(1, arrg.num_bands + 1):
        anodata = arrg.dataset.GetRasterBand(band_id).GetNoDataValue()
        assert gnodata == anodata