root / trunk / extensions / extRasterTools-SE / src / org / gvsig / rastertools / vectorizacion / data / GrayConversionData.java @ 21860
History | View | Annotate | Download (6.23 KB)
1 | 21579 | nbrodin | /* 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.vectorizacion.data; |
||
20 | |||
21 | import java.util.Observable; |
||
22 | |||
23 | 21859 | nbrodin | import org.gvsig.raster.filter.grayscale.GrayScaleFilter; |
24 | |||
25 | 21579 | nbrodin | /**
|
26 | * Datos asociados al panel GrayConversionPanel
|
||
27 | *
|
||
28 | * 12/06/2008
|
||
29 | * @author Nacho Brodin nachobrodin@gmail.com
|
||
30 | */
|
||
31 | public class GrayConversionData extends Observable { |
||
32 | 21859 | nbrodin | private String[] bands = {"R", "G" , "B", "RGB"}; |
33 | 21860 | nbrodin | private String[] scales = {"1/4", "1/3", "1/2", "1", "2", "3", "4", "5"}; |
34 | 21859 | nbrodin | private int bandType = GrayScaleFilter.GRAY; |
35 | 21860 | nbrodin | private int scaleSelected = 3; |
36 | 21859 | nbrodin | private int posterizationLevels = 2; |
37 | 21785 | nbrodin | |
38 | 21859 | nbrodin | private boolean posterizationActive = true; |
39 | private boolean highPassActive = false; |
||
40 | private boolean noiseActive = false; |
||
41 | |||
42 | private int posterizationThreshold = 0; |
||
43 | private int radiusHighPass = 0; |
||
44 | private int thresholdNoise = 0; |
||
45 | |||
46 | 21785 | nbrodin | /**
|
47 | * Consulta los niveles de posterizaci?n
|
||
48 | * @return
|
||
49 | */
|
||
50 | public int getPosterizationLevels() { |
||
51 | return posterizationLevels;
|
||
52 | } |
||
53 | 21579 | nbrodin | |
54 | 21785 | nbrodin | /**
|
55 | * Asigna los niveles de posterizaci?n
|
||
56 | * @param posterizationLevels
|
||
57 | */
|
||
58 | public void setPosterizationLevels(int posterizationLevels) { |
||
59 | this.posterizationLevels = posterizationLevels;
|
||
60 | updateObservers(); |
||
61 | } |
||
62 | |||
63 | /**
|
||
64 | * Obtiene el texto del desplegable de bandas. Este depende del n?mero de bandas
|
||
65 | * del raster de origen.
|
||
66 | * @return Lista de textos con la interpretaci?n de las bandas con las que se har? la
|
||
67 | * posterizaci?n
|
||
68 | */
|
||
69 | public String[] getBands() { |
||
70 | return bands;
|
||
71 | } |
||
72 | |||
73 | /**
|
||
74 | * Asigna el texto del desplegable de bandas. Este depende del n?mero de bandas
|
||
75 | * del raster de origen.
|
||
76 | * @param Lista de textos con la interpretaci?n de las bandas con las que se har? la
|
||
77 | * posterizaci?n
|
||
78 | */
|
||
79 | public void setBands(String[] bands) { |
||
80 | this.bands = bands;
|
||
81 | updateObservers(); |
||
82 | } |
||
83 | |||
84 | /**
|
||
85 | 21860 | nbrodin | * Obtiene el texto del desplegable de escalas.
|
86 | * @return Lista de textos con las escalas
|
||
87 | 21785 | nbrodin | */
|
88 | 21860 | nbrodin | public String[] getScales() { |
89 | return scales;
|
||
90 | 21785 | nbrodin | } |
91 | |||
92 | /**
|
||
93 | 21860 | nbrodin | * Asigna el texto del desplegable de escalas.
|
94 | * @param Lista de textos con las escalas
|
||
95 | 21785 | nbrodin | */
|
96 | 21860 | nbrodin | public void setScales(String[] scales) { |
97 | this.scales = scales;
|
||
98 | 21785 | nbrodin | updateObservers(); |
99 | } |
||
100 | |||
101 | /**
|
||
102 | 21859 | nbrodin | * Consulta si est? activo el filtro de paso alto
|
103 | * @return true si est? activo y false si no lo est?
|
||
104 | */
|
||
105 | public boolean isHighPassActive() { |
||
106 | return highPassActive;
|
||
107 | } |
||
108 | |||
109 | /**
|
||
110 | * Asigna si est? activo el filtro de paso alto
|
||
111 | * @param true si est? activo y false si no lo est?
|
||
112 | */
|
||
113 | public void setHighPassActive(boolean highPassActive) { |
||
114 | this.highPassActive = highPassActive;
|
||
115 | updateObservers(); |
||
116 | } |
||
117 | |||
118 | /**
|
||
119 | * Consulta si est? activo el filtro de ruido
|
||
120 | * @param true si est? activo y false si no lo est?
|
||
121 | */
|
||
122 | public boolean isNoiseActive() { |
||
123 | return noiseActive;
|
||
124 | } |
||
125 | |||
126 | /**
|
||
127 | * Asigna si est? activo el filtro de ruido
|
||
128 | * @return true si est? activo y false si no lo est?
|
||
129 | */
|
||
130 | public void setNoiseActive(boolean noiseActive) { |
||
131 | this.noiseActive = noiseActive;
|
||
132 | updateObservers(); |
||
133 | } |
||
134 | |||
135 | /**
|
||
136 | * Consulta si est? activa la posterizaci?n
|
||
137 | * @return true si est? activa y false si no lo est?
|
||
138 | */
|
||
139 | public boolean isPosterizationActive() { |
||
140 | return posterizationActive;
|
||
141 | } |
||
142 | |||
143 | /**
|
||
144 | * Asigna si est? activa la posterizaci?n
|
||
145 | * @return true si est? activo y false si no lo est?
|
||
146 | */
|
||
147 | public void setPosterizationActive(boolean posterizationActive) { |
||
148 | this.posterizationActive = posterizationActive;
|
||
149 | updateObservers(); |
||
150 | } |
||
151 | |||
152 | /**
|
||
153 | * Consulta el tipo de banda asignado
|
||
154 | * @return Entero con el tipo de banda. Debe corresponder a una constante
|
||
155 | * definida en la clase GrayScaleFilter
|
||
156 | */
|
||
157 | public int getBandType() { |
||
158 | return bandType;
|
||
159 | } |
||
160 | |||
161 | /**
|
||
162 | * Asigna el tipo de banda asignado
|
||
163 | * @param Entero con el tipo de banda. Debe corresponder a una constante
|
||
164 | * definida en la clase GrayScaleFilter
|
||
165 | */
|
||
166 | public void setBandType(int bandType) { |
||
167 | this.bandType = bandType;
|
||
168 | updateObservers(); |
||
169 | } |
||
170 | |||
171 | /**
|
||
172 | * Asigna el valor del umbral de la posterizaci?n
|
||
173 | * @param posterizationThreshold
|
||
174 | */
|
||
175 | public void setPosterizationThreshold(int posterizationThreshold) { |
||
176 | this.posterizationThreshold = posterizationThreshold;
|
||
177 | } |
||
178 | |||
179 | /**
|
||
180 | * Obtener el valor del umbral de la posterizaci?n
|
||
181 | * @param posterizationThreshold
|
||
182 | */
|
||
183 | public int getPosterizationThreshold() { |
||
184 | return posterizationThreshold;
|
||
185 | } |
||
186 | |||
187 | /**
|
||
188 | * Asigna el valor del radio del filtro de paso alto
|
||
189 | * @param radiusHighPass
|
||
190 | */
|
||
191 | public void setRadiusHighPass(int radiusHighPass) { |
||
192 | this.radiusHighPass = radiusHighPass;
|
||
193 | } |
||
194 | |||
195 | /**
|
||
196 | * Obtiene el valor del radio del filtro de paso alto
|
||
197 | * @return radiusHighPass
|
||
198 | */
|
||
199 | public int getRadiusHighPass() { |
||
200 | return this.radiusHighPass; |
||
201 | } |
||
202 | |||
203 | /**
|
||
204 | * Asigna el valor del umbral del filtro de ruido
|
||
205 | * @param thresholdNoise
|
||
206 | */
|
||
207 | public void setThresholdNoise(int thresholdNoise) { |
||
208 | this.thresholdNoise = thresholdNoise;
|
||
209 | } |
||
210 | |||
211 | /**
|
||
212 | * Obtiene el valor del umbral del filtro de ruido
|
||
213 | * @return thresholdNoise
|
||
214 | */
|
||
215 | public int getThresholdNoise() { |
||
216 | return thresholdNoise;
|
||
217 | } |
||
218 | |||
219 | /**
|
||
220 | 21860 | nbrodin | * Obtiene la escala seleccionada en el selector
|
221 | * @return posici?n en la lista de escalas
|
||
222 | */
|
||
223 | public int getScaleSelected() { |
||
224 | return scaleSelected;
|
||
225 | } |
||
226 | |||
227 | /**
|
||
228 | * Asigna la escala seleccionada
|
||
229 | * @param posici?n en la lista de escalas
|
||
230 | */
|
||
231 | public void setScaleSelected(int scaleSelected) { |
||
232 | this.scaleSelected = scaleSelected;
|
||
233 | } |
||
234 | |||
235 | /**
|
||
236 | 21785 | nbrodin | * Actualiza datos y llama al update de los observadores
|
237 | */
|
||
238 | public void updateObservers() { |
||
239 | setChanged(); |
||
240 | notifyObservers(); |
||
241 | } |
||
242 | 21860 | nbrodin | |
243 | 21579 | nbrodin | } |