Statistics
| Revision:

root / trunk / extensions / extRasterTools-SE / src-test / org / gvsig / rasterTools / properties / panels / TestFLyrRasterSE.java @ 10877

History | View | Annotate | Download (5.35 KB)

1
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
2
*
3
* Copyright (C) 2007 IVER T.I. and Generalitat Valenciana.
4
*
5
* This program is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU General Public License
7
* as published by the Free Software Foundation; either version 2
8
* of the License, or (at your option) any later version.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
18
*/
19
package org.gvsig.rasterTools.properties.panels;
20

    
21
import java.io.File;
22

    
23
import junit.framework.TestCase;
24

    
25
import org.gvsig.fmap.drivers.GenericRasterDriver;
26
import org.gvsig.fmap.drivers.raster.RasterSEDriver;
27
import org.gvsig.fmap.layers.FLyrRasterSE;
28
import org.gvsig.raster.shared.RasterLibrary;
29

    
30
import com.hardcode.driverManager.Driver;
31
import com.hardcode.driverManager.DriverLoadException;
32
import com.iver.cit.gvsig.fmap.layers.LayerFactory;
33
import com.iver.cit.gvsig.project.Project;
34
/**
35
 * Este test prueba el acceso a datos a traves de un FLyrRasterSE. 
36
 * 
37
 * Lee el raster completo y comprueba que los datos leidos sean correctos 
38
 * comparando los valores de las cuatro esquinas y algunos valores dentro de la imagen.
39
 * Despu?s selecciona un ?rea dentro de la imagen de 2x2 y compara que los valores
40
 * leidos sean correctos.
41
 * 
42
 * @version 20/03/2007
43
 * @author Borja Sanchez Zamorano (borsanza@gmail.com)
44
 */
45
public class TestFLyrRasterSE extends TestCase {
46

    
47
        private String baseDir = "./test-images/";
48
        private String path1 = baseDir + "band1-30x28byte.tif";        
49
        private String path2 = baseDir + "band2-30x28byte.tif";        
50
        private String path3 = baseDir + "band3-30x28byte.tif";        
51
        private FLyrRasterSE f = null;        
52
        
53
        public void setUp() {
54
                System.out.println("TestFlyrRasterSE running...");
55
        }
56
        
57
        static {
58
                RasterLibrary.wakeUp();
59
        }
60
        
61
        public void testStack() {
62
                RasterSEDriver rasterDriver = new RasterSEDriver();
63

    
64
                //TODO: Quiz?s lo mejor ser?a que te montaras un directorio con los drivers. Es posible que 
65
                //podamos cambiar test-images por test-data y meterlo dentro junto con imagenes de prueba
66
                String driversPath = "../_fwAndami/gvSIG/extensiones/com.iver.cit.gvsig/drivers";
67

    
68
                LayerFactory.setDriversPath(driversPath);
69

    
70
                Driver driver = null;;
71
                try {
72
                        driver = LayerFactory.getDM().getDriver(rasterDriver.getName());
73
                } catch (DriverLoadException e) {
74
                        e.printStackTrace();
75
                }
76
        
77
                f = FLyrRasterSE.createLayer("Prueba", (GenericRasterDriver) driver, new File(path1), Project.getDefaultProjection());
78
                f.addFile(path2);
79
                f.addFile(path3);
80
                
81
                print();
82
                dataTest1();
83
                
84
        }
85
        
86
        private void dataTest1() {
87
                assertNotNull("band1-30x28byte.tif", f.getFileName()[0]);
88
                assertNotNull("band2-30x28byte.tif", f.getFileName()[1]);
89
                assertNotNull("band3-30x28byte.tif", f.getFileName()[2]);
90

    
91
                assertTrue("f.getFileSize()[0]== (long) 65940", f.getFileSize()[0] == (long) 65940);
92
                assertTrue("f.getFileSize()[1]== (long) 65940", f.getFileSize()[1] == (long) 65940);
93
                assertTrue("f.getFileSize()[2]== (long) 65940", f.getFileSize()[2] == (long) 65940);
94

    
95
                assertTrue("f.getPxWidth()==30,0", f.getPxWidth() == 30.0);
96
                assertTrue("f.getPxHeight()==28,0", f.getPxHeight() == 28.0);
97

    
98
                assertNotNull("tif", f.getFileFormat());
99
                assertEquals("tif", f.getFileFormat(), "tif");
100

    
101
                assertTrue("f.isGeoreferenced()", f.isGeoreferenced());
102

    
103
                assertTrue("f.getBandCount()==3.0", f.getBandCount() == 3.0);
104

    
105
                assertTrue("f.getMinX()==207166.5", f.getMinX() == 207166.5);
106
                assertTrue("f.getMinY()==4368565.5", f.getMinY() == 4368565.5);
107
                assertTrue("f.getMaxX()==216514.5", f.getMaxX() == 216514.5);
108
                assertTrue("f.getMaxY()==4377400.5", f.getMaxY() == 4377400.5);
109
                
110
                //Upper Left
111
/*
112
                assertEquals((int)(raster.getElemByte(0, 0, 0) & 0xff), 14);
113
                assertEquals((int)(raster.getElemByte(0, 0, 1) & 0xff), 14);
114
                assertEquals((int)(raster.getElemByte(0, 0, 2) & 0xff), 0);
115
*/
116
        }
117
        
118
        /**
119
         * Imprime todos los datos de FLyrRasterSE
120
         */
121
        private void print(){
122
                System.out.println("Nombre Archivo 1: " + f.getFileName()[0]);
123
                System.out.println("Nombre Archivo 2: " + f.getFileName()[1]);
124
                System.out.println("Nombre Archivo 3: " + f.getFileName()[2]);
125

    
126
                System.out.println("Tama?o 1: " + f.getFileSize()[0]);
127
                System.out.println("Tama?o 2: " + f.getFileSize()[1]);
128
                System.out.println("Tama?o 3: " + f.getFileSize()[2]);
129

    
130
                System.out.println("Ancho: " + f.getPxWidth());
131
                System.out.println("Alto: " + f.getPxHeight());
132

    
133
                System.out.println("Formato: " + f.getFileFormat());
134

    
135
                System.out.println("GeoReferenciado: " + f.isGeoreferenced());
136

    
137
                System.out.println("Bandas: " + f.getBandCount());
138

    
139
                System.out.println("xmin: " + f.getMinX());
140
                System.out.println("ymin: " + f.getMinY());
141
                System.out.println("xmax: " + f.getMaxX());
142
                System.out.println("ymax: " + f.getMaxY());
143

    
144

    
145
/*                System.out.println(f.getMaxScale());
146
                System.out.println(f.getMinScale());
147
                System.out.println(f.getHeight());
148
                System.out.println(f.getWidth());
149
                System.out.println(f.getWCHeight());
150
                System.out.println(f.getWCWidth());
151
                System.out.println(f.getFileCount());
152
                System.out.println(f.getTransparency());*/
153

    
154
        }
155
}