Ejemplo n.º 1
0
 def test_equal_pass(self):
     """Test equal"""
     centr_ras = Centroids.from_raster_file(HAZ_DEMO_FL,
                                            window=Window(0, 0, 50, 60))
     centr_bis = Centroids.from_raster_file(HAZ_DEMO_FL,
                                            window=Window(51, 61, 10, 10))
     self.assertFalse(centr_ras.equal(centr_bis))
     self.assertFalse(centr_bis.equal(centr_ras))
     self.assertTrue(centr_ras.equal(centr_ras))
     self.assertTrue(centr_bis.equal(centr_bis))
Ejemplo n.º 2
0
    def test_from_raster_file_wrong_fail(self):
        """Test from_raster_file with wrong centroids"""
        centr = Centroids.from_raster_file(HAZ_DEMO_FL,
                                           window=Window(10, 20, 50, 60))
        self.assertAlmostEqual(centr.meta['crs'], DEF_CRS)
        self.assertAlmostEqual(centr.meta['transform'].c, -69.2471495969998)
        self.assertAlmostEqual(centr.meta['transform'].a, 0.009000000000000341)
        self.assertAlmostEqual(centr.meta['transform'].b, 0.0)
        self.assertAlmostEqual(centr.meta['transform'].f, 10.248220966978932)
        self.assertAlmostEqual(centr.meta['transform'].d, 0.0)
        self.assertAlmostEqual(centr.meta['transform'].e,
                               -0.009000000000000341)
        self.assertEqual(centr.meta['height'], 60)
        self.assertEqual(centr.meta['width'], 50)

        inten_ras = centr.values_from_raster_files([HAZ_DEMO_FL],
                                                   window=Window(
                                                       10, 20, 50, 60))
        self.assertEqual(inten_ras.shape, (1, 60 * 50))
        self.assertAlmostEqual(
            inten_ras.reshape((60, 50)).tocsr()[25, 12], 0.056825936)

        with self.assertRaises(ValueError):
            centr.values_from_raster_files([HAZ_DEMO_FL],
                                           window=Window(10, 20, 52, 60))
Ejemplo n.º 3
0
 def test_on_land(self):
     """Test set_on_land"""
     centr_ras = Centroids.from_raster_file(HAZ_DEMO_FL,
                                            window=Window(0, 0, 50, 60))
     centr_ras.set_on_land()
     centr_ras.check()
     self.assertTrue(
         np.array_equal(centr_ras.on_land, np.ones(60 * 50, bool)))
Ejemplo n.º 4
0
 def test_dist_coast_pass(self):
     """Test set_region_id"""
     centr_ras = Centroids.from_raster_file(HAZ_DEMO_FL,
                                            window=Window(0, 0, 50, 60))
     centr_ras.set_dist_coast()
     centr_ras.check()
     self.assertTrue(abs(centr_ras.dist_coast[0] - 117000) < 1000)
     self.assertTrue(abs(centr_ras.dist_coast[-1] - 104000) < 1000)
Ejemplo n.º 5
0
 def test_region_id_pass(self):
     """Test set_dist_coast"""
     centr_ras = Centroids.from_raster_file(HAZ_DEMO_FL,
                                            window=Window(0, 0, 50, 60))
     centr_ras.set_region_id()
     self.assertEqual(centr_ras.region_id.size, centr_ras.size)
     self.assertTrue(
         np.array_equal(np.unique(centr_ras.region_id), np.array([862])))
Ejemplo n.º 6
0
 def test_append_equal_pass(self):
     """Append raster"""
     centr_ras = Centroids.from_raster_file(HAZ_DEMO_FL,
                                            window=Window(0, 0, 50, 60))
     centr_bis = Centroids.from_raster_file(HAZ_DEMO_FL,
                                            window=Window(0, 0, 50, 60))
     centr_bis.append(centr_ras)
     self.assertAlmostEqual(centr_bis.meta['crs'], DEF_CRS)
     self.assertAlmostEqual(centr_bis.meta['transform'].c,
                            -69.33714959699981)
     self.assertAlmostEqual(centr_bis.meta['transform'].a,
                            0.009000000000000341)
     self.assertAlmostEqual(centr_bis.meta['transform'].b, 0.0)
     self.assertAlmostEqual(centr_bis.meta['transform'].f,
                            10.42822096697894)
     self.assertAlmostEqual(centr_bis.meta['transform'].d, 0.0)
     self.assertAlmostEqual(centr_bis.meta['transform'].e,
                            -0.009000000000000341)
     self.assertEqual(centr_bis.meta['height'], 60)
     self.assertEqual(centr_bis.meta['width'], 50)
Ejemplo n.º 7
0
 def test_area_pass(self):
     """Test set_area"""
     centr_ras = Centroids.from_raster_file(HAZ_DEMO_FL,
                                            window=Window(0, 0, 50, 60))
     centr_ras.meta['crs'] = {'proj': 'cea'}
     centr_ras.set_area_pixel()
     centr_ras.check()
     self.assertTrue(
         np.allclose(
             centr_ras.area_pixel,
             np.ones(60 * 50) * 0.009000000000000341 *
             0.009000000000000341))
Ejemplo n.º 8
0
 def test_set_geometry_points_pass(self):
     """Test set_geometry_points"""
     centr_ras = Centroids.from_raster_file(HAZ_DEMO_FL,
                                            window=Window(0, 0, 50, 60))
     centr_ras.set_geometry_points()
     x_flat = np.arange(-69.3326495969998, -68.88264959699978,
                        0.009000000000000341)
     y_flat = np.arange(10.423720966978939, 9.883720966978919,
                        -0.009000000000000341)
     x_grid, y_grid = np.meshgrid(x_flat, y_flat)
     self.assertTrue(np.allclose(x_grid.flatten(), centr_ras.lon))
     self.assertTrue(np.allclose(y_grid.flatten(), centr_ras.lat))
Ejemplo n.º 9
0
    def test_ne_crs_geom_pass(self):
        """Test _ne_crs_geom"""
        centr_ras = Centroids.from_raster_file(HAZ_DEMO_FL,
                                               window=Window(0, 0, 50, 60))
        centr_ras.meta['crs'] = 'epsg:32632'

        xy_vec = centr_ras._ne_crs_geom()
        x_vec, y_vec = xy_vec.geometry[:].x.values, xy_vec.geometry[:].y.values
        self.assertAlmostEqual(4.51063496489, x_vec[0])
        self.assertAlmostEqual(9.40153761711e-05, y_vec[0])
        self.assertAlmostEqual(4.51063891581, x_vec[-1])
        self.assertAlmostEqual(8.92260922066e-05, y_vec[-1])
Ejemplo n.º 10
0
 def test_area_approx(self):
     """Test set_area_approx"""
     centr_ras = Centroids.from_raster_file(HAZ_DEMO_FL,
                                            window=Window(0, 0, 50, 60))
     centr_ras.set_area_approx()
     approx_dim = (centr_ras.meta['transform'][0] * 111 * 1000 *
                   centr_ras.meta['transform'][0] * 111 * 1000)
     self.assertEqual(centr_ras.area_pixel.size, centr_ras.size)
     self.assertEqual(np.unique(centr_ras.area_pixel).size, 60)
     self.assertTrue(
         np.array_equal(
             (approx_dim / np.unique(centr_ras.area_pixel)).astype(int),
             np.ones(60)))
Ejemplo n.º 11
0
    def test_read_all_pass(self):
        """Test centr_ras data"""
        centr_ras = Centroids.from_raster_file(HAZ_DEMO_FL,
                                               window=Window(0, 0, 50, 60))
        self.assertAlmostEqual(centr_ras.meta['crs'], DEF_CRS)
        self.assertAlmostEqual(centr_ras.meta['transform'].c,
                               -69.33714959699981)
        self.assertAlmostEqual(centr_ras.meta['transform'].a,
                               0.009000000000000341)
        self.assertAlmostEqual(centr_ras.meta['transform'].b, 0.0)
        self.assertAlmostEqual(centr_ras.meta['transform'].f,
                               10.42822096697894)
        self.assertAlmostEqual(centr_ras.meta['transform'].d, 0.0)
        self.assertAlmostEqual(centr_ras.meta['transform'].e,
                               -0.009000000000000341)
        self.assertEqual(centr_ras.meta['height'], 60)
        self.assertEqual(centr_ras.meta['width'], 50)

        inten_ras = centr_ras.values_from_raster_files([HAZ_DEMO_FL],
                                                       window=Window(
                                                           0, 0, 50, 60))
        self.assertEqual(inten_ras.shape, (1, 60 * 50))
Ejemplo n.º 12
0
 def test_size_pass(self):
     """Test size property"""
     centr_ras = Centroids.from_raster_file(HAZ_DEMO_FL,
                                            window=Window(0, 0, 50, 60))
     self.assertEqual(centr_ras.size, 50 * 60)