1# This script tests the conversion of raster maps 2# into a single voxel map with r.to.rast3elev 3 4# We need to set a specific region in the 5# @preprocess step of this test. We generate 6# raster data with r.mapcalc 7# The region setting should work for UTM and LL test locations 8g.region s=0 n=80 w=0 e=100 b=0 t=50 res=10 res3=10 -p3 9# We create several evlevation and value maps 10r.mapcalc --o expr="elev_5_float = float(5)" 11r.mapcalc --o expr="elev_5_double = double(5)" 12r.mapcalc --o expr="elev_45_float = float(45)" 13r.mapcalc --o expr="elev_45_double = double(45)" 14r.mapcalc --o expr="elev_25_float = float(25)" 15r.mapcalc --o expr="elev_25_double = double(25)" 16r.mapcalc --o expr="elev_20_float = float(20)" 17r.mapcalc --o expr="elev_20_double = double(20)" 18r.mapcalc --o expr="raster_float = float(1)" 19r.mapcalc --o expr="raster_double = double(2)" 20 21# We @test several methods to generate @raster3d maps from elevation and value raster maps 22# For validation a @precision=0 should be used. Several methods for voxel map creation are tested 23r.to.rast3elev --o lower=0 upper=2 input=raster_float elevation=elev_25_float output=test_elev_volume_float_1 24r.to.rast3elev --o lower=0 upper=2 input=raster_double elevation=elev_25_double output=test_elev_volume_double_1 25r.to.rast3elev --o upper=2 input=raster_float elevation=elev_25_float output=test_elev_volume_float_2 26r.to.rast3elev --o upper=2 input=raster_double elevation=elev_25_double output=test_elev_volume_double_2 27r.to.rast3elev --o input=raster_float elevation=elev_25_float output=test_elev_volume_float_3 28r.to.rast3elev --o input=raster_double elevation=elev_25_double output=test_elev_volume_double_3 29r.to.rast3elev --o -u input=raster_float elevation=elev_25_float output=test_elev_volume_float_4 30r.to.rast3elev --o -u input=raster_double elevation=elev_25_double output=test_elev_volume_double_4 31r.to.rast3elev --o -l input=raster_float elevation=elev_25_float output=test_elev_volume_float_5 32r.to.rast3elev --o -l input=raster_double elevation=elev_25_double output=test_elev_volume_double_5 33r.to.rast3elev --o -lu input=raster_float elevation=elev_25_float output=test_elev_volume_float_5 34r.to.rast3elev --o -lu input=raster_double elevation=elev_25_double output=test_elev_volume_double_5 35# In case the elevation map is located between two layer, booth layer are filled with data 36r.to.rast3elev --o input=raster_float elevation=elev_20_float output=test_elev_volume_float_6 37r.to.rast3elev --o input=raster_double elevation=elev_20_double output=test_elev_volume_double_6 38# Test with two to three elevation and value maps using different fill styles 39r.to.rast3elev --o -u input=elev_25_float,elev_45_float elevation=elev_25_float,elev_45_float output=test_elev_volume_float_7 40r.to.rast3elev --o -u input=elev_25_double,elev_45_double elevation=elev_25_double,elev_45_double output=test_elev_volume_double_7 41r.to.rast3elev --o -l input=elev_45_float,elev_25_float,elev_5_float elevation=elev_45_float,elev_25_float,elev_5_float output=test_elev_volume_float_8 42r.to.rast3elev --o -l input=elev_45_double,elev_25_double,elev_5_double elevation=elev_45_double,elev_25_double,elev_5_double output=test_elev_volume_double_8 43# Seems to be a bug in this case, so commented out, need to be investigated 44# r.to.rast3elev --o -lu input=elev_25_float,elev_5_float elevation=elev_25_float,elev_5_float output=test_elev_volume_float_9 45# r.to.rast3elev --o -lu input=elev_25_double,elev_5_double elevation=elev_25_double,elev_5_double output=test_elev_volume_double_9 46 47# Export of the references 48# for i in `g.list type=raster3d pattern=test_elev_volume_*` ; do r3.out.ascii dp=0 input=$i output=${i}.ref; done 49