Statistics
| Revision:

root / trunk / extensions / extRasterTools-SE / src-test / org / gvsig / rasterTools / histogram / TestHistogramDialog.java @ 11042

History | View | Annotate | Download (3.76 KB)

1
package org.gvsig.rasterTools.histogram;
2

    
3
import java.io.File;
4

    
5
import javax.swing.JFrame;
6
import javax.swing.UIManager;
7

    
8
import org.gvsig.fmap.drivers.GenericRasterDriver;
9
import org.gvsig.fmap.drivers.raster.RasterSEDriver;
10
import org.gvsig.fmap.layers.FLyrRasterSE;
11
import org.gvsig.rastertools.histogram.ui.HistogramDialog;
12

    
13
import com.hardcode.driverManager.Driver;
14
import com.hardcode.driverManager.DriverLoadException;
15
import com.iver.andami.PluginServices;
16
import com.iver.cit.gvsig.fmap.layers.LayerFactory;
17
import com.iver.cit.gvsig.project.Project;
18

    
19
public class TestHistogramDialog {
20
        
21
        private JFrame                         frame = new JFrame();
22
        private HistogramDialog        hp = null;
23

    
24
        private FLyrRasterSE                                                        lyr = null;
25
                
26
        private String baseDir = "./test-images/";
27
        private String path1 = baseDir + "band1-30x28byte.tif";        
28
        private String path2 = baseDir + "band2-30x28byte.tif";        
29
        private String path3 = baseDir + "band3-30x28byte.tif";        
30
        
31
        public TestHistogramDialog() {
32
                super();
33
                initialize();
34
/*
35
                int[][] g = new int[3][256]; 
36
                for (int i = 0; i < 256; i++) {
37
            g[0][i] = 329;
38
            g[1][i] = 280;
39
            g[2][i] = 401;
40
                }
41
                
42
                GraphicChartPanel cp = hp.getPHistogram().getPGraphic();
43
                cp.replaceValuesChart(g);*/
44
        }
45
        
46
        public static void main(String[] args){
47
                try {
48
                        UIManager.setLookAndFeel("com.jgoodies.looks.plastic.PlasticXPLookAndFeel");
49
                } catch( Exception e ) {
50
                        System.err.println( "No se puede cambiar al LookAndFeel");
51
                }
52
                new TestHistogramDialog();
53
        }
54

    
55
        private void initialize() {
56
                RasterSEDriver rasterDriver = new RasterSEDriver();
57

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

    
62
                LayerFactory.setDriversPath(driversPath);
63

    
64
                Driver driver = null;
65
                try {
66
                        driver = LayerFactory.getDM().getDriver(rasterDriver.getName());
67
                } catch (DriverLoadException e1) {
68
                        e1.printStackTrace();
69
                }
70
        
71
                lyr = FLyrRasterSE.createLayer("Prueba", (GenericRasterDriver) driver, new File(path1), Project.getDefaultProjection());
72
                lyr.addFile(path2);
73
                lyr.addFile(path3);
74
                
75
                
76
                frame.setSize(new java.awt.Dimension(800,600));
77
                hp = new HistogramDialog(800, 600);
78

    
79
                
80
//                lyr = getNodeLayer(item);
81

    
82
//                if (lyr instanceof FLyrRaster){
83

    
84
//                        if( (lyr.g(FLyrRaster)lyr).getGrid().getDataType() == RasterBuf.TYPE_DOUBLE || ((FLyrRaster)lyr).getGrid().getDataType() == RasterBuf.TYPE_FLOAT) hp.setOnlyViewValue();
85
                  
86
//                        hp.getHistogramPanel().setHistogramObj(lyr.getDatasource().getHistogram(null));
87
                  
88
//                        hp.getHistogramPanel().setHistogramDataSource(0); //Fuente de datos; la vista
89
//                        hp.getHistogramPanel().setType(0); //Tipo de histograma; no acumulado
90
//                        hp.getHistogramPanel().setRGBInBandList(); //Asignaci?n R,G,B en el combo
91
//                        hp.getHistogramPanel().showHistogram(); //Dibujamos histograma
92

    
93
                hp = new HistogramDialog(800, 600);
94
//                hp.setSize(width, height);
95

    
96
                hp.clearSources();
97
                hp.setHistogramableSource(((FLyrRasterSE)lyr).getSource().getRender().getLastRenderBuffer(), PluginServices.getText(this, "datos_visualizados"));
98
                hp.setHistogramableSource(((FLyrRasterSE)lyr).getSource().getDatasource().getGeoRasterMultiFile(), PluginServices.getText(this, "vista_datasource"));
99

    
100
        //Par?metros de inicializaci?n del histograma
101

    
102
                hp.getHistogramPanel().setRGBInBandList(); //Asignaci?n R,G,B en el combo
103

    
104
                hp.getHistogramPanel().firstRun(); // Mostar por primera vez el histograma
105

    
106
                frame.setContentPane(hp);
107
                frame.setResizable(true);
108
                frame.setTitle("Histogramas");
109
                frame.setVisible(true);
110
                frame.addWindowListener(new java.awt.event.WindowAdapter() {
111
                        public void windowClosing(java.awt.event.WindowEvent e) {
112
                                System.exit(0);
113
                        }
114
                });
115
        }
116
}