test.r.to.rast3.sh 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. # This script tests the conversion of raster maps
  2. # into a single voxel map with r.to.rast3
  3. # We need to set a specific region in the
  4. # @preprocess step of this test. We generate
  5. # raster data with r.mapcalc
  6. # The region setting should work for UTM and LL test locations
  7. g.region s=0 n=80 w=0 e=100 b=0 t=50 res=10 res3=10 -p3
  8. # We create several evlevation maps to create slices of the voxel map
  9. # We start from bottom and raise to the top
  10. r.mapcalc --o expr="elev_double = double(if(row() == 2, null(), row()))"
  11. r.mapcalc --o expr="elev_float = float(if(row() == 2, null(), row()))"
  12. r.mapcalc --o expr="elev_1 = 5"
  13. r.mapcalc --o expr="elev_2 = 15"
  14. r.mapcalc --o expr="elev_3 = 25"
  15. r.mapcalc --o expr="elev_4 = 35"
  16. r.mapcalc --o expr="elev_5 = 45"
  17. # We @test several methods to generate @raster3d maps from raster maps
  18. # For validation a @precision=0 should be used. We start with 5 raster maps,
  19. # then 3 raster maps then using single float and double raster maps
  20. # with differen tile sizes and null data
  21. r.to.rast3 --o input=elev_1,elev_2,elev_3,elev_4,elev_5 output=test_volume_6_raster tilesize=1
  22. r.to.rast3 --o input=elev_1,elev_2,elev_3 output=test_volume_3_raster tilesize=1
  23. r.to.rast3 --o input=elev_float output=test_volume_float_raster tilesize=2
  24. r.to.rast3 --o input=elev_double output=test_volume_double_raster tilesize=2
  25. # Uncomment for reference data export
  26. # r3.out.ascii input=test_volume_6_raster output=test_volume_6_raster.ref dp=0
  27. # r3.out.ascii input=test_volume_3_raster output=test_volume_3_raster.ref dp=0
  28. # r3.out.ascii input=test_volume_float_raster output=test_volume_float_raster.ref dp=0
  29. # r3.out.ascii input=test_volume_double_raster output=test_volume_double_raster.ref dp=0
  30. # We need another @preprocess step to generate a different region
  31. g.region s=0 n=80 w=0 e=100 b=0 t=50 res=5 res3=10 -p3
  32. # We @test the automatic resolution correction for @raster3d maps in case
  33. # 2d and 3d region are different
  34. r.to.rast3 --o input=elev_double output=test_volume_double_raster_res tilesize=2
  35. # Uncomment for reference data export
  36. # r3.out.ascii input=test_volume_double_raster_res output=test_volume_double_raster_res.ref dp=0