svn-gvsig-desktop / branches / CqCMSDvp / libraries / libCq CMS for java.old / src / org / cresques / io / raster / ComputeMinMaxImageFilter.java @ 1812
History | View | Annotate | Download (1.13 KB)
1 |
/*
|
---|---|
2 |
* Created on 25-feb-2005
|
3 |
*/
|
4 |
package org.cresques.io.raster; |
5 |
|
6 |
import java.awt.Image; |
7 |
import java.awt.image.BufferedImage; |
8 |
|
9 |
/**
|
10 |
* Clase base para los filtros de calculo de m?ximo y m?nimo en sus diferentes
|
11 |
* tipos de datos.
|
12 |
*/
|
13 |
public class ComputeMinMaxImageFilter extends ComputeMinMaxFilter { |
14 |
|
15 |
public ComputeMinMaxImageFilter(){
|
16 |
super();
|
17 |
} |
18 |
|
19 |
public void pre(){ |
20 |
//Obtenci?n de par?metros
|
21 |
|
22 |
this.image = (Image)params.get("raster"); |
23 |
|
24 |
height = image.getHeight(null);
|
25 |
width = image.getWidth(null);
|
26 |
super.pre();
|
27 |
} |
28 |
|
29 |
public void process(int x, int y) { |
30 |
int px = ((BufferedImage) image).getRGB(x,y); |
31 |
min[0] = Math.min(min[0], (px & 0xff0000) >> 16); |
32 |
max[0] = Math.max(max[0], (px & 0xff0000) >> 16); |
33 |
min[1] = Math.min(min[1], (px & 0x00ff00) >> 8); |
34 |
max[1] = Math.max(max[1], (px & 0x00ff00) >> 8); |
35 |
min[2] = Math.min(min[2], (px & 0x0000ff)); |
36 |
max[2] = Math.max(max[2], (px & 0x0000ff)); |
37 |
} |
38 |
|
39 |
public int getInRasterDataType(){ |
40 |
return RasterBuf.TYPE_IMAGE;
|
41 |
} |
42 |
|
43 |
public int getOutRasterDataType(){ |
44 |
return RasterBuf.TYPE_IMAGE;
|
45 |
} |
46 |
|
47 |
public void post(){ |
48 |
super.post();
|
49 |
}; |
50 |
|
51 |
public void processLine(int y){}; |
52 |
|
53 |
} |
54 |
|
55 |
|