Revision 11176

View differences:

trunk/extensions/extRasterTools-SE/src-test/org/gvsig/rastertools/histogram/TestHistogramDialog.java
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
}
0 117

  

Also available in: Unified diff