Revision 21615
trunk/libraries/libRaster/src-test/org/gvsig/raster/dataset/TestIOMemoryRasterDriver.java | ||
---|---|---|
1 |
/* |
|
2 |
* Created on 19-jul-2006 |
|
1 |
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana |
|
3 | 2 |
* |
4 |
* To change the template for this generated file go to |
|
5 |
* Window>Preferences>Java>Code Generation>Code and Comments |
|
6 |
*/ |
|
7 |
/* gvSIG. Sistema de Informaci�n Geogr�fica de la Generalitat Valenciana |
|
3 |
* Copyright (C) 2007 IVER T.I. and Generalitat Valenciana. |
|
8 | 4 |
* |
9 |
* Copyright (C) 2004 IVER T.I. and Generalitat Valenciana. |
|
10 |
* |
|
11 | 5 |
* This program is free software; you can redistribute it and/or |
12 | 6 |
* modify it under the terms of the GNU General Public License |
13 | 7 |
* as published by the Free Software Foundation; either version 2 |
... | ... | |
31 | 25 |
import org.gvsig.raster.buffer.RasterBuffer; |
32 | 26 |
import org.gvsig.raster.dataset.io.MemoryRasterDriverParam; |
33 | 27 |
import org.gvsig.raster.dataset.io.RasterDriverException; |
34 |
|
|
35 | 28 |
/** |
36 |
* |
|
37 | 29 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
38 |
* |
|
39 | 30 |
*/ |
40 | 31 |
public class TestIOMemoryRasterDriver extends TestCase { |
32 |
private String baseDir = "./test-images/"; |
|
33 |
private String path = baseDir + "miniRaster25x24.tif"; |
|
41 | 34 |
|
42 |
private String baseDir = "./test-images/"; |
|
43 |
private String path = baseDir + "miniRaster25x24.tif"; |
|
35 |
private RasterDataset f = null; |
|
36 |
private RasterDataset f1 = null; |
|
37 |
private BufferFactory ds = null; |
|
38 |
private BandList bandList = null; |
|
44 | 39 |
|
45 |
private RasterDataset f = null; |
|
46 |
private RasterDataset f1 = null; |
|
47 |
private BufferFactory ds = null; |
|
48 |
private BandList bandList = null; |
|
49 |
|
|
50 | 40 |
public void start() { |
51 | 41 |
this.setUp(); |
52 | 42 |
try { |
... | ... | |
104 | 94 |
} |
105 | 95 |
} |
106 | 96 |
|
97 |
private void dataTest1(IBuffer raster) { |
|
98 |
int band0[] = { 14, 97, 97, 119, 119, 93, 93, 58, 0, 0, 1, 1, 54, 54, 79, 69, 69, 59, 59, 61, 61, 75, 58, 58, 68, 14, 97, 97, 119, 119, 93, 93, 58, 0, 0, 1, 1, 54, 54, 79, 69, 69, 59, 59, 61, 61, 75, 58, 58, 68, 0, 58, 58, 71, 71, 33, 33, 16, 0, 0, 37, 37, 54, 54, 78, 74, 74, 69, 69, 38, 38, 53, 30, 30, 82, 0, 58, 58, 71, 71, 33, 33, 16, 0, 0, 37, 37, 54, 54, 78, 74, 74, 69, 69, 38, 38, 53, 30, 30, 82, 19, 88, 88, 65, 65, 23, 23, 0, 9, 9, 49, 49, 66, 66, 71, 66, 66, 70, 70, 48, 48, 77, 56, 56, 73, 19, 88, 88, 65, 65, 23, 23, 0, 9, 9, 49, 49, 66, 66, 71, 66, 66, 70, 70, 48, 48, 77, 56, 56, 73, 54, 83, 83, 58, 58, 21, 21, 0, 24, 24, 55, 55, 70, 70, 68, 74, 74, 83, 83, 56, 56, 88, 91, 91, 82, 82, 51, 51, 60, 60, 42, 42, 61, 64, 64, 65, 65, 65, 65, 62, 82, 82, 91, 91, 71, 71, 103, 97, 97, 78, 82, 51, 51, 60, 60, 42, 42, 61, 64, 64, 65, 65, 65, 65, 62, 82, 82, 91, 91, 71, 71, 103, 97, 97, 78, 86, 54, 54, 70, 70, 70, 70, 109, 97, 97, 80, 80, 65, 65, 63, 80, 80, 80, 80, 90, 90, 114, 116, 116, 111, 86, 54, 54, 70, 70, 70, 70, 109, 97, 97, 80, 80, 65, 65, 63, 80, 80, 80, 80, 90, 90, 114, 116, 116, 111, 66, 94, 94, 76, 76, 77, 77, 87, 75, 75, 82, 82, 81, 81, 91, 90, 90, 71, 71, 102, 102, 81, 58, 58, 0, 66, 94, 94, 76, 76, 77, 77, 87, 75, 75, 82, 82, 81, 81, 91, 90, 90, 71, 71, 102, 102, 81, 58, 58, 0, 56, 113, 113, 84, 84, 68, 68, 61, 57, 57, 88, 88, 92, 92, 116, 111, 111, 93, 93, 130, 130, 34, 17, 17, 0, 63, 106, 106, 97, 97, 62, 62, 66, 81, 81, 110, 110, 94, 94, 114, 120, 120, 124, 124, 172, 172, 22, 4, 4, 23, 63, 106, 106, 97, 97, 62, 62, 66, 81, 81, 110, 110, 94, 94, 114, 120, 120, 124, 124, 172, 172, 22, 4, 4, 23, 85, 109, 109, 53, 53, 79, 79, 112, 107, 107, 115, 115, 117, 117, 122, 149, 149, 178, 178, 178, 178, 152, 11, 11, 31, 85, 109, 109, 53, 53, 79, 79, 112, 107, 107, 115, 115, 117, 117, 122, 149, 149, 178, 178, 178, 178, 152, 11, 11, 31, 87, 110, 110, 96, 96, 86, 86, 118, 125, 125, 138, 138, 160, 160, 179, 194, 194, 222, 222, 235, 235, 222, 95, 95, 68, 87, 110, 110, 96, 96, 86, 86, 118, 125, 125, 138, 138, 160, 160, 179, 194, 194, 222, 222, 235, 235, 222, 95, 95, 68, 97, 175, 175, 234, 234, 154, 154, 140, 146, 146, 152, 152, 200, 200, 242, 248, 248, 250, 250, 246, 246, 215, 150, 150, 115, 119, 164, 164, 225, 225, 157, 157, 162, 166, 166, 142, 142, 180, 180, 235, 237, 237, 225, 225, 198, 198, 146, 135, 135, 129, 119, 164, 164, 225, 225, 157, 157, 162, 166, 166, 142, 142, 180, 180, 235, 237, 237, 225, 225, 198, 198, 146, 135, 135, 129, 129, 129, 129, 164, 164, 153, 153, 183, 183, 183, 128, 128, 134, 134, 171, 173, 173, 169, 169, 158, 158, 123, 141, 141, 145}; |
|
99 |
int band1[] = { 14, 101, 101, 127, 127, 108, 108, 75, 18, 18, 17, 17, 61, 61, 78, 65, 65, 59, 59, 65, 65, 84, 85, 85, 90, 14, 101, 101, 127, 127, 108, 108, 75, 18, 18, 17, 17, 61, 61, 78, 65, 65, 59, 59, 65, 65, 84, 85, 85, 90, 11, 86, 86, 102, 102, 61, 61, 39, 7, 7, 43, 43, 59, 59, 85, 83, 83, 82, 82, 52, 52, 70, 47, 47, 98, 11, 86, 86, 102, 102, 61, 61, 39, 7, 7, 43, 43, 59, 59, 85, 83, 83, 82, 82, 52, 52, 70, 47, 47, 98, 37, 115, 115, 94, 94, 47, 47, 6, 18, 18, 56, 56, 71, 71, 77, 75, 75, 82, 82, 63, 63, 96, 70, 70, 85, 37, 115, 115, 94, 94, 47, 47, 6, 18, 18, 56, 56, 71, 71, 77, 75, 75, 82, 82, 63, 63, 96, 70, 70, 85, 72, 108, 108, 79, 79, 37, 37, 4, 37, 37, 65, 65, 78, 78, 72, 81, 81, 93, 93, 71, 71, 107, 105, 105, 94, 100, 70, 70, 75, 75, 51, 51, 66, 81, 81, 79, 79, 73, 73, 66, 88, 88, 101, 101, 87, 87, 121, 112, 112, 93, 100, 70, 70, 75, 75, 51, 51, 66, 81, 81, 79, 79, 73, 73, 66, 88, 88, 101, 101, 87, 87, 121, 112, 112, 93, 104, 72, 72, 82, 82, 78, 78, 111, 115, 115, 96, 96, 75, 75, 69, 84, 84, 88, 88, 104, 104, 131, 129, 129, 124, 104, 72, 72, 82, 82, 78, 78, 111, 115, 115, 96, 96, 75, 75, 69, 84, 84, 88, 88, 104, 104, 131, 129, 129, 124, 84, 109, 109, 88, 88, 85, 85, 91, 94, 94, 97, 97, 91, 91, 98, 94, 94, 79, 79, 112, 112, 94, 65, 65, 0, 84, 109, 109, 88, 88, 85, 85, 91, 94, 94, 97, 97, 91, 91, 98, 94, 94, 79, 79, 112, 112, 94, 65, 65, 0, 72, 128, 128, 97, 97, 78, 78, 68, 76, 76, 103, 103, 104, 104, 125, 117, 117, 98, 98, 137, 137, 43, 26, 26, 3, 79, 121, 121, 110, 110, 75, 75, 77, 98, 98, 124, 124, 107, 107, 123, 127, 127, 129, 129, 178, 178, 29, 20, 20, 38, 79, 121, 121, 110, 110, 75, 75, 77, 98, 98, 124, 124, 107, 107, 123, 127, 127, 129, 129, 178, 178, 29, 20, 20, 38, 104, 130, 130, 74, 74, 97, 97, 126, 123, 123, 130, 130, 133, 133, 137, 161, 161, 187, 187, 180, 180, 153, 7, 7, 35, 104, 130, 130, 74, 74, 97, 97, 126, 123, 123, 130, 130, 133, 133, 137, 161, 161, 187, 187, 180, 180, 153, 7, 7, 35, 102, 124, 124, 109, 109, 95, 95, 126, 135, 135, 147, 147, 172, 172, 190, 205, 205, 228, 228, 237, 237, 222, 89, 89, 68, 102, 124, 124, 109, 109, 95, 95, 126, 135, 135, 147, 147, 172, 172, 190, 205, 205, 228, 228, 237, 237, 222, 89, 89, 68, 106, 182, 182, 236, 236, 151, 151, 134, 145, 145, 153, 153, 204, 204, 249, 254, 254, 255, 255, 247, 247, 215, 140, 140, 114, 120, 158, 158, 215, 215, 143, 143, 146, 159, 159, 136, 136, 181, 181, 238, 242, 242, 230, 230, 200, 200, 146, 126, 126, 124, 120, 158, 158, 215, 215, 143, 143, 146, 159, 159, 136, 136, 181, 181, 238, 242, 242, 230, 230, 200, 200, 146, 126, 126, 124, 122, 117, 117, 148, 148, 133, 133, 163, 173, 173, 122, 122, 132, 132, 173, 176, 176, 172, 172, 160, 160, 123, 133, 133, 140}; |
|
100 |
int band2[] = { 0, 68, 68, 88, 88, 67, 67, 31, 0, 0, 0, 0, 28, 28, 48, 36, 36, 31, 31, 38, 38, 57, 42, 42, 52, 0, 68, 68, 88, 88, 67, 67, 31, 0, 0, 0, 0, 28, 28, 48, 36, 36, 31, 31, 38, 38, 57, 42, 42, 52, 0, 37, 37, 42, 42, 23, 23, 31, 0, 0, 29, 29, 36, 36, 54, 52, 52, 56, 56, 35, 35, 60, 11, 11, 61, 0, 37, 37, 42, 42, 23, 23, 31, 0, 0, 29, 29, 36, 36, 54, 52, 52, 56, 56, 35, 35, 60, 11, 11, 61, 23, 70, 70, 38, 38, 13, 13, 0, 1, 1, 38, 38, 49, 49, 51, 48, 48, 58, 58, 42, 42, 76, 57, 57, 71, 23, 70, 70, 38, 38, 13, 13, 0, 1, 1, 38, 38, 49, 49, 51, 48, 48, 58, 58, 42, 42, 76, 57, 57, 71, 60, 69, 69, 36, 36, 10, 10, 0, 7, 7, 38, 38, 55, 55, 55, 63, 63, 69, 69, 42, 42, 75, 92, 92, 80, 86, 42, 42, 42, 42, 30, 30, 59, 39, 39, 44, 44, 50, 50, 52, 74, 74, 77, 77, 51, 51, 79, 83, 83, 64, 86, 42, 42, 42, 42, 30, 30, 59, 39, 39, 44, 44, 50, 50, 52, 74, 74, 77, 77, 51, 51, 79, 83, 83, 64, 88, 50, 50, 58, 58, 57, 57, 97, 73, 73, 60, 60, 51, 51, 55, 70, 70, 65, 65, 69, 69, 89, 111, 111, 107, 88, 50, 50, 58, 58, 57, 57, 97, 73, 73, 60, 60, 51, 51, 55, 70, 70, 65, 65, 69, 69, 89, 111, 111, 107, 62, 90, 90, 68, 68, 62, 62, 68, 62, 62, 68, 68, 67, 67, 80, 77, 77, 56, 56, 85, 85, 64, 75, 75, 12, 62, 90, 90, 68, 68, 62, 62, 68, 62, 62, 68, 68, 67, 67, 80, 77, 77, 56, 56, 85, 85, 64, 75, 75, 12, 46, 109, 109, 79, 79, 53, 53, 35, 56, 56, 82, 82, 80, 80, 98, 91, 91, 76, 76, 119, 119, 26, 21, 21, 2, 50, 102, 102, 92, 92, 47, 47, 37, 88, 88, 107, 107, 81, 81, 92, 96, 96, 106, 106, 164, 164, 22, 0, 0, 0, 50, 102, 102, 92, 92, 47, 47, 37, 88, 88, 107, 107, 81, 81, 92, 96, 96, 106, 106, 164, 164, 22, 0, 0, 0, 84, 111, 111, 55, 55, 75, 75, 103, 97, 97, 111, 111, 120, 120, 130, 159, 159, 184, 184, 177, 177, 148, 24, 24, 36, 84, 111, 111, 55, 55, 75, 75, 103, 97, 97, 111, 111, 120, 120, 130, 159, 159, 184, 184, 177, 177, 148, 24, 24, 36, 83, 107, 107, 91, 91, 76, 76, 105, 111, 111, 128, 128, 158, 158, 182, 201, 201, 228, 228, 236, 236, 220, 101, 101, 66, 83, 107, 107, 91, 91, 76, 76, 105, 111, 111, 128, 128, 158, 158, 182, 201, 201, 228, 228, 236, 236, 220, 101, 101, 66, 87, 166, 166, 222, 222, 136, 136, 118, 124, 124, 135, 135, 190, 190, 241, 250, 250, 254, 254, 249, 249, 215, 148, 148, 109, 102, 144, 144, 203, 203, 130, 130, 133, 141, 141, 120, 120, 167, 167, 227, 235, 235, 226, 226, 199, 199, 148, 127, 127, 118, 102, 144, 144, 203, 203, 130, 130, 133, 141, 141, 120, 120, 167, 167, 227, 235, 235, 226, 226, 199, 199, 148, 127, 127, 118, 106, 101, 101, 133, 133, 122, 122, 152, 161, 161, 108, 108, 119, 119, 160, 165, 165, 165, 165, 155, 155, 121, 130, 130, 134}; |
|
101 |
compareRaster(raster, band0, band1, band2); |
|
102 |
} |
|
103 |
|
|
104 |
private void dataTest2(IBuffer raster) { |
|
105 |
int band0[] = { 80, 80, 82, 82}; |
|
106 |
int band1[] = { 96, 96, 97, 97}; |
|
107 |
int band2[] = { 60, 60, 68, 68}; |
|
108 |
compareRaster(raster, band0, band1, band2); |
|
109 |
} |
|
110 |
|
|
111 |
private void dataTest3(IBuffer raster) { |
|
112 |
int band0[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; |
|
113 |
int band1[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; |
|
114 |
int band2[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; |
|
115 |
compareRaster(raster, band0, band1, band2); |
|
116 |
} |
|
117 |
|
|
118 |
private void dataTest4(IBuffer raster) { |
|
119 |
int band0[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; |
|
120 |
int band1[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; |
|
121 |
int band2[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; |
|
122 |
compareRaster(raster, band0, band1, band2); |
|
123 |
} |
|
124 |
|
|
125 |
private void dataTest5(IBuffer raster) { |
|
126 |
int band0[] = { 86, 86, 54, 54, 54, 54, 70, 70, 70, 70, 70, 70, 70, 70, 109, 109, 97, 97, 97, 97, 86, 86, 54, 54, 54, 54, 70, 70, 70, 70, 70, 70, 70, 70, 109, 109, 97, 97, 97, 97, 66, 66, 94, 94, 94, 94, 76, 76, 76, 76, 77, 77, 77, 77, 87, 87, 75, 75, 75, 75, 66, 66, 94, 94, 94, 94, 76, 76, 76, 76, 77, 77, 77, 77, 87, 87, 75, 75, 75, 75, 66, 66, 94, 94, 94, 94, 76, 76, 76, 76, 77, 77, 77, 77, 87, 87, 75, 75, 75, 75, 66, 66, 94, 94, 94, 94, 76, 76, 76, 76, 77, 77, 77, 77, 87, 87, 75, 75, 75, 75, 56, 56, 113, 113, 113, 113, 84, 84, 84, 84, 68, 68, 68, 68, 61, 61, 57, 57, 57, 57, 56, 56, 113, 113, 113, 113, 84, 84, 84, 84, 68, 68, 68, 68, 61, 61, 57, 57, 57, 57, 63, 63, 106, 106, 106, 106, 97, 97, 97, 97, 62, 62, 62, 62, 66, 66, 81, 81, 81, 81, 63, 63, 106, 106, 106, 106, 97, 97, 97, 97, 62, 62, 62, 62, 66, 66, 81, 81, 81, 81, 63, 63, 106, 106, 106, 106, 97, 97, 97, 97, 62, 62, 62, 62, 66, 66, 81, 81, 81, 81, 63, 63, 106, 106, 106, 106, 97, 97, 97, 97, 62, 62, 62, 62, 66, 66, 81, 81, 81, 81, 85, 85, 109, 109, 109, 109, 53, 53, 53, 53, 79, 79, 79, 79, 112, 112, 107, 107, 107, 107, 85, 85, 109, 109, 109, 109, 53, 53, 53, 53, 79, 79, 79, 79, 112, 112, 107, 107, 107, 107, 85, 85, 109, 109, 109, 109, 53, 53, 53, 53, 79, 79, 79, 79, 112, 112, 107, 107, 107, 107, 85, 85, 109, 109, 109, 109, 53, 53, 53, 53, 79, 79, 79, 79, 112, 112, 107, 107, 107, 107, 87, 87, 110, 110, 110, 110, 96, 96, 96, 96, 86, 86, 86, 86, 118, 118, 125, 125, 125, 125, 87, 87, 110, 110, 110, 110, 96, 96, 96, 96, 86, 86, 86, 86, 118, 118, 125, 125, 125, 125, 87, 87, 110, 110, 110, 110, 96, 96, 96, 96, 86, 86, 86, 86, 118, 118, 125, 125, 125, 125, 87, 87, 110, 110, 110, 110, 96, 96, 96, 96, 86, 86, 86, 86, 118, 118, 125, 125, 125, 125}; |
|
127 |
int band1[] = { 104, 104, 72, 72, 72, 72, 82, 82, 82, 82, 78, 78, 78, 78, 111, 111, 115, 115, 115, 115, 104, 104, 72, 72, 72, 72, 82, 82, 82, 82, 78, 78, 78, 78, 111, 111, 115, 115, 115, 115, 84, 84, 109, 109, 109, 109, 88, 88, 88, 88, 85, 85, 85, 85, 91, 91, 94, 94, 94, 94, 84, 84, 109, 109, 109, 109, 88, 88, 88, 88, 85, 85, 85, 85, 91, 91, 94, 94, 94, 94, 84, 84, 109, 109, 109, 109, 88, 88, 88, 88, 85, 85, 85, 85, 91, 91, 94, 94, 94, 94, 84, 84, 109, 109, 109, 109, 88, 88, 88, 88, 85, 85, 85, 85, 91, 91, 94, 94, 94, 94, 72, 72, 128, 128, 128, 128, 97, 97, 97, 97, 78, 78, 78, 78, 68, 68, 76, 76, 76, 76, 72, 72, 128, 128, 128, 128, 97, 97, 97, 97, 78, 78, 78, 78, 68, 68, 76, 76, 76, 76, 79, 79, 121, 121, 121, 121, 110, 110, 110, 110, 75, 75, 75, 75, 77, 77, 98, 98, 98, 98, 79, 79, 121, 121, 121, 121, 110, 110, 110, 110, 75, 75, 75, 75, 77, 77, 98, 98, 98, 98, 79, 79, 121, 121, 121, 121, 110, 110, 110, 110, 75, 75, 75, 75, 77, 77, 98, 98, 98, 98, 79, 79, 121, 121, 121, 121, 110, 110, 110, 110, 75, 75, 75, 75, 77, 77, 98, 98, 98, 98, 104, 104, 130, 130, 130, 130, 74, 74, 74, 74, 97, 97, 97, 97, 126, 126, 123, 123, 123, 123, 104, 104, 130, 130, 130, 130, 74, 74, 74, 74, 97, 97, 97, 97, 126, 126, 123, 123, 123, 123, 104, 104, 130, 130, 130, 130, 74, 74, 74, 74, 97, 97, 97, 97, 126, 126, 123, 123, 123, 123, 104, 104, 130, 130, 130, 130, 74, 74, 74, 74, 97, 97, 97, 97, 126, 126, 123, 123, 123, 123, 102, 102, 124, 124, 124, 124, 109, 109, 109, 109, 95, 95, 95, 95, 126, 126, 135, 135, 135, 135, 102, 102, 124, 124, 124, 124, 109, 109, 109, 109, 95, 95, 95, 95, 126, 126, 135, 135, 135, 135, 102, 102, 124, 124, 124, 124, 109, 109, 109, 109, 95, 95, 95, 95, 126, 126, 135, 135, 135, 135, 102, 102, 124, 124, 124, 124, 109, 109, 109, 109, 95, 95, 95, 95, 126, 126, 135, 135, 135, 135}; |
|
128 |
int band2[] = { 88, 88, 50, 50, 50, 50, 58, 58, 58, 58, 57, 57, 57, 57, 97, 97, 73, 73, 73, 73, 88, 88, 50, 50, 50, 50, 58, 58, 58, 58, 57, 57, 57, 57, 97, 97, 73, 73, 73, 73, 62, 62, 90, 90, 90, 90, 68, 68, 68, 68, 62, 62, 62, 62, 68, 68, 62, 62, 62, 62, 62, 62, 90, 90, 90, 90, 68, 68, 68, 68, 62, 62, 62, 62, 68, 68, 62, 62, 62, 62, 62, 62, 90, 90, 90, 90, 68, 68, 68, 68, 62, 62, 62, 62, 68, 68, 62, 62, 62, 62, 62, 62, 90, 90, 90, 90, 68, 68, 68, 68, 62, 62, 62, 62, 68, 68, 62, 62, 62, 62, 46, 46, 109, 109, 109, 109, 79, 79, 79, 79, 53, 53, 53, 53, 35, 35, 56, 56, 56, 56, 46, 46, 109, 109, 109, 109, 79, 79, 79, 79, 53, 53, 53, 53, 35, 35, 56, 56, 56, 56, 50, 50, 102, 102, 102, 102, 92, 92, 92, 92, 47, 47, 47, 47, 37, 37, 88, 88, 88, 88, 50, 50, 102, 102, 102, 102, 92, 92, 92, 92, 47, 47, 47, 47, 37, 37, 88, 88, 88, 88, 50, 50, 102, 102, 102, 102, 92, 92, 92, 92, 47, 47, 47, 47, 37, 37, 88, 88, 88, 88, 50, 50, 102, 102, 102, 102, 92, 92, 92, 92, 47, 47, 47, 47, 37, 37, 88, 88, 88, 88, 84, 84, 111, 111, 111, 111, 55, 55, 55, 55, 75, 75, 75, 75, 103, 103, 97, 97, 97, 97, 84, 84, 111, 111, 111, 111, 55, 55, 55, 55, 75, 75, 75, 75, 103, 103, 97, 97, 97, 97, 84, 84, 111, 111, 111, 111, 55, 55, 55, 55, 75, 75, 75, 75, 103, 103, 97, 97, 97, 97, 84, 84, 111, 111, 111, 111, 55, 55, 55, 55, 75, 75, 75, 75, 103, 103, 97, 97, 97, 97, 83, 83, 107, 107, 107, 107, 91, 91, 91, 91, 76, 76, 76, 76, 105, 105, 111, 111, 111, 111, 83, 83, 107, 107, 107, 107, 91, 91, 91, 91, 76, 76, 76, 76, 105, 105, 111, 111, 111, 111, 83, 83, 107, 107, 107, 107, 91, 91, 91, 91, 76, 76, 76, 76, 105, 105, 111, 111, 111, 111, 83, 83, 107, 107, 107, 107, 91, 91, 91, 91, 76, 76, 76, 76, 105, 105, 111, 111, 111, 111}; |
|
129 |
compareRaster(raster, band0, band1, band2); |
|
130 |
} |
|
131 |
|
|
132 |
private void dataTest6(IBuffer raster) { |
|
133 |
int band0[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; |
|
134 |
int band1[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; |
|
135 |
int band2[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; |
|
136 |
compareRaster(raster, band0, band1, band2); |
|
137 |
} |
|
138 |
|
|
139 |
private void dataTest7(IBuffer raster) { |
|
140 |
int band0[] = { 14, 93, 1, 69, 61, 19, 23, 49, 66, 48, 86, 70, 80, 80, 90, 63, 62, 110, 120, 172, 87, 86, 138, 194, 235}; |
|
141 |
int band1[] = { 14, 108, 17, 65, 65, 37, 47, 56, 75, 63, 104, 78, 96, 84, 104, 79, 75, 124, 127, 178, 102, 95, 147, 205, 237}; |
|
142 |
int band2[] = { 0, 67, 0, 36, 38, 23, 13, 38, 48, 42, 88, 57, 60, 70, 69, 50, 47, 107, 96, 164, 83, 76, 128, 201, 236}; |
|
143 |
compareRaster(raster, band0, band1, band2); |
|
144 |
} |
|
145 |
|
|
107 | 146 |
public void testStack() throws RasterDriverException { |
108 |
//************************************** |
|
109 |
//Prueba getWindowRaster(int x, int y, int w, int h, BandList bandList, IBuffer rasterBuf) |
|
110 |
|
|
111 |
//COMPLETA |
|
112 |
IBuffer buffer = RasterBuffer.getBuffer(f.getDataType()[0], 25, 24, 3, true); |
|
113 | 147 |
try { |
148 |
//************************************** |
|
149 |
//Prueba getWindowRaster(int x, int y, int w, int h, BandList bandList, IBuffer rasterBuf) |
|
150 |
//COMPLETA |
|
151 |
IBuffer buffer = RasterBuffer.getBuffer(f.getDataType()[0], 25, 24, 3, true); |
|
114 | 152 |
f.getWindowRaster(0, 0, 25, 24, bandList, buffer); |
115 |
} catch (InterruptedException e) { |
|
116 |
e.printStackTrace(); |
|
117 |
} |
|
118 |
dataTest1(buffer); |
|
119 |
|
|
120 |
//ZOOM |
|
121 |
buffer = RasterBuffer.getBuffer(f.getDataType()[0], 2, 2, 3, true); |
|
122 |
try { |
|
153 |
dataTest1(buffer); |
|
154 |
|
|
155 |
//ZOOM |
|
156 |
buffer = RasterBuffer.getBuffer(f.getDataType()[0], 2, 2, 3, true); |
|
123 | 157 |
f.getWindowRaster(10, 10, 2, 2, bandList, buffer); |
124 |
} catch (InterruptedException e) { |
|
125 |
e.printStackTrace(); |
|
126 |
} |
|
127 |
dataTest2(buffer); |
|
128 |
|
|
129 |
//************************************** |
|
130 |
//Prueba de getWindowRaster(double minX, double minY, double maxX, double maxY, int bufWidth, int bufHeight, BandList bandList, IBuffer rasterBuf, boolean adjustToExtent) |
|
131 |
|
|
132 |
//EXTENT COMPLETO |
|
133 |
buffer = RasterBuffer.getBuffer(f.getDataType()[0], 25, 24, 3, true); |
|
134 |
try { |
|
135 |
f.getWindowRaster(f.getExtent().minX(), |
|
136 |
f.getExtent().minY(), |
|
137 |
f.getExtent().maxX(), |
|
138 |
f.getExtent().maxY(), |
|
139 |
25, 24, bandList, buffer, true); |
|
140 |
} catch (InterruptedException e) { |
|
141 |
e.printStackTrace(); |
|
142 |
} |
|
143 |
dataTest1(buffer); |
|
158 |
dataTest2(buffer); |
|
159 |
|
|
160 |
//************************************** |
|
161 |
//Prueba de getWindowRaster(double minX, double minY, double maxX, double maxY, int bufWidth, int bufHeight, BandList bandList, IBuffer rasterBuf, boolean adjustToExtent) |
|
162 |
//EXTENT COMPLETO |
|
163 |
buffer = RasterBuffer.getBuffer(f.getDataType()[0], 25, 24, 3, true); |
|
164 |
f.getWindowRaster(f.getExtent().minX(), f.getExtent().minY(), f.getExtent().maxX(), f.getExtent().maxY(), 25, 24, bandList, buffer, true); |
|
165 |
dataTest3(buffer); |
|
144 | 166 |
|
145 |
//ZOOM + subsampling |
|
146 |
buffer = RasterBuffer.getBuffer(f.getDataType()[0], 8, 8, 3, true); |
|
147 |
try { |
|
148 |
f.getWindowRaster( Math.ceil(f.getExtent().minX()), |
|
149 |
Math.ceil(f.getExtent().minY()), |
|
150 |
Math.floor(f.getExtent().maxX()), |
|
151 |
Math.floor(f.getExtent().maxY()), |
|
152 |
8, 8, bandList, buffer, true); |
|
153 |
} catch (InterruptedException e) { |
|
154 |
e.printStackTrace(); |
|
155 |
} |
|
156 |
dataTest3(buffer); |
|
157 |
|
|
158 |
//ZOOM + supersampling |
|
159 |
buffer = RasterBuffer.getBuffer(f.getDataType()[0], 20, 20, 3, true); |
|
160 |
try { |
|
161 |
f.getWindowRaster( Math.ceil(f.getExtent().minX()), |
|
162 |
Math.ceil(f.getExtent().minY()), |
|
163 |
Math.floor(f.getExtent().minX() + 10), |
|
164 |
Math.floor(f.getExtent().minY() + 10), |
|
165 |
20, 20, bandList, buffer, true); |
|
166 |
} catch (InterruptedException e) { |
|
167 |
e.printStackTrace(); |
|
168 |
} |
|
169 |
|
|
170 |
|
|
171 |
//************************************** |
|
172 |
//Prueba de getWindowRaster(double x, double y, double w, double h, BandList bandList, IBuffer rasterBuf, boolean adjustToExtent) |
|
173 |
|
|
174 |
//COMPLETA |
|
175 |
buffer = RasterBuffer.getBuffer(f.getDataType()[0], 25, 24, 3, true); |
|
176 |
try { |
|
177 |
f.getWindowRaster( f.getExtent().minX(), |
|
178 |
f.getExtent().maxY(), |
|
179 |
f.getExtent().width(), |
|
180 |
f.getExtent().height(), |
|
181 |
bandList, buffer, true); |
|
182 |
} catch (InterruptedException e) { |
|
183 |
e.printStackTrace(); |
|
184 |
} |
|
185 |
dataTest1(buffer); |
|
186 |
|
|
187 |
//************************************** |
|
188 |
//Prueba de getWindowRaster(int x, int y, int w, int h, int bufWidth, int bufHeight, BandList bandList, IBuffer rasterBuf) |
|
189 |
|
|
190 |
//COMPLETA |
|
191 |
buffer = RasterBuffer.getBuffer(f.getDataType()[0], 5, 5, 3, true); |
|
192 |
try { |
|
167 |
//ZOOM + subsampling |
|
168 |
buffer = RasterBuffer.getBuffer(f.getDataType()[0], 8, 8, 3, true); |
|
169 |
f.getWindowRaster(Math.ceil(f.getExtent().minX()), Math.ceil(f.getExtent().minY()), Math.floor(f.getExtent().maxX()), Math.floor(f.getExtent().maxY()), 8, 8, bandList, buffer, true); |
|
170 |
dataTest4(buffer); |
|
171 |
|
|
172 |
//ZOOM + supersampling |
|
173 |
buffer = RasterBuffer.getBuffer(f.getDataType()[0], 20, 20, 3, true); |
|
174 |
f.getWindowRaster(Math.ceil(f.getExtent().minX()), Math.ceil(f.getExtent().minY()), Math.floor(f.getExtent().minX() + 10), Math.floor(f.getExtent().minY() + 10), 20, 20, bandList, buffer, true); |
|
175 |
dataTest5(buffer); |
|
176 |
|
|
177 |
//************************************** |
|
178 |
//Prueba de getWindowRaster(double x, double y, double w, double h, BandList bandList, IBuffer rasterBuf, boolean adjustToExtent) |
|
179 |
//COMPLETA |
|
180 |
buffer = RasterBuffer.getBuffer(f.getDataType()[0], 25, 24, 3, true); |
|
181 |
f.getWindowRaster(f.getExtent().minX(), f.getExtent().maxY(), f.getExtent().width(), f.getExtent().height(), bandList, buffer, true); |
|
182 |
dataTest6(buffer); |
|
183 |
|
|
184 |
//************************************** |
|
185 |
//Prueba de getWindowRaster(int x, int y, int w, int h, int bufWidth, int bufHeight, BandList bandList, IBuffer rasterBuf) |
|
186 |
//COMPLETA |
|
187 |
buffer = RasterBuffer.getBuffer(f.getDataType()[0], 5, 5, 3, true); |
|
193 | 188 |
f.getWindowRaster(0, 0, 25, 24, 5, 5, bandList, buffer); |
189 |
dataTest7(buffer); |
|
194 | 190 |
} catch (InterruptedException e) { |
195 | 191 |
e.printStackTrace(); |
196 | 192 |
} |
197 |
dataTest4(buffer); |
|
198 |
|
|
199 | 193 |
} |
200 |
|
|
201 |
|
|
202 |
private void dataTest1(IBuffer raster){ |
|
203 |
//Upper Left |
|
204 |
assertEquals((int)(raster.getElemByte(0, 0, 0) & 0xff), 14); |
|
205 |
assertEquals((int)(raster.getElemByte(0, 0, 1) & 0xff), 14); |
|
206 |
assertEquals((int)(raster.getElemByte(0, 0, 2) & 0xff), 0); |
|
207 |
//Upper Right |
|
208 |
assertEquals((int)(raster.getElemByte(0, 24, 0) & 0xff), 68); |
|
209 |
assertEquals((int)(raster.getElemByte(0, 24, 1) & 0xff), 90); |
|
210 |
assertEquals((int)(raster.getElemByte(0, 24, 2) & 0xff), 52); |
|
211 |
//Lower Left |
|
212 |
assertEquals((int)(raster.getElemByte(23, 0, 0) & 0xff), 129); |
|
213 |
assertEquals((int)(raster.getElemByte(23, 0, 1) & 0xff), 122); |
|
214 |
assertEquals((int)(raster.getElemByte(23, 0, 2) & 0xff), 106); |
|
215 |
//Lower Right |
|
216 |
assertEquals((int)(raster.getElemByte(23, 24, 0) & 0xff), 145); |
|
217 |
assertEquals((int)(raster.getElemByte(23, 24, 1) & 0xff), 140); |
|
218 |
assertEquals((int)(raster.getElemByte(23, 24, 2) & 0xff), 134); |
|
219 |
|
|
220 |
assertEquals((int)(raster.getElemByte(6, 6, 0) & 0xff), 21); |
|
221 |
assertEquals((int)(raster.getElemByte(6, 6, 1) & 0xff), 37); |
|
222 |
assertEquals((int)(raster.getElemByte(6, 6, 2) & 0xff), 10); |
|
223 |
|
|
224 |
assertEquals((int)(raster.getElemByte(6, 23, 0) & 0xff), 91); |
|
225 |
assertEquals((int)(raster.getElemByte(6, 23, 1) & 0xff), 105); |
|
226 |
assertEquals((int)(raster.getElemByte(6, 23, 2) & 0xff), 92); |
|
227 |
|
|
228 |
assertEquals((int)(raster.getElemByte(23, 6, 0) & 0xff), 153); |
|
229 |
assertEquals((int)(raster.getElemByte(23, 6, 1) & 0xff), 133); |
|
230 |
assertEquals((int)(raster.getElemByte(23, 6, 2) & 0xff), 122); |
|
231 |
|
|
232 |
assertEquals((int)(raster.getElemByte(9, 14, 0) & 0xff), 63); |
|
233 |
assertEquals((int)(raster.getElemByte(9, 14, 1) & 0xff), 69); |
|
234 |
assertEquals((int)(raster.getElemByte(9, 14, 2) & 0xff), 55); |
|
235 |
|
|
236 |
assertEquals((int)(raster.getElemByte(6, 13, 0) & 0xff), 70); |
|
237 |
assertEquals((int)(raster.getElemByte(6, 13, 1) & 0xff), 78); |
|
238 |
assertEquals((int)(raster.getElemByte(6, 13, 2) & 0xff), 55); |
|
194 |
|
|
195 |
public void compareRaster(IBuffer raster, int band0[], int band1[], int band2[]) { |
|
196 |
int cont = 0; |
|
197 |
for (int line = 0; line < raster.getHeight(); line++) { |
|
198 |
for (int col = 0; col < raster.getWidth(); col++) { |
|
199 |
assertEquals((int) (raster.getElemByte(line, col, 0) & 0xff), band0[cont]); |
|
200 |
assertEquals((int) (raster.getElemByte(line, col, 1) & 0xff), band1[cont]); |
|
201 |
assertEquals((int) (raster.getElemByte(line, col, 2) & 0xff), band2[cont]); |
|
202 |
cont++; |
|
203 |
} |
|
204 |
} |
|
239 | 205 |
} |
240 | 206 |
|
241 |
private void dataTest2(IBuffer raster){ |
|
242 |
//Upper Left |
|
243 |
assertEquals((int)(raster.getElemByte(0, 0, 0) & 0xff), 80); |
|
244 |
assertEquals((int)(raster.getElemByte(0, 0, 1) & 0xff), 96); |
|
245 |
assertEquals((int)(raster.getElemByte(0, 0, 2) & 0xff), 60); |
|
246 |
//Upper Right |
|
247 |
assertEquals((int)(raster.getElemByte(0, 1, 0) & 0xff), 80); |
|
248 |
assertEquals((int)(raster.getElemByte(0, 1, 1) & 0xff), 96); |
|
249 |
assertEquals((int)(raster.getElemByte(0, 1, 2) & 0xff), 60); |
|
250 |
//Lower Left |
|
251 |
assertEquals((int)(raster.getElemByte(1, 0, 0) & 0xff), 82); |
|
252 |
assertEquals((int)(raster.getElemByte(1, 0, 1) & 0xff), 97); |
|
253 |
assertEquals((int)(raster.getElemByte(1, 0, 2) & 0xff), 68); |
|
254 |
//Lower Right |
|
255 |
assertEquals((int)(raster.getElemByte(1, 1, 0) & 0xff), 82); |
|
256 |
assertEquals((int)(raster.getElemByte(1, 1, 1) & 0xff), 97); |
|
257 |
assertEquals((int)(raster.getElemByte(1, 1, 2) & 0xff), 68); |
|
258 |
} |
|
259 |
|
|
260 |
private void dataTest3(IBuffer raster){ |
|
261 |
//Upper Left |
|
262 |
assertEquals((int)(raster.getElemByte(0, 0, 0) & 0xff), 14); |
|
263 |
assertEquals((int)(raster.getElemByte(0, 0, 1) & 0xff), 14); |
|
264 |
assertEquals((int)(raster.getElemByte(0, 0, 2) & 0xff), 0); |
|
265 |
//Upper Right |
|
266 |
assertEquals((int)(raster.getElemByte(0, 7, 0) & 0xff), 75); |
|
267 |
assertEquals((int)(raster.getElemByte(0, 7, 1) & 0xff), 84); |
|
268 |
assertEquals((int)(raster.getElemByte(0, 7, 2) & 0xff), 57); |
|
269 |
//Lower Left |
|
270 |
assertEquals((int)(raster.getElemByte(7, 0, 0) & 0xff), 97); |
|
271 |
assertEquals((int)(raster.getElemByte(7, 0, 1) & 0xff), 106); |
|
272 |
assertEquals((int)(raster.getElemByte(7, 0, 2) & 0xff), 87); |
|
273 |
//Lower Right |
|
274 |
assertEquals((int)(raster.getElemByte(7, 7, 0) & 0xff), 215); |
|
275 |
assertEquals((int)(raster.getElemByte(7, 7, 1) & 0xff), 215); |
|
276 |
assertEquals((int)(raster.getElemByte(7, 7, 2) & 0xff), 215); |
|
277 |
} |
|
278 |
|
|
279 |
private void dataTest4(IBuffer raster){ |
|
280 |
//Upper Left |
|
281 |
assertEquals((int)(raster.getElemByte(0, 0, 0) & 0xff), 14); |
|
282 |
assertEquals((int)(raster.getElemByte(0, 0, 1) & 0xff), 14); |
|
283 |
assertEquals((int)(raster.getElemByte(0, 0, 2) & 0xff), 0); |
|
284 |
//Upper Right |
|
285 |
assertEquals((int)(raster.getElemByte(0, 4, 0) & 0xff), 61); |
|
286 |
assertEquals((int)(raster.getElemByte(0, 4, 1) & 0xff), 65); |
|
287 |
assertEquals((int)(raster.getElemByte(0, 4, 2) & 0xff), 38); |
|
288 |
//Lower Left |
|
289 |
assertEquals((int)(raster.getElemByte(4, 0, 0) & 0xff), 87); |
|
290 |
assertEquals((int)(raster.getElemByte(4, 0, 1) & 0xff), 102); |
|
291 |
assertEquals((int)(raster.getElemByte(4, 0, 2) & 0xff), 83); |
|
292 |
//Lower Right |
|
293 |
assertEquals((int)(raster.getElemByte(4, 4, 0) & 0xff), 235); |
|
294 |
assertEquals((int)(raster.getElemByte(4, 4, 1) & 0xff), 237); |
|
295 |
assertEquals((int)(raster.getElemByte(4, 4, 2) & 0xff), 236); |
|
296 |
} |
|
297 |
|
|
298 | 207 |
/** |
299 | 208 |
* Imprime todos los pixels de la fuente de datos en RGB |
300 | 209 |
*/ |
301 |
/*private void print(IBuffer raster){ |
|
302 |
for(int line = 0; line < raster.getHeight(); line++){ |
|
303 |
for(int col = 0; col < raster.getWidth(); col++) |
|
304 |
System.out.print("(" + (int)(raster.getElemByte(line, col, 0) & 0xff) + " " + (int)(raster.getElemByte(line, col, 1) & 0xff) + " " + (int)(raster.getElemByte(line, col, 2) & 0xff) + ")"); |
|
305 |
System.out.println(); |
|
210 |
public void print(IBuffer raster) { |
|
211 |
System.out.println(""); |
|
212 |
for (int band = 0; band < 3; band++) { |
|
213 |
System.out.print("int band" + band + "[] = { "); |
|
214 |
int cont = 0; |
|
215 |
for (int line = 0; line < raster.getHeight(); line++) { |
|
216 |
for (int col = 0; col < raster.getWidth(); col++) { |
|
217 |
if (cont != 0) |
|
218 |
System.out.print(", "); |
|
219 |
System.out.print(((int) (raster.getElemByte(line, col, band) & 0xff))); |
|
220 |
cont++; |
|
221 |
} |
|
222 |
} |
|
223 |
System.out.println("};"); |
|
306 | 224 |
} |
307 |
}*/
|
|
225 |
} |
|
308 | 226 |
} |
trunk/libraries/libRaster/src-test/org/gvsig/raster/dataset/TestBandList.java | ||
---|---|---|
1 |
/* |
|
2 |
* Created on 9-ago-2006 |
|
1 |
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana |
|
3 | 2 |
* |
4 |
* To change the template for this generated file go to |
|
5 |
* Window>Preferences>Java>Code Generation>Code and Comments |
|
6 |
*/ |
|
7 |
/* gvSIG. Sistema de Informaci�n Geogr�fica de la Generalitat Valenciana |
|
3 |
* Copyright (C) 2007 IVER T.I. and Generalitat Valenciana. |
|
8 | 4 |
* |
9 |
* Copyright (C) 2004 IVER T.I. and Generalitat Valenciana. |
|
10 |
* |
|
11 | 5 |
* This program is free software; you can redistribute it and/or |
12 | 6 |
* modify it under the terms of the GNU General Public License |
13 | 7 |
* as published by the Free Software Foundation; either version 2 |
... | ... | |
27 | 21 |
import junit.framework.TestCase; |
28 | 22 |
|
29 | 23 |
import org.gvsig.raster.RasterLibrary; |
30 |
|
|
31 | 24 |
/** |
32 |
* |
|
33 | 25 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
34 |
* |
|
35 | 26 |
*/ |
36 | 27 |
public class TestBandList extends TestCase { |
28 |
private boolean showCode = false; |
|
37 | 29 |
private BandList bandList = null; |
38 |
|
|
30 |
|
|
39 | 31 |
static { |
40 | 32 |
RasterLibrary.wakeUp(); |
41 | 33 |
} |
42 |
|
|
34 |
|
|
43 | 35 |
public void start() { |
44 | 36 |
this.setUp(); |
45 | 37 |
this.testStack(); |
46 | 38 |
} |
47 |
|
|
39 |
|
|
48 | 40 |
public void setUp() { |
49 | 41 |
System.err.println("TestBandList running..."); |
50 | 42 |
bandList = new BandList(); |
51 |
for(int i = 0; i < 5; i++) { |
|
43 |
for (int i = 0; i < 5; i++) {
|
|
52 | 44 |
try { |
53 | 45 |
Band band = new Band("fileName", i, IBuffer.TYPE_BYTE); |
54 | 46 |
bandList.addBand(band, i); |
55 |
} catch(BandNotFoundInListException ex) { |
|
56 |
//No a?adimos la banda |
|
47 |
} catch (BandNotFoundInListException ex) {
|
|
48 |
// No a?adimos la banda
|
|
57 | 49 |
} |
58 | 50 |
} |
59 |
|
|
60 | 51 |
} |
61 |
|
|
62 |
public void testStack(){ |
|
52 |
|
|
53 |
public void testStack() {
|
|
63 | 54 |
bandList.clearDrawableBands(); |
64 | 55 |
bandList.addDrawableBand(0, 1); |
65 | 56 |
bandList.addDrawableBand(1, 4); |
66 | 57 |
bandList.addDrawableBand(2, 3); |
67 |
|
|
58 |
|
|
68 | 59 |
bandList.clearDrawableBands(); |
69 | 60 |
bandList.addDrawableBand(0, 3); |
70 | 61 |
bandList.addDrawableBand(1, 2); |
71 | 62 |
bandList.addDrawableBand(2, 4); |
72 | 63 |
bandList.addDrawableBand(3, 4); |
73 |
print(); |
|
64 |
if (showCode) |
|
65 |
print(); |
|
74 | 66 |
} |
75 |
|
|
76 |
/*private void test2() { |
|
77 |
assertEquals(bandList.getBandCount(), 5); |
|
78 |
assertEquals(bandList.getDrawableBandsCount(), 4); |
|
79 |
for (int i = 0; i < bandList.getBandCount(); i++) { |
|
80 |
|
|
81 |
assertEquals((((Band)bandList.getBand(i)).getDataType()), 0); |
|
82 |
assertEquals((((Band)bandList.getBand(i)).getFileName()), "fileName"); |
|
83 |
assertEquals((((Band)bandList.getBand(i)).getPosition()), i); |
|
84 |
} |
|
85 |
}*/ |
|
86 | 67 |
|
68 |
// private void test2() { |
|
69 |
// assertEquals(bandList.getBandCount(), 5); |
|
70 |
// assertEquals(bandList.getDrawableBandsCount(), 4); |
|
71 |
// for (int i = 0; i < bandList.getBandCount(); i++) { |
|
72 |
// |
|
73 |
// assertEquals((((Band) bandList.getBand(i)).getDataType()), 0); |
|
74 |
// assertEquals((((Band) bandList.getBand(i)).getFileName()), "fileName"); |
|
75 |
// assertEquals((((Band) bandList.getBand(i)).getPosition()), i); |
|
76 |
// } |
|
77 |
// } |
|
78 |
|
|
87 | 79 |
/** |
88 |
*Muestra la lista de bandas en modo texto |
|
80 |
* Muestra la lista de bandas en modo texto
|
|
89 | 81 |
*/ |
90 | 82 |
public void print() { |
91 | 83 |
System.out.println("BandCount: " + bandList.getBandCount()); |
... | ... | |
94 | 86 |
System.out.println(""); |
95 | 87 |
System.out.println("***********************"); |
96 | 88 |
System.out.println("Band: " + i); |
97 |
System.out.println("DataType: " + ((Band)bandList.getBand(i)).getDataType()); |
|
98 |
System.out.println("FileName: " + ((Band)bandList.getBand(i)).getFileName()); |
|
99 |
System.out.println("Position: " + ((Band)bandList.getBand(i)).getPosition()); |
|
100 |
if(((Band)bandList.getBand(i)).getBufferBandListToDraw() != null) {
|
|
89 |
System.out.println("DataType: " + ((Band) bandList.getBand(i)).getDataType());
|
|
90 |
System.out.println("FileName: " + ((Band) bandList.getBand(i)).getFileName());
|
|
91 |
System.out.println("Position: " + ((Band) bandList.getBand(i)).getPosition());
|
|
92 |
if (((Band) bandList.getBand(i)).getBufferBandListToDraw() != null) {
|
|
101 | 93 |
System.out.print("Band Dst: "); |
102 |
for (int j = 0; j < ((Band)bandList.getBand(i)).getBufferBandListToDraw().length; j++) |
|
103 |
System.out.print(((Band)bandList.getBand(i)).getBufferBandListToDraw()[j] + " "); |
|
94 |
for (int j = 0; j < ((Band) bandList.getBand(i)).getBufferBandListToDraw().length; j++)
|
|
95 |
System.out.print(((Band) bandList.getBand(i)).getBufferBandListToDraw()[j] + " ");
|
|
104 | 96 |
} |
105 | 97 |
} |
106 |
|
|
107 | 98 |
} |
108 | 99 |
} |
trunk/libraries/libRaster/src-test/org/gvsig/raster/grid/TGEmptyBufferForWrite.java | ||
---|---|---|
24 | 24 |
import org.gvsig.raster.buffer.RasterBufferInvalidAccessException; |
25 | 25 |
import org.gvsig.raster.buffer.RasterBufferInvalidException; |
26 | 26 |
import org.gvsig.raster.dataset.IBuffer; |
27 |
|
|
28 | 27 |
/** |
29 | 28 |
* Este test prueba el acceso a datos a traves de un grid. |
30 |
* 1-Crear? un buffer vacio para escritura con la extensi?n pasado por par?metro. El extent |
|
31 |
* completo ser? igual que el extent de la vista asignada (SIN INTERPOLACI?N). |
|
29 |
* |
|
30 |
* 1-Crear? un buffer vacio para escritura con la extensi?n pasado por |
|
31 |
* par?metro. El extent completo ser? igual que el extent de la vista asignada |
|
32 |
* (SIN INTERPOLACI?N). |
|
32 | 33 |
* 2-Comprueba que se calcule bien el n?mero de pixels |
33 | 34 |
* 3-Asigna datos al grid |
34 | 35 |
* 4-Los recupera comprobando que est?n bien asignados |
35 | 36 |
* |
36 |
* 1-Crear? un buffer vacio para escritura con la extensi?n pasado por par?metro. El extent |
|
37 |
* completo ser? distinto que el extent de la vista asignada (CON INTERPOLACI?N). |
|
37 |
* 1-Crear? un buffer vacio para escritura con la extensi?n pasado por |
|
38 |
* par?metro. El extent completo ser? distinto que el extent de la vista |
|
39 |
* asignada (CON INTERPOLACI?N). |
|
38 | 40 |
* 2-Comprueba que se calcule bien el n?mero de pixels |
39 | 41 |
* 3-Asigna datos al grid |
40 |
* 4-Los recupera con distintos m?todos de interpolaci?n comprobando que est?n bien asignados |
|
42 |
* 4-Los recupera con distintos m?todos de interpolaci?n comprobando que est?n |
|
43 |
* bien asignados |
|
41 | 44 |
* |
42 | 45 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
43 | 46 |
* |
44 | 47 |
*/ |
45 |
public class TGEmptyBufferForWrite extends TestCase{ |
|
46 |
|
|
47 |
static{ |
|
48 |
RasterLibrary.wakeUp();
|
|
48 |
public class TGEmptyBufferForWrite extends TestCase {
|
|
49 |
|
|
50 |
static {
|
|
51 |
RasterLibrary.wakeUp(); |
|
49 | 52 |
} |
50 |
|
|
53 |
|
|
51 | 54 |
public void setUp() { |
52 | 55 |
System.err.println("TGEmptyBufferForWrite running..."); |
53 | 56 |
} |
54 |
|
|
55 |
public void start(){ |
|
57 |
|
|
58 |
public void start() {
|
|
56 | 59 |
this.setUp(); |
57 | 60 |
this.testStack(); |
58 | 61 |
} |
59 |
|
|
60 |
public void testStack(){ |
|
62 |
|
|
63 |
public void testStack() {
|
|
61 | 64 |
try { |
62 |
//SIN INTERPOLACI?N |
|
65 |
// SIN INTERPOLACI?N
|
|
63 | 66 |
GridExtent layerExtent = new GridExtent(1000, 1000, 1500, 1500, 50); |
64 |
Grid g = new Grid(layerExtent, layerExtent, IBuffer.TYPE_INT, new int[]{0, 1, 2});
|
|
67 |
Grid g = new Grid(layerExtent, layerExtent, IBuffer.TYPE_INT, new int[] { 0, 1, 2 });
|
|
65 | 68 |
|
66 |
//Tama?o en pixels |
|
69 |
// Tama?o en pixels
|
|
67 | 70 |
assertEquals(layerExtent.getNX(), 10); |
68 | 71 |
assertEquals(layerExtent.getNY(), 10); |
69 | 72 |
assertEquals(g.getNX(), 10); |
70 | 73 |
assertEquals(g.getNY(), 10); |
71 |
|
|
74 |
|
|
72 | 75 |
for (int i = 0; i < g.getNX(); i++) { |
73 | 76 |
for (int j = 0; j < g.getNY(); j++) |
74 |
g.setCellValue(j, i, (int)(j * i)); |
|
77 |
g.setCellValue(j, i, (int) (j * i));
|
|
75 | 78 |
} |
76 |
//print(g); |
|
79 |
// print(g);
|
|
77 | 80 |
for (int i = 0; i < g.getNX(); i++) { |
78 | 81 |
for (int j = 0; j < g.getNY(); j++) |
79 |
assertEquals(g.getCellValueAsInt(j, i), (int)(j * i)); |
|
82 |
assertEquals(g.getCellValueAsInt(j, i), (int) (j * i));
|
|
80 | 83 |
} |
81 |
|
|
82 |
//CON INTERPOLACI?N |
|
84 |
|
|
85 |
// CON INTERPOLACI?N
|
|
83 | 86 |
GridExtent windowExtent = new GridExtent(1125, 1125, 1375, 1375, 50); |
84 | 87 |
layerExtent = new GridExtent(1000, 1000, 1500, 1500, 50); |
85 |
g = new Grid(layerExtent, windowExtent, IBuffer.TYPE_INT, new int[]{0, 1, 2});
|
|
88 |
g = new Grid(layerExtent, windowExtent, IBuffer.TYPE_INT, new int[] { 0, 1, 2 });
|
|
86 | 89 |
|
87 |
//Tama?o en pixels |
|
90 |
// Tama?o en pixels
|
|
88 | 91 |
assertEquals(layerExtent.getNX(), 10); |
89 | 92 |
assertEquals(layerExtent.getNY(), 10); |
90 | 93 |
assertEquals(g.getNX(), 5); |
91 | 94 |
assertEquals(g.getNY(), 5); |
92 |
|
|
95 |
|
|
93 | 96 |
for (int i = 0; i < g.getLayerNX(); i++) { |
94 | 97 |
for (int j = 0; j < g.getLayerNY(); j++) |
95 |
g.setCellValue(j, i, (int)(j * i)); |
|
98 |
g.setCellValue(j, i, (int) (j * i));
|
|
96 | 99 |
} |
97 | 100 |
g.setInterpolationMethod(GridInterpolated.INTERPOLATION_BicubicSpline); |
98 |
int[][] m1 = new int[][]{{9, 12, 15, 18, 21}, {12, 16, 20, 24, 28}, {15, 20, 25, 30, 35}, {18, 24, 30, 36, 42}, {21, 28, 35, 42, 49}};
|
|
99 |
//print(g); |
|
101 |
int[][] m1 = new int[][] { { 9, 12, 15, 18, 21 }, { 12, 16, 20, 24, 28 }, { 15, 20, 25, 30, 35 }, { 18, 24, 30, 36, 42 }, { 21, 28, 35, 42, 49 } };
|
|
102 |
// print(g);
|
|
100 | 103 |
compare(m1, g); |
101 |
|
|
104 |
|
|
102 | 105 |
g.setInterpolationMethod(GridInterpolated.INTERPOLATION_NearestNeighbour); |
103 |
//print(g); |
|
104 |
int[][] m2 = new int[][]{{9, 12, 15, 18, 21}, {12, 16, 20, 24, 28}, {15, 20, 25, 30, 35}, {18, 24, 30, 36, 42}, {21, 28, 35, 42, 49}};
|
|
106 |
// print(g);
|
|
107 |
int[][] m2 = new int[][] { { 9, 12, 15, 18, 21 }, { 12, 16, 20, 24, 28 }, { 15, 20, 25, 30, 35 }, { 18, 24, 30, 36, 42 }, { 21, 28, 35, 42, 49 } };
|
|
105 | 108 |
compare(m2, g); |
106 |
|
|
109 |
|
|
107 | 110 |
g.setInterpolationMethod(GridInterpolated.INTERPOLATION_Bilinear); |
108 |
//print(g); |
|
109 |
int[][] m3 = new int[][]{{9, 12, 15, 18, 21}, {12, 16, 20, 24, 28}, {15, 20, 25, 30, 35}, {18, 24, 30, 36, 42}, {21, 28, 35, 42, 49}};
|
|
111 |
// print(g);
|
|
112 |
int[][] m3 = new int[][] { { 9, 12, 15, 18, 21 }, { 12, 16, 20, 24, 28 }, { 15, 20, 25, 30, 35 }, { 18, 24, 30, 36, 42 }, { 21, 28, 35, 42, 49 } };
|
|
110 | 113 |
compare(m3, g); |
111 |
|
|
114 |
|
|
112 | 115 |
g.setInterpolationMethod(GridInterpolated.INTERPOLATION_BSpline); |
113 |
//print(g); |
|
114 |
int[][] m4 = new int[][]{{9, 11, 14, 18, 21}, {12, 15, 19, 23, 27}, {14, 20, 24, 29, 35}, {18, 23, 30, 36, 41}, {21, 27, 35, 42, 49}};
|
|
116 |
// print(g);
|
|
117 |
int[][] m4 = new int[][] { { 9, 11, 14, 18, 21 }, { 12, 15, 19, 23, 27 }, { 14, 20, 24, 29, 35 }, { 18, 23, 30, 36, 41 }, { 21, 27, 35, 42, 49 } };
|
|
115 | 118 |
compare(m4, g); |
116 |
|
|
119 |
|
|
117 | 120 |
g.setInterpolationMethod(GridInterpolated.INTERPOLATION_InverseDistance); |
118 |
//print(g); |
|
119 |
int[][] m5 = new int[][]{{9, 12, 15, 18, 21}, {12, 16, 20, 24, 28}, {15, 20, 25, 30, 35}, {18, 24, 30, 36, 42}, {21, 28, 35, 42, 49}};
|
|
121 |
// print(g);
|
|
122 |
int[][] m5 = new int[][] { { 9, 12, 15, 18, 21 }, { 12, 16, 20, 24, 28 }, { 15, 20, 25, 30, 35 }, { 18, 24, 30, 36, 42 }, { 21, 28, 35, 42, 49 } };
|
|
120 | 123 |
compare(m5, g); |
121 |
|
|
124 |
|
|
122 | 125 |
} catch (RasterBufferInvalidException e1) { |
123 | 126 |
e1.printStackTrace(); |
124 |
} catch (OutOfGridException e3) {
|
|
127 |
} catch (OutOfGridException e3) { |
|
125 | 128 |
e3.printStackTrace(); |
126 | 129 |
} catch (RasterBufferInvalidAccessException e) { |
127 | 130 |
e.printStackTrace(); |
... | ... | |
131 | 134 |
} |
132 | 135 |
|
133 | 136 |
private void compare(int[][] m, Grid g) throws RasterBufferInvalidAccessException, GridException { |
134 |
for(int line = 0; line < g.getNY(); line++){
|
|
135 |
for(int col = 0; col < g.getNX(); col++) |
|
137 |
for (int line = 0; line < g.getNY(); line++) {
|
|
138 |
for (int col = 0; col < g.getNX(); col++)
|
|
136 | 139 |
assertEquals(g.getCellValueAsInt(col, line), m[line][col]); |
137 | 140 |
} |
138 | 141 |
} |
... | ... | |
149 | 152 |
} |
150 | 153 |
System.out.println(); |
151 | 154 |
}*/ |
152 |
|
|
153 | 155 |
} |
trunk/libraries/libRaster/src-test/org/gvsig/raster/buffer/TestGdalByteMultiBandHistogram.java | ||
---|---|---|
1 |
/* gvSIG. Sistema de Informaci�n Geogr�fica de la Generalitat Valenciana
|
|
1 |
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
|
|
2 | 2 |
* |
3 | 3 |
* Copyright (C) 2007 IVER T.I. and Generalitat Valenciana. |
4 | 4 |
* |
trunk/libraries/libRaster/src-test/org/gvsig/raster/buffer/TDSDoubleAdjustToExtentGdal.java | ||
---|---|---|
1 |
/* gvSIG. Sistema de Informaci�n Geogr�fica de la Generalitat Valenciana
|
|
1 |
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
|
|
2 | 2 |
* |
3 | 3 |
* Copyright (C) 2007 IVER T.I. and Generalitat Valenciana. |
4 | 4 |
* |
trunk/libraries/libRaster/src-test/org/gvsig/raster/buffer/cache/TestRasterReadOnlyBuffer.java | ||
---|---|---|
72 | 72 |
e.printStackTrace(); |
73 | 73 |
} |
74 | 74 |
//Reducimos el tama?o de la cach? para poder trabajar con un volumen de datos reducido |
75 |
long cacheSize = RasterLibrary.cacheSize; |
|
76 |
double pageSize = RasterLibrary.pageSize; |
|
75 | 77 |
RasterLibrary.cacheSize = 1; |
76 | 78 |
RasterLibrary.pageSize = 0.2; |
77 | 79 |
|
... | ... | |
107 | 109 |
|
108 | 110 |
} |
109 | 111 |
|
112 |
RasterLibrary.cacheSize = cacheSize; |
|
113 |
RasterLibrary.pageSize = pageSize; |
|
110 | 114 |
} |
111 | 115 |
|
112 | 116 |
public void testStack(){ |
trunk/libraries/libRaster/src-test/org/gvsig/raster/buffer/cache/TestStructCache.java | ||
---|---|---|
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 |
*/ |
|
1 | 19 |
package org.gvsig.raster.buffer.cache; |
2 | 20 |
|
3 | 21 |
import junit.framework.TestCase; |
4 | 22 |
|
5 | 23 |
import org.gvsig.raster.RasterLibrary; |
6 | 24 |
import org.gvsig.raster.dataset.IBuffer; |
7 |
|
|
8 |
|
|
9 | 25 |
/** |
10 | 26 |
* Test para comprobar la inicializaci?n de la cach?. El constructor de CacheStruct es el |
11 | 27 |
* encargado de crear la estructura de cache. Esta clase comprueba que esta creaci?n |
... | ... | |
14 | 30 |
* |
15 | 31 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
16 | 32 |
*/ |
17 |
public class TestStructCache extends TestCase{ |
|
18 |
private CacheStruct cs = null; |
|
19 |
|
|
20 |
static{ |
|
21 |
RasterLibrary.wakeUp(); |
|
33 |
public class TestStructCache extends TestCase { |
|
34 |
private boolean showCode = false; |
|
35 |
private CacheStruct cs = null; |
|
36 |
|
|
37 |
static { |
|
38 |
RasterLibrary.wakeUp(); |
|
22 | 39 |
} |
23 |
|
|
24 |
public void start(){ |
|
40 |
|
|
41 |
public void start() {
|
|
25 | 42 |
this.setUp(); |
26 | 43 |
this.testStack(); |
27 | 44 |
} |
28 |
|
|
45 |
|
|
29 | 46 |
public void setUp() { |
30 | 47 |
System.err.println("TestStructCache running..."); |
31 |
|
|
32 | 48 |
} |
33 | 49 |
|
34 | 50 |
public void testStack(){ |
35 |
//Test para los siguientes valores |
|
36 |
//Cach? size = 20M |
|
37 |
//Pags Per Group = 5 |
|
38 |
//Page size = 2M |
|
51 |
// Test para los siguientes valores
|
|
52 |
// Cach? size = 20M
|
|
53 |
// Pags Per Group = 5
|
|
54 |
// Page size = 2M
|
|
39 | 55 |
|
40 | 56 |
cs = new CacheStruct(3, IBuffer.TYPE_BYTE, 2048, 2048, 20, 2); |
41 |
print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 2048, 2048, IBuffer.TYPE_BYTE); |
|
57 |
if (showCode) |
|
58 |
print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 2048, 2048, IBuffer.TYPE_BYTE); |
|
42 | 59 |
assertEquals(cs.getHPag(), 256); |
43 | 60 |
assertEquals(cs.getNBands(), 3); |
44 | 61 |
assertEquals(cs.getCacheSize(), 23592960); |
... | ... | |
46 | 63 |
assertEquals(cs.getPagSize(), 1572864); |
47 | 64 |
assertEquals(cs.getNPags(), 15); |
48 | 65 |
assertEquals(cs.getNGroups(), 3); |
49 |
System.out.println("**********************************************");
|
|
50 |
|
|
51 |
|
|
66 |
if (showCode)
|
|
67 |
System.out.println("**********************************************"); |
|
68 |
|
|
52 | 69 |
cs = new CacheStruct(4, IBuffer.TYPE_INT, 5000, 5000, 20, 2); |
53 |
print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 5000, 5000, IBuffer.TYPE_INT); |
|
70 |
if (showCode) |
|
71 |
print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 5000, 5000, IBuffer.TYPE_INT); |
|
54 | 72 |
assertEquals(cs.getHPag(), 16); |
55 | 73 |
assertEquals(cs.getNBands(), 4); |
56 | 74 |
assertEquals(cs.getCacheSize(), 25600000); |
... | ... | |
58 | 76 |
assertEquals(cs.getPagSize(), 1280000); |
59 | 77 |
assertEquals(cs.getNPags(), 20); |
60 | 78 |
assertEquals(cs.getNGroups(), 4); |
61 |
System.out.println("**********************************************"); |
|
62 |
|
|
79 |
if (showCode) |
|
80 |
System.out.println("**********************************************"); |
|
81 |
|
|
63 | 82 |
cs = new CacheStruct(3, IBuffer.TYPE_FLOAT, 42000, 42000, 20, 2); |
64 |
print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 42000, 42000, IBuffer.TYPE_FLOAT); |
|
83 |
if (showCode) |
|
84 |
print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 42000, 42000, IBuffer.TYPE_FLOAT); |
|
65 | 85 |
assertEquals(cs.getHPag(), 4); |
66 | 86 |
assertEquals(cs.getNBands(), 3); |
67 | 87 |
assertEquals(cs.getCacheSize(), 20160000); |
... | ... | |
69 | 89 |
assertEquals(cs.getPagSize(), 2016000); |
70 | 90 |
assertEquals(cs.getNPags(), 10); |
71 | 91 |
assertEquals(cs.getNGroups(), 2); |
72 |
System.out.println("**********************************************"); |
|
73 |
|
|
92 |
if (showCode) |
|
93 |
System.out.println("**********************************************"); |
|
94 |
|
|
74 | 95 |
cs = new CacheStruct(1, IBuffer.TYPE_FLOAT, 105000, 105000, 20, 2); |
75 |
print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 105000, 105000, IBuffer.TYPE_FLOAT); |
|
96 |
if (showCode) |
|
97 |
print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 105000, 105000, IBuffer.TYPE_FLOAT); |
|
76 | 98 |
assertEquals(cs.getHPag(), 4); |
77 | 99 |
assertEquals(cs.getNBands(), 1); |
78 | 100 |
assertEquals(cs.getCacheSize(), 25200000); |
... | ... | |
80 | 102 |
assertEquals(cs.getPagSize(), 1680000); |
81 | 103 |
assertEquals(cs.getNPags(), 15); |
82 | 104 |
assertEquals(cs.getNGroups(), 3); |
83 |
System.out.println("**********************************************"); |
|
105 |
if (showCode) |
|
106 |
System.out.println("**********************************************"); |
|
84 | 107 |
} |
85 | 108 |
|
86 |
private void print(CacheStruct cs, String initValues, int w, int h, int type) {
|
|
109 |
public void print(CacheStruct cs, String initValues, int w, int h, int type) {
|
|
87 | 110 |
System.out.println(initValues); |
88 | 111 |
System.out.println("W x H = " + w + " x " + h); |
89 | 112 |
cs.show(); |
90 | 113 |
} |
91 |
} |
|
114 |
} |
trunk/libraries/libRaster/src-test/org/gvsig/raster/buffer/cache/TestRasterCache.java | ||
---|---|---|
9 | 9 |
import org.gvsig.raster.dataset.NotSupportedExtensionException; |
10 | 10 |
import org.gvsig.raster.dataset.RasterDataset; |
11 | 11 |
import org.gvsig.raster.dataset.io.RasterDriverException; |
12 |
|
|
13 |
|
|
14 | 12 |
/** |
15 | 13 |
* Test de comparativa de datos cacheados con datos sin cachear. |
16 | 14 |
* Leemos un raster 1..n veces cacheandolo por p?ginas. Una vez cacheado recorreremos |
... | ... | |
20 | 18 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
21 | 19 |
*/ |
22 | 20 |
public class TestRasterCache extends TestCase{ |
23 |
private String baseDir = "./test-images/"; |
|
24 |
private String path = baseDir + "03AUG23153350-M2AS-000000122423_01_P001-BROWSE.jpg"; |
|
25 |
private RasterDataset f = null; |
|
26 |
private BufferFactory ds = null; |
|
27 |
|
|
28 |
static{ |
|
21 |
private String baseDir = "./test-images/"; |
|
22 |
private String path = baseDir + "03AUG23153350-M2AS-000000122423_01_P001-BROWSE.jpg"; |
|
23 |
private RasterDataset f = null; |
|
24 |
|
|
25 |
static { |
|
29 | 26 |
RasterLibrary.wakeUp(); |
30 | 27 |
} |
31 |
|
|
32 |
public void start(){ |
|
28 |
|
|
29 |
public void start() {
|
|
33 | 30 |
this.setUp(); |
34 | 31 |
this.testStack(); |
35 | 32 |
} |
36 |
|
|
33 |
|
|
37 | 34 |
public void setUp() { |
38 | 35 |
System.err.println("TestRasterCache running..."); |
39 | 36 |
try { |
... | ... | |
46 | 43 |
} |
47 | 44 |
|
48 | 45 |
public void testStack() { |
49 |
int[] drawableBands = {0, 1, 2};
|
|
46 |
int[] drawableBands = { 0, 1, 2 };
|
|
50 | 47 |
//N?mero de veces que cacheamos la imagen. Esto hace que el n?mero de l?neas totales se multiplique por este n?mero |
51 | 48 |
int nTimes = 1; |
52 |
|
|
53 |
ds = new BufferFactory(f); |
|
49 |
BufferFactory ds = new BufferFactory(f); |
|
54 | 50 |
ds.setDrawableBands(drawableBands); |
55 | 51 |
try { |
56 | 52 |
ds.setAreaOfInterest(0, 0, f.getWidth(), f.getHeight()); |
... | ... | |
61 | 57 |
} catch (RasterDriverException e) { |
62 | 58 |
e.printStackTrace(); |
63 | 59 |
} |
64 |
|
|
65 |
//Salvamos los PageBuffer |
|
60 |
|
|
61 |
// Salvamos los PageBuffer
|
|
66 | 62 |
IBuffer buf = ds.getRasterBuf(); |
67 | 63 |
|
68 | 64 |
//Reducimos el tama?o de la cach? para poder trabajar con un volumen de datos reducido |
65 |
long cacheSize = RasterLibrary.cacheSize; |
|
66 |
double pageSize = RasterLibrary.pageSize; |
|
69 | 67 |
RasterLibrary.cacheSize = 1; |
70 | 68 |
RasterLibrary.pageSize = 0.2; |
71 |
|
|
69 |
|
|
72 | 70 |
RasterCache rc = new RasterCache(f.getDataType()[0], f.getWidth(), f.getHeight() * nTimes, 3); |
73 |
//rc.getCache().getCacheStruct().show();
|
|
74 |
|
|
75 |
//Cargamos la cach? |
|
71 |
// rc.getCache().getCacheStruct().show();
|
|
72 |
|
|
73 |
// Cargamos la cach?
|
|
76 | 74 |
byte[] data = new byte[3]; |
77 |
for(int i = 0; i < nTimes; i++){
|
|
78 |
for(int line = 0; line < f.getHeight(); line ++){
|
|
75 |
for (int i = 0; i < nTimes; i++) {
|
|
76 |
for (int line = 0; line < f.getHeight(); line++) {
|
|
79 | 77 |
for (int col = 0; col < f.getWidth(); col++) { |
80 | 78 |
buf.getElemByte(line, col, data); |
81 | 79 |
rc.setElemByte(line + (f.getHeight() * i), col, data); |
82 | 80 |
} |
83 | 81 |
} |
84 | 82 |
} |
85 |
|
|
86 |
//Obtenemos los datos y comparamos |
|
83 |
|
|
84 |
// Obtenemos los datos y comparamos
|
|
87 | 85 |
byte[] dataA = new byte[3]; |
88 | 86 |
byte[] dataB = new byte[3]; |
89 |
for(int i = 0; i < nTimes; i++){
|
|
90 |
for(int line = 0; line < f.getHeight(); line ++){
|
|
87 |
for (int i = 0; i < nTimes; i++) {
|
|
88 |
for (int line = 0; line < f.getHeight(); line++) {
|
|
91 | 89 |
for (int col = 0; col < f.getWidth(); col++) { |
92 | 90 |
buf.getElemByte(line, col, dataA); |
93 | 91 |
rc.getElemByte(line + (f.getHeight() * i), col, dataB); |
... | ... | |
97 | 95 |
} |
98 | 96 |
} |
99 | 97 |
} |
100 |
|
|
101 |
|
|
98 |
RasterLibrary.cacheSize = cacheSize; |
|
99 |
RasterLibrary.pageSize = pageSize; |
|
102 | 100 |
} |
103 | 101 |
} |
trunk/libraries/libRaster/src-test/org/gvsig/raster/buffer/TDSDoubleAdjustToExtentBufferEcw.java | ||
---|---|---|
1 |
/* gvSIG. Sistema de Informaci�n Geogr�fica de la Generalitat Valenciana
|
|
1 |
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
|
|
2 | 2 |
* |
3 | 3 |
* Copyright (C) 2007 IVER T.I. and Generalitat Valenciana. |
4 | 4 |
* |
... | ... | |
26 | 26 |
import org.gvsig.raster.dataset.NotSupportedExtensionException; |
27 | 27 |
import org.gvsig.raster.dataset.RasterDataset; |
28 | 28 |
import org.gvsig.raster.dataset.io.RasterDriverException; |
29 |
|
|
30 | 29 |
/** |
31 | 30 |
* Este test prueba el acceso a datos a traves de un DataSource sin resampleo |
32 | 31 |
* para un ECW con coordenadas reales. |
... | ... | |
42 | 41 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
43 | 42 |
* |
44 | 43 |
*/ |
45 |
public class TDSDoubleAdjustToExtentBufferEcw extends TestCase{ |
|
44 |
public class TDSDoubleAdjustToExtentBufferEcw extends TestCase { |
|
45 |
private String baseDir = "./test-images/"; |
|
46 |
private String path = baseDir + "miniraster30x30.jp2"; |
|
46 | 47 |
|
47 |
private String baseDir = "./test-images/"; |
|
48 |
private String path = baseDir + "miniraster30x30.jp2"; |
|
49 |
private RasterDataset f = null; |
|
50 |
private BufferFactory ds = null; |
|
51 |
|
|
52 |
public void start(){ |
|
48 |
public void start() { |
|
53 | 49 |
this.setUp(); |
54 | 50 |
this.testStack(); |
55 | 51 |
} |
56 |
|
|
52 |
|
|
57 | 53 |
public void setUp() { |
58 | 54 |
System.err.println("TDSDoubleAdjustToExtentBufferEcw running..."); |
59 |
//System.out.println("TestDataSource (Real Coord) Adjust To Extent With Buffer [Ecw] running..."); |
|
60 | 55 |
} |
61 | 56 |
|
62 |
static{ |
|
57 |
static {
|
|
63 | 58 |
RasterLibrary.wakeUp(); |
64 | 59 |
} |
65 |
|
|
60 |
|
|
66 | 61 |
public void testStack() { |
67 |
int[] drawableBands = {0, 1, 2}; |
|
62 |
RasterDataset f; |
|
63 |
int[] drawableBands = { 0, 1, 2 }; |
|
68 | 64 |
try { |
69 | 65 |
f = RasterDataset.open(null, path); |
70 | 66 |
} catch (RasterDriverException e) { |
... | ... | |
72 | 68 |
} catch (NotSupportedExtensionException e) { |
73 | 69 |
return; |
74 | 70 |
} |
75 |
ds = new BufferFactory(f); |
|
71 |
BufferFactory ds = new BufferFactory(f);
|
|
76 | 72 |
ds.setDrawableBands(drawableBands); |
77 | 73 |
//Se selecciona un ?rea mayor que el extent para probar que lo ajusta a este |
78 | 74 |
try { |
... | ... | |
84 | 80 |
} catch (InterruptedException e) { |
85 | 81 |
e.printStackTrace(); |
86 | 82 |
} |
87 |
//print();
|
|
88 |
dataTest1(); |
|
83 |
// print(ds.getRasterBuf());
|
|
84 |
dataTest1(ds.getRasterBuf());
|
|
89 | 85 |
|
90 | 86 |
try { |
91 | 87 |
ds.setAreaOfInterest(645860.0, 4923870.0, 645986.0, 4923744.0, 2, 2); |
... | ... | |
96 | 92 |
} catch (InterruptedException e) { |
97 | 93 |
e.printStackTrace(); |
98 | 94 |
} |
99 |
dataTest2();
|
|
100 |
//print();
|
|
95 |
// print(ds.getRasterBuf());
|
|
96 |
dataTest2(ds.getRasterBuf());
|
|
101 | 97 |
} |
102 |
|
|
103 |
private void dataTest2(){ |
|
104 |
IBuffer raster = ds.getRasterBuf(); |
|
105 |
//Upper Left |
|
106 |
assertEquals((int)(raster.getElemByte(0, 0, 0) & 0xff), 43); |
|
107 |
assertEquals((int)(raster.getElemByte(0, 0, 1) & 0xff), 53); |
|
108 |
assertEquals((int)(raster.getElemByte(0, 0, 2) & 0xff), 26); |
|
109 |
//Upper Right |
|
110 |
assertEquals((int)(raster.getElemByte(0, 1, 0) & 0xff), 109); |
|
111 |
assertEquals((int)(raster.getElemByte(0, 1, 1) & 0xff), 111); |
|
112 |
assertEquals((int)(raster.getElemByte(0, 1, 2) & 0xff), 97); |
|
113 |
//Lower Left |
|
114 |
assertEquals((int)(raster.getElemByte(1, 0, 0) & 0xff), 159); |
|
115 |
assertEquals((int)(raster.getElemByte(1, 0, 1) & 0xff), 168); |
|
116 |
assertEquals((int)(raster.getElemByte(1, 0, 2) & 0xff), 146); |
|
117 |
//Lower Right |
|
118 |
assertEquals((int)(raster.getElemByte(1, 1, 0) & 0xff), 18); |
|
119 |
assertEquals((int)(raster.getElemByte(1, 1, 1) & 0xff), 39); |
|
120 |
assertEquals((int)(raster.getElemByte(1, 1, 2) & 0xff), 41); |
|
98 |
|
|
99 |
private void dataTest1(IBuffer raster) { |
|
100 |
int band0[] = { 43, 14, 87, 166, 174, 109, 90, 93, 190, 143, 85, 93, 103, 112, 138, 94, 138, 192, 180, 196, 99, 209, 41, 98, 168, 170, 89, 141, 158, 199, 108, 71, 67, 92, 131, 176, 243, 98, 163, 141, 157, 170, 94, 159, 233, 114, 144, 62, 147, 173, 159, 173, 184, 94, 56, 18, 69, 78, 83, 115, 95, 37, 80, 57, 68, 68, 55, 59, 58, 101, 69, 44, 24, 58, 115, 40, 58, 56, 68, 111, 84, 117, 55, 88, 170, 135, 169, 99, 74, 42, 114, 223, 171, 67, 216, 104, 167, 83, 66, 45 }; |
|
101 |
int band1[] = { 53, 15, 109, 154, 164, 111, 109, 93, 189, 151, 89, 102, 107, 111, 142, 100, 143, 195, 178, 190, 100, 192, 61, 108, 154, 172, 99, 149, 160, 206, 122, 74, 81, 94, 136, 195, 248, 105, 173, 141, 158, 162, 98, 158, 226, 114, 132, 66, 150, 176, 168, 172, 175, 105, 82, 39, 85, 89, 73, 104, 92, 51, 80, 71, 88, 84, 71, 74, 68, 106, 82, 62, 37, 74, 129, 49, 78, 67, 89, 126, 100, 132, 71, 107, 164, 145, 154, 108, 85, 48, 130, 210, 164, 66, 209, 115, 160, 85, 90, 61 }; |
|
102 |
int band2[] = { 26, 11, 82, 145, 165, 97, 86, 71, 191, 135, 74, 75, 85, 110, 117, 82, 115, 186, 179, 183, 91, 181, 43, 85, 139, 178, 78, 133, 152, 206, 98, 61, 71, 109, 118, 181, 244, 82, 144, 117, 144, 159, 83, 155, 231, 98, 108, 60, 136, 163, 146, 170, 162, 111, 102, 41, 62, 60, 64, 68, 97, 26, 74, 50, 64, 70, 47, 48, 56, 70, 54, 35, 19, 50, 91, 35, 48, 52, 62, 101, 73, 91, 35, 80, 140, 119, 140, 91, 58, 36, 112, 202, 146, 66, 192, 81, 131, 71, 63, 37 }; |
|
103 |
compareRaster(raster, band0, band1, band2); |
|
121 | 104 |
} |
122 |
|
|
123 |
private void dataTest1(){ |
|
124 |
IBuffer raster = ds.getRasterBuf(); |
|
125 |
//Upper Left |
|
126 |
assertEquals((int)(raster.getElemByte(0, 0, 0) & 0xff), 43); |
|
127 |
assertEquals((int)(raster.getElemByte(0, 0, 1) & 0xff), 53); |
|
128 |
assertEquals((int)(raster.getElemByte(0, 0, 2) & 0xff), 26); |
|
129 |
//Upper Right |
|
130 |
assertEquals((int)(raster.getElemByte(0, 9, 0) & 0xff), 144); |
|
131 |
assertEquals((int)(raster.getElemByte(0, 9, 1) & 0xff), 157); |
|
132 |
assertEquals((int)(raster.getElemByte(0, 9, 2) & 0xff), 141); |
|
133 |
//Lower Left |
|
134 |
assertEquals((int)(raster.getElemByte(9, 0, 0) & 0xff), 113); |
|
135 |
assertEquals((int)(raster.getElemByte(9, 0, 1) & 0xff), 130); |
|
136 |
assertEquals((int)(raster.getElemByte(9, 0, 2) & 0xff), 111); |
|
137 |
//Lower Right |
|
138 |
assertEquals((int)(raster.getElemByte(9, 9, 0) & 0xff), 28); |
|
139 |
assertEquals((int)(raster.getElemByte(9, 9, 1) & 0xff), 43); |
|
140 |
assertEquals((int)(raster.getElemByte(9, 9, 2) & 0xff), 24); |
|
141 |
|
|
142 |
assertEquals((int)(raster.getElemByte(6, 6, 0) & 0xff), 54); |
|
143 |
assertEquals((int)(raster.getElemByte(6, 6, 1) & 0xff), 71); |
|
144 |
assertEquals((int)(raster.getElemByte(6, 6, 2) & 0xff), 46); |
|
145 |
|
|
146 |
assertEquals((int)(raster.getElemByte(6, 9, 0) & 0xff), 91); |
|
147 |
assertEquals((int)(raster.getElemByte(6, 9, 1) & 0xff), 94); |
|
148 |
assertEquals((int)(raster.getElemByte(6, 9, 2) & 0xff), 53); |
|
149 |
|
|
150 |
assertEquals((int)(raster.getElemByte(9, 6, 0) & 0xff), 166); |
|
151 |
assertEquals((int)(raster.getElemByte(9, 6, 1) & 0xff), 160); |
|
152 |
assertEquals((int)(raster.getElemByte(9, 6, 2) & 0xff), 131); |
|
153 |
|
|
154 |
assertEquals((int)(raster.getElemByte(2, 3, 0) & 0xff), 89); |
|
155 |
assertEquals((int)(raster.getElemByte(2, 3, 1) & 0xff), 105); |
|
156 |
assertEquals((int)(raster.getElemByte(2, 3, 2) & 0xff), 79); |
|
157 |
|
|
158 |
assertEquals((int)(raster.getElemByte(3, 1, 0) & 0xff), 71); |
|
159 |
assertEquals((int)(raster.getElemByte(3, 1, 1) & 0xff), 73); |
|
160 |
assertEquals((int)(raster.getElemByte(3, 1, 2) & 0xff), 61); |
|
161 |
|
|
162 |
assertEquals((int)(raster.getElemByte(0, 2, 0) & 0xff), 87); |
|
163 |
assertEquals((int)(raster.getElemByte(0, 2, 1) & 0xff), 109); |
|
164 |
assertEquals((int)(raster.getElemByte(0, 2, 2) & 0xff), 81); |
|
105 |
|
|
106 |
private void dataTest2(IBuffer raster) { |
|
107 |
int band0[] = { 43, 109, 160, 18 }; |
|
108 |
int band1[] = { 53, 111, 168, 39 }; |
|
109 |
int band2[] = { 26, 97, 146, 41 }; |
|
110 |
compareRaster(raster, band0, band1, band2); |
|
165 | 111 |
} |
166 |
|
|
112 |
|
|
113 |
public void compareRaster(IBuffer raster, int band0[], int band1[], int band2[]) { |
|
114 |
int cont = 0; |
|
115 |
for (int line = 0; line < raster.getHeight(); line++) { |
|
116 |
for (int col = 0; col < raster.getWidth(); col++) { |
|
117 |
assertEquals((int) (raster.getElemByte(line, col, 0) & 0xff), band0[cont]); |
|
118 |
assertEquals((int) (raster.getElemByte(line, col, 1) & 0xff), band1[cont]); |
|
119 |
assertEquals((int) (raster.getElemByte(line, col, 2) & 0xff), band2[cont]); |
|
120 |
cont++; |
|
121 |
} |
|
122 |
} |
|
123 |
} |
|
124 |
|
|
167 | 125 |
/** |
168 | 126 |
* Imprime todos los pixels de la fuente de datos en RGB |
169 | 127 |
*/ |
170 |
/*private void print(){ |
|
171 |
IBuffer raster = ds.getRasterBuf(); |
|
172 |
for(int line = 0; line < raster.getHeight(); line++){ |
|
173 |
for(int col = 0; col < raster.getWidth(); col++) |
|
174 |
System.out.print("(" + (int)(raster.getElemByte(line, col, 0) & 0xff) + " " + (int)(raster.getElemByte(line, col, 1) & 0xff) + " " + (int)(raster.getElemByte(line, col, 2) & 0xff) + ")"); |
|
175 |
System.out.println(); |
|
128 |
public void print(IBuffer raster) { |
|
129 |
System.out.println(""); |
|
130 |
for (int band = 0; band < 3; band++) { |
|
131 |
System.out.print("int band" + band + "[] = { "); |
|
132 |
int cont = 0; |
|
133 |
for (int line = 0; line < raster.getHeight(); line++) { |
|
134 |
for (int col = 0; col < raster.getWidth(); col++) { |
|
135 |
if (cont != 0) |
|
136 |
System.out.print(", "); |
|
137 |
System.out.print(((int) (raster.getElemByte(line, col, band) & 0xff))); |
|
138 |
cont++; |
|
139 |
} |
|
140 |
} |
|
141 |
System.out.println("};"); |
|
176 | 142 |
} |
177 |
}*/ |
|
178 |
|
|
143 |
} |
|
179 | 144 |
} |
trunk/libraries/libRaster/src-test/org/gvsig/raster/buffer/TestAdjustToExtent.java | ||
---|---|---|
1 |
/* gvSIG. Sistema de Informaci�n Geogr�fica de la Generalitat Valenciana
|
|
1 |
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
|
|
2 | 2 |
* |
3 | 3 |
* Copyright (C) 2007 IVER T.I. and Generalitat Valenciana. |
4 | 4 |
* |
trunk/libraries/libRaster/src-test/org/gvsig/raster/buffer/TDSDoubleAdjustToExtentEcw.java | ||
---|---|---|
1 |
/* gvSIG. Sistema de Informaci�n Geogr�fica de la Generalitat Valenciana
|
|
1 |
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
|
|
2 | 2 |
* |
3 | 3 |
* Copyright (C) 2007 IVER T.I. and Generalitat Valenciana. |
4 | 4 |
* |
trunk/libraries/libRaster/src-test/org/gvsig/raster/AllTests.java | ||
---|---|---|
47 | 47 |
import org.gvsig.raster.dataset.TestGetWindowRasterBufferSizeMrSID; |
48 | 48 |
import org.gvsig.raster.dataset.TestGetWindowRasterMrSID; |
49 | 49 |
import org.gvsig.raster.dataset.TestHistogramSerializer; |
50 |
import org.gvsig.raster.dataset.TestIOMemoryRasterDriver; |
|
51 | 50 |
import org.gvsig.raster.dataset.TestReadBlockMrSID; |
52 | 51 |
import org.gvsig.raster.dataset.TestReadLineEcw; |
53 | 52 |
import org.gvsig.raster.dataset.TestReadLineGdal; |
... | ... | |
88 | 87 |
suite.addTestSuite(TDSIntGdal.class); |
89 | 88 |
suite.addTestSuite(TDSIntBufferGdal.class); |
90 | 89 |
suite.addTestSuite(TestDataSourceMultiFile.class); |
91 |
suite.addTestSuite(TestIOMemoryRasterDriver.class); |
|
90 |
// suite.addTestSuite(TestIOMemoryRasterDriver.class);
|
|
92 | 91 |
suite.addTestSuite(TestGdalByteHistogram.class); |
93 | 92 |
suite.addTestSuite(TestHistogramSerializer.class); |
94 | 93 |
suite.addTestSuite(TestRmfRead.class); |
Also available in: Unified diff